sem_ch10.adb: Create a limited view of an incomplete type...
authorEd Schonberg <schonberg@adacore.com>
Tue, 14 Aug 2007 08:44:31 +0000 (10:44 +0200)
committerArnaud Charlet <charlet@gcc.gnu.org>
Tue, 14 Aug 2007 08:44:31 +0000 (10:44 +0200)
commit50b8a7b807b958ca96a40cd6b892627fda9c34ef
tree736bf5b16443cf391effc0a90fbf87937a8a9535
parentfebb581c99239fc2aea70aa3647e941604568f06
sem_ch10.adb: Create a limited view of an incomplete type...

2007-08-14  Ed Schonberg  <schonberg@adacore.com>

* sem_ch10.adb: Create a limited view of an incomplete type, to make
treatment of limited views uniform for all visible declarations in a
limited_withed package.
Set flag indicating that a subprogram body for a child unit has a
generated spec.
(Analyze_Compilation_Unit): If unit is a subprogram body that has no
separate declaration, remove the unit name from visibility after
compilation, so that environment is clean for subsequent compilations.
(Install_Limited_Context_Clauses): Do not install a
limited_private_with_clause unless the current unit is a body or a
private child unit.
(Analyze_Subunit, Install_Parents): Treat generic and non-generic units
in the same fashion.
(Install_Limited_Withed_Unit): Do not install a limited with clause if
it applies to the declaration of the current package body.
(Remove_Private_With_Clauses): If there is a regular with_clause for
the unit, delete Private_With_Clause from context, to prevent improper
hiding when processing subsequent nested packages and instantiations.

From-SVN: r127436
gcc/ada/sem_ch10.adb