]> granicus.if.org Git - clang/commitdiff
[Analyzer] [Tests] Consistently use exit codes. Use code=42 to signify different...
authorGeorge Karpenkov <ekarpenkov@apple.com>
Thu, 26 Oct 2017 01:13:22 +0000 (01:13 +0000)
committerGeorge Karpenkov <ekarpenkov@apple.com>
Thu, 26 Oct 2017 01:13:22 +0000 (01:13 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@316632 91177308-0d34-0410-b5e6-96231b3b80d8

utils/analyzer/SATestBuild.py
utils/analyzer/SATestUpdateDiffs.py

index 2cf02ea64afda4f1ac2ffb35f1c3f647f1e6283c..74a5f6ebdab980e51811f3b7475c9ee6fd98e1a5 100755 (executable)
@@ -71,7 +71,7 @@ def getProjectMapPath():
     if not os.path.exists(ProjectMapPath):
         print "Error: Cannot find the Project Map file " + ProjectMapPath +\
               "\nRunning script for the wrong directory?"
-        sys.exit(-1)
+        sys.exit(1)
     return ProjectMapPath
 
 
@@ -97,7 +97,7 @@ else:
     Clang = SATestUtils.which("clang", os.environ['PATH'])
 if not Clang:
     print "Error: cannot find 'clang' in PATH"
-    sys.exit(-1)
+    sys.exit(1)
 
 # Number of jobs.
 Jobs = int(math.ceil(multiprocessing.cpu_count() * 0.75))
@@ -196,7 +196,7 @@ def downloadAndPatch(Dir, PBuildLogFile):
         if not os.path.exists(CachedSourceDirPath):
             print "Error: '%s' not found after download." % (
                   CachedSourceDirPath)
-            exit(-1)
+            exit(1)
 
     PatchedSourceDirPath = os.path.join(Dir, PatchedSourceDirName)
 
@@ -225,7 +225,7 @@ def applyPatch(Dir, PBuildLogFile):
                    shell=True)
     except:
         print "Error: Patch failed. See %s for details." % (PBuildLogFile.name)
-        sys.exit(-1)
+        sys.exit(1)
 
 
 def runScanBuild(Dir, SBOutputDir, PBuildLogFile):
@@ -236,7 +236,7 @@ def runScanBuild(Dir, SBOutputDir, PBuildLogFile):
     BuildScriptPath = os.path.join(Dir, BuildScript)
     if not os.path.exists(BuildScriptPath):
         print "Error: build script is not defined: %s" % BuildScriptPath
-        sys.exit(-1)
+        sys.exit(1)
 
     AllCheckers = Checkers
     if 'SA_ADDITIONAL_CHECKERS' in os.environ:
@@ -473,7 +473,7 @@ def checkBuild(SBOutputDir):
                 shutil.copyfileobj(FailLogI, SummaryLog)
 
     print "Error: analysis failed. See ", SummaryPath
-    sys.exit(-1)
+    sys.exit(1)
 
 
 def runCmpResults(Dir, Strictness=0):
@@ -503,7 +503,10 @@ def runCmpResults(Dir, Strictness=0):
         RefList.remove(RefLogDir)
     NewList.remove(os.path.join(NewDir, LogFolderName))
 
-    assert(len(RefList) == len(NewList))
+    if len(RefList) != len(NewList):
+        print "Mismatch in number of results folders: %s vs %s" % (
+            RefList, NewList)
+        sys.exit(1)
 
     # There might be more then one folder underneath - one per each scan-build
     # command (Ex: one for configure and one for make).
@@ -656,4 +659,4 @@ if __name__ == '__main__':
     TestsPassed = testAll(IsReference, Strictness)
     if not TestsPassed:
         print "ERROR: Tests failed."
-        sys.exit(-1)
+        sys.exit(42)
index a60c625245c4bb44a7d03c85b663b6d9b5d0d03d..c1c3a25cf56b4c89db348dd5055f342c8b1b3c6c 100755 (executable)
@@ -32,7 +32,7 @@ def updateReferenceResults(ProjName, ProjBuildMode):
     if not os.path.exists(CreatedResultsPath):
         print >> sys.stderr, "New results not found, was SATestBuild.py "\
                              "previously run?"
-        sys.exit(-1)
+        sys.exit(1)
 
     # Remove reference results: in git, and then again for a good measure
     # with rm, as git might not remove things fully if there are empty
@@ -75,7 +75,7 @@ def main(argv):
         print >> sys.stderr, "Update static analyzer reference results based "\
                              "\non the previous run of SATestBuild.py.\n"\
                              "\nN.B.: Assumes that SATestBuild.py was just run"
-        sys.exit(-1)
+        sys.exit(1)
 
     with SATestBuild.projectFileHandler() as f:
         for (ProjName, ProjBuildMode) in SATestBuild.iterateOverProjects(f):