OSDN Git Service

2007-08-31 Javier Miranda <miranda@adacore.com>
authorcharlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 31 Aug 2007 10:22:03 +0000 (10:22 +0000)
committercharlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 31 Aug 2007 10:22:03 +0000 (10:22 +0000)
* exp_ch11.adb (Expand_At_End_Handler): Avoid generation of raise
statement when compiling under restriction No_Exceptions_Proparation.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127971 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/ada/exp_ch11.adb

index 0bf8711..bf2381f 100644 (file)
@@ -142,8 +142,15 @@ package body Exp_Ch11 is
 
       Stmnts := New_List (
         Make_Procedure_Call_Statement (Loc,
-          Name => New_Occurrence_Of (Clean, Loc)),
-        Make_Raise_Statement (Loc));
+          Name => New_Occurrence_Of (Clean, Loc)));
+
+      --  Avoid generation of raise stmt if compiling with no exceptions
+      --  propagation
+
+      if not Restriction_Active (No_Exception_Propagation) then
+         Append_To (Stmnts,
+           Make_Raise_Statement (Loc));
+      end if;
 
       Set_Exception_Handlers (HSS, New_List (
         Make_Implicit_Exception_Handler (Loc,