https://gcc.gnu.org/bugzilla/show_bug.cgi?id=128306
Drea Pinski <pinskia at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|UNCONFIRMED |ASSIGNED
Summary|`a - a` for real types |`a - a` for real types
|where a is not a NaN can be |where a is not a NaN can be
|assumed to be >= 0 |assumed to have a range of
| |`[0, +INF] +-NaN`
Last reconfirmed| |2026-10-30
Ever confirmed|0 |1
--- Comment #5 from Drea Pinski <pinskia at gcc dot gnu.org> ---
So that makes sense. Now removing the subtraction is a generic trapping math
issue. But the range can be done as `[-0.0, +INF] +-NaN` then and things will
just work. This is easy to add I think.