<html><head><meta http-equiv="Content-Type" content="text/html charset=us-ascii"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><div><blockquote type="cite"><div><br><br>- Thanks, Fariborz<br><br><blockquote type="cite"><br>Rest of your comments, are incorporated in this patch.<br><br><span class="Apple-tab-span" style="white-space:pre">  </span><br><patch-intoverflow.txt><br><br>- Thanks, Fariborz<br><br><blockquote type="cite"><br>EvalInfo::keepEvaluatingAfterFailure should return true in<br>IntOverflowCheckMode, so that we check for overflow even if some<br>subexpressions can't be evaluated as constants. Likewise, either you<br>should suppress other diagnostics in this mode, or (preferably) just<br>directly emit the warning from ExprConstant.cpp; currently, if some<br>other part of the expression evaluator emits a "could not evaluate"<br>note first, it'll suppress your warning, and we will only emit one<br>warning even if there are multiple instances of overflow within the<br>expression.<br><br>The name 'EvaluateKnownConstIntForOverflow' isn't right -- we're not<br>dealing with an expression which is known to be an ICE. Just<br>'EvaluateForOverflow'?<br><br>In CPlusPlus11, IsConstexpr should be 'true' for the calls to<br>ActOnFinishFullExpr in ActOnCaseStmt.<br><br>I would prefer you factored out the shared code between<br>Expr::EvaluateAsRValue and Expr::EvaluateForOverflow rather than<br>adding a new parameter to Expr::EvaluateAsRValue.<br></blockquote><br>_______________________________________________<br>cfe-commits mailing list<br><a href="mailto:cfe-commits@cs.uiuc.edu">cfe-commits@cs.uiuc.edu</a><br>http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits<br></blockquote><br>_______________________________________________<br>cfe-commits mailing list<br><a href="mailto:cfe-commits@cs.uiuc.edu">cfe-commits@cs.uiuc.edu</a><br>http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits<br></div></blockquote></div><br></body></html>