sem_ch12.adb (Instantiate_Subprogram_Body): When creating the defining entity for...
authorEd Schonberg <schonberg@adacore.com>
Mon, 5 Sep 2005 07:59:10 +0000 (09:59 +0200)
committerArnaud Charlet <charlet@gcc.gnu.org>
Mon, 5 Sep 2005 07:59:10 +0000 (09:59 +0200)
commit48aa1f1a6180e8d826ff5efa4a637477be56be48
tree571518148cb0be159daf3c8e2fd827f57937d3fc
parentf81856470301fd6d3d353e4f872244b4ab7cc2ba
sem_ch12.adb (Instantiate_Subprogram_Body): When creating the defining entity for the instance body...

2005-09-01  Ed Schonberg  <schonberg@adacore.com>
    Javier Miranda  <miranda@adacore.com>
    Gary Dismukes  <dismukes@adacore.com>

* sem_ch12.adb (Instantiate_Subprogram_Body): When creating the
defining entity for the instance body, make a new defining identifier
rather than copying the entity of the spec, to prevent accidental
sharing of the entity list.
(Check_Private_View): When exchanging views of private types, build the
list of exchanged views as a stack, to ensure that on exit the exchanges
are undone in the proper order.
(Analyze_Package_Instantiation, Analyze_Subprogram_Instantiation):
Restore the compilation environment in case of instantiation_error.
(Analyze_Generic_Subprogram_Declaration): Handle creation of type entity
for an anonymous access result.
(Instantiate_Generic_Subprogram): Subtype_Mark => Result_Definition
(Formal_Entity): Handle properly the case of a formal package that
denotes a generic package renaming.

From-SVN: r103879
gcc/ada/sem_ch12.adb