------- Comment #14 from rguenth at gcc dot gnu dot org 2006-06-07 19:16 ------- Oh, btw. the transformation is implemented correctly. Just we fold -1-a to ~a (ok), and then negate_expr_p says it can easily negate ~a and negate_expr negates it as a+1, which introduces the overflow. So, I'll prepare a different fix.
-- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27116