The following test case produces wrong result when compiled with -O2 or -O3.
expected result (-O1, or using intel compiler):
ReadX: x = -5.9436e+29 [ OK ]
WriteX: [ OK ]
observed results (-O2 or -O3)
ReadX: x = 0 [ FAIL ]
WriteX: [ FAIL ]
Created attachment 10677 [details]
C++ test case
To compile: g++ -O3 test3.C -o test3
you are violating C/C++ aliasing rules, accessing doubles as int.
*** This bug has been marked as a duplicate of 21920 ***