------- Comment #6 from pinskia at gcc dot gnu dot org  2005-11-29 17:34 -------
(In reply to comment #5)
> Note this was the simple fix which exposes those latent bugs as far as I can
> see that should work, we get the correct range but the rest of VRP goes
> bonkers:

I should also note it does not do the correct thing for -fwrapv either.
For the testcase in comment #1:
int f(int i, int j )
{
   int k;
   k = i+ - 1;
   return k < i;
}

i = INT_MIN
k will equal INT_MAX so the comparision will be wrong to return true as INT_MAX
is not less than INT_MIN.

VRP does not like symbolic ranges at all.


-- 


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

Reply via email to