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) {