summaryrefslogtreecommitdiff
path: root/lib/Sema/SemaExpr.cpp
diff options
context:
space:
mode:
authorNikola Smiljanic <popizdeh@gmail.com>2014-05-30 00:15:04 +0000
committerNikola Smiljanic <popizdeh@gmail.com>2014-05-30 00:15:04 +0000
commit1fb293dbccb834faa6e624efff10ad06c492f5ce (patch)
tree6f03f281deb81eb06e10e5946b352cf998c989b4 /lib/Sema/SemaExpr.cpp
parentf3117b8d891ba786c52b97af5540c0e76fdb79f3 (diff)
downloadclang-1fb293dbccb834faa6e624efff10ad06c492f5ce.tar.gz
clang-1fb293dbccb834faa6e624efff10ad06c492f5ce.tar.bz2
clang-1fb293dbccb834faa6e624efff10ad06c492f5ce.tar.xz
PR12214 - Warn on suspicious self-compound-assignments.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@209867 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Sema/SemaExpr.cpp')
-rw-r--r--lib/Sema/SemaExpr.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/lib/Sema/SemaExpr.cpp b/lib/Sema/SemaExpr.cpp
index 1d4792e9e0..9b4c6382dc 100644
--- a/lib/Sema/SemaExpr.cpp
+++ b/lib/Sema/SemaExpr.cpp
@@ -9297,8 +9297,9 @@ ExprResult Sema::CreateBuiltinBinOp(SourceLocation OpLoc,
ResultTy = CheckAssignmentOperands(LHS.get(), RHS, OpLoc, CompResultTy);
break;
case BO_AndAssign:
+ case BO_OrAssign: // fallthrough
+ DiagnoseSelfAssignment(*this, LHS.get(), RHS.get(), OpLoc);
case BO_XorAssign:
- case BO_OrAssign:
CompResultTy = CheckBitwiseOperands(LHS, RHS, OpLoc, true);
CompLHSTy = CompResultTy;
if (!CompResultTy.isNull() && !LHS.isInvalid() && !RHS.isInvalid())