diff options
author | Ted Kremenek <kremenek@apple.com> | 2008-03-03 19:29:58 +0000 |
---|---|---|
committer | Ted Kremenek <kremenek@apple.com> | 2008-03-03 19:29:58 +0000 |
commit | 3f06864c25ef4bd4e7795849a25f90487c334ecd (patch) | |
tree | 49ddfb140e445249f1280ac632f5d7325d80a9ba /clang/Analysis | |
parent | a5e2e60d69c1c98821c972df7a54214a009a20a6 (diff) | |
download | bcm5719-llvm-3f06864c25ef4bd4e7795849a25f90487c334ecd.tar.gz bcm5719-llvm-3f06864c25ef4bd4e7795849a25f90487c334ecd.zip |
Fixed subtle caching bug in ExplodedGraph that would cause some nodes to
be incorrectly merged together.
llvm-svn: 47851
Diffstat (limited to 'clang/Analysis')
-rw-r--r-- | clang/Analysis/ExplodedGraph.cpp | 16 |
1 files changed, 0 insertions, 16 deletions
diff --git a/clang/Analysis/ExplodedGraph.cpp b/clang/Analysis/ExplodedGraph.cpp index ca5842656f7..69d190d09fb 100644 --- a/clang/Analysis/ExplodedGraph.cpp +++ b/clang/Analysis/ExplodedGraph.cpp @@ -68,19 +68,3 @@ ExplodedNodeImpl** ExplodedNodeImpl::NodeGroup::end() const { ExplodedNodeImpl::NodeGroup::~NodeGroup() { if (getKind() == SizeOther) delete &getVector(getPtr()); } - - -ExplodedGraphImpl::~ExplodedGraphImpl() { - // Delete the FoldingSet's in Nodes. Note that the contents - // of the FoldingSets are nodes allocated from the BumpPtrAllocator, - // so all of those will get nuked when that object is destroyed. - for (EdgeNodeSetMap::iterator I=Nodes.begin(), E=Nodes.end(); I!=E; ++I) { - llvm::FoldingSet<ExplodedNodeImpl>* ENodes = I->second; - - for (llvm::FoldingSet<ExplodedNodeImpl>::iterator - I=ENodes->begin(), E=ENodes->end(); I!=E; ++I) - (*I).~ExplodedNodeImpl(); - - delete ENodes; - } -} |