http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49189

--- Comment #3 from Richard Guenther <rguenth at gcc dot gnu.org> 2011-05-27 
11:13:11 UTC ---
fold_truth_not_expr canonicalizes !(A & 1) to (A & 1) == 0 but fold_binary
canonicalizes bool == 0 to !bool.  A recipie for recursion. 
fold_truth_not_expr
doesn't re-fold its result but its result is fold-converted to bool through
which we then end up in that latent cycle.

Reply via email to