aboutsummaryrefslogtreecommitdiff
path: root/lib/Analysis/GRExprEngine.cpp
diff options
context:
space:
mode:
authorTed Kremenek <kremenek@apple.com>2008-10-27 23:02:39 +0000
committerTed Kremenek <kremenek@apple.com>2008-10-27 23:02:39 +0000
commit934e3e93eface34e73257a4a80cc6752edd588ce (patch)
treedf028179c8ac96eb39b0527b23a1ad6286a36650 /lib/Analysis/GRExprEngine.cpp
parent1a19c29965efa21dedbddce8246d185017a51b89 (diff)
Remove type-punning warning in GRExprEngine. No functionality change.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58292 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Analysis/GRExprEngine.cpp')
-rw-r--r--lib/Analysis/GRExprEngine.cpp11
1 files changed, 7 insertions, 4 deletions
diff --git a/lib/Analysis/GRExprEngine.cpp b/lib/Analysis/GRExprEngine.cpp
index 67dd79a193..e843f5d9e1 100644
--- a/lib/Analysis/GRExprEngine.cpp
+++ b/lib/Analysis/GRExprEngine.cpp
@@ -2178,10 +2178,13 @@ void GRExprEngine::VisitBinaryOperator(BinaryOperator* B,
assert (B->isCompoundAssignmentOp());
- if (Op >= BinaryOperator::AndAssign)
- ((int&) Op) -= (BinaryOperator::AndAssign - BinaryOperator::And);
- else
- ((int&) Op) -= BinaryOperator::MulAssign;
+ if (Op >= BinaryOperator::AndAssign) {
+ Op = (BinaryOperator::Opcode) (Op - (BinaryOperator::AndAssign -
+ BinaryOperator::And));
+ }
+ else {
+ Op = (BinaryOperator::Opcode) (Op - BinaryOperator::MulAssign);
+ }
// Perform a load (the LHS). This performs the checks for
// null dereferences, and so on.