diff options
author | Justin Squirek <squirek@adacore.com> | 2021-11-22 12:53:56 +0000 |
---|---|---|
committer | Pierre-Marie de Rodat <derodat@adacore.com> | 2022-01-06 17:11:32 +0000 |
commit | 4458909a806825bc9a74b69e14c7fb88a551b800 (patch) | |
tree | 70dedcc038494ce0cdd8e31da5fb2b456d1cbec9 /gcc/ada/sem_cat.ads | |
parent | bfbb8de66079be551f08cdab38cafa766bb29e78 (diff) | |
download | gcc-4458909a806825bc9a74b69e14c7fb88a551b800.zip gcc-4458909a806825bc9a74b69e14c7fb88a551b800.tar.gz gcc-4458909a806825bc9a74b69e14c7fb88a551b800.tar.bz2 |
[Ada] Removal of technical debt
gcc/ada/
* exp_ch6.adb (Add_Simple_Call_By_Copy_Code): Add comments
regarding special handling of components which depend on
discriminants.
* exp_dist.adb (Build_From_Any_Function): Add Real_Rep actual
for calls to Has_Stream_Attribute_Definition.
(Build_To_Any_Function): Likewise.
(Build_TypeCode_Function): Likewise.
* freeze.adb (Freeze_Entity): Add missing comment for Test_E.
* libgnat/s-utf_32.adb: Remove disabled warning comments and
temporarily inserted pragma warnings. Remove very old (2006 and
2012) comments about bootstrapping older versions.
* par.adb (P_Identifier): Add new parameter Force_Msg.
* par-ch2.adb (P_Identifier): Restructure and clean up function.
* par-ch3.adb (P_Defining_Identifier): Remove code duplication
for parsing identifiers.
* sem_attr.adb (Stream_Attribute_Available): Add missing
comments and add Real_Rep actual for calls to
Has_Stream_Attribute_Definition.
* sem_cat.adb (Has_Read_Write_Attribute): Add Real_Rep actual
for calls to Has_Stream_Attribute_Definition.
(Has_Stream_Attribute_Definition): Remove local Real_Rep and fix
recursive calls. Add default value for Real_Rep.
* sem_cat.ads (Has_Stream_Attribute_Definition): Add new out
parameter "Real_Rep".
* sem_type.adb (Add_Entry): Add condition to avoid passing
non-function calls to Function_Interp_Has_Abstract_Op.
(Function_Interp_Has_Abstract_Op): Add missing comments and
remove check for Is_Overloadable.
* sem_util.adb (Derivation_Too_Early_To_Inherit): Remove
duplicated code.
Diffstat (limited to 'gcc/ada/sem_cat.ads')
-rw-r--r-- | gcc/ada/sem_cat.ads | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/gcc/ada/sem_cat.ads b/gcc/ada/sem_cat.ads index 90a713b..3b36006 100644 --- a/gcc/ada/sem_cat.ads +++ b/gcc/ada/sem_cat.ads @@ -43,6 +43,7 @@ package Sem_Cat is function Has_Stream_Attribute_Definition (Typ : Entity_Id; Nam : TSS_Name_Type; + Real_Rep : out Node_Id; At_Any_Place : Boolean := False) return Boolean; -- True when there is a attribute definition clause specifying attribute -- Nam for Typ. In Ada 2005 mode, returns True only when the attribute @@ -54,6 +55,14 @@ package Sem_Cat is -- specific type, excluding inherited definitions, the flags -- Has_Specified_Stream_* can be used instead). + -- The stream operation may be specified by an attribute definition + -- clause in the source, or by an aspect that generates such an + -- attribute definition. For an aspect, the generated attribute + -- definition may be placed at the freeze point of the full view of + -- the type, but the aspect specification makes the operation visible + -- to a client wherever the partial view is visible. This real + -- representation is returned in the Real_Rep parameter. + function In_Preelaborated_Unit return Boolean; -- Determines if the current scope is within a preelaborated compilation -- unit, that is one to which one of the pragmas Preelaborate, Pure, |