nlewycky added a comment.

> If we're now catching integer overflow in more cases, please add some 
> relevant testcases.

Both more and fewer. More because we no longer have a whitelist of three kinds 
of expressions that we recurse into. Fewer because we no longer call 
IgnoreParenCasts() on the full-expression so "(void)(4608 * 1024 * 1024);" used 
to get a warning but now doesn't. The plan to fix this is a patch to call 
EvaluateIgnoredValue on non-literal types, which will get us that warning back.

I've added two cases to test/Sema/integer-overflow.c and changed one to 
demonstrate this patch. It previously had an additional + on it just to trigger 
the int overflow checking.

> I have an unsubstantiated performance concern: we've seen this overflow 
> checking having a visible effect on compile times in LNT before

I haven't observed slowdown like I did with my previous attempt at this change 
in https://reviews.llvm.org/D31839, but yes we may need to back this patch out 
if it causes problems.


https://reviews.llvm.org/D32412



_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to