diff options
author | Robert Dewar <dewar@adacore.com> | 2005-03-15 17:19:12 +0100 |
---|---|---|
committer | Arnaud Charlet <charlet@gcc.gnu.org> | 2005-03-15 17:19:12 +0100 |
commit | 728c3084ee3b33f86c66ed6b401f56107d307dd7 (patch) | |
tree | 0922a90c50185c9ebfde2dc85f0649ff0055d342 /gcc/ada | |
parent | e965f6ad7ede709849f5d99118e84a815dd6d2c1 (diff) | |
download | gcc-728c3084ee3b33f86c66ed6b401f56107d307dd7.zip gcc-728c3084ee3b33f86c66ed6b401f56107d307dd7.tar.gz gcc-728c3084ee3b33f86c66ed6b401f56107d307dd7.tar.bz2 |
usage.adb: Add missing lines for -gnat95 and -gnat05 switches
2005-03-08 Robert Dewar <dewar@adacore.com>
* usage.adb: Add missing lines for -gnat95 and -gnat05 switches
* sem_ch7.adb: Minor change to propagate Is_Ada_2005 flag
* i-c.adb: Clarify that AI-258 behavior is also intended in Ada 95
From-SVN: r96511
Diffstat (limited to 'gcc/ada')
-rw-r--r-- | gcc/ada/i-c.adb | 9 | ||||
-rw-r--r-- | gcc/ada/sem_ch7.adb | 2 | ||||
-rw-r--r-- | gcc/ada/usage.adb | 18 |
3 files changed, 25 insertions, 4 deletions
diff --git a/gcc/ada/i-c.adb b/gcc/ada/i-c.adb index da8e314..2503449 100644 --- a/gcc/ada/i-c.adb +++ b/gcc/ada/i-c.adb @@ -504,7 +504,8 @@ package body Interfaces.C is -- char_array. The lower bound of this array is required to be zero -- (RM B.3(50)) but that is of course impossible given that size_t -- is unsigned. According to Ada 2005 AI-258, the result is to raise - -- Constraint_Error. + -- Constraint_Error. This is also the appropriate behavior in Ada 95, + -- since nothing else makes sense. if Item'Length = 0 then raise Constraint_Error; @@ -593,7 +594,8 @@ package body Interfaces.C is -- wchar_array. The lower bound of this array is required to be zero -- (RM B.3(50)) but that is of course impossible given that size_t -- is unsigned. According to Ada 2005 AI-258, the result is to raise - -- Constraint_Error. + -- Constraint_Error. This is also the appropriate behavior in Ada 95, + -- since nothing else makes sense. if Item'Length = 0 then raise Constraint_Error; @@ -680,7 +682,8 @@ package body Interfaces.C is -- char16_array. The lower bound of this array is required to be zero -- (RM B.3(50)) but that is of course impossible given that size_t -- is unsigned. According to Ada 2005 AI-258, the result is to raise - -- Constraint_Error. + -- Constraint_Error. This is also the appropriate behavior in Ada 95, + -- since nothing else makes sense. if Item'Length = 0 then raise Constraint_Error; diff --git a/gcc/ada/sem_ch7.adb b/gcc/ada/sem_ch7.adb index b56917d..cf1cc2f 100644 --- a/gcc/ada/sem_ch7.adb +++ b/gcc/ada/sem_ch7.adb @@ -1685,6 +1685,8 @@ package body Sem_Ch7 is (Full)); Set_Is_Volatile (Priv, Is_Volatile (Full)); Set_Treat_As_Volatile (Priv, Treat_As_Volatile (Full)); + Set_Is_Ada_2005 (Priv, Is_Ada_2005 (Full)); + -- Why is atomic not copied here ??? if Referenced (Full) then Set_Referenced (Priv); diff --git a/gcc/ada/usage.adb b/gcc/ada/usage.adb index 4441490..64bb0b1 100644 --- a/gcc/ada/usage.adb +++ b/gcc/ada/usage.adb @@ -26,6 +26,7 @@ with Hostparm; with Namet; use Namet; +with Opt; use Opt; with Osint; use Osint; with Output; use Output; with System.WCh_Con; use System.WCh_Con; @@ -466,9 +467,24 @@ begin Write_Switch_Char ("83"); Write_Line ("Enforce Ada 83 restrictions"); + -- Line for -gnat95 switch + + Write_Switch_Char ("95"); + + if Ada_Version_Default = Ada_95 then + Write_Line ("Ada 95 mode (default)"); + else + Write_Line ("Enforce Ada 95 restrictions"); + end if; + -- Line for -gnat05 switch Write_Switch_Char ("05"); - Write_Line ("Allow Ada 2005 extensions"); + + if Ada_Version_Default = Ada_05 then + Write_Line ("Ada 2005 mode (default)"); + else + Write_Line ("Allow Ada 2005 extensions"); + end if; end Usage; |