aboutsummaryrefslogtreecommitdiff
path: root/gcc/ada/a-except.adb
diff options
context:
space:
mode:
authorArnaud Charlet <charlet@gcc.gnu.org>2014-07-29 16:00:06 +0200
committerArnaud Charlet <charlet@gcc.gnu.org>2014-07-29 16:00:06 +0200
commiteffdbb7d578ab9e8122f17b7249c107a93e685ba (patch)
tree4711b0c6c08e0a2d38a040380cfbf314c9bbe8e9 /gcc/ada/a-except.adb
parent09d67391ff9fa5a74a2bf727a50b5199b736fdb0 (diff)
downloadgcc-effdbb7d578ab9e8122f17b7249c107a93e685ba.zip
gcc-effdbb7d578ab9e8122f17b7249c107a93e685ba.tar.gz
gcc-effdbb7d578ab9e8122f17b7249c107a93e685ba.tar.bz2
[multiple changes]
2014-07-29 Robert Dewar <dewar@adacore.com> * gnat_rm.texi: Change theta to @ in documentation of aspect Dimension_System. 2014-07-29 Robert Dewar <dewar@adacore.com> * sem_attr.adb (Uneval_Old_Msg): Flags Uneval_Old_Accept/Warn are now on pragma. * sem_ch13.adb (Analyze_Aspect_Specifications): Remove setting of Uneval_Old_* * sem_prag.adb (Analyze_Pragma): Set Uneval_Old_* flags * sinfo.ads, sinfo.adb: Move Uneval_Old_Accept/Warn to N_Pragma node. 2014-07-29 Javier Miranda <miranda@adacore.com> * types.ads Update documentation on how to add new reason codes for exceptions. (RT_Exception_Code): Keep values ordered by their reason code. Required by the .NET backend. (RT_CE_Exceptions): Subtype declaration removed. (RT_PE_Exceptions): Subtype declaration removed. (RT_SE_Exceptions): Subtype declaration removed. (Kind): New mapping table of RT_Exception_Codes. * exp_ch11.adb (Get_RT_Exception_Entity): Updated to use the new mapping table. * tbuild.adb (Make_Raise_Storage_Error): Updated to use the new mapping table. (Make_Raise_Program_Error): Updated to use the new mapping table. (Make_Raise_Storage_Error): Updated to use the new mapping table. * a-except.adb Keep Rcheck_CE_xxx entities ordered according to their reason code. From-SVN: r213194
Diffstat (limited to 'gcc/ada/a-except.adb')
-rw-r--r--gcc/ada/a-except.adb116
1 files changed, 56 insertions, 60 deletions
diff --git a/gcc/ada/a-except.adb b/gcc/ada/a-except.adb
index 5d26790..2d496fb 100644
--- a/gcc/ada/a-except.adb
+++ b/gcc/ada/a-except.adb
@@ -365,90 +365,86 @@ package body Ada.Exceptions is
-- the normal approach is to keep them in the same order as declarations
-- in Types.
- -- This section is an IMPORTANT EXCEPTION. It is essential that the
- -- routines in this section be declared in the same order as the Rmsg_xx
- -- constants in the following section. This is required by the .Net runtime
- -- which uses the exceptmsg.awk script to generate require exception data,
- -- and this script requires and expects that this ordering rule holds.
+ -- This section is an IMPORTANT EXCEPTION. It is required by the .Net
+ -- runtime that the routine Rcheck_PE_Finalize_Raise_Exception is at the
+ -- end of the list (for reasons that are documented in the exceptmsg.awk
+ -- script which takes care of generating the required exception data).
- -- The one exception is that Rcheck_PE_Finalize_Raise_Exception is at the
- -- end of the list (for reasons that are documented with this routine). The
- -- script (exceptmsg.awk) has this special exception built in.
-
- procedure Rcheck_CE_Access_Check
+ procedure Rcheck_CE_Access_Check -- 00
(File : System.Address; Line : Integer);
- procedure Rcheck_CE_Null_Access_Parameter
+ procedure Rcheck_CE_Null_Access_Parameter -- 01
(File : System.Address; Line : Integer);
- procedure Rcheck_CE_Discriminant_Check
+ procedure Rcheck_CE_Discriminant_Check -- 02
(File : System.Address; Line : Integer);
- procedure Rcheck_CE_Divide_By_Zero
+ procedure Rcheck_CE_Divide_By_Zero -- 03
(File : System.Address; Line : Integer);
- procedure Rcheck_CE_Explicit_Raise
+ procedure Rcheck_CE_Explicit_Raise -- 04
(File : System.Address; Line : Integer);
- procedure Rcheck_CE_Index_Check
+ procedure Rcheck_CE_Index_Check -- 05
(File : System.Address; Line : Integer);
- procedure Rcheck_CE_Invalid_Data
+ procedure Rcheck_CE_Invalid_Data -- 06
(File : System.Address; Line : Integer);
- procedure Rcheck_CE_Length_Check
+ procedure Rcheck_CE_Length_Check -- 07
(File : System.Address; Line : Integer);
- procedure Rcheck_CE_Null_Exception_Id
+ procedure Rcheck_CE_Null_Exception_Id -- 08
(File : System.Address; Line : Integer);
- procedure Rcheck_CE_Null_Not_Allowed
+ procedure Rcheck_CE_Null_Not_Allowed -- 09
(File : System.Address; Line : Integer);
- procedure Rcheck_CE_Overflow_Check
+ procedure Rcheck_CE_Overflow_Check -- 10
(File : System.Address; Line : Integer);
- procedure Rcheck_CE_Partition_Check
+ procedure Rcheck_CE_Partition_Check -- 11
(File : System.Address; Line : Integer);
- procedure Rcheck_CE_Range_Check
+ procedure Rcheck_CE_Range_Check -- 12
(File : System.Address; Line : Integer);
- procedure Rcheck_CE_Tag_Check
+ procedure Rcheck_CE_Tag_Check -- 13
(File : System.Address; Line : Integer);
- procedure Rcheck_PE_Access_Before_Elaboration
+ procedure Rcheck_PE_Access_Before_Elaboration -- 14
(File : System.Address; Line : Integer);
- procedure Rcheck_PE_Accessibility_Check
+ procedure Rcheck_PE_Accessibility_Check -- 15
(File : System.Address; Line : Integer);
- procedure Rcheck_PE_Address_Of_Intrinsic
+ procedure Rcheck_PE_Address_Of_Intrinsic -- 16
(File : System.Address; Line : Integer);
- procedure Rcheck_PE_Aliased_Parameters
+ procedure Rcheck_PE_Aliased_Parameters -- 17
(File : System.Address; Line : Integer);
- procedure Rcheck_PE_All_Guards_Closed
+ procedure Rcheck_PE_All_Guards_Closed -- 18
(File : System.Address; Line : Integer);
- procedure Rcheck_PE_Bad_Predicated_Generic_Type
+ procedure Rcheck_PE_Bad_Predicated_Generic_Type -- 19
(File : System.Address; Line : Integer);
- procedure Rcheck_PE_Current_Task_In_Entry_Body
+ procedure Rcheck_PE_Current_Task_In_Entry_Body -- 20
(File : System.Address; Line : Integer);
- procedure Rcheck_PE_Duplicated_Entry_Address
+ procedure Rcheck_PE_Duplicated_Entry_Address -- 21
(File : System.Address; Line : Integer);
- procedure Rcheck_PE_Explicit_Raise
+ procedure Rcheck_PE_Explicit_Raise -- 22
(File : System.Address; Line : Integer);
- procedure Rcheck_PE_Implicit_Return
+
+ procedure Rcheck_PE_Implicit_Return -- 24
(File : System.Address; Line : Integer);
- procedure Rcheck_PE_Misaligned_Address_Value
+ procedure Rcheck_PE_Misaligned_Address_Value -- 25
(File : System.Address; Line : Integer);
- procedure Rcheck_PE_Missing_Return
+ procedure Rcheck_PE_Missing_Return -- 26
(File : System.Address; Line : Integer);
- procedure Rcheck_PE_Non_Transportable_Actual
+ procedure Rcheck_PE_Overlaid_Controlled_Object -- 27
(File : System.Address; Line : Integer);
- procedure Rcheck_PE_Overlaid_Controlled_Object
+ procedure Rcheck_PE_Potentially_Blocking_Operation -- 28
(File : System.Address; Line : Integer);
- procedure Rcheck_PE_Potentially_Blocking_Operation
+ procedure Rcheck_PE_Stubbed_Subprogram_Called -- 29
(File : System.Address; Line : Integer);
- procedure Rcheck_PE_Stubbed_Subprogram_Called
+ procedure Rcheck_PE_Unchecked_Union_Restriction -- 30
(File : System.Address; Line : Integer);
- procedure Rcheck_PE_Unchecked_Union_Restriction
+ procedure Rcheck_PE_Non_Transportable_Actual -- 31
(File : System.Address; Line : Integer);
- procedure Rcheck_SE_Empty_Storage_Pool
+ procedure Rcheck_SE_Empty_Storage_Pool -- 32
(File : System.Address; Line : Integer);
- procedure Rcheck_SE_Explicit_Raise
+ procedure Rcheck_SE_Explicit_Raise -- 33
(File : System.Address; Line : Integer);
- procedure Rcheck_SE_Infinite_Recursion
+ procedure Rcheck_SE_Infinite_Recursion -- 34
(File : System.Address; Line : Integer);
- procedure Rcheck_SE_Object_Too_Large
+ procedure Rcheck_SE_Object_Too_Large -- 35
(File : System.Address; Line : Integer);
- procedure Rcheck_PE_Stream_Operation_Not_Allowed
+ procedure Rcheck_PE_Stream_Operation_Not_Allowed -- 36
(File : System.Address; Line : Integer);
- procedure Rcheck_PE_Finalize_Raised_Exception
+ procedure Rcheck_PE_Finalize_Raised_Exception -- 23
(File : System.Address; Line : Integer);
-- This routine is separated out because it has quite different behavior
-- from the others. This is the "finalize/adjust raised exception". This
@@ -1380,13 +1376,6 @@ package body Ada.Exceptions is
Raise_Program_Error_Msg (File, Line, Rmsg_26'Address);
end Rcheck_PE_Missing_Return;
- procedure Rcheck_PE_Non_Transportable_Actual
- (File : System.Address; Line : Integer)
- is
- begin
- Raise_Program_Error_Msg (File, Line, Rmsg_31'Address);
- end Rcheck_PE_Non_Transportable_Actual;
-
procedure Rcheck_PE_Overlaid_Controlled_Object
(File : System.Address; Line : Integer)
is
@@ -1401,13 +1390,6 @@ package body Ada.Exceptions is
Raise_Program_Error_Msg (File, Line, Rmsg_28'Address);
end Rcheck_PE_Potentially_Blocking_Operation;
- procedure Rcheck_PE_Stream_Operation_Not_Allowed
- (File : System.Address; Line : Integer)
- is
- begin
- Raise_Program_Error_Msg (File, Line, Rmsg_36'Address);
- end Rcheck_PE_Stream_Operation_Not_Allowed;
-
procedure Rcheck_PE_Stubbed_Subprogram_Called
(File : System.Address; Line : Integer)
is
@@ -1422,6 +1404,13 @@ package body Ada.Exceptions is
Raise_Program_Error_Msg (File, Line, Rmsg_30'Address);
end Rcheck_PE_Unchecked_Union_Restriction;
+ procedure Rcheck_PE_Non_Transportable_Actual
+ (File : System.Address; Line : Integer)
+ is
+ begin
+ Raise_Program_Error_Msg (File, Line, Rmsg_31'Address);
+ end Rcheck_PE_Non_Transportable_Actual;
+
procedure Rcheck_SE_Empty_Storage_Pool
(File : System.Address; Line : Integer)
is
@@ -1450,6 +1439,13 @@ package body Ada.Exceptions is
Raise_Storage_Error_Msg (File, Line, Rmsg_35'Address);
end Rcheck_SE_Object_Too_Large;
+ procedure Rcheck_PE_Stream_Operation_Not_Allowed
+ (File : System.Address; Line : Integer)
+ is
+ begin
+ Raise_Program_Error_Msg (File, Line, Rmsg_36'Address);
+ end Rcheck_PE_Stream_Operation_Not_Allowed;
+
procedure Rcheck_PE_Finalize_Raised_Exception
(File : System.Address; Line : Integer)
is