legal ruling on aliasing
Bruce Korb
bkorb@veritas.com
Mon May 19 21:34:00 GMT 2003
In another list, the issue was raised whether or not these
two constructs are completely equivalent under the laws of
aliasing:
stumble_t s;
function( (mumble_t*)(void*)&s );
versus:
stumble_t s;
{
void* v = (void*)&s; // scope constrained to following:
function( (mumble_t*)v );
}
In other words, would the compiler be allowed to presume that
function() did not modify `s'? Particularly, could it make
such an assumption in one case and not the other?
More information about the Gcc
mailing list