Fix the Forced sign flag that is incorrectly ignored for scientific
notation and shortest representation.

Tested on x86_64-pc-linux-gnu, committed on trunk

gcc/ada/

        * libgnat/g-forstr.adb (Is_Number): Add scientific notation and
        shortest representation.
diff --git a/gcc/ada/libgnat/g-forstr.adb b/gcc/ada/libgnat/g-forstr.adb
--- a/gcc/ada/libgnat/g-forstr.adb
+++ b/gcc/ada/libgnat/g-forstr.adb
@@ -58,7 +58,7 @@ package body GNAT.Formatted_String is
 
    type Sign_Kind is (Neg, Zero, Pos);
 
-   subtype Is_Number is F_Kind range Decimal_Int .. Decimal_Float;
+   subtype Is_Number is F_Kind range Decimal_Int .. Shortest_Decimal_Float_Up;
 
    type F_Sign is (If_Neg, Forced, Space) with Default_Value => If_Neg;
 


Reply via email to