From e98668b178c080f9e264011a3af160d02a796a4f Mon Sep 17 00:00:00 2001 From: Arnaud Charlet Date: Tue, 12 Jun 2012 13:59:32 +0200 Subject: [multiple changes] 2012-06-12 Robert Dewar * stringt.adb: Minor reformatting. 2012-06-12 Robert Dewar * ali-util.adb, stringt.ads: Minor reformatting. 2012-06-12 Hristian Kirtchev * exp_ch7.adb (Process_Declarations): Handle the case where the original context has been wrapped in a block to avoid interference between exception handlers and At_End handlers. (Wrap_HSS_In_Block): Mark the block which contains the original statements of the context as being a finalization wrapper. * sinfo.adb (Is_Finalization_Wrapper): New routine. (Set_Is_Finalization_Wrapper): New routine. * sinfo.ads: Add new attribute Is_Finalization_Wrapper applicable to block statemnts. (Is_Finalization_Wrapper): New routine with corresponding pragma Inline. (Set_Is_Finalization_Wrapper): New routine with corresponding pragma Inline. 2012-06-12 Steve Baird * gnat1drv.adb (Adjust_Global_Switches): No longer need to set Exception_Extra_Info in CodePeer_Mode. From-SVN: r188449 --- gcc/ada/sinfo.adb | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) (limited to 'gcc/ada/sinfo.adb') diff --git a/gcc/ada/sinfo.adb b/gcc/ada/sinfo.adb index e7ad52e..9c6b688 100644 --- a/gcc/ada/sinfo.adb +++ b/gcc/ada/sinfo.adb @@ -1806,6 +1806,14 @@ package body Sinfo is return Flag11 (N); end Is_Expanded_Build_In_Place_Call; + function Is_Finalization_Wrapper + (N : Node_Id) return Boolean is + begin + pragma Assert (False + or else NT (N).Nkind = N_Block_Statement); + return Flag9 (N); + end Is_Finalization_Wrapper; + function Is_Folded_In_Parser (N : Node_Id) return Boolean is begin @@ -4902,6 +4910,14 @@ package body Sinfo is Set_Flag11 (N, Val); end Set_Is_Expanded_Build_In_Place_Call; + procedure Set_Is_Finalization_Wrapper + (N : Node_Id; Val : Boolean := True) is + begin + pragma Assert (False + or else NT (N).Nkind = N_Block_Statement); + Set_Flag9 (N, Val); + end Set_Is_Finalization_Wrapper; + procedure Set_Is_Folded_In_Parser (N : Node_Id; Val : Boolean := True) is begin -- cgit v1.1