[PATCH] D63436: [analyzer] Fix JSON dumps for ExplodedNodes
Csaba Dabis via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Mon Jun 17 15:54:19 PDT 2019
Charusso updated this revision to Diff 205208.
Charusso edited the summary of this revision.
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D63436/new/
https://reviews.llvm.org/D63436
Files:
clang/lib/StaticAnalyzer/Core/ExprEngine.cpp
clang/test/Analysis/dump_egraph.c
Index: clang/test/Analysis/dump_egraph.c
===================================================================
--- clang/test/Analysis/dump_egraph.c
+++ clang/test/Analysis/dump_egraph.c
@@ -1,6 +1,12 @@
-// RUN: %clang_analyze_cc1 -analyzer-checker=core -analyzer-dump-egraph=%t.dot %s
+// RUN: %clang_analyze_cc1 -analyzer-checker=core \
+// RUN: -analyzer-dump-egraph=%t.dot %s
// RUN: cat %t.dot | FileCheck %s
-// RUN: %clang_analyze_cc1 -analyzer-checker=core -analyzer-dump-egraph=%t.dot -trim-egraph %s
+
+// RUN: %clang_analyze_cc1 -analyzer-checker=core \
+// RUN: -analyzer-dump-egraph=%t.dot \
+// RUN: -trim-egraph %s
+// RUN: cat %t.dot | FileCheck %s
+
// REQUIRES: asserts
int getJ();
@@ -10,8 +16,6 @@
return *x + *y;
}
-// CHECK: digraph "Exploded Graph" {
-
// CHECK: \"program_points\": [\l \{ \"kind\": \"Edge\", \"src_id\": 2, \"dst_id\": 1, \"terminator\": null, \"term_kind\": null, \"tag\": null \}\l ],\l \"program_state\": null
// CHECK: \"program_points\": [\l \{ \"kind\": \"BlockEntrance\", \"block_id\": 1
Index: clang/lib/StaticAnalyzer/Core/ExprEngine.cpp
===================================================================
--- clang/lib/StaticAnalyzer/Core/ExprEngine.cpp
+++ clang/lib/StaticAnalyzer/Core/ExprEngine.cpp
@@ -3012,7 +3012,7 @@
for (const auto &EQ : EQClasses) {
for (const BugReport &Report : EQ) {
- if (Report.getErrorNode() == N)
+ if (Report.getErrorNode()->getState() == N->getState())
return true;
}
}
@@ -3112,11 +3112,7 @@
Indent(Out, Space, IsDot) << "\"program_state\": null";
}
- Out << "\\l}";
- if (!N->succ_empty())
- Out << ',';
- Out << "\\l";
-
+ Out << "\\l}\\l";
return Out.str();
}
};
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D63436.205208.patch
Type: text/x-patch
Size: 1830 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20190617/3f011b98/attachment.bin>
More information about the cfe-commits
mailing list