Emit the correct diagnostic when a comma is in an ICE.
llvm-svn: 60316
diff --git a/clang/lib/AST/ExprConstant.cpp b/clang/lib/AST/ExprConstant.cpp
index 855385c..b9f3c77 100644
--- a/clang/lib/AST/ExprConstant.cpp
+++ b/clang/lib/AST/ExprConstant.cpp
@@ -516,13 +516,13 @@
// Evaluate the side that actually matters; this needs to be
// handled specially because calling Visit() on the LHS can
// have strange results when it doesn't have an integral type.
- if (Visit(E->getRHS()))
- return true;
-
+ if (!Visit(E->getRHS()))
+ return false;
+
if (Info.ShortCircuit)
return Extension(E->getOperatorLoc(), diag::note_comma_in_ice, E);
- return false;
+ return true;
}
if (E->isLogicalOp()) {