summaryrefslogtreecommitdiffstats
path: root/clang/lib/Sema/SemaExpr.cpp
diff options
context:
space:
mode:
authorTed Kremenek <kremenek@apple.com>2011-03-01 18:09:31 +0000
committerTed Kremenek <kremenek@apple.com>2011-03-01 18:09:31 +0000
commit63657fe995f2d30bc40816bb38836f5387bd881d (patch)
tree9c82584c241658df883c25a47e5ed49b3916a777 /clang/lib/Sema/SemaExpr.cpp
parent315c1675e8ed558aa827f56af260c85e03f07477 (diff)
downloadbcm5719-llvm-63657fe995f2d30bc40816bb38836f5387bd881d.tar.gz
bcm5719-llvm-63657fe995f2d30bc40816bb38836f5387bd881d.zip
Don't wanr about "negative shifts" in code that is unreachable. Fixes PR 5544.
llvm-svn: 126762
Diffstat (limited to 'clang/lib/Sema/SemaExpr.cpp')
-rw-r--r--clang/lib/Sema/SemaExpr.cpp4
1 files changed, 3 insertions, 1 deletions
diff --git a/clang/lib/Sema/SemaExpr.cpp b/clang/lib/Sema/SemaExpr.cpp
index 321e96f1e75..bc2251a4e0e 100644
--- a/clang/lib/Sema/SemaExpr.cpp
+++ b/clang/lib/Sema/SemaExpr.cpp
@@ -6641,7 +6641,9 @@ static void DiagnoseBadShiftValues(Sema& S, Expr *&lex, Expr *&rex,
return;
if (Right.isNegative()) {
- S.Diag(Loc, diag::warn_shift_negative) << rex->getSourceRange();
+ S.DiagRuntimeBehavior(Loc, rex,
+ S.PDiag(diag::warn_shift_negative)
+ << rex->getSourceRange());
return;
}
llvm::APInt LeftBits(Right.getBitWidth(),
OpenPOWER on IntegriCloud