aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorEd Schonberg <schonberg@adacore.com>2008-08-20 14:06:35 +0200
committerArnaud Charlet <charlet@gcc.gnu.org>2008-08-20 14:06:35 +0200
commit35dfee55808a49e2aba3e0ba8f49a7a04a49d464 (patch)
tree055071568c02aaa5488466ccd0401b390e6741f7 /gcc
parentd0011a1a90750fe1df8425ae86360f0887facc9a (diff)
downloadgcc-35dfee55808a49e2aba3e0ba8f49a7a04a49d464.zip
gcc-35dfee55808a49e2aba3e0ba8f49a7a04a49d464.tar.gz
gcc-35dfee55808a49e2aba3e0ba8f49a7a04a49d464.tar.bz2
2008-08-20 Ed Schonberg <schonberg@adacore.com>
Revert partially previous changes, unrelated to the change at hand. From-SVN: r139271
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ada/einfo.ads1
-rw-r--r--gcc/ada/exp_aggr.adb4
-rw-r--r--gcc/ada/exp_ch6.adb8
-rw-r--r--gcc/ada/exp_ch9.ads4
-rw-r--r--gcc/ada/sem_type.adb2
5 files changed, 3 insertions, 16 deletions
diff --git a/gcc/ada/einfo.ads b/gcc/ada/einfo.ads
index a705874..c7182db 100644
--- a/gcc/ada/einfo.ads
+++ b/gcc/ada/einfo.ads
@@ -5016,7 +5016,6 @@ package Einfo is
-- Generic_Renamings (Elist23) (for an instance)
-- Inner_Instances (Elist23) (generic function only)
-- Protection_Object (Node23) (for concurrent kind)
- -- Spec_PPC_List (Node24)
-- Interface_Alias (Node25)
-- Overridden_Operation (Node26)
-- Wrapped_Entity (Node27) (non-generic case only)
diff --git a/gcc/ada/exp_aggr.adb b/gcc/ada/exp_aggr.adb
index 8a59879..bc3b954 100644
--- a/gcc/ada/exp_aggr.adb
+++ b/gcc/ada/exp_aggr.adb
@@ -2547,13 +2547,9 @@ package body Exp_Aggr is
-- in the limited case, the ancestor part must be either a
-- function call (possibly qualified, or wrapped in an unchecked
-- 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))
and then Nkind (Unqualify (A)) /= N_Function_Call -- aggregate?
- and then Nkind (Unqualify (A)) /= N_Explicit_Dereference
and then
(Nkind (Unqualify (A)) /= N_Unchecked_Type_Conversion
or else
diff --git a/gcc/ada/exp_ch6.adb b/gcc/ada/exp_ch6.adb
index faefb52..4c3f3da 100644
--- a/gcc/ada/exp_ch6.adb
+++ b/gcc/ada/exp_ch6.adb
@@ -4394,14 +4394,6 @@ package body Exp_Ch6 is
Prot_Id : Entity_Id;
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
-- operation if operation is flagged as eliminated.
diff --git a/gcc/ada/exp_ch9.ads b/gcc/ada/exp_ch9.ads
index 3ec6112..1cfa74d 100644
--- a/gcc/ada/exp_ch9.ads
+++ b/gcc/ada/exp_ch9.ads
@@ -203,9 +203,7 @@ package Exp_Ch9 is
-- routine to make sure Complete_Master is called on exit).
procedure Expand_Access_Protected_Subprogram_Type (N : Node_Id);
- -- 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.
+ -- Build Equivalent_Type for an Access_to_protected_Subprogram
procedure Expand_Accept_Declarations (N : Node_Id; Ent : Entity_Id);
-- Expand declarations required for accept statement. See bodies of
diff --git a/gcc/ada/sem_type.adb b/gcc/ada/sem_type.adb
index b8dca3b..3ca2e53 100644
--- a/gcc/ada/sem_type.adb
+++ b/gcc/ada/sem_type.adb
@@ -884,6 +884,8 @@ package body Sem_Type is
then
return True;
+ -- An aggregate is compatible with an array or record type
+
elsif T2 = Any_Composite
and then Ekind (T1) in E_Array_Type .. E_Record_Subtype
then