Only track integer and pointer values.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66419 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/Analysis/RegionStore.cpp b/lib/Analysis/RegionStore.cpp
index 433b05d..4c54721 100644
--- a/lib/Analysis/RegionStore.cpp
+++ b/lib/Analysis/RegionStore.cpp
@@ -751,8 +751,11 @@
return UndefinedVal();
}
- // All other values are symbolic.
- return SVal::GetRValueSymbolVal(getSymbolManager(), R);
+ // All other integer values are symbolic.
+ if (Loc::IsLocType(RTy) || RTy->isIntegerType())
+ return SVal::GetRValueSymbolVal(getSymbolManager(), R);
+ else
+ return UnknownVal();
}
SVal RegionStoreManager::RetrieveStruct(const GRState* St,const TypedRegion* R){