summaryrefslogtreecommitdiffstats
path: root/clang
diff options
context:
space:
mode:
authorAaron Ballman <aaron@aaronballman.com>2018-11-01 11:52:07 +0000
committerAaron Ballman <aaron@aaronballman.com>2018-11-01 11:52:07 +0000
commitfa28f335b84babbaadb1a39b9d16247c947b4683 (patch)
tree33bae0c67d6b016c9d7c28be65db408b535d2768 /clang
parentbb84407f3d97da8664e9c3e6aa6eaef6a894ca1e (diff)
downloadbcm5719-llvm-fa28f335b84babbaadb1a39b9d16247c947b4683.tar.gz
bcm5719-llvm-fa28f335b84babbaadb1a39b9d16247c947b4683.zip
Update to the 10-10 SARIF spec.
This removes the Step property (which can be calculated by consumers trivially), and updates the schema and version numbers accordingly. llvm-svn: 345823
Diffstat (limited to 'clang')
-rw-r--r--clang/lib/StaticAnalyzer/Core/SarifDiagnostics.cpp15
-rw-r--r--clang/test/Analysis/diagnostics/Inputs/expected-sarif/sarif-diagnostics-taint-test.c.sarif12
-rw-r--r--clang/test/Analysis/diagnostics/sarif-diagnostics-taint-test.c2
3 files changed, 13 insertions, 16 deletions
diff --git a/clang/lib/StaticAnalyzer/Core/SarifDiagnostics.cpp b/clang/lib/StaticAnalyzer/Core/SarifDiagnostics.cpp
index d86d1ff6870..34e948634a0 100644
--- a/clang/lib/StaticAnalyzer/Core/SarifDiagnostics.cpp
+++ b/clang/lib/StaticAnalyzer/Core/SarifDiagnostics.cpp
@@ -154,10 +154,9 @@ static StringRef importanceToStr(Importance I) {
llvm_unreachable("Fully covered switch is not so fully covered");
}
-static json::Object createThreadFlowLocation(int Step, json::Object &&Location,
+static json::Object createThreadFlowLocation(json::Object &&Location,
Importance I) {
- return json::Object{{"step", Step},
- {"location", std::move(Location)},
+ return json::Object{{"location", std::move(Location)},
{"importance", importanceToStr(I)}};
}
@@ -192,12 +191,10 @@ static Importance calculateImportance(const PathDiagnosticPiece &Piece) {
static json::Object createThreadFlow(const PathPieces &Pieces,
json::Object &Files) {
const SourceManager &SMgr = Pieces.front()->getLocation().getManager();
- int Step = 1;
json::Array Locations;
for (const auto &Piece : Pieces) {
const PathDiagnosticLocation &P = Piece->getLocation();
Locations.push_back(createThreadFlowLocation(
- Step++,
createLocation(createPhysicalLocation(P.asRange(),
*P.asLocation().getFileEntry(),
SMgr, Files),
@@ -261,8 +258,10 @@ void SarifDiagnostics::FlushDiagnosticsImpl(
llvm::errs() << "warning: could not create file: " << EC.message() << '\n';
return;
}
- json::Object Sarif{{"$schema", "http://json.schemastore.org/sarif-2.0.0"},
- {"version", "2.0.0-beta.2018-09-26"},
- {"runs", json::Array{createRun(Diags)}}};
+ json::Object Sarif{
+ {"$schema",
+ "http://json.schemastore.org/sarif-2.0.0-csd.2.beta.2018-10-10"},
+ {"version", "2.0.0-csd.2.beta.2018-10-10"},
+ {"runs", json::Array{createRun(Diags)}}};
OS << llvm::formatv("{0:2}", json::Value(std::move(Sarif)));
}
diff --git a/clang/test/Analysis/diagnostics/Inputs/expected-sarif/sarif-diagnostics-taint-test.c.sarif b/clang/test/Analysis/diagnostics/Inputs/expected-sarif/sarif-diagnostics-taint-test.c.sarif
index a6b348258fa..7a6068bd8ce 100644
--- a/clang/test/Analysis/diagnostics/Inputs/expected-sarif/sarif-diagnostics-taint-test.c.sarif
+++ b/clang/test/Analysis/diagnostics/Inputs/expected-sarif/sarif-diagnostics-taint-test.c.sarif
@@ -1,5 +1,5 @@
{
- "$schema": "http://json.schemastore.org/sarif-2.0.0",
+ "$schema": "http://json.schemastore.org/sarif-2.0.0-csd.2.beta.2018-10-10",
"runs": [
{
"files": {
@@ -7,7 +7,7 @@
"fileLocation": {
"uri": "file:sarif-diagnostics-taint-test.c"
},
- "length": 497,
+ "length": 510,
"mimeType": "text/plain",
"roles": [
"resultFile"
@@ -38,8 +38,7 @@
"startLine": 13
}
}
- },
- "step": 1
+ }
},
{
"importance": "essential",
@@ -58,8 +57,7 @@
"startLine": 9
}
}
- },
- "step": 2
+ }
}
]
}
@@ -95,5 +93,5 @@
}
}
],
- "version": "2.0.0-beta.2018-09-26"
+ "version": "2.0.0-csd.2.beta.2018-10-10"
}
diff --git a/clang/test/Analysis/diagnostics/sarif-diagnostics-taint-test.c b/clang/test/Analysis/diagnostics/sarif-diagnostics-taint-test.c
index 8b878709920..fb025b1b466 100644
--- a/clang/test/Analysis/diagnostics/sarif-diagnostics-taint-test.c
+++ b/clang/test/Analysis/diagnostics/sarif-diagnostics-taint-test.c
@@ -1,4 +1,4 @@
-// RUN: %clang_analyze_cc1 -analyzer-checker=alpha.security.taint,debug.TaintTest %s -verify -analyzer-output=sarif -o - | diff -U1 -w -I ".*file:.*sarif-diagnostics-taint-test.c" -I '"version":' -I "2\.0\.0\-beta\." - %S/Inputs/expected-sarif/sarif-diagnostics-taint-test.c.sarif
+// RUN: %clang_analyze_cc1 -analyzer-checker=alpha.security.taint,debug.TaintTest %s -verify -analyzer-output=sarif -o - | diff -U1 -w -I ".*file:.*sarif-diagnostics-taint-test.c" -I '"version":' -I "2\.0\.0\-csd\.[0-9]*\.beta\." - %S/Inputs/expected-sarif/sarif-diagnostics-taint-test.c.sarif
#include "../Inputs/system-header-simulator.h"
int atoi(const char *nptr);
OpenPOWER on IntegriCloud