diff options
author | bstarynk <bstarynk@138bc75d-0d04-0410-961f-82ee72b054a4> | 2008-04-14 16:23:18 +0000 |
---|---|---|
committer | bstarynk <bstarynk@138bc75d-0d04-0410-961f-82ee72b054a4> | 2008-04-14 16:23:18 +0000 |
commit | ab2ba306f09948ff09fef49f3592d714c38b2d93 (patch) | |
tree | b12d13d305b3e049e0907c34ad5d505ce04fa415 /gcc/ada/sem_ch6.ads | |
parent | a39fe8c82fd895251538269b679047bd6fc98ac5 (diff) | |
download | gcc-ab2ba306f09948ff09fef49f3592d714c38b2d93.tar.gz |
2008-04-14 Basile Starynkevitch <basile@starynkevitch.net>
MELT branch merged with trunk r134275
stilly buggy for libgcc muldi3: internal compiler error: in
execute_ipa_pass_list, at passes.c:1235
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/melt-branch@134279 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/ada/sem_ch6.ads')
-rw-r--r-- | gcc/ada/sem_ch6.ads | 33 |
1 files changed, 24 insertions, 9 deletions
diff --git a/gcc/ada/sem_ch6.ads b/gcc/ada/sem_ch6.ads index 071aa75c44b..a535bd11883 100644 --- a/gcc/ada/sem_ch6.ads +++ b/gcc/ada/sem_ch6.ads @@ -6,7 +6,7 @@ -- -- -- S p e c -- -- -- --- Copyright (C) 1992-2007, Free Software Foundation, Inc. -- +-- Copyright (C) 1992-2008, 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- -- @@ -78,7 +78,7 @@ package Sem_Ch6 is (New_Id : Entity_Id; Old_Id : Entity_Id; Err_Loc : Node_Id := Empty); - -- Check that two callable entitites (subprograms, entries, literals) + -- Check that two callable entities (subprograms, entries, literals) -- are fully conformant, post error message if not (RM 6.3.1(17)) with -- the flag being placed on the Err_Loc node if it is specified, and -- on the appropriate component of the New_Id construct if not. Note: @@ -92,7 +92,7 @@ package Sem_Ch6 is Old_Id : Entity_Id; Err_Loc : Node_Id := Empty; Get_Inst : Boolean := False); - -- Check that two callable entitites (subprograms, entries, literals) + -- Check that two callable entities (subprograms, entries, literals) -- are mode conformant, post error message if not (RM 6.3.1(15)) with -- the flag being placed on the Err_Loc node if it is specified, and -- on the appropriate component of the New_Id construct if not. The @@ -100,11 +100,21 @@ package Sem_Ch6 is -- formal access-to-subprogram type, indicating that mapping of types -- is needed. + procedure Check_Overriding_Indicator + (Subp : Entity_Id; + Overridden_Subp : Entity_Id; + Is_Primitive : Boolean); + -- Verify the consistency of an overriding_indicator given for subprogram + -- declaration, body, renaming, or instantiation. Overridden_Subp is set + -- if the scope where we are introducing the subprogram contains a + -- type-conformant subprogram that becomes hidden by the new subprogram. + -- Is_Primitive indicates whether the subprogram is primitive. + procedure Check_Subtype_Conformant (New_Id : Entity_Id; Old_Id : Entity_Id; Err_Loc : Node_Id := Empty); - -- Check that two callable entitites (subprograms, entries, literals) + -- Check that two callable entities (subprograms, entries, literals) -- are subtype conformant, post error message if not (RM 6.3.1(16)) -- the flag being placed on the Err_Loc node if it is specified, and -- on the appropriate component of the New_Id construct if not. @@ -113,7 +123,7 @@ package Sem_Ch6 is (New_Id : Entity_Id; Old_Id : Entity_Id; Err_Loc : Node_Id := Empty); - -- Check that two callable entitites (subprograms, entries, literals) + -- Check that two callable entities (subprograms, entries, literals) -- are type conformant, post error message if not (RM 6.3.1(14)) with -- the flag being placed on the Err_Loc node if it is specified, and -- on the appropriate component of the New_Id construct if not. @@ -146,18 +156,23 @@ package Sem_Ch6 is function Fully_Conformant_Expressions (Given_E1 : Node_Id; - Given_E2 : Node_Id) - return Boolean; + Given_E2 : Node_Id) return Boolean; -- Determines if two (non-empty) expressions are fully conformant -- as defined by (RM 6.3.1(18-21)) function Fully_Conformant_Discrete_Subtypes (Given_S1 : Node_Id; - Given_S2 : Node_Id) - return Boolean; + Given_S2 : Node_Id) return Boolean; -- Determines if two subtype definitions are fully conformant. Used -- for entry family conformance checks (RM 6.3.1 (24)). + procedure Install_Formals (Id : Entity_Id); + -- On entry to a subprogram body, make the formals visible. Note that + -- simply placing the subprogram on the scope stack is not sufficient: + -- the formals must become the current entities for their names. This + -- procedure is also used to get visibility to the formals when analyzing + -- preconditions and postconditions appearing in the spec. + function Mode_Conformant (New_Id, Old_Id : Entity_Id) return Boolean; -- Determine whether two callable entities (subprograms, entries, -- literals) are mode conformant (RM 6.3.1(15)) |