aboutsummaryrefslogtreecommitdiff
path: root/lib/Analysis/GRExprEngine.cpp
diff options
context:
space:
mode:
authorTed Kremenek <kremenek@apple.com>2008-05-21 15:48:33 +0000
committerTed Kremenek <kremenek@apple.com>2008-05-21 15:48:33 +0000
commit5c96c27e7f35e49a36c6ffdc55cdd5de0230f7af (patch)
tree15a1ae14ab49a89b565286a03b4c6f7cb581e3ec /lib/Analysis/GRExprEngine.cpp
parent788d571f4de788403d669d373e5c17b8da07b1ad (diff)
Fixed bug in the transfer function for dereferences: the loaded value from EvalLoad should bind to the UnaryOperator*, not its subexpression.
Added test case to exercise this fix when checking for uses of uninitialized values. Patch by Zhongxing Xu! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@51377 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Analysis/GRExprEngine.cpp')
-rw-r--r--lib/Analysis/GRExprEngine.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/lib/Analysis/GRExprEngine.cpp b/lib/Analysis/GRExprEngine.cpp
index 71d7ed3403..ce64875797 100644
--- a/lib/Analysis/GRExprEngine.cpp
+++ b/lib/Analysis/GRExprEngine.cpp
@@ -1596,7 +1596,7 @@ void GRExprEngine::VisitUnaryOperator(UnaryOperator* U, NodeTy* Pred,
if (asLVal)
MakeNode(Dst, U, *I, SetRVal(St, U, location));
else
- EvalLoad(Dst, Ex, *I, St, location);
+ EvalLoad(Dst, U, *I, St, location);
}
return;