summaryrefslogtreecommitdiffstats
path: root/clang/lib/StaticAnalyzer/Core/SimpleSValBuilder.cpp
diff options
context:
space:
mode:
authorAnna Zaks <ganna@apple.com>2011-12-08 22:38:43 +0000
committerAnna Zaks <ganna@apple.com>2011-12-08 22:38:43 +0000
commit394256cc0d683f51063d31517cbe48572e85103e (patch)
tree9fe5dc31874ed68f3dddba2c887b8479a8957392 /clang/lib/StaticAnalyzer/Core/SimpleSValBuilder.cpp
parent10c480a4610c049d412a82f6dbfb0c9039198a01 (diff)
downloadbcm5719-llvm-394256cc0d683f51063d31517cbe48572e85103e.tar.gz
bcm5719-llvm-394256cc0d683f51063d31517cbe48572e85103e.zip
[analyzer] If memory region is tainted mark data as tainted.
+ random comments llvm-svn: 146199
Diffstat (limited to 'clang/lib/StaticAnalyzer/Core/SimpleSValBuilder.cpp')
-rw-r--r--clang/lib/StaticAnalyzer/Core/SimpleSValBuilder.cpp4
1 files changed, 3 insertions, 1 deletions
diff --git a/clang/lib/StaticAnalyzer/Core/SimpleSValBuilder.cpp b/clang/lib/StaticAnalyzer/Core/SimpleSValBuilder.cpp
index da07d8ad0f6..89d9dc02429 100644
--- a/clang/lib/StaticAnalyzer/Core/SimpleSValBuilder.cpp
+++ b/clang/lib/StaticAnalyzer/Core/SimpleSValBuilder.cpp
@@ -97,10 +97,12 @@ SVal SimpleSValBuilder::evalCastFromNonLoc(NonLoc val, QualType castTy) {
return UnknownVal();
}
+ // If value is a non integer constant, produce unknown.
if (!isa<nonloc::ConcreteInt>(val))
return UnknownVal();
- // Only handle casts from integers to integers.
+ // Only handle casts from integers to integers - if val is an integer constant
+ // being cast to a non integer type, produce unknown.
if (!isLocType && !castTy->isIntegerType())
return UnknownVal();
OpenPOWER on IntegriCloud