For the below test:
int main() {
volatile int foo = 0;
int beards = 0;
bool cond = foo == 4;
int bar = 0;
if (cond)
beards = 8;
else
beards = 4;
volatile bool face = cond;
return face ? beards : 0;
}When in the debugger, on the line "if (cond)", and we step from the
'if' condition, it steps onto the unreached branch ("beards = 8;"), which is
misleading, as described by: