зеркало из https://github.com/microsoft/clang-1.git
[analyzer] CmpRuns: move the clang_version info into the run (out of
report) git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@168105 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Родитель
e8b5db4f27
Коммит
f0024960d5
|
@ -120,9 +120,8 @@ class CmpOptions:
|
||||||
self.verboseLog = verboseLog
|
self.verboseLog = verboseLog
|
||||||
|
|
||||||
class AnalysisReport:
|
class AnalysisReport:
|
||||||
def __init__(self, run, files, clang_vers):
|
def __init__(self, run, files):
|
||||||
self.run = run
|
self.run = run
|
||||||
self.clang_version = clang_vers
|
|
||||||
self.files = files
|
self.files = files
|
||||||
self.diagnostics = []
|
self.diagnostics = []
|
||||||
|
|
||||||
|
@ -134,6 +133,10 @@ class AnalysisRun:
|
||||||
self.reports = []
|
self.reports = []
|
||||||
# Cumulative list of all diagnostics from all the reports.
|
# Cumulative list of all diagnostics from all the reports.
|
||||||
self.diagnostics = []
|
self.diagnostics = []
|
||||||
|
self.clang_version = None
|
||||||
|
|
||||||
|
def getClangVersion(self):
|
||||||
|
return self.clang_version
|
||||||
|
|
||||||
|
|
||||||
# Backward compatibility API.
|
# Backward compatibility API.
|
||||||
|
@ -156,6 +159,15 @@ def loadResultsFromSingleRun(info, deleteEmpty=True):
|
||||||
p = os.path.join(dirpath, f)
|
p = os.path.join(dirpath, f)
|
||||||
data = plistlib.readPlist(p)
|
data = plistlib.readPlist(p)
|
||||||
|
|
||||||
|
# We want to retrieve the clang version even if there are no
|
||||||
|
# reports. Assume that all reports were created using the same
|
||||||
|
# clang version (this is always true and is more efficient).
|
||||||
|
if ('clang_version' in data) :
|
||||||
|
if (run.clang_version == None) :
|
||||||
|
run.clang_version = data.pop('clang_version')
|
||||||
|
else:
|
||||||
|
data.pop('clang_version')
|
||||||
|
|
||||||
# Ignore/delete empty reports.
|
# Ignore/delete empty reports.
|
||||||
if not data['files']:
|
if not data['files']:
|
||||||
if deleteEmpty == True:
|
if deleteEmpty == True:
|
||||||
|
@ -173,11 +185,7 @@ def loadResultsFromSingleRun(info, deleteEmpty=True):
|
||||||
else:
|
else:
|
||||||
htmlFiles = [None] * len(data['diagnostics'])
|
htmlFiles = [None] * len(data['diagnostics'])
|
||||||
|
|
||||||
clang_version = ''
|
report = AnalysisReport(run, data.pop('files'))
|
||||||
if 'clang_version' in data:
|
|
||||||
clang_version = data.pop('clang_version')
|
|
||||||
|
|
||||||
report = AnalysisReport(run, data.pop('files'), clang_version)
|
|
||||||
diagnostics = [AnalysisDiagnostic(d, report, h)
|
diagnostics = [AnalysisDiagnostic(d, report, h)
|
||||||
for d,h in zip(data.pop('diagnostics'),
|
for d,h in zip(data.pop('diagnostics'),
|
||||||
htmlFiles)]
|
htmlFiles)]
|
||||||
|
|
Загрузка…
Ссылка в новой задаче