[PATCH] C undefined behavior fix
jtv
jtv@xs4all.nl
Mon Jan 7 14:16:00 GMT 2002
On Mon, Jan 07, 2002 at 05:28:32PM -0500, Tim Hollebeek wrote:
>
> You're not allowed to be that smart wrt volatile. If the programmer
> says the value might change unpredictably and should not be optimized,
> then It Is So and the compiler must respect that even if it determines
> It Cannot Possibly Happen.
Naturally I hope you're right. But how does that follow from the Standard?
I have to admit I don't have a copy handy. :(
Let's say we have this simplified version of the problem:
int a = 3;
{
volatile int b = 10;
a += b;
}
Is there really language in the Standard preventing the compiler from
constant-folding this code to "int a = 13;"?
Jeroen
More information about the Gcc
mailing list