sem_util.adb (Is_Object_Reference): An indexed or selected component whose prefix is an implicit dereference is an...

2005-07-04  Ed Schonberg  <schonberg@adacore.com>

	* sem_util.adb (Is_Object_Reference): An indexed or selected component
	whose prefix is an implicit dereference is an object reference. Removes
	spurious errors when compiling with -gnatc.

From-SVN: r101592
This commit is contained in:
Ed Schonberg 2005-07-04 15:30:32 +02:00 committed by Arnaud Charlet
parent 21ff92b4e3
commit ac0ed7268a
1 changed files with 6 additions and 2 deletions

View File

@ -4074,7 +4074,9 @@ package body Sem_Util is
else
case Nkind (N) is
when N_Indexed_Component | N_Slice =>
return Is_Object_Reference (Prefix (N));
return
Is_Object_Reference (Prefix (N))
or else Is_Access_Type (Etype (Prefix (N)));
-- In Ada95, a function call is a constant object
@ -4089,7 +4091,9 @@ package body Sem_Util is
when N_Selected_Component =>
return
Is_Object_Reference (Selector_Name (N))
and then Is_Object_Reference (Prefix (N));
and then
(Is_Object_Reference (Prefix (N))
or else Is_Access_Type (Etype (Prefix (N))));
when N_Explicit_Dereference =>
return True;