https://gcc.gnu.org/bugzilla/show_bug.cgi?id=120400
--- Comment #8 from Iain Sandoe <iains at gcc dot gnu.org> --- (In reply to Andrew Pinski from comment #7) > I think if you set TREE_SIDE_EFFECTS on the decls that have a D_V_E, then it > might just work. i can also try that (but I'd want to avoid doing something that's possibly fragile). note that: int foo (bool *a) { if (a && !*a) return 6; return 42; } behaves as expected.