BugReporter (extensive diagnostics):
- Remove stale assertion that was breaking the test suite.
- When popping location contexts, only add a control-flow piece for fileID
locations.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69814 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/Analysis/BugReporter.cpp b/lib/Analysis/BugReporter.cpp
index 33ff12d..d27ead4 100644
--- a/lib/Analysis/BugReporter.cpp
+++ b/lib/Analysis/BugReporter.cpp
@@ -787,7 +787,8 @@
void rawAddEdge(PathDiagnosticLocation NewLoc);
void popLocation() {
- rawAddEdge(CLocs.back());
+ PathDiagnosticLocation L = CLocs.back();
+ if (L.asLocation().isFileID()) rawAddEdge(CLocs.back());
CLocs.pop_back();
}
@@ -945,8 +946,6 @@
// Context does not contain the location. Flush it.
popLocation();
}
-
- assert(0 && "addEdge should never pop the top context");
}
void EdgeBuilder::addContext(const Stmt *S) {