sem_ch3.adb: The predicate Is_Descendent_Of_Address is now an entity flag, for effiency.
authorEd Schonberg <schonberg@adacore.com>
Fri, 31 Aug 2007 10:24:10 +0000 (12:24 +0200)
committerArnaud Charlet <charlet@gcc.gnu.org>
Fri, 31 Aug 2007 10:24:10 +0000 (12:24 +0200)
commit9c5108032251ba012f8671abaf40a6a58d83efc5
tree0d6a52ff3b47753a1b7d93ce02531ac9dca15f43
parentc19d161545bb1c8c58dbc23b6f708b12403193f3
sem_ch3.adb: The predicate Is_Descendent_Of_Address is now an entity flag, for effiency.

2007-08-31  Ed Schonberg  <schonberg@adacore.com>

* sem_ch3.adb: The predicate Is_Descendent_Of_Address is now an entity
flag, for effiency. It is called when analyzing arithmetic operators
and also for actuals in calls that are universal_integers. The flag is
set for the predefined type address, and for any type or subtype
derived from it.

* sem_ch4.adb (Analyze_One_Call): Reject an actual that is a
Universal_Integer, when the formal is a descendent of address and the
call appears in user code.
(Analyze_Selected_Component): if the prefix is a private extension, the
tag component is visible.

* sem_util.ads, sem_util.adb: Remove Is_Descendent_Of_Address, now an
entity flag.

From-SVN: r127980
gcc/ada/sem_ch3.adb
gcc/ada/sem_ch4.adb
gcc/ada/sem_util.adb
gcc/ada/sem_util.ads