]> granicus.if.org Git - clang/commitdiff
MultiTestRunner: Oops, clang wasn't being substituted properly. This is why the
authorDaniel Dunbar <daniel@zuster.org>
Sat, 25 Jul 2009 12:23:35 +0000 (12:23 +0000)
committerDaniel Dunbar <daniel@zuster.org>
Sat, 25 Jul 2009 12:23:35 +0000 (12:23 +0000)
cxx-using-declaration test case started exhibiting different behavior. It still
needs to be fixed, however...

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@77066 91177308-0d34-0410-b5e6-96231b3b80d8

utils/test/TestRunner.py

index 84964c8c143b1e9dd5e156c8be921e7639f8c73f..3b2b5eb7cc63b14e17c6fd367ad89f45010e2019 100755 (executable)
@@ -132,13 +132,26 @@ def runOneTest(FILENAME, SUBST, OUTPUT, TESTNAME, CLANG, CLANGCC,
             index = ln.index('RUN:')
             ln = ln[index+4:]
             
-            # Strip whitespace and append.
-            scriptLines.append(ln.strip())
+            # Strip trailing newline.
+            scriptLines.append(ln)
         elif 'XFAIL' in ln:
             xfailLines.append(ln)
         
         # FIXME: Support something like END, in case we need to process large
         # files.
+    
+    # Apply substitutions to the script.
+    def processLine(ln):
+        # Apply substitutions
+        for a,b in substitutions:
+            ln = ln.replace(a,b)
+
+        if useDGCompat:
+            ln = re.sub(r'\{(.*)\}', r'"\1"', ln)
+
+        # Strip the trailing newline and any extra whitespace.
+        return ln.strip()
+    scriptLines = map(processLine, scriptLines)    
 
     # Validate interior lines for '&&', a lovely historical artifact.
     for i in range(len(scriptLines) - 1):
@@ -151,18 +164,7 @@ def runOneTest(FILENAME, SUBST, OUTPUT, TESTNAME, CLANG, CLANGCC,
     
         # Strip off '&&'
         scriptLines[i] = ln[:-2]
-    
-    # Apply substitutions to the script.
-    def processLine(ln):
-        # Apply substitutions
-        for a,b in substitutions:
-            ln = ln.replace(a,b)
 
-        if useDGCompat:
-            ln = re.sub(r'\{(.*)\}', r'"\1"', ln)
-        return ln
-    scriptLines = map(processLine, scriptLines)
-    
     if xfailLines:
         print >>output, "XFAILED '%s':"%(TESTNAME,)
         output.writelines(xfailLines)