2007-04-20 Thomas Quinot <quinot@adacore.com>
authorThomas Quinot <quinot@adacore.com>
Wed, 6 Jun 2007 10:46:09 +0000 (12:46 +0200)
committerArnaud Charlet <charlet@gcc.gnu.org>
Wed, 6 Jun 2007 10:46:09 +0000 (12:46 +0200)
commitb9f3a4b07df15081483fd4caa5d1e29266917fa3
treea0347eac9298fdcd88515c8969bbf80681c7987a
parent1c8e4e2e5556facd565d1e61bb0433b37ff86243
2007-04-20  Thomas Quinot  <quinot@adacore.com>
    Olivier Hainque  <hainque@adacore.com>

* a-except-2005.ads, a-except-2005.adb
(Raise_From_Controlled_Operation): New procedure in
(private part of) Ada.Exceptions (standard runtime version). Used to
provide informational exception message when Program_Error is raised as
a result of an Adjust or Finalize operation propagating an exception.
(Rmsg_28): Fix description for E.4(18) check.
(Raise_Current_Excep): Call Debug_Raise_Exception just before
propagation starts, to let debuggers know about the event in a reliable
fashion.
Take the address of E and dereference to make sure it is homed on stack
and prevent the stores from being deleted, necessary for proper
debugger behavior on "break exception" hits.
(Local_Raise): Moved to System.Exceptions

* s-finimp.adb (Raise_From_Finalize): Code to construct an appropriate
exception message from the current occurrence and raise Program_Error
has been moved to Ada.Exceptions.Raise_From_Controlled_Operation.

From-SVN: r125457
gcc/ada/a-except-2005.adb
gcc/ada/a-except-2005.ads
gcc/ada/s-finimp.adb