GRExprEngine/CFRefCount/GRSimpleVals: We don't do any special handling (yet) of vector types. Add explicit checks that when we process integers that they really are scalars.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59225 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/Analysis/CFRefCount.cpp b/lib/Analysis/CFRefCount.cpp
index b33a7ca..8c16c9f 100644
--- a/lib/Analysis/CFRefCount.cpp
+++ b/lib/Analysis/CFRefCount.cpp
@@ -1605,7 +1605,7 @@
QualType T = R->getType(Ctx);
// FIXME: handle structs.
- if (T->isIntegerType() || Loc::IsLocType(T)) {
+ if (Loc::IsLocType(T) || (T->isIntegerType() && T->isScalarType())) {
SymbolID NewSym =
Eng.getSymbolManager().getConjuredSymbol(*I, T, Count);
@@ -1669,7 +1669,7 @@
QualType T = Ex->getType();
- if (T->isIntegerType() || Loc::IsLocType(T)) {
+ if (Loc::IsLocType(T) || (T->isIntegerType() && T->isScalarType())) {
unsigned Count = Builder.getCurrentBlockCount();
SymbolID Sym = Eng.getSymbolManager().getConjuredSymbol(Ex, Count);