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 | 5226755ab5ce6346f98b5f41cdcffbe84c5bb484 (patch) | |
tree | 0aea99ec0e3a441d929275b3bbdffe505afda40b /Analysis/ExplodedGraph.cpp | |
parent | 37958ee2750db056dc276f045cc8876f2eab2984 (diff) |
Fixed subtle caching bug in ExplodedGraph that would cause some nodes to
be incorrectly merged together.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@47851 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'Analysis/ExplodedGraph.cpp')
-rw-r--r-- | Analysis/ExplodedGraph.cpp | 16 |
1 files changed, 0 insertions, 16 deletions
diff --git a/Analysis/ExplodedGraph.cpp b/Analysis/ExplodedGraph.cpp index ca5842656f..69d190d09f 100644 --- a/Analysis/ExplodedGraph.cpp +++ b/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; - } -} |