http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59014
--- Comment #5 from Marek Polacek <mpolacek at gcc dot gnu.org> --- (In reply to Marek Polacek from comment #4) > Why does it think that a.1_5 must be 0? That's because VRP is innocent here after all, it's the forwprop1 what does - _6 = a.1_5 & 1; - _7 = (_Bool) _6; + _7 = (_Bool) a.1_5; More (hopefully) tomorrow...