> From: Robert Dewar <[EMAIL PROTECTED]> >> Paul Schlie wrote: >>> What about optimising x*2/2 to x? >> >> Given that "C" requires the above be evaluated as (x*2)/2, as the language >> specifies that the syntax defines the precedence of the operations, and that >> no optimization should alter the behavior as specified by the program; I'd >> say that unless it was known that the value range of x was between 0 >> and INT_MAX, the optimization is simply invalid. > > the optimization is indeed valid > > optimizations may most certainly alter behavior of undefined > code. think about uninitialized local variables.
I don't contest that it may, I simply don't believe it should.