]> gcc.gnu.org Git - gcc.git/commit - gcc/ada/freeze.adb
freeze.adb (Freeze_Entity): Remove check for preelaborable initialization of a full...
authorGary Dismukes <dismukes@adacore.com>
Wed, 26 Sep 2007 10:43:34 +0000 (12:43 +0200)
committerArnaud Charlet <charlet@gcc.gnu.org>
Wed, 26 Sep 2007 10:43:34 +0000 (12:43 +0200)
commit31b5873d01cfb8aa27f5da175b8e8740c3e76370
tree5c033c0587d20e064772bc364f3412e79a42f858
parentaf04dc07c565e452971c24476297f5cb6a50b2c6
freeze.adb (Freeze_Entity): Remove check for preelaborable initialization of a full view.

2007-09-26  Gary Dismukes  <dismukes@adacore.com>

* freeze.adb (Freeze_Entity): Remove check for preelaborable
initialization of a full view. This is moved to
Analyze_Package_Specification.

* sem_ch7.adb (Analyze_Package_Specification): Add check for
preelaborable initialization of a full view in entity loop.
(Uninstall_Declarations): If entity is a use-visible compilation unit,
its child units are use-visible only if they are visible child units.

* sem_util.adb (Is_Preelaborable_Expression): New function to determine
whether an expression can be used within a type declaration that
requires preelaborable init.
(Check_Components): Replace inline code that does partial checking for
preelaborable default expressions with call to
Is_Preelaborable_Expression.
(Has_Preelaborable_Initialization): In the case of a generic actual
subtype, (that is, Is_Generic_Actual is True), return the result of
applying Has_Preelaborable_Initialization to the generic actual's base
type.

From-SVN: r128789
gcc/ada/freeze.adb
gcc/ada/sem_ch7.adb
gcc/ada/sem_util.adb
This page took 0.058116 seconds and 5 git commands to generate.