summaryrefslogtreecommitdiffstats
path: root/clang
diff options
context:
space:
mode:
authorAnna Zaks <ganna@apple.com>2012-03-08 23:16:26 +0000
committerAnna Zaks <ganna@apple.com>2012-03-08 23:16:26 +0000
commit9a008bb7f8b2e2719cfe740018f8c94a4461b5ab (patch)
tree9ceafd690eb88f12155e2c9c339804fe9a1ddc65 /clang
parentbf79fc49b32aff90ca8ec7b0ec061a5f6c963062 (diff)
downloadbcm5719-llvm-9a008bb7f8b2e2719cfe740018f8c94a4461b5ab.tar.gz
bcm5719-llvm-9a008bb7f8b2e2719cfe740018f8c94a4461b5ab.zip
Call Graph: Only the root node is allowed to have an invalid Decl*.
llvm-svn: 152350
Diffstat (limited to 'clang')
-rw-r--r--clang/lib/Analysis/CallGraph.cpp5
1 files changed, 4 insertions, 1 deletions
diff --git a/clang/lib/Analysis/CallGraph.cpp b/clang/lib/Analysis/CallGraph.cpp
index 79519d75123..ca73c4a1611 100644
--- a/clang/lib/Analysis/CallGraph.cpp
+++ b/clang/lib/Analysis/CallGraph.cpp
@@ -87,6 +87,7 @@ CallGraph::~CallGraph() {
}
void CallGraph::addToCallGraph(Decl* D, bool IsGlobal) {
+ assert(D);
CallGraphNode *Node = getOrInsertFunction(D);
if (IsGlobal)
@@ -141,7 +142,9 @@ CallGraphNode *CallGraph::getOrInsertFunction(Decl *F) {
return Node;
Node = new CallGraphNode(F);
- ParentlessNodes.insert(Node);
+ // If not root, add to the parentless list.
+ if (F != 0)
+ ParentlessNodes.insert(Node);
return Node;
}
OpenPOWER on IntegriCloud