diff options
author | Robert Dewar <dewar@adacore.com> | 2006-10-31 19:09:19 +0100 |
---|---|---|
committer | Arnaud Charlet <charlet@gcc.gnu.org> | 2006-10-31 19:09:19 +0100 |
commit | a5abb241f3c53daf6ebbb82992b5227fcdb750c5 (patch) | |
tree | 24a69d825715b38bc694418ae9828e437a7f4ecc /gcc/ada/sem_elab.ads | |
parent | 67f3c450aa496462153743af600814121234b63c (diff) | |
download | gcc-a5abb241f3c53daf6ebbb82992b5227fcdb750c5.zip gcc-a5abb241f3c53daf6ebbb82992b5227fcdb750c5.tar.gz gcc-a5abb241f3c53daf6ebbb82992b5227fcdb750c5.tar.bz2 |
sem_elab.ads, [...] (Check_Elab_Assign): New procedure Add new calls to this procedure during traversal
2006-10-31 Robert Dewar <dewar@adacore.com>
Ed Schonberg <schonberg@adacore.com>
* sem_elab.ads, sem_elab.adb (Check_Elab_Assign): New procedure
Add new calls to this procedure during traversal
(Activate_Elaborate_All_Desirable): Do not set elaboration flag on
another unit if expansion is disabled.
From-SVN: r118309
Diffstat (limited to 'gcc/ada/sem_elab.ads')
-rw-r--r-- | gcc/ada/sem_elab.ads | 18 |
1 files changed, 12 insertions, 6 deletions
diff --git a/gcc/ada/sem_elab.ads b/gcc/ada/sem_elab.ads index e42a4ab..db7db67 100644 --- a/gcc/ada/sem_elab.ads +++ b/gcc/ada/sem_elab.ads @@ -6,7 +6,7 @@ -- -- -- S p e c -- -- -- --- Copyright (C) 1997-2005, Free Software Foundation, Inc. -- +-- Copyright (C) 1997-2006, Free Software Foundation, Inc. -- -- -- -- GNAT is free software; you can redistribute it and/or modify it under -- -- terms of the GNU General Public License as published by the Free Soft- -- @@ -120,11 +120,11 @@ package Sem_Elab is -- corresponding bodies. procedure Check_Elab_Call (N : Node_Id; Outer_Scope : Entity_Id := Empty); - -- Check a call for possible elaboration problems. N is either an - -- N_Function_Call or N_Procedure_Call_Statement node, and Outer - -- indicates whether this is an outer level call from Sem_Res - -- (Outer_Scope set to Empty), or an internal recursive call - -- (Outer_Scope set to entity of outermost call, see body). + -- Check a call for possible elaboration problems. The node N is either + -- an N_Function_Call or N_Procedure_Call_Statement node. The Outer_Scope + -- argument indicates whether this is an outer level call from Sem_Res + -- (Outer_Scope set to Empty), or an internal recursive call (Outer_Scope + -- set to entity of outermost call, see body). procedure Check_Elab_Calls; -- Not all the processing for Check_Elab_Call can be done at the time @@ -133,6 +133,12 @@ package Sem_Elab is -- instantiated. The Check_Elab_Calls procedure cleans up these waiting -- checks. It is called once after the completion of instantiation. + procedure Check_Elab_Assign (N : Node_Id); + -- N is either the left side of an assignment, or a procedure argument for + -- a mode OUT or IN OUT formal. This procedure checks for a possible case + -- of access to an entity from elaboration code before the entity has been + -- initialized, and issues appropriate warnings. + procedure Check_Elab_Instantiation (N : Node_Id; Outer_Scope : Entity_Id := Empty); |