exp_intr.adb (Expand_Exception_Call): Calls to subprograms in GNAT.Current_Exception...
authorRobert Dewar <dewar@adacore.com>
Fri, 6 Apr 2007 09:21:03 +0000 (11:21 +0200)
committerArnaud Charlet <charlet@gcc.gnu.org>
Fri, 6 Apr 2007 09:21:03 +0000 (11:21 +0200)
commit62548837380e7ecdf8555ca76256ef6ffaa1239d
tree299de6470d445a43b19266b7afa994a877e2d212
parent8aa23fe306c816b02ff00a1419489b2fd071ae16
exp_intr.adb (Expand_Exception_Call): Calls to subprograms in GNAT.Current_Exception are not allowed if...

2007-04-06  Robert Dewar  <dewar@adacore.com>
    Ed Schonberg  <schonberg@adacore.com>

* exp_intr.adb (Expand_Exception_Call): Calls to subprograms in
GNAT.Current_Exception are not allowed if pragma Restrictions
(No_Exception_Propagation) is set and in any case make the associated
handler unsuitable as a target for a local raise statement.
(Expand_Dispatching_Constructor_Call): Replace generation of call to the
run-time subprogram CW_Membership by call to Build_CW_Membership.
(Expand_Dispatching_Constructor_Call): If the dispatching tag is given
by a function call, a temporary must be created before expanding the
Constructor_Call itself, to prevent out-of-order elaboration in the
back-end when stack checking is enabled..

From-SVN: r123566
gcc/ada/exp_intr.adb