From 10099a6c5eb8885a014c2306ee18e1a3feaf0772 Mon Sep 17 00:00:00 2001 From: Ted Kremenek Date: Mon, 28 Jan 2008 22:28:54 +0000 Subject: [PATCH] Added transfer function logic for "%=" operator. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@46470 91177308-0d34-0410-b5e6-96231b3b80d8 --- Analysis/GRConstants.cpp | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/Analysis/GRConstants.cpp b/Analysis/GRConstants.cpp index 8c7d51b3e0..9e71d336c7 100644 --- a/Analysis/GRConstants.cpp +++ b/Analysis/GRConstants.cpp @@ -1054,6 +1054,14 @@ void GRConstants::VisitBinaryOperator(BinaryOperator* B, Nodify(Dst, B, N2, SetValue(SetValue(St, B, Result), L1, Result)); break; } + + case BinaryOperator::RemAssign: { + const LValue& L1 = cast(V1); + NonLValue R1 = cast(GetValue(N1->getState(), L1)); + NonLValue Result = R1.Rem(ValMgr, cast(V2)); + Nodify(Dst, B, N2, SetValue(SetValue(St, B, Result), L1, Result)); + break; + } default: Dst.Add(N2); -- 2.50.1