diff options
author | Ted Kremenek <kremenek@apple.com> | 2008-10-01 00:21:14 +0000 |
---|---|---|
committer | Ted Kremenek <kremenek@apple.com> | 2008-10-01 00:21:14 +0000 |
commit | 60a6e0ce72a24d6247602625c631fc3dc7bfd8d4 (patch) | |
tree | c12a06611efdb4af760039d9fb442a47139ca9a1 /lib/Analysis/SymbolManager.cpp | |
parent | b10362acd971b84d4525334b275fcbfb4e42cb85 (diff) |
Add a QualType to ConjuredSymbol to represent the type and size of the symbol.
Use this updated interface when invalidating arguments passed by reference; the type of symbol is of the object passed by reference, not the reference itself.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56894 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Analysis/SymbolManager.cpp')
-rw-r--r-- | lib/Analysis/SymbolManager.cpp | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/lib/Analysis/SymbolManager.cpp b/lib/Analysis/SymbolManager.cpp index beb4379f99..24d2ed7253 100644 --- a/lib/Analysis/SymbolManager.cpp +++ b/lib/Analysis/SymbolManager.cpp @@ -73,10 +73,10 @@ SymbolID SymbolManager::getContentsOfSymbol(SymbolID sym) { return SymbolCounter++; } -SymbolID SymbolManager::getConjuredSymbol(Expr* E, unsigned Count) { +SymbolID SymbolManager::getConjuredSymbol(Expr* E, QualType T, unsigned Count) { llvm::FoldingSetNodeID profile; - SymbolConjured::Profile(profile, E, Count); + SymbolConjured::Profile(profile, E, T, Count); void* InsertPos; SymbolData* SD = DataSet.FindNodeOrInsertPos(profile, InsertPos); @@ -85,7 +85,7 @@ SymbolID SymbolManager::getConjuredSymbol(Expr* E, unsigned Count) { return SD->getSymbol(); SD = (SymbolData*) BPAlloc.Allocate<SymbolConjured>(); - new (SD) SymbolConjured(SymbolCounter, E, Count); + new (SD) SymbolConjured(SymbolCounter, E, T, Count); DataSet.InsertNode(SD, InsertPos); DataMap[SymbolCounter] = SD; @@ -118,7 +118,7 @@ QualType SymbolData::getType(const SymbolManager& SymMgr) const { } case ConjuredKind: - return cast<SymbolConjured>(this)->getExpr()->getType(); + return cast<SymbolConjured>(this)->getType(); } } |