BugReporter (extensive diagnostics): Do not include the range of target '}'
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@71832 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/Analysis/BugReporter.cpp b/lib/Analysis/BugReporter.cpp
index 4a4784a..eedc18f 100644
--- a/lib/Analysis/BugReporter.cpp
+++ b/lib/Analysis/BugReporter.cpp
@@ -865,7 +865,7 @@
void popLocation() {
if (!CLocs.back().isDead() && CLocs.back().asLocation().isFileID()) {
// For contexts, we only one the first character as the range.
- rawAddEdge( cleanUpLocation(CLocs.back(), true));
+ rawAddEdge(cleanUpLocation(CLocs.back(), true));
}
CLocs.pop_back();
}
@@ -1139,14 +1139,16 @@
PathDiagnosticEventPiece *p =
new PathDiagnosticEventPiece(L,
- "Looping back to the head of the loop");
+ "Looping back to the head of the loop");
EB.addEdge(p->getLocation(), true);
PD.push_front(p);
if (CS) {
- EB.addEdge(PathDiagnosticLocation(CS->getRBracLoc(),
- PDB.getSourceManager()));
+ PathDiagnosticLocation BL(CS->getRBracLoc(),
+ PDB.getSourceManager());
+ BL = PathDiagnosticLocation(BL.asLocation());
+ EB.addEdge(BL);
}
}