This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: signed is undefined and has been since 1992 (in GCC)
Steven Bosscher <stevenb@suse.de> writes:
| On Tuesday 28 June 2005 07:12, Gabriel Dos Reis wrote:
| > For the concrete case at issue, if the hardware I'm writing the C/C++
| > programs for consistently displays modulo arithmetics for signed
| > integer type, Andrew can you tell me why GCC should deny me access
| > to that functionally where it actually can?
|
| Because it disallows compiler transformations? E.g. suddenly a
| loop with a signed variable as the loop counter may wrap around,
| which that means some transformations that are safe now would
| no longer be safe.
You have to define "safe". Obviously, if you make the assumption that
with signed overflow, all bets are off then you can go to
tansformations predicated by that assumption. If you take the
assumption that signed overflow is defined and supported, you can go
transformations predicated by that assumption. In either case, "safe"
is with respect to the semantics chosen.
-- Gaby