------- Comment #6 from rguenth at gcc dot gnu dot org 2007-03-13 09:30 ------- How tracking _two_ value ranges for signed quantities with undefined overflow. One assuming it is undefined and one with wrapping semantics. Whenever you fold something using the value range you warn if the folding result would differ if using either or the other variant, if they do not differ, don't warn. This way you don't affect existing optimizations and strictly warn in the case the transformation is done taking advantage of the undefined overflow.
-- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31130