[PATCH] D57528: [tools] Fix python DeprecationWarning: invalid escape sequence

Marco Falke via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Thu Jan 31 10:58:15 PST 2019


MarcoFalke created this revision.
Herald added subscribers: cfe-commits, whisperity.
Herald added a reviewer: serge-sans-paille.

The python documentation says "it’s highly recommended that you use raw strings for all but the simplest expressions." (https://docs.python.org/3/library/re.html)

So do that with the attached patch generated by

  sed -i -e "s/re.search('/re.search(r'/g" $(git grep -l 're.search(')

The warning can be seen in e.g. python3.7:

  $ python3.7 -Wd
  >>> import re; re.search('\s', '')
  <stdin>:1: DeprecationWarning: invalid escape sequence \s


Repository:
  rC Clang

https://reviews.llvm.org/D57528

Files:
  tools/clang-format/clang-format-diff.py
  tools/scan-build-py/libscanbuild/analyze.py
  tools/scan-build/bin/set-xcode-analyzer


Index: tools/scan-build/bin/set-xcode-analyzer
===================================================================
--- tools/scan-build/bin/set-xcode-analyzer
+++ tools/scan-build/bin/set-xcode-analyzer
@@ -42,7 +42,7 @@
         if line.find("Static Analyzer") >= 0:
           foundAnalyzer = True
       else:
-        m = re.search('^(\s*ExecPath\s*=\s*")', line)
+        m = re.search(r'^(\s*ExecPath\s*=\s*")', line)
         if m:
           line = "".join([m.group(0), pathToChecker, '";\n'])
           # Do not modify further ExecPath's later in the xcspec.
Index: tools/scan-build-py/libscanbuild/analyze.py
===================================================================
--- tools/scan-build-py/libscanbuild/analyze.py
+++ tools/scan-build-py/libscanbuild/analyze.py
@@ -97,7 +97,7 @@
     when compiler wrappers are used. That's the moment when build setup
     check the compiler and capture the location for the build process. """
 
-    return len(args) and not re.search('configure|autogen', args[0])
+    return len(args) and not re.search(r'configure|autogen', args[0])
 
 
 def prefix_with(constant, pieces):
Index: tools/clang-format/clang-format-diff.py
===================================================================
--- tools/clang-format/clang-format-diff.py
+++ tools/clang-format/clang-format-diff.py
@@ -66,7 +66,7 @@
   filename = None
   lines_by_file = {}
   for line in sys.stdin:
-    match = re.search('^\+\+\+\ (.*?/){%s}(\S*)' % args.p, line)
+    match = re.search(r'^\+\+\+\ (.*?/){%s}(\S*)' % args.p, line)
     if match:
       filename = match.group(2)
     if filename == None:
@@ -79,7 +79,7 @@
       if not re.match('^%s$' % args.iregex, filename, re.IGNORECASE):
         continue
 
-    match = re.search('^@@.*\+(\d+)(,(\d+))?', line)
+    match = re.search(r'^@@.*\+(\d+)(,(\d+))?', line)
     if match:
       start_line = int(match.group(1))
       line_count = 1


-------------- next part --------------
A non-text attachment was scrubbed...
Name: D57528.184547.patch
Type: text/x-patch
Size: 1924 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20190131/4773f58f/attachment.bin>


More information about the cfe-commits mailing list