https://gcc.gnu.org/bugzilla/show_bug.cgi?id=125513
Drea Pinski <pinskia at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Last reconfirmed| |2026-05-30
Status|UNCONFIRMED |NEW
Ever confirmed|0 |1
--- Comment #3 from Drea Pinski <pinskia at gcc dot gnu.org> ---
Reduced testcase:
```
int f(int a)
{
int t = a*a;
return (t < 0);
}
```
With `-O2 -fno-tree-forwprop`.
t_3 : [irange] int [-INF, -3][0, 2147483645] MASK 0xfffffffd VALUE 0x0
So ranger does not know self*self is always nonnegative while the
*_nonnegative_p functions do.