aboutsummaryrefslogtreecommitdiff
path: root/gcc/ada/sem_elab.ads
diff options
context:
space:
mode:
authorRobert Dewar <dewar@adacore.com>2006-10-31 19:09:19 +0100
committerArnaud Charlet <charlet@gcc.gnu.org>2006-10-31 19:09:19 +0100
commita5abb241f3c53daf6ebbb82992b5227fcdb750c5 (patch)
tree24a69d825715b38bc694418ae9828e437a7f4ecc /gcc/ada/sem_elab.ads
parent67f3c450aa496462153743af600814121234b63c (diff)
downloadgcc-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.ads18
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);