aboutsummaryrefslogtreecommitdiff
path: root/gcc/ada/a-exextr.adb
diff options
context:
space:
mode:
authorArnaud Charlet <charlet@gcc.gnu.org>2012-05-15 12:22:07 +0200
committerArnaud Charlet <charlet@gcc.gnu.org>2012-05-15 12:22:07 +0200
commit799d0e05c71f63b11ddb7d64f314c1281fe53cfb (patch)
treea5d47583428526feb383a0496917baf367d642b3 /gcc/ada/a-exextr.adb
parent0c644c99db0e5a83b8106a25e8346c2ecc250297 (diff)
downloadgcc-799d0e05c71f63b11ddb7d64f314c1281fe53cfb.zip
gcc-799d0e05c71f63b11ddb7d64f314c1281fe53cfb.tar.gz
gcc-799d0e05c71f63b11ddb7d64f314c1281fe53cfb.tar.bz2
[multiple changes]
2012-05-15 Robert Dewar <dewar@adacore.com> * exp_ch7.adb, exp_ch11.adb, exp_ch11.ads: Minor reformatting. 2012-05-15 Thomas Quinot <quinot@adacore.com> * sem_res.adb (Resolve): Enforce E.2.2(11/2) and E.2.2(12) for 'Unrestricted_Access and 'Unchecked_Access (not just 'Access): even in those cases, a remote access type may only designate a remote subprogram. 2012-05-15 Thomas Quinot <quinot@adacore.com> * sem_util.adb, sem_util.ads, sem_cat.adb: Minor refactoring. (Enclosing_Lib_Unit_Node): Rename to Enclosing_Comp_Unit_Node. 2012-05-15 Ed Schonberg <schonberg@adacore.com> * sem_ch6.adb (Analyze_Subprogram_Body_Helper): Remove obsolete checks on nested inlined subprograms. 2012-05-15 Tristan Gingold <gingold@adacore.com> * fe.h (Get_RT_Exception_Name): Declare. 2012-05-15 Tristan Gingold <gingold@adacore.com> * raise-gcc.c (db_region_for): Use %p + cast to avoid warnings. (get_region_description_for): Likewise. (db_action_for): Likewise. (get_call_site_action_for): Likewise. (get_ttype_entry_for): Remove useless 'const'. (PERSONALITY_FUNCTION): Add ATTRIBUTE_UNUSED on uw_exception_class. 2012-05-15 Tristan Gingold <gingold@adacore.com> * a-exextr.adb (Unhandled_Exception_Terminate): Save occurrence on the stack to avoid a dynamic memory allocation. 2012-05-15 Bob Duff <duff@adacore.com> * exp_ch9.adb (Expand_N_Timed_Entry_Call): Move initialization of E_Stats and D_Stats after Process_Statements_For_Controlled_Objects, because those calls can destroy the Statements list. From-SVN: r187518
Diffstat (limited to 'gcc/ada/a-exextr.adb')
-rw-r--r--gcc/ada/a-exextr.adb7
1 files changed, 4 insertions, 3 deletions
diff --git a/gcc/ada/a-exextr.adb b/gcc/ada/a-exextr.adb
index 61ae6b1..55ff74d 100644
--- a/gcc/ada/a-exextr.adb
+++ b/gcc/ada/a-exextr.adb
@@ -6,7 +6,7 @@
-- --
-- B o d y --
-- --
--- Copyright (C) 1992-2011, Free Software Foundation, Inc. --
+-- Copyright (C) 1992-2012, Free Software Foundation, Inc. --
-- --
-- GNAT is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- --
@@ -162,14 +162,15 @@ package body Exception_Traces is
-----------------------------------
procedure Unhandled_Exception_Terminate is
- Excep : constant EOA := Save_Occurrence (Get_Current_Excep.all.all);
+ Excep : Exception_Occurrence;
-- This occurrence will be used to display a message after finalization.
-- It is necessary to save a copy here, or else the designated value
-- could be overwritten if an exception is raised during finalization
-- (even if that exception is caught).
begin
- Last_Chance_Handler (Excep.all);
+ Save_Occurrence (Excep, Get_Current_Excep.all.all);
+ Last_Chance_Handler (Excep);
end Unhandled_Exception_Terminate;
------------------------------------