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: