Ian Lance Taylor - Re: PATCH RFC: -Wstrict-overflow, take 2 (original) (raw)
This is the mail archive of the gcc-patches@gcc.gnu.orgmailing list for the GCC project.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
Other format: | [Raw text] |
- From: Ian Lance Taylor
- To: Jonathan Lennox
- Cc: gcc-patches at gcc dot gnu dot org
- Date: 16 Feb 2007 13:26:57 -0800
- Subject: Re: PATCH RFC: -Wstrict-overflow, take 2
- References: <m3hctwgi1d.fsf@localhost.localdomain> <17878.7709.414766.597566@metro-north.cs.columbia.edu>
Jonathan Lennox lennox@cs.columbia.edu writes:
Ian Lance Taylor wrote:
Here is a new version of my -Wstrict-overflow patch. This incorporates all the comments made on the first version.
At -Wstrict-overflow=3 we get 31 warnings:
../../trunk/gcc/expmed.c:3485: warning: assuming signed overflow does not occur when changing X +- C1 cmp C2 to X cmp C1 +- C2
How hard would it be to change this diagnostic to print the actual values of "X", "+-", "C1", "cmp", and "C2"?
For expmed.c:3485, for example, the warning would be
../../trunk/gcc/expmed.c:3485: warning: assuming signed overflow does not occur when changing "size - 1 < 32" to "size < 32 + 1"
I think this would be much more accessible to people not versed in the intricacies of compilers, and also make it much easier (as in this case) to see at a glance if signed overflow could actually be a problem.
Well, the X can, in general, be anything. As far as I know we don't have a good way to dump general expressions in warning contexts. But maybe I just don't know about it.
The C1 and C2 are integer constants, and would be easy to dump. It's line 8296 of fold-const.c. Go for it.
Ian
- Follow-Ups:
- Re: PATCH RFC: -Wstrict-overflow, take 2
* From: Joseph S. Myers - Re: PATCH RFC: -Wstrict-overflow, take 2
* From: Gabriel Dos Reis - Re: PATCH RFC: -Wstrict-overflow, take 2
* From: Jonathan Lennox
- Re: PATCH RFC: -Wstrict-overflow, take 2
- References:
- PATCH RFC: -Wstrict-overflow, take 2
* From: Ian Lance Taylor - Re: PATCH RFC: -Wstrict-overflow, take 2
* From: Jonathan Lennox
- PATCH RFC: -Wstrict-overflow, take 2
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |