aboutsummaryrefslogtreecommitdiff
path: root/gcc/ada/sem_ch3.ads
diff options
context:
space:
mode:
authorArnaud Charlet <charlet@gcc.gnu.org>2010-10-18 15:58:25 +0200
committerArnaud Charlet <charlet@gcc.gnu.org>2010-10-18 15:58:25 +0200
commit6191e212520651b7e7d3102be7a735677989ad19 (patch)
tree49324add06c331189976e682c92938d0ed04c8ad /gcc/ada/sem_ch3.ads
parent0ae44446c2b6cd370e212fd94fcb8c261f3ef231 (diff)
downloadgcc-6191e212520651b7e7d3102be7a735677989ad19.zip
gcc-6191e212520651b7e7d3102be7a735677989ad19.tar.gz
gcc-6191e212520651b7e7d3102be7a735677989ad19.tar.bz2
[multiple changes]
2010-10-18 Ed Schonberg <schonberg@adacore.com> * sem_ch13.adb (Analyze_Aspect_Specifications): If subprogram is at the library level, the pre/postconditions must be treated as global declarations, i.e. placed on the Aux_Decl nodes of the compilation unit. * freeze.adb (Freeze_Expression): If the expression is at library level there is no enclosing record to check. 2010-10-18 Javier Miranda <miranda@adacore.com> * sem_ch3.ads (Find_Type_Name): Add documentation. * sem_ch3.adb (Analyze_Full_Type_Declaration): Code cleanup because the propagation of the class-wide entity is now done by routine Find_Type_Name to factorize this code. (Analyze_Private_Extension_Declaration): Handle private type that completes an incomplete type. (Tag_Mismatch): Add error message for tag mismatch in a private type declaration that completes an incomplete type. (Find_Type_Name): Handle completion of incomplete type by means of a private declaration. Generate an error if a tagged incomplete type is completed by an untagged private type. * sem_ch7.adb (New_Private_Type): Handle private type that completes an incomplete type. * einfo.ads (Full_View): Add documentation. 2010-10-18 Ed Schonberg <schonberg@adacore.com> * sem_ch12.adb (Analyze_Formal_Package_Declaration): If the package is a renaming, generate a reference for it before analyzing the renamed entity, to prevent spurious warnings. From-SVN: r165636
Diffstat (limited to 'gcc/ada/sem_ch3.ads')
-rw-r--r--gcc/ada/sem_ch3.ads5
1 files changed, 4 insertions, 1 deletions
diff --git a/gcc/ada/sem_ch3.ads b/gcc/ada/sem_ch3.ads
index 2bff2e2..57da532 100644
--- a/gcc/ada/sem_ch3.ads
+++ b/gcc/ada/sem_ch3.ads
@@ -157,7 +157,10 @@ package Sem_Ch3 is
function Find_Type_Name (N : Node_Id) return Entity_Id;
-- Enter the identifier in a type definition, or find the entity already
-- declared, in the case of the full declaration of an incomplete or
- -- private type.
+ -- private type. If the previous declaration is tagged then the class-wide
+ -- entity is propagated to the identifier to prevent multiple incompatible
+ -- class-wide types that may be created for self-referential anonymous
+ -- access components.
function Get_Discriminant_Value
(Discriminant : Entity_Id;