]> granicus.if.org Git - clang/commit
Change FunctionSummary.h's definition of SetOfDecls to be an ImmutableList instead
authorTed Kremenek <kremenek@apple.com>
Fri, 27 Apr 2012 00:38:33 +0000 (00:38 +0000)
committerTed Kremenek <kremenek@apple.com>
Fri, 27 Apr 2012 00:38:33 +0000 (00:38 +0000)
commitcb0a5039c243f5b0c178e70f424adac334e5789b
tree7289dc1922d07b70aaa7871d07d12ed851820a61
parente9a4c01978f505f1fd23e63d18230d30ebe29ed0
Change FunctionSummary.h's definition of SetOfDecls to be an ImmutableList instead
of a mutable SmallPtrSet.  While iterating over LocalTUDecls, there were cases
where we could modify LocalTUDecls, which could result in invalidating an iterator
and an analyzer crash.  Along the way, switch some uses of std::queue to std::dequeue,
which should be slightly more efficient.

Unfortunately, this is a difficult case to create a test case for.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155680 91177308-0d34-0410-b5e6-96231b3b80d8
include/clang/StaticAnalyzer/Core/PathSensitive/FunctionSummary.h
lib/StaticAnalyzer/Frontend/AnalysisConsumer.cpp