summaryrefslogtreecommitdiff
path: root/gcc/ada/sem_ch8.ads
diff options
context:
space:
mode:
authorcharlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4>2011-09-06 09:28:33 +0000
committercharlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4>2011-09-06 09:28:33 +0000
commit7068ba79ee3dafb64422373bd4ba154c9583b211 (patch)
treeedd093c1640864e8638de2608c1a9c9f83be08d0 /gcc/ada/sem_ch8.ads
parent8fc2605c52b4a6e471f849ba6d4fdf81ae0897f1 (diff)
downloadgcc-7068ba79ee3dafb64422373bd4ba154c9583b211.tar.gz
2011-09-06 Robert Dewar <dewar@adacore.com>
* sem_ch8.ads: Minor reformatting 2011-09-06 Thomas Quinot <quinot@adacore.com> * s-oscons-tmplt.c, g-socket.adb (GNAT.Sockets.Clear,Set,Is_Set): Guard against socket values that are not in [0;FD_SETSIZE[ git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178576 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/ada/sem_ch8.ads')
-rw-r--r--gcc/ada/sem_ch8.ads45
1 files changed, 26 insertions, 19 deletions
diff --git a/gcc/ada/sem_ch8.ads b/gcc/ada/sem_ch8.ads
index 6d02a41b76a..922b282cdfa 100644
--- a/gcc/ada/sem_ch8.ads
+++ b/gcc/ada/sem_ch8.ads
@@ -6,7 +6,7 @@
-- --
-- S p e c --
-- --
--- Copyright (C) 1992-2010, Free Software Foundation, Inc. --
+-- Copyright (C) 1992-2011, 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- --
@@ -44,16 +44,16 @@ package Sem_Ch8 is
-- Subprograms --
-----------------
- procedure Analyze_Exception_Renaming (N : Node_Id);
- procedure Analyze_Expanded_Name (N : Node_Id);
- procedure Analyze_Generic_Function_Renaming (N : Node_Id);
- procedure Analyze_Generic_Package_Renaming (N : Node_Id);
- procedure Analyze_Generic_Procedure_Renaming (N : Node_Id);
- procedure Analyze_Object_Renaming (N : Node_Id);
- procedure Analyze_Package_Renaming (N : Node_Id);
- procedure Analyze_Subprogram_Renaming (N : Node_Id);
- procedure Analyze_Use_Package (N : Node_Id);
- procedure Analyze_Use_Type (N : Node_Id);
+ procedure Analyze_Exception_Renaming (N : Node_Id);
+ procedure Analyze_Expanded_Name (N : Node_Id);
+ procedure Analyze_Generic_Function_Renaming (N : Node_Id);
+ procedure Analyze_Generic_Package_Renaming (N : Node_Id);
+ procedure Analyze_Generic_Procedure_Renaming (N : Node_Id);
+ procedure Analyze_Object_Renaming (N : Node_Id);
+ procedure Analyze_Package_Renaming (N : Node_Id);
+ procedure Analyze_Subprogram_Renaming (N : Node_Id);
+ procedure Analyze_Use_Package (N : Node_Id);
+ procedure Analyze_Use_Type (N : Node_Id);
procedure End_Scope;
-- Called at end of scope. On exit from blocks and bodies (subprogram,
@@ -71,19 +71,26 @@ package Sem_Ch8 is
procedure End_Use_Package (N : Node_Id);
procedure End_Use_Type (N : Node_Id);
- -- Subsidiaries of End_Use_Clauses. Also called directly for use clauses
+ -- Subsidiaries of End_Use_Clauses. Also called directly for use clauses
-- appearing in context clauses.
procedure Find_Direct_Name (N : Node_Id);
-- Given a direct name (Identifier or Operator_Symbol), this routine scans
- -- the homonym chain for the name searching for corresponding visible
+ -- the homonym chain for the name, searching for corresponding visible
-- entities to find the referenced entity (or in the case of overloading,
- -- entities). On return, the Entity and Etype fields are set. In the
- -- non-overloaded case, these are the correct final entries. In the
- -- overloaded case, Is_Overloaded is set, Etype and Entity refer to an
- -- arbitrary element of the overloads set, and an appropriate list of
- -- entries has been made in the overload interpretation table (to be
- -- disambiguated in the resolve phase).
+ -- one candidate interpretation). On return, the Entity and Etype fields
+ -- are set. In the non-overloaded case, these are the correct entries.
+ -- In the overloaded case, the flag Is_Overloaded is set, Etype and Entity
+ -- refer to an arbitrary element of the overloads set, and the appropriate
+ -- entries have been added to the overloads table entry for the node. The
+ -- overloading will be disambiguated during type resolution.
+ --
+ -- Note, when this is called during semantic analysis in the overloaded
+ -- case, the entity set will be the most recently declared homonym. In
+ -- particular, the caller may follow the homonym chain checking for all
+ -- entries in the current scope, and that will give all homonyms that are
+ -- declared before the point of call in the current scope. This is useful
+ -- for example in the processing for pragma Inline.
procedure Find_Selected_Component (N : Node_Id);
-- Resolve various cases of selected components, recognize expanded names