summaryrefslogtreecommitdiff
path: root/gcc/ada/exp_ch7.adb
diff options
context:
space:
mode:
authorbosch <bosch@138bc75d-0d04-0410-961f-82ee72b054a4>2001-10-11 23:50:31 +0000
committerbosch <bosch@138bc75d-0d04-0410-961f-82ee72b054a4>2001-10-11 23:50:31 +0000
commitadb1cfa4922af3212ab215fc24ebbdd4c2912f87 (patch)
tree8ee67abeaa2a68e0616f04988bc9edc90d9c475d /gcc/ada/exp_ch7.adb
parentd74eb70603dddd5e774b066b1d5bb67b54d51bba (diff)
downloadgcc-adb1cfa4922af3212ab215fc24ebbdd4c2912f87.tar.gz
* exp_ch7.adb (Make_Transient_Block): if statement is within
exception handler, always use new transient scope to place Clean procedure. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@46208 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/ada/exp_ch7.adb')
-rw-r--r--gcc/ada/exp_ch7.adb4
1 files changed, 3 insertions, 1 deletions
diff --git a/gcc/ada/exp_ch7.adb b/gcc/ada/exp_ch7.adb
index 3feba78ecd7..03e83603a1e 100644
--- a/gcc/ada/exp_ch7.adb
+++ b/gcc/ada/exp_ch7.adb
@@ -6,7 +6,7 @@
-- --
-- B o d y --
-- --
--- $Revision: 1.245 $
+-- $Revision$
-- --
-- Copyright (C) 1992-2001, Free Software Foundation, Inc. --
-- --
@@ -2404,6 +2404,7 @@ package body Exp_Ch7 is
is
Flist : constant Entity_Id := Finalization_Chain_Entity (Current_Scope);
Decls : constant List_Id := New_List;
+ Par : constant Node_Id := Parent (Action);
Instrs : constant List_Id := New_List (Action);
Blk : Node_Id;
@@ -2413,6 +2414,7 @@ package body Exp_Ch7 is
if Uses_Sec_Stack (Current_Scope)
and then No (Flist)
and then Nkind (Action) /= N_Return_Statement
+ and then Nkind (Par) /= N_Exception_Handler
then
declare