My code looks like this
int condition = 0;
// some code makes condition might not be 0
bool flag = condition ? 1:0;
In GCC debug mode (-O0), flag value is either 1 or 0 as expected. However, in GCC release with debug info mode (-O2 -g), I found in some cases flag value is same as condition value, say 50. Not 1 as expected.
I wonder why is that?