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
diff --git a/lib/Analysis/CFRefCount.cpp b/lib/Analysis/CFRefCount.cpp
index adbeff9..733cad1 100644
--- a/lib/Analysis/CFRefCount.cpp
+++ b/lib/Analysis/CFRefCount.cpp
@@ -1515,7 +1515,9 @@
 
         // Set the value of the variable to be a conjured symbol.
         unsigned Count = Builder.getCurrentBlockCount();
-        SymbolID NewSym = Eng.getSymbolManager().getConjuredSymbol(*I, Count);
+        SymbolID NewSym =
+          Eng.getSymbolManager().getConjuredSymbol(*I, DV->getDecl()->getType(),
+                                                   Count);
 
         state = state.SetRVal(*DV,
                               LVal::IsLValType(DV->getDecl()->getType())