------- Comment #3 from s_a_white at email dot com 2005-11-20 14:15 ------- Sorry the summary may not be 100% correct, but it is related to the variable never being directly assigned.
I do understand that using (i.e. assigning from an unintialised variable) will give you random junk, etc. However if you look at the example below you'll see the variable becomes fully assigned (the result is always known given a uint_least32_t being 32 bits). And indeed the first printf does display the correct answer. However whats happened is that some of the code inside the if statement has executed, which is should never have! Please if this code is actually invalid... and indeed somehow the code inside the if statement can legally be executed please could you reclose the bug and drop me a note on why? So far have never seen even highly optimising compilers (e.g. TI c6x, etc) do this. -- s_a_white at email dot com changed: What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |UNCONFIRMED Resolution|INVALID | http://gcc.gnu.org/bugzilla/show_bug.cgi?id=24956