The bug was first described here : http://stackoverflow.com/questions/2960307/
I declare a global variable, myArrayOfPod, which is an array of a pod struct MyPod, using an initializer list initializer list. I then expect the structure to be initialized at compile time.
Still, the code below compare an array of POD struct with an array of void *, and shows that, before the DEBUG execution of main, the array of POD is NULL-ed, whereas the array of void * is correctly initialized.
In RELEASE, both are correctly initialized.
As every value is constant and known at compile time, and as the struct is a POD, I expect the array of POD to be initialized statically.
The same code was tested on gcc 4.4.3, where it behaves as expected (both arrays are initialized correctly).