diff options
Diffstat (limited to 'gcc/ada/a-ngelfu.adb')
-rw-r--r-- | gcc/ada/a-ngelfu.adb | 19 |
1 files changed, 5 insertions, 14 deletions
diff --git a/gcc/ada/a-ngelfu.adb b/gcc/ada/a-ngelfu.adb index ef9aadd4306..55d14e7db53 100644 --- a/gcc/ada/a-ngelfu.adb +++ b/gcc/ada/a-ngelfu.adb @@ -729,21 +729,12 @@ package body Ada.Numerics.Generic_Elementary_Functions is Raw_Atan : Float_Type'Base; begin - if abs Y > abs X then - Z := abs (X / Y); - else - Z := abs (Y / X); - end if; - - if Z < Sqrt_Epsilon then - Raw_Atan := Z; + Z := (if abs Y > abs X then abs (X / Y) else abs (Y / X)); - elsif Z = 1.0 then - Raw_Atan := Pi / 4.0; - - else - Raw_Atan := Float_Type'Base (Aux.Atan (Double (Z))); - end if; + Raw_Atan := + (if Z < Sqrt_Epsilon then Z + elsif Z = 1.0 then Pi / 4.0 + else Float_Type'Base (Aux.Atan (Double (Z)))); if abs Y > abs X then Raw_Atan := Half_Pi - Raw_Atan; |