Commit 35dfee55 by Ed Schonberg Committed by Arnaud Charlet

2008-08-20 Ed Schonberg <schonberg@adacore.com>

	Revert partially previous changes, unrelated to the change at hand.

From-SVN: r139271
parent d0011a1a
...@@ -5016,7 +5016,6 @@ package Einfo is ...@@ -5016,7 +5016,6 @@ package Einfo is
-- Generic_Renamings (Elist23) (for an instance) -- Generic_Renamings (Elist23) (for an instance)
-- Inner_Instances (Elist23) (generic function only) -- Inner_Instances (Elist23) (generic function only)
-- Protection_Object (Node23) (for concurrent kind) -- Protection_Object (Node23) (for concurrent kind)
-- Spec_PPC_List (Node24)
-- Interface_Alias (Node25) -- Interface_Alias (Node25)
-- Overridden_Operation (Node26) -- Overridden_Operation (Node26)
-- Wrapped_Entity (Node27) (non-generic case only) -- Wrapped_Entity (Node27) (non-generic case only)
......
...@@ -2547,13 +2547,9 @@ package body Exp_Aggr is ...@@ -2547,13 +2547,9 @@ package body Exp_Aggr is
-- in the limited case, the ancestor part must be either a -- in the limited case, the ancestor part must be either a
-- function call (possibly qualified, or wrapped in an unchecked -- function call (possibly qualified, or wrapped in an unchecked
-- conversion) or aggregate (definitely qualified). -- conversion) or aggregate (definitely qualified).
-- The ancestor part can also be a function call (that may be
-- transformed into an explicit dereference) or a qualification
-- of one such.
elsif Is_Limited_Type (Etype (A)) elsif Is_Limited_Type (Etype (A))
and then Nkind (Unqualify (A)) /= N_Function_Call -- aggregate? and then Nkind (Unqualify (A)) /= N_Function_Call -- aggregate?
and then Nkind (Unqualify (A)) /= N_Explicit_Dereference
and then and then
(Nkind (Unqualify (A)) /= N_Unchecked_Type_Conversion (Nkind (Unqualify (A)) /= N_Unchecked_Type_Conversion
or else or else
......
...@@ -4394,14 +4394,6 @@ package body Exp_Ch6 is ...@@ -4394,14 +4394,6 @@ package body Exp_Ch6 is
Prot_Id : Entity_Id; Prot_Id : Entity_Id;
begin begin
-- If the subprogram is a function with an anonymous access
-- to protected subprogram, it must be expanded to create
-- its equivalent type.
-- if Ekind (Typ) = E_Anonymous_Access_Protected_Subprogram_Type then
-- Expand_Access_Protected_Subprogram_Type (N, Typ);
-- end if;
-- Deal with case of protected subprogram. Do not generate protected -- Deal with case of protected subprogram. Do not generate protected
-- operation if operation is flagged as eliminated. -- operation if operation is flagged as eliminated.
......
...@@ -203,9 +203,7 @@ package Exp_Ch9 is ...@@ -203,9 +203,7 @@ package Exp_Ch9 is
-- routine to make sure Complete_Master is called on exit). -- routine to make sure Complete_Master is called on exit).
procedure Expand_Access_Protected_Subprogram_Type (N : Node_Id); procedure Expand_Access_Protected_Subprogram_Type (N : Node_Id);
-- Build Equivalent_Type for an Access_To_Protected_Subprogram. -- Build Equivalent_Type for an Access_to_protected_Subprogram
-- Equivalent_Type is a record type with two components: a pointer
-- to the protected object, and a pointer to the operation itself.
procedure Expand_Accept_Declarations (N : Node_Id; Ent : Entity_Id); procedure Expand_Accept_Declarations (N : Node_Id; Ent : Entity_Id);
-- Expand declarations required for accept statement. See bodies of -- Expand declarations required for accept statement. See bodies of
......
...@@ -884,6 +884,8 @@ package body Sem_Type is ...@@ -884,6 +884,8 @@ package body Sem_Type is
then then
return True; return True;
-- An aggregate is compatible with an array or record type
elsif T2 = Any_Composite elsif T2 = Any_Composite
and then Ekind (T1) in E_Array_Type .. E_Record_Subtype and then Ekind (T1) in E_Array_Type .. E_Record_Subtype
then then
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment