http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46899
--- Comment #11 from Eskil Steenberg <eskil at obsession dot se> 2010-12-13 14:09:46 UTC --- Hi > The execution of an undefined operation produces an undefined value, and > any further operation becomes undefined. My argument is that, at compile time this isn't known. Just because the C spec doesn't guarantee any behavior to be consistent between runtime environments, doesn't mean that a compiler designer should assume that the programmer doesn't know the behavior of the hardware he or she is programming for. Searching around the net i found this: http://www.groupsrv.com/groups/view.php?c=computer&g=6034&id=62241&p=0 And reading it, it looks like many consider this to be an area of the spec that is perhaps lacking in clarity. What ever side you come down on this, I think its very clear that gcc, does a very poor job here in terms of usability, since it doesn't in any way communicate to the user what it is doing. At least it should put up a warning. Cheers E