Skip to content
  1. Nov 28, 2012
    • Eli Bendersky's avatar
      Add backreference matching capabilities to Support/Regex, with · 10f22d70
      Eli Bendersky authored
      appropriate unit tests. This change in itself is not expected to
      affect any functionality at this point, but it will serve as a
      stepping stone to improve FileCheck's variable matching capabilities.
      
      Luckily, our regex implementation already supports backreferences,
      although a bit of hacking is required to enable it. It supports both
      Basic Regular Expressions (BREs) and Extended Regular Expressions
      (EREs), without supporting backrefs for EREs, following POSIX strictly
      in this respect. And EREs is what we actually use (rightly). This is
      contrary to many implementations (including the default on Linux) of
      POSIX regexes, that do allow backrefs in EREs.
      
      Adding backref support to our EREs is a very simple change in the
      regcomp parsing code. I fail to think of significant cases where it
      would clash with existing things, and can bring more versatility to
      the regexes we write. There's always the danger of a backref in a
      specially crafted regex causing exponential matching times, but since
      we mainly use them for testing purposes I don't think it's a big
      problem. [it can also be placed behind a flag specific to FileCheck,
      if needed].
      
      For more details, see:
      
      * http://lists.cs.uiuc.edu/pipermail/llvmdev/2012-November/055840.html
      * http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20121126/156878.html
      
      llvm-svn: 168802
      10f22d70
  2. Mar 08, 2011
  3. Sep 08, 2009
  4. Sep 06, 2009
  5. Aug 30, 2009
Loading