rsmith added a comment.

In https://reviews.llvm.org/D39149#910936, @smeenai wrote:

> I'm thinking you could account for all possible type sizes in the existing 
> (enabled by default) warning, and have a different warning for possibly 
> tautological comparisons. E.g. if a `long` is being compared against 
> `INT_MAX`, you know that's only tautological on some platforms, so it should 
> go under `-Wpossible-tautological-constant-compare` (which would only be 
> enabled by `-Weverything` and not `-Wall` or `-Wextra`); 
> `-Wtautological-constant-compare` should be reserved for definitely 
> tautological cases.


This sounds like a very promising direction. (That is: if the types of the 
values being compared are different, but are of the same size, then suppress 
the warning or move it to a different warning group that's not part of 
`-Wtautological-compare`.) That would also suppress warnings for cases like 'ch 
> CHAR_MAX', when `ch` is a `char`, but we could detect and re-enable the 
warning for such cases by, say, always warning if the constant side is an 
integer literal.


https://reviews.llvm.org/D39149



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

Reply via email to