https://gcc.gnu.org/bugzilla/show_bug.cgi?id=124163

Eric Botcazou <ebotcazou at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |ebotcazou at gcc dot gnu.org
             Status|UNCONFIRMED                 |RESOLVED
         Resolution|---                         |INVALID

--- Comment #1 from Eric Botcazou <ebotcazou at gcc dot gnu.org> ---
Ada.Numerics.Pi is a named number so every static operation is performed with
infinite precision on it, include 'Succ and 'Adjacent.

Float'Succ returns the Float machine number immediately above it, which is
0x40490fdb in hexadecimal format.  This machine number is also what is returned
when it is converted to Float, for example Float'Machine (Pi), because it's the
nearest machine number.

So Float'Succ (Pi) = Float'Machine (Pi) = Float_Pi in your example.

Reply via email to