diff options
-rw-r--r-- | gcc/ada/ChangeLog | 7 | ||||
-rw-r--r-- | gcc/ada/a-strhas.ads | 6 | ||||
-rw-r--r-- | gcc/ada/einfo.adb | 26 | ||||
-rw-r--r-- | gcc/ada/einfo.ads | 148 | ||||
-rw-r--r-- | gcc/ada/exp_ch7.adb | 3 | ||||
-rw-r--r-- | gcc/ada/exp_ch9.adb | 12 | ||||
-rw-r--r-- | gcc/ada/freeze.adb | 8 | ||||
-rw-r--r-- | gcc/ada/prj-nmsc.adb | 29 | ||||
-rw-r--r-- | gcc/ada/prj-proc.adb | 1 | ||||
-rw-r--r-- | gcc/ada/prj.adb | 7 | ||||
-rw-r--r-- | gcc/ada/prj.ads | 13 | ||||
-rw-r--r-- | gcc/ada/s-llflex.ads | 4 | ||||
-rw-r--r-- | gcc/ada/s-ransee.adb | 2 | ||||
-rw-r--r-- | gcc/ada/s-ransee.ads | 2 | ||||
-rw-r--r-- | gcc/ada/sem_ch13.adb | 8 | ||||
-rw-r--r-- | gcc/ada/sem_dim.adb | 31 | ||||
-rw-r--r-- | gcc/ada/sem_prag.adb | 7 |
17 files changed, 161 insertions, 153 deletions
diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog index 40f7e2f..b50eacf 100644 --- a/gcc/ada/ChangeLog +++ b/gcc/ada/ChangeLog @@ -1,3 +1,10 @@ +2012-01-30 Robert Dewar <dewar@adacore.com> + + * a-strhas.ads, einfo.adb, einfo.ads, exp_ch7.adb, exp_ch9.adb, + freeze.adb, prj.adb, prj.ads, prj-nmsc.adb, prj-proc.adb, s-llflex.ads, + s-ransee.adb, s-ransee.ads, sem_ch13.adb, sem_dim.adb, sem_prag.adb: + Minor reformatting/code reorganization. + 2012-01-30 Thomas Quinot <quinot@adacore.com> * s-rannum.adb, s-ransee.adb, s-ransee.ads (Get_Seed): Return diff --git a/gcc/ada/a-strhas.ads b/gcc/ada/a-strhas.ads index 58389c2..579307a 100644 --- a/gcc/ada/a-strhas.ads +++ b/gcc/ada/a-strhas.ads @@ -18,8 +18,8 @@ pragma Compiler_Unit; with Ada.Containers; function Ada.Strings.Hash (Key : String) return Containers.Hash_Type; --- Note: this hash function has predictable collisions and is subject --- to equivalent substring attacks. It is not suitable to construct a hash --- table keyed on possibly malicious user input. +-- Note: this hash function has predictable collisions and is subject to +-- equivalent substring attacks. It is not suitable for construction of a +-- hash table keyed on possibly malicious user input. pragma Pure (Ada.Strings.Hash); diff --git a/gcc/ada/einfo.adb b/gcc/ada/einfo.adb index 255a2b6..d5cbc22b 100644 --- a/gcc/ada/einfo.adb +++ b/gcc/ada/einfo.adb @@ -161,8 +161,8 @@ package body Einfo is -- Body_Entity Node19 -- Corresponding_Discriminant Node19 - -- Default_Aspect_Value Node19 -- Default_Aspect_Component_Value Node19 + -- Default_Aspect_Value Node19 -- Extra_Accessibility_Of_Result Node19 -- Parent_Subtype Node19 -- Size_Check_Code Node19 @@ -775,18 +775,18 @@ package body Einfo is return Node25 (Id); end Debug_Renaming_Link; - function Default_Aspect_Value (Id : E) return N is - begin - pragma Assert (Is_Scalar_Type (Id)); - return Node19 (Id); - end Default_Aspect_Value; - function Default_Aspect_Component_Value (Id : E) return N is begin pragma Assert (Is_Array_Type (Id)); return Node19 (Id); end Default_Aspect_Component_Value; + function Default_Aspect_Value (Id : E) return N is + begin + pragma Assert (Is_Scalar_Type (Id)); + return Node19 (Id); + end Default_Aspect_Value; + function Default_Expr_Function (Id : E) return E is begin pragma Assert (Is_Formal (Id)); @@ -3276,18 +3276,18 @@ package body Einfo is Set_Node25 (Id, V); end Set_Debug_Renaming_Link; - procedure Set_Default_Aspect_Value (Id : E; V : E) is - begin - pragma Assert (Is_Scalar_Type (Id)); - Set_Node19 (Id, V); - end Set_Default_Aspect_Value; - procedure Set_Default_Aspect_Component_Value (Id : E; V : E) is begin pragma Assert (Is_Array_Type (Id)); Set_Node19 (Id, V); end Set_Default_Aspect_Component_Value; + procedure Set_Default_Aspect_Value (Id : E; V : E) is + begin + pragma Assert (Is_Scalar_Type (Id)); + Set_Node19 (Id, V); + end Set_Default_Aspect_Value; + procedure Set_Default_Expr_Function (Id : E; V : E) is begin pragma Assert (Is_Formal (Id)); diff --git a/gcc/ada/einfo.ads b/gcc/ada/einfo.ads index 0dd6bdd..e0d7654 100644 --- a/gcc/ada/einfo.ads +++ b/gcc/ada/einfo.ads @@ -735,6 +735,14 @@ package Einfo is -- returns the {function,procedure}_specification, not the subprogram_ -- declaration. +-- Default_Aspect_Component_Value (Node19) +-- Present in array types. Holds the static value specified in a +-- default_component_value aspect specification for the array type. + +-- Default_Aspect_Value (Node19) +-- Present in scalar types. Holds the static value specified in a +-- default_value aspect specification for the type. + -- Default_Expr_Function (Node21) -- Present in parameters. It holds the entity of the parameterless -- function that is built to evaluate the default expression if it is @@ -748,14 +756,6 @@ package Einfo is -- default expressions (see Freeze.Process_Default_Expressions), which -- would not only waste time, but also generate false error messages. --- Default_Aspect_Value (Node19) --- Present in scalar types. Holds the static value specified in a --- default_value aspect specification for the type. - --- Default_Aspect_Component_Value (Node19) --- Present in array types. Holds the static value specified in a --- default_component_value aspect specification for the array type. - -- Default_Value (Node20) -- Present in formal parameters. Points to the node representing the -- expression for the default value for the parameter. Empty if the @@ -6047,14 +6047,16 @@ package Einfo is function CR_Discriminant (Id : E) return E; function C_Pass_By_Copy (Id : E) return B; function Can_Never_Be_Null (Id : E) return B; + function Can_Use_Internal_Rep (Id : E) return B; function Checks_May_Be_Suppressed (Id : E) return B; function Class_Wide_Type (Id : E) return E; function Cloned_Subtype (Id : E) return E; function Component_Alignment (Id : E) return C; - function Component_Clause (Id : E) return N; function Component_Bit_Offset (Id : E) return U; + function Component_Clause (Id : E) return N; function Component_Size (Id : E) return U; function Component_Type (Id : E) return E; + function Contract (Id : E) return N; function Corresponding_Concurrent_Type (Id : E) return E; function Corresponding_Discriminant (Id : E) return E; function Corresponding_Equality (Id : E) return E; @@ -6063,17 +6065,16 @@ package Einfo is function Corresponding_Remote_Type (Id : E) return E; function Current_Use_Clause (Id : E) return E; function Current_Value (Id : E) return N; - function Debug_Info_Off (Id : E) return B; - function Debug_Renaming_Link (Id : E) return E; - function Dispatch_Table_Wrappers (Id : E) return L; function DTC_Entity (Id : E) return E; function DT_Entry_Count (Id : E) return U; function DT_Offset_To_Top_Func (Id : E) return E; function DT_Position (Id : E) return U; + function Debug_Info_Off (Id : E) return B; + function Debug_Renaming_Link (Id : E) return E; + function Default_Aspect_Component_Value (Id : E) return N; + function Default_Aspect_Value (Id : E) return N; function Default_Expr_Function (Id : E) return E; function Default_Expressions_Processed (Id : E) return B; - function Default_Aspect_Value (Id : E) return N; - function Default_Aspect_Component_Value (Id : E) return N; function Default_Value (Id : E) return N; function Delay_Cleanups (Id : E) return B; function Delay_Subprogram_Descriptors (Id : E) return B; @@ -6081,6 +6082,7 @@ package Einfo is function Dependent_Instances (Id : E) return L; function Depends_On_Private (Id : E) return B; function Digits_Value (Id : E) return U; + function Direct_Primitive_Operations (Id : E) return L; function Directly_Designated_Type (Id : E) return E; function Discard_Names (Id : E) return B; function Discriminal (Id : E) return E; @@ -6089,6 +6091,7 @@ package Einfo is function Discriminant_Constraint (Id : E) return L; function Discriminant_Default_Value (Id : E) return N; function Discriminant_Number (Id : E) return U; + function Dispatch_Table_Wrappers (Id : E) return L; function Elaborate_Body_Desirable (Id : E) return B; function Elaboration_Entity (Id : E) return E; function Elaboration_Entity_Required (Id : E) return B; @@ -6100,7 +6103,6 @@ package Einfo is function Entry_Formal (Id : E) return E; function Entry_Index_Constant (Id : E) return E; function Entry_Index_Type (Id : E) return E; - function Contract (Id : E) return N; function Entry_Parameters_Type (Id : E) return E; function Enum_Pos_To_Rep (Id : E) return E; function Enumeration_Pos (Id : E) return U; @@ -6114,7 +6116,6 @@ package Einfo is function Extra_Constrained (Id : E) return E; function Extra_Formal (Id : E) return E; function Extra_Formals (Id : E) return E; - function Can_Use_Internal_Rep (Id : E) return B; function Finalization_Master (Id : E) return E; function Finalize_Storage_Only (Id : E) return B; function Finalizer (Id : E) return E; @@ -6163,8 +6164,8 @@ package Einfo is function Has_Implicit_Dereference (Id : E) return B; function Has_Inheritable_Invariants (Id : E) return B; function Has_Initial_Value (Id : E) return B; - function Has_Invariants (Id : E) return B; function Has_Interrupt_Handler (Id : E) return B; + function Has_Invariants (Id : E) return B; function Has_Machine_Radix_Clause (Id : E) return B; function Has_Master_Entity (Id : E) return B; function Has_Missing_Return (Id : E) return B; @@ -6219,8 +6220,8 @@ package Einfo is function In_Use (Id : E) return B; function Inner_Instances (Id : E) return L; function Interface_Alias (Id : E) return E; - function Interfaces (Id : E) return L; function Interface_Name (Id : E) return N; + function Interfaces (Id : E) return L; function Is_AST_Entry (Id : E) return B; function Is_Abstract_Subprogram (Id : E) return B; function Is_Abstract_Type (Id : E) return B; @@ -6260,8 +6261,8 @@ package Einfo is function Is_Implementation_Defined (Id : E) return B; function Is_Imported (Id : E) return B; function Is_Inlined (Id : E) return B; - function Is_Interface (Id : E) return B; function Is_Instantiated (Id : E) return B; + function Is_Interface (Id : E) return B; function Is_Internal (Id : E) return B; function Is_Interrupt_Handler (Id : E) return B; function Is_Intrinsic_Subprogram (Id : E) return B; @@ -6354,12 +6355,11 @@ package Einfo is function Original_Record_Component (Id : E) return E; function Overlays_Constant (Id : E) return B; function Overridden_Operation (Id : E) return E; + function PPC_Wrapper (Id : E) return E; function Package_Instantiation (Id : E) return N; function Packed_Array_Type (Id : E) return E; function Parent_Subtype (Id : E) return E; function Postcondition_Proc (Id : E) return E; - function PPC_Wrapper (Id : E) return E; - function Direct_Primitive_Operations (Id : E) return L; function Prival (Id : E) return E; function Prival_Link (Id : E) return E; function Private_Dependents (Id : E) return L; @@ -6383,9 +6383,9 @@ package Einfo is function Renamed_Object (Id : E) return N; function Renaming_Map (Id : E) return U; function Requires_Overriding (Id : E) return B; + function Return_Applies_To (Id : E) return N; function Return_Flag_Or_Transient_Decl (Id : E) return E; function Return_Present (Id : E) return B; - function Return_Applies_To (Id : E) return N; function Returns_By_Ref (Id : E) return B; function Reverse_Bit_Order (Id : E) return B; function Scalar_Range (Id : E) return N; @@ -6395,14 +6395,14 @@ package Einfo is function Shadow_Entities (Id : E) return S; function Shared_Var_Procs_Instance (Id : E) return E; function Size_Check_Code (Id : E) return N; - function Size_Known_At_Compile_Time (Id : E) return B; function Size_Depends_On_Discriminant (Id : E) return B; + function Size_Known_At_Compile_Time (Id : E) return B; function Small_Value (Id : E) return R; function Spec_Entity (Id : E) return E; - function Static_Predicate (Id : E) return S; - function Storage_Size_Variable (Id : E) return E; function Static_Elaboration_Desired (Id : E) return B; function Static_Initialization (Id : E) return N; + function Static_Predicate (Id : E) return S; + function Storage_Size_Variable (Id : E) return E; function Stored_Constraint (Id : E) return L; function Strict_Alignment (Id : E) return B; function String_Literal_Length (Id : E) return U; @@ -6626,7 +6626,6 @@ package Einfo is procedure Set_Accept_Address (Id : E; V : L); procedure Set_Access_Disp_Table (Id : E; V : L); - procedure Set_Dispatch_Table_Wrappers (Id : E; V : L); procedure Set_Actual_Subtype (Id : E; V : E); procedure Set_Address_Taken (Id : E; V : B := True); procedure Set_Alias (Id : E; V : E); @@ -6641,6 +6640,7 @@ package Einfo is procedure Set_CR_Discriminant (Id : E; V : E); procedure Set_C_Pass_By_Copy (Id : E; V : B := True); procedure Set_Can_Never_Be_Null (Id : E; V : B := True); + procedure Set_Can_Use_Internal_Rep (Id : E; V : B := True); procedure Set_Checks_May_Be_Suppressed (Id : E; V : B := True); procedure Set_Class_Wide_Type (Id : E; V : E); procedure Set_Cloned_Subtype (Id : E; V : E); @@ -6649,6 +6649,7 @@ package Einfo is procedure Set_Component_Clause (Id : E; V : N); procedure Set_Component_Size (Id : E; V : U); procedure Set_Component_Type (Id : E; V : E); + procedure Set_Contract (Id : E; V : N); procedure Set_Corresponding_Concurrent_Type (Id : E; V : E); procedure Set_Corresponding_Discriminant (Id : E; V : E); procedure Set_Corresponding_Equality (Id : E; V : E); @@ -6657,16 +6658,16 @@ package Einfo is procedure Set_Corresponding_Remote_Type (Id : E; V : E); procedure Set_Current_Use_Clause (Id : E; V : E); procedure Set_Current_Value (Id : E; V : N); - procedure Set_Debug_Info_Off (Id : E; V : B := True); - procedure Set_Debug_Renaming_Link (Id : E; V : E); procedure Set_DTC_Entity (Id : E; V : E); procedure Set_DT_Entry_Count (Id : E; V : U); procedure Set_DT_Offset_To_Top_Func (Id : E; V : E); procedure Set_DT_Position (Id : E; V : U); + procedure Set_Debug_Info_Off (Id : E; V : B := True); + procedure Set_Debug_Renaming_Link (Id : E; V : E); + procedure Set_Default_Aspect_Component_Value (Id : E; V : N); + procedure Set_Default_Aspect_Value (Id : E; V : N); procedure Set_Default_Expr_Function (Id : E; V : E); procedure Set_Default_Expressions_Processed (Id : E; V : B := True); - procedure Set_Default_Aspect_Value (Id : E; V : N); - procedure Set_Default_Aspect_Component_Value (Id : E; V : N); procedure Set_Default_Value (Id : E; V : N); procedure Set_Delay_Cleanups (Id : E; V : B := True); procedure Set_Delay_Subprogram_Descriptors (Id : E; V : B := True); @@ -6674,6 +6675,7 @@ package Einfo is procedure Set_Dependent_Instances (Id : E; V : L); procedure Set_Depends_On_Private (Id : E; V : B := True); procedure Set_Digits_Value (Id : E; V : U); + procedure Set_Direct_Primitive_Operations (Id : E; V : L); procedure Set_Directly_Designated_Type (Id : E; V : E); procedure Set_Discard_Names (Id : E; V : B := True); procedure Set_Discriminal (Id : E; V : E); @@ -6682,6 +6684,7 @@ package Einfo is procedure Set_Discriminant_Constraint (Id : E; V : L); procedure Set_Discriminant_Default_Value (Id : E; V : N); procedure Set_Discriminant_Number (Id : E; V : U); + procedure Set_Dispatch_Table_Wrappers (Id : E; V : L); procedure Set_Elaborate_Body_Desirable (Id : E; V : B := True); procedure Set_Elaboration_Entity (Id : E; V : E); procedure Set_Elaboration_Entity_Required (Id : E; V : B := True); @@ -6692,7 +6695,6 @@ package Einfo is procedure Set_Entry_Component (Id : E; V : E); procedure Set_Entry_Formal (Id : E; V : E); procedure Set_Entry_Index_Constant (Id : E; V : E); - procedure Set_Contract (Id : E; V : N); procedure Set_Entry_Parameters_Type (Id : E; V : E); procedure Set_Enum_Pos_To_Rep (Id : E; V : E); procedure Set_Enumeration_Pos (Id : E; V : U); @@ -6706,7 +6708,6 @@ package Einfo is procedure Set_Extra_Constrained (Id : E; V : E); procedure Set_Extra_Formal (Id : E; V : E); procedure Set_Extra_Formals (Id : E; V : E); - procedure Set_Can_Use_Internal_Rep (Id : E; V : B := True); procedure Set_Finalization_Master (Id : E; V : E); procedure Set_Finalize_Storage_Only (Id : E; V : B := True); procedure Set_Finalizer (Id : E; V : E); @@ -6806,13 +6807,13 @@ package Einfo is procedure Set_Has_Xref_Entry (Id : E; V : B := True); procedure Set_Hiding_Loop_Variable (Id : E; V : E); procedure Set_Homonym (Id : E; V : E); - procedure Set_Interfaces (Id : E; V : L); procedure Set_In_Package_Body (Id : E; V : B := True); procedure Set_In_Private_Part (Id : E; V : B := True); procedure Set_In_Use (Id : E; V : B := True); procedure Set_Inner_Instances (Id : E; V : L); procedure Set_Interface_Alias (Id : E; V : E); procedure Set_Interface_Name (Id : E; V : N); + procedure Set_Interfaces (Id : E; V : L); procedure Set_Is_AST_Entry (Id : E; V : B := True); procedure Set_Is_Abstract_Subprogram (Id : E; V : B := True); procedure Set_Is_Abstract_Type (Id : E; V : B := True); @@ -6857,8 +6858,8 @@ package Einfo is procedure Set_Is_Implementation_Defined (Id : E; V : B := True); procedure Set_Is_Imported (Id : E; V : B := True); procedure Set_Is_Inlined (Id : E; V : B := True); - procedure Set_Is_Interface (Id : E; V : B := True); procedure Set_Is_Instantiated (Id : E; V : B := True); + procedure Set_Is_Interface (Id : E; V : B := True); procedure Set_Is_Internal (Id : E; V : B := True); procedure Set_Is_Interrupt_Handler (Id : E; V : B := True); procedure Set_Is_Intrinsic_Subprogram (Id : E; V : B := True); @@ -6952,12 +6953,11 @@ package Einfo is procedure Set_Original_Record_Component (Id : E; V : E); procedure Set_Overlays_Constant (Id : E; V : B := True); procedure Set_Overridden_Operation (Id : E; V : E); + procedure Set_PPC_Wrapper (Id : E; V : E); procedure Set_Package_Instantiation (Id : E; V : N); procedure Set_Packed_Array_Type (Id : E; V : E); procedure Set_Parent_Subtype (Id : E; V : E); procedure Set_Postcondition_Proc (Id : E; V : E); - procedure Set_PPC_Wrapper (Id : E; V : E); - procedure Set_Direct_Primitive_Operations (Id : E; V : L); procedure Set_Prival (Id : E; V : E); procedure Set_Prival_Link (Id : E; V : E); procedure Set_Private_Dependents (Id : E; V : L); @@ -6981,9 +6981,9 @@ package Einfo is procedure Set_Renamed_Object (Id : E; V : N); procedure Set_Renaming_Map (Id : E; V : U); procedure Set_Requires_Overriding (Id : E; V : B := True); + procedure Set_Return_Applies_To (Id : E; V : N); procedure Set_Return_Flag_Or_Transient_Decl (Id : E; V : E); procedure Set_Return_Present (Id : E; V : B := True); - procedure Set_Return_Applies_To (Id : E; V : N); procedure Set_Returns_By_Ref (Id : E; V : B := True); procedure Set_Reverse_Bit_Order (Id : E; V : B := True); procedure Set_Scalar_Range (Id : E; V : N); @@ -6997,10 +6997,10 @@ package Einfo is procedure Set_Size_Known_At_Compile_Time (Id : E; V : B := True); procedure Set_Small_Value (Id : E; V : R); procedure Set_Spec_Entity (Id : E; V : E); - procedure Set_Static_Predicate (Id : E; V : S); - procedure Set_Storage_Size_Variable (Id : E; V : E); procedure Set_Static_Elaboration_Desired (Id : E; V : B); procedure Set_Static_Initialization (Id : E; V : N); + procedure Set_Static_Predicate (Id : E; V : S); + procedure Set_Storage_Size_Variable (Id : E; V : E); procedure Set_Stored_Constraint (Id : E; V : L); procedure Set_Strict_Alignment (Id : E; V : B := True); procedure Set_String_Literal_Length (Id : E; V : U); @@ -7346,6 +7346,7 @@ package Einfo is pragma Inline (CR_Discriminant); pragma Inline (C_Pass_By_Copy); pragma Inline (Can_Never_Be_Null); + pragma Inline (Can_Use_Internal_Rep); pragma Inline (Checks_May_Be_Suppressed); pragma Inline (Class_Wide_Type); pragma Inline (Cloned_Subtype); @@ -7362,18 +7363,17 @@ package Einfo is pragma Inline (Corresponding_Remote_Type); pragma Inline (Current_Use_Clause); pragma Inline (Current_Value); - pragma Inline (Debug_Info_Off); - pragma Inline (Debug_Renaming_Link); - pragma Inline (Dispatch_Table_Wrappers); pragma Inline (DTC_Entity); pragma Inline (DT_Entry_Count); pragma Inline (DT_Offset_To_Top_Func); pragma Inline (DT_Position); + pragma Inline (Debug_Info_Off); + pragma Inline (Debug_Renaming_Link); + pragma Inline (Default_Aspect_Component_Value); + pragma Inline (Default_Aspect_Value); pragma Inline (Default_Expr_Function); pragma Inline (Default_Expressions_Processed); pragma Inline (Default_Value); - pragma Inline (Default_Aspect_Value); - pragma Inline (Default_Aspect_Component_Value); pragma Inline (Delay_Cleanups); pragma Inline (Delay_Subprogram_Descriptors); pragma Inline (Delta_Value); @@ -7389,6 +7389,7 @@ package Einfo is pragma Inline (Discriminant_Constraint); pragma Inline (Discriminant_Default_Value); pragma Inline (Discriminant_Number); + pragma Inline (Dispatch_Table_Wrappers); pragma Inline (Elaborate_Body_Desirable); pragma Inline (Elaboration_Entity); pragma Inline (Elaboration_Entity_Required); @@ -7413,7 +7414,6 @@ package Einfo is pragma Inline (Extra_Constrained); pragma Inline (Extra_Formal); pragma Inline (Extra_Formals); - pragma Inline (Can_Use_Internal_Rep); pragma Inline (Finalization_Master); pragma Inline (Finalizer); pragma Inline (First_Entity); @@ -7511,22 +7511,22 @@ package Einfo is pragma Inline (Has_Xref_Entry); pragma Inline (Hiding_Loop_Variable); pragma Inline (Homonym); - pragma Inline (Interfaces); pragma Inline (In_Package_Body); pragma Inline (In_Private_Part); pragma Inline (In_Use); pragma Inline (Inner_Instances); pragma Inline (Interface_Alias); pragma Inline (Interface_Name); + pragma Inline (Interfaces); pragma Inline (Is_AST_Entry); pragma Inline (Is_Abstract_Subprogram); pragma Inline (Is_Abstract_Type); pragma Inline (Is_Access_Constant); - pragma Inline (Is_Ada_2005_Only); - pragma Inline (Is_Ada_2012_Only); - pragma Inline (Is_Access_Type); pragma Inline (Is_Access_Protected_Subprogram_Type); pragma Inline (Is_Access_Subprogram_Type); + pragma Inline (Is_Access_Type); + pragma Inline (Is_Ada_2005_Only); + pragma Inline (Is_Ada_2012_Only); pragma Inline (Is_Aggregate_Type); pragma Inline (Is_Aliased); pragma Inline (Is_Array_Type); @@ -7553,11 +7553,11 @@ package Einfo is pragma Inline (Is_Controlled); pragma Inline (Is_Controlling_Formal); pragma Inline (Is_Decimal_Fixed_Point_Type); - pragma Inline (Is_Discrim_SO_Function); - pragma Inline (Is_Digits_Type); pragma Inline (Is_Descendent_Of_Address); + pragma Inline (Is_Digits_Type); pragma Inline (Is_Discrete_Or_Fixed_Point_Type); pragma Inline (Is_Discrete_Type); + pragma Inline (Is_Discrim_SO_Function); pragma Inline (Is_Dispatch_Table_Entity); pragma Inline (Is_Dispatching_Operation); pragma Inline (Is_Elementary_Type); @@ -7587,9 +7587,9 @@ package Einfo is pragma Inline (Is_Incomplete_Or_Private_Type); pragma Inline (Is_Incomplete_Type); pragma Inline (Is_Inlined); - pragma Inline (Is_Interface); pragma Inline (Is_Instantiated); pragma Inline (Is_Integer_Type); + pragma Inline (Is_Interface); pragma Inline (Is_Internal); pragma Inline (Is_Interrupt_Handler); pragma Inline (Is_Intrinsic_Subprogram); @@ -7606,14 +7606,14 @@ package Einfo is pragma Inline (Is_Named_Number); pragma Inline (Is_Non_Static_Subtype); pragma Inline (Is_Null_Init_Proc); - pragma Inline (Is_Obsolescent); - pragma Inline (Is_Only_Out_Parameter); pragma Inline (Is_Numeric_Type); pragma Inline (Is_Object); + pragma Inline (Is_Obsolescent); + pragma Inline (Is_Only_Out_Parameter); pragma Inline (Is_Optional_Parameter); - pragma Inline (Is_Package_Body_Entity); pragma Inline (Is_Ordinary_Fixed_Point_Type); pragma Inline (Is_Overloadable); + pragma Inline (Is_Package_Body_Entity); pragma Inline (Is_Packed); pragma Inline (Is_Packed_Array_Type); pragma Inline (Is_Potentially_Use_Visible); @@ -7645,10 +7645,10 @@ package Einfo is pragma Inline (Is_Subprogram); pragma Inline (Is_Tag); pragma Inline (Is_Tagged_Type); - pragma Inline (Is_True_Constant); pragma Inline (Is_Task_Type); pragma Inline (Is_Thunk); pragma Inline (Is_Trivial_Subprogram); + pragma Inline (Is_True_Constant); pragma Inline (Is_Type); pragma Inline (Is_Unchecked_Union); pragma Inline (Is_Underlying_Record_View); @@ -7699,12 +7699,12 @@ package Einfo is pragma Inline (Original_Record_Component); pragma Inline (Overlays_Constant); pragma Inline (Overridden_Operation); + pragma Inline (PPC_Wrapper); pragma Inline (Package_Instantiation); pragma Inline (Packed_Array_Type); pragma Inline (Parameter_Mode); pragma Inline (Parent_Subtype); pragma Inline (Postcondition_Proc); - pragma Inline (PPC_Wrapper); pragma Inline (Prival); pragma Inline (Prival_Link); pragma Inline (Private_Dependents); @@ -7728,9 +7728,9 @@ package Einfo is pragma Inline (Renamed_Object); pragma Inline (Renaming_Map); pragma Inline (Requires_Overriding); + pragma Inline (Return_Applies_To); pragma Inline (Return_Flag_Or_Transient_Decl); pragma Inline (Return_Present); - pragma Inline (Return_Applies_To); pragma Inline (Returns_By_Ref); pragma Inline (Reverse_Bit_Order); pragma Inline (Scalar_Range); @@ -7744,10 +7744,10 @@ package Einfo is pragma Inline (Size_Known_At_Compile_Time); pragma Inline (Small_Value); pragma Inline (Spec_Entity); - pragma Inline (Static_Predicate); - pragma Inline (Storage_Size_Variable); pragma Inline (Static_Elaboration_Desired); pragma Inline (Static_Initialization); + pragma Inline (Static_Predicate); + pragma Inline (Storage_Size_Variable); pragma Inline (Stored_Constraint); pragma Inline (Strict_Alignment); pragma Inline (String_Literal_Length); @@ -7795,6 +7795,7 @@ package Einfo is pragma Inline (Set_CR_Discriminant); pragma Inline (Set_C_Pass_By_Copy); pragma Inline (Set_Can_Never_Be_Null); + pragma Inline (Set_Can_Use_Internal_Rep); pragma Inline (Set_Checks_May_Be_Suppressed); pragma Inline (Set_Class_Wide_Type); pragma Inline (Set_Cloned_Subtype); @@ -7811,14 +7812,14 @@ package Einfo is pragma Inline (Set_Corresponding_Remote_Type); pragma Inline (Set_Current_Use_Clause); pragma Inline (Set_Current_Value); - pragma Inline (Set_Debug_Info_Off); - pragma Inline (Set_Debug_Renaming_Link); - pragma Inline (Set_Dispatch_Table_Wrappers); pragma Inline (Set_DTC_Entity); pragma Inline (Set_DT_Entry_Count); pragma Inline (Set_DT_Offset_To_Top_Func); pragma Inline (Set_DT_Position); - pragma Inline (Set_Relative_Deadline_Variable); + pragma Inline (Set_Debug_Info_Off); + pragma Inline (Set_Debug_Renaming_Link); + pragma Inline (Set_Default_Aspect_Component_Value); + pragma Inline (Set_Default_Aspect_Value); pragma Inline (Set_Default_Expr_Function); pragma Inline (Set_Default_Expressions_Processed); pragma Inline (Set_Default_Value); @@ -7837,6 +7838,7 @@ package Einfo is pragma Inline (Set_Discriminant_Constraint); pragma Inline (Set_Discriminant_Default_Value); pragma Inline (Set_Discriminant_Number); + pragma Inline (Set_Dispatch_Table_Wrappers); pragma Inline (Set_Elaborate_Body_Desirable); pragma Inline (Set_Elaboration_Entity); pragma Inline (Set_Elaboration_Entity_Required); @@ -7859,7 +7861,6 @@ package Einfo is pragma Inline (Set_Extra_Constrained); pragma Inline (Set_Extra_Formal); pragma Inline (Set_Extra_Formals); - pragma Inline (Set_Can_Use_Internal_Rep); pragma Inline (Set_Finalization_Master); pragma Inline (Set_Finalizer); pragma Inline (Set_First_Entity); @@ -7957,13 +7958,13 @@ package Einfo is pragma Inline (Set_Has_Xref_Entry); pragma Inline (Set_Hiding_Loop_Variable); pragma Inline (Set_Homonym); - pragma Inline (Set_Interfaces); pragma Inline (Set_In_Package_Body); pragma Inline (Set_In_Private_Part); pragma Inline (Set_In_Use); pragma Inline (Set_Inner_Instances); pragma Inline (Set_Interface_Alias); pragma Inline (Set_Interface_Name); + pragma Inline (Set_Interfaces); pragma Inline (Set_Is_AST_Entry); pragma Inline (Set_Is_Abstract_Subprogram); pragma Inline (Set_Is_Abstract_Type); @@ -7982,8 +7983,8 @@ package Einfo is pragma Inline (Set_Is_Compilation_Unit); pragma Inline (Set_Is_Completely_Hidden); pragma Inline (Set_Is_Concurrent_Record_Type); - pragma Inline (Set_Is_Constr_Subt_For_U_Nominal); pragma Inline (Set_Is_Constr_Subt_For_UN_Aliased); + pragma Inline (Set_Is_Constr_Subt_For_U_Nominal); pragma Inline (Set_Is_Constrained); pragma Inline (Set_Is_Constructor); pragma Inline (Set_Is_Controlled); @@ -8008,8 +8009,8 @@ package Einfo is pragma Inline (Set_Is_Implementation_Defined); pragma Inline (Set_Is_Imported); pragma Inline (Set_Is_Inlined); - pragma Inline (Set_Is_Interface); pragma Inline (Set_Is_Instantiated); + pragma Inline (Set_Is_Interface); pragma Inline (Set_Is_Internal); pragma Inline (Set_Is_Interrupt_Handler); pragma Inline (Set_Is_Intrinsic_Subprogram); @@ -8094,8 +8095,8 @@ package Einfo is pragma Inline (Set_Normalized_First_Bit); pragma Inline (Set_Normalized_Position); pragma Inline (Set_Normalized_Position_Max); - pragma Inline (Set_OK_To_Reorder_Components); pragma Inline (Set_OK_To_Rename); + pragma Inline (Set_OK_To_Reorder_Components); pragma Inline (Set_Optimize_Alignment_Space); pragma Inline (Set_Optimize_Alignment_Time); pragma Inline (Set_Original_Access_Type); @@ -8103,11 +8104,11 @@ package Einfo is pragma Inline (Set_Original_Record_Component); pragma Inline (Set_Overlays_Constant); pragma Inline (Set_Overridden_Operation); + pragma Inline (Set_PPC_Wrapper); pragma Inline (Set_Package_Instantiation); pragma Inline (Set_Packed_Array_Type); pragma Inline (Set_Parent_Subtype); pragma Inline (Set_Postcondition_Proc); - pragma Inline (Set_PPC_Wrapper); pragma Inline (Set_Prival); pragma Inline (Set_Prival_Link); pragma Inline (Set_Private_Dependents); @@ -8125,14 +8126,15 @@ package Einfo is pragma Inline (Set_Related_Expression); pragma Inline (Set_Related_Instance); pragma Inline (Set_Related_Type); + pragma Inline (Set_Relative_Deadline_Variable); pragma Inline (Set_Renamed_Entity); pragma Inline (Set_Renamed_In_Spec); pragma Inline (Set_Renamed_Object); pragma Inline (Set_Renaming_Map); pragma Inline (Set_Requires_Overriding); + pragma Inline (Set_Return_Applies_To); pragma Inline (Set_Return_Flag_Or_Transient_Decl); pragma Inline (Set_Return_Present); - pragma Inline (Set_Return_Applies_To); pragma Inline (Set_Returns_By_Ref); pragma Inline (Set_Reverse_Bit_Order); pragma Inline (Set_Scalar_Range); @@ -8146,10 +8148,10 @@ package Einfo is pragma Inline (Set_Size_Known_At_Compile_Time); pragma Inline (Set_Small_Value); pragma Inline (Set_Spec_Entity); - pragma Inline (Set_Static_Predicate); - pragma Inline (Set_Storage_Size_Variable); pragma Inline (Set_Static_Elaboration_Desired); pragma Inline (Set_Static_Initialization); + pragma Inline (Set_Static_Predicate); + pragma Inline (Set_Storage_Size_Variable); pragma Inline (Set_Stored_Constraint); pragma Inline (Set_Strict_Alignment); pragma Inline (Set_String_Literal_Length); diff --git a/gcc/ada/exp_ch7.adb b/gcc/ada/exp_ch7.adb index f2062e5..78a6180 100644 --- a/gcc/ada/exp_ch7.adb +++ b/gcc/ada/exp_ch7.adb @@ -2844,7 +2844,7 @@ package body Exp_Ch7 is -- which belongs to a protected type. Loc : constant Source_Ptr := No_Location; - HSS : Node_Id := Handled_Statement_Sequence (N); + HSS : Node_Id; begin -- Do not perform this expansion in Alfa mode because we do not create @@ -2856,6 +2856,7 @@ package body Exp_Ch7 is -- The At_End handler should have been assimilated by the finalizer + HSS := Handled_Statement_Sequence (N); pragma Assert (No (At_End_Proc (HSS))); -- If the construct to be cleaned up is a protected subprogram body, the diff --git a/gcc/ada/exp_ch9.adb b/gcc/ada/exp_ch9.adb index e61ba13..a827284 100644 --- a/gcc/ada/exp_ch9.adb +++ b/gcc/ada/exp_ch9.adb @@ -9023,13 +9023,14 @@ package body Exp_Ch9 is -- table parameter. Generate: -- Ada.Tags.Get_Entry_Index - -- (T => To_Tag_Ptr (Obj'Address).all, - -- Position => Ada.Tags.Get_Offset_Index - -- (Ada.Tags.Tag (Concval), - -- i <interface dispatch table position of Ename>)); + -- (T => To_Tag_Ptr (Obj'Address).all, + -- Position => + -- Ada.Tags.Get_Offset_Index + -- (Ada.Tags.Tag (Concval), + -- <interface dispatch table position of Ename>)); -- Note that Obj'Address is recursively expanded into a call to - -- Base_Address (Obj) + -- Base_Address (Obj). if Tagged_Type_Expansion then Prepend_To (Params, @@ -9054,7 +9055,6 @@ package body Exp_Ch9 is else Prepend_To (Params, - Make_Function_Call (Loc, Name => New_Reference_To (RTE (RE_Get_Entry_Index), Loc), Parameter_Associations => New_List ( diff --git a/gcc/ada/freeze.adb b/gcc/ada/freeze.adb index 7b78c49..9138c3e 100644 --- a/gcc/ada/freeze.adb +++ b/gcc/ada/freeze.adb @@ -4165,9 +4165,9 @@ package body Freeze is if Is_First_Subtype (E) and then Has_Default_Aspect (E) then declare - Nam : Name_Id; - Exp : Node_Id; - Typ : Entity_Id; + Nam : Name_Id; + Exp : Node_Id; + Typ : Entity_Id; begin if Is_Scalar_Type (E) then @@ -4176,8 +4176,8 @@ package body Freeze is Exp := Default_Aspect_Value (Typ); else Nam := Name_Default_Component_Value; - Exp := Default_Aspect_Component_Value (E); Typ := Component_Type (E); + Exp := Default_Aspect_Component_Value (E); end if; Analyze_And_Resolve (Exp, Typ); diff --git a/gcc/ada/prj-nmsc.adb b/gcc/ada/prj-nmsc.adb index 0fbcd11..5d2499d 100644 --- a/gcc/ada/prj-nmsc.adb +++ b/gcc/ada/prj-nmsc.adb @@ -2546,18 +2546,17 @@ package body Prj.Nmsc is Project.Decl.Attributes, Shared); - List : String_List_Id; - Element : String_Element; - Name : File_Name_Type; - Iter : Source_Iterator; - Source : Source_Id; - Project_2 : Project_Id; - Other : Source_Id; + List : String_List_Id; + Element : String_Element; + Name : File_Name_Type; + Iter : Source_Iterator; + Source : Source_Id; + Project_2 : Project_Id; + Other : Source_Id; + Unit_Found : Boolean; Interface_ALIs : String_List_Id := Nil_String; - Unit_Found : Boolean; - begin if not Interfaces.Default then @@ -2583,9 +2582,9 @@ package body Prj.Nmsc is Name := Canonical_Case_File_Name (Element.Value); Project_2 := Project; - Big_Loop : - while Project_2 /= No_Project loop + Big_Loop : while Project_2 /= No_Project loop if Project.Qualifier = Aggregate_Library then + -- For an aggregate library we want to consider sources of -- all aggregated projects. @@ -2693,9 +2692,9 @@ package body Prj.Nmsc is Unit_Found := False; Project_2 := Project; - Big_Loop_2 : - while Project_2 /= No_Project loop + Big_Loop_2 : while Project_2 /= No_Project loop if Project.Qualifier = Aggregate_Library then + -- For an aggregate library we want to consider sources of -- all aggregated projects. @@ -4492,8 +4491,8 @@ package body Prj.Nmsc is end if; end if; - -- Check value of attribute Library_Auto_Init and set - -- Lib_Auto_Init accordingly. + -- Check value of attribute Library_Auto_Init and set Lib_Auto_Init + -- accordingly. if Lib_Auto_Init.Default then diff --git a/gcc/ada/prj-proc.adb b/gcc/ada/prj-proc.adb index 0e45c0d..e22c6ab 100644 --- a/gcc/ada/prj-proc.adb +++ b/gcc/ada/prj-proc.adb @@ -2920,6 +2920,7 @@ package body Prj.Proc is Shared); List : Project_List := In_Tree.Projects; Is_Encapsulated : Boolean; + begin Get_Name_String (Lib_Standalone.Value); To_Lower (Name_Buffer (1 .. Name_Len)); diff --git a/gcc/ada/prj.adb b/gcc/ada/prj.adb index f4226c2..1327b58 100644 --- a/gcc/ada/prj.adb +++ b/gcc/ada/prj.adb @@ -619,7 +619,7 @@ package body Prj is (List.Project, Tree, In_Aggregate_Lib, From_Encapsulated_Lib - or (Project.Standalone_Library = Encapsulated)); + or else Project.Standalone_Library = Encapsulated); List := List.Next; end loop; @@ -644,8 +644,9 @@ package body Prj is Recursive_Check (Agg.Project, T, True, - From_Encapsulated_Lib or - Project.Standalone_Library = Encapsulated); + From_Encapsulated_Lib + or else + Project.Standalone_Library = Encapsulated); else T := Agg.Tree; diff --git a/gcc/ada/prj.ads b/gcc/ada/prj.ads index 830f511..fa36d85 100644 --- a/gcc/ada/prj.ads +++ b/gcc/ada/prj.ads @@ -938,8 +938,8 @@ package Prj is type Project_List_Element; type Project_List is access all Project_List_Element; type Project_List_Element is record - Project : Project_Id := No_Project; - From_Encapsulated_Lib : Boolean := False; + Project : Project_Id := No_Project; + From_Encapsulated_Lib : Boolean := False; Next : Project_List := null; end record; -- A list of projects @@ -1408,8 +1408,8 @@ package Prj is function For_Each_Source (In_Tree : Project_Tree_Ref; Project : Project_Id := No_Project; - Language : Name_Id := No_Name; - Encapsulated_Libs : Boolean := True) return Source_Iterator; + Language : Name_Id := No_Name; + Encapsulated_Libs : Boolean := True) return Source_Iterator; -- Returns an iterator for all the sources of a project tree, or a specific -- project, or a specific language. Include sources from aggregated libs if -- Aggregated_Libs is True. @@ -1601,8 +1601,9 @@ package Prj is -- aggregated projects, since they might not be using the same tree as 'By' type Project_Context is record - In_Aggregate_Lib : Boolean; + In_Aggregate_Lib : Boolean; -- True if the project is part of an aggregate library + From_Encapsulated_Lib : Boolean; -- True if the project is imported from an encapsulated library end record; @@ -1850,7 +1851,7 @@ private Language_Name : Name_Id; -- Only sources of this language will be returned (or all if No_Name) - Current : Source_Id; + Current : Source_Id; Encapsulated_Libs : Boolean; -- True if we want to include the sources from encapsulated libs diff --git a/gcc/ada/s-llflex.ads b/gcc/ada/s-llflex.ads index 7575383..9504e78 100644 --- a/gcc/ada/s-llflex.ads +++ b/gcc/ada/s-llflex.ads @@ -29,8 +29,8 @@ -- -- ------------------------------------------------------------------------------ --- This package contains an instantiation of the exponentiation between two --- long long floats. +-- This package contains an instantiation of the exponentiation operator +-- between two long long floats. with Ada.Numerics.Long_Long_Elementary_Functions; diff --git a/gcc/ada/s-ransee.adb b/gcc/ada/s-ransee.adb index 94e585f6..3f97ca3 100644 --- a/gcc/ada/s-ransee.adb +++ b/gcc/ada/s-ransee.adb @@ -2,7 +2,7 @@ -- -- -- GNAT RUN-TIME COMPONENTS -- -- -- --- S Y S T E M . R A N D O M _ S E E D -- +-- S Y S T E M . R A N D O M _ S E E D -- -- -- -- B o d y -- -- -- diff --git a/gcc/ada/s-ransee.ads b/gcc/ada/s-ransee.ads index f627fc9..8e4071f 100644 --- a/gcc/ada/s-ransee.ads +++ b/gcc/ada/s-ransee.ads @@ -2,7 +2,7 @@ -- -- -- GNAT RUN-TIME COMPONENTS -- -- -- --- S Y S T E M . R A N D O M _ S E E D -- +-- S Y S T E M . R A N D O M _ S E E D -- -- -- -- S p e c -- -- -- diff --git a/gcc/ada/sem_ch13.adb b/gcc/ada/sem_ch13.adb index 1770b80..502bc13 100644 --- a/gcc/ada/sem_ch13.adb +++ b/gcc/ada/sem_ch13.adb @@ -1429,6 +1429,7 @@ package body Sem_Ch13 is -- Make sure we have a freeze node (it might otherwise be -- missing in cases like subtype X is Y, and we would not -- have a place to build the predicate function). + -- If the type is private, indicate that its completion -- has a freeze node, because that is the one that will be -- visible at freeze time. @@ -5068,9 +5069,7 @@ package body Sem_Ch13 is -- The predicate function is shared between views of a type. - if Is_Private_Type (Typ) - and then Present (Full_View (Typ)) - then + if Is_Private_Type (Typ) and then Present (Full_View (Typ)) then Set_Predicate_Function (Full_View (Typ), SId); end if; @@ -6036,7 +6035,8 @@ package body Sem_Ch13 is -- partial view is visible. The expression must be scalar, so use -- the full view to resolve. - elsif (A_Id = Aspect_Default_Value or else + elsif (A_Id = Aspect_Default_Value + or else A_Id = Aspect_Default_Component_Value) and then Is_Private_Type (T) then diff --git a/gcc/ada/sem_dim.adb b/gcc/ada/sem_dim.adb index b5502de..f016c30 100644 --- a/gcc/ada/sem_dim.adb +++ b/gcc/ada/sem_dim.adb @@ -2248,7 +2248,8 @@ package body Sem_Dim is return Package_Name = Name_Dim_Float_IO - or else Package_Name = Name_Dim_Integer_IO; + or else + Package_Name = Name_Dim_Integer_IO; end if; end if; end if; @@ -2261,13 +2262,12 @@ package body Sem_Dim is ----------------- function Item_Actual return Node_Id is - Actual : Node_Id; + Actual : Node_Id; begin - Actual := First (Actuals); - -- Look for the item actual as a parameter association + Actual := First (Actuals); while Present (Actual) loop if Nkind (Actual) = N_Parameter_Association and then Chars (Selector_Name (Actual)) = Name_Item @@ -2295,9 +2295,7 @@ package body Sem_Dim is -- Start of processing for Expand_Put_Call_With_Dimension_Symbol begin - if Is_Procedure_Put_Call - and then not Has_Dimension_Symbols - then + if Is_Procedure_Put_Call and then not Has_Dimension_Symbols then Actual := Item_Actual; Dims_Of_Actual := Dimensions_Of (Actual); Etyp := Etype (Actual); @@ -2315,6 +2313,7 @@ package body Sem_Dim is New_Str_Lit := Make_String_Literal (Loc, End_String); -- Check that the item is not dimensionless + -- Create the new String_Literal with the new String_Id generated by -- the routine From_Dimension_To_String. @@ -2326,39 +2325,37 @@ package body Sem_Dim is end if; if Present (New_Str_Lit) then + -- Insert all actuals in New_Actuals Actual := First (Actuals); - while Present (Actual) loop + -- Copy every actuals in New_Actuals except the Symbols -- parameter association. if Nkind (Actual) = N_Parameter_Association and then Chars (Selector_Name (Actual)) /= Name_Symbols then - Append ( + Append_To (New_Actuals, Make_Parameter_Association (Loc, Selector_Name => New_Copy (Selector_Name (Actual)), Explicit_Actual_Parameter => - New_Copy (Explicit_Actual_Parameter (Actual))), - New_Actuals); + New_Copy (Explicit_Actual_Parameter (Actual)))); elsif Nkind (Actual) /= N_Parameter_Association then - Append (New_Copy (Actual), New_Actuals); + Append_To (New_Actuals, New_Copy (Actual)); end if; Next (Actual); end loop; - -- Create the new Symbols parameter association and append it in - -- New_Actuals. + -- Create new Symbols param association and append to New_Actuals - Append ( + Append_To (New_Actuals, Make_Parameter_Association (Loc, Selector_Name => Make_Identifier (Loc, Name_Symbols), - Explicit_Actual_Parameter => New_Str_Lit), - New_Actuals); + Explicit_Actual_Parameter => New_Str_Lit)); -- Rewrite and analyze the procedure call diff --git a/gcc/ada/sem_prag.adb b/gcc/ada/sem_prag.adb index 326573f..3a16969 100644 --- a/gcc/ada/sem_prag.adb +++ b/gcc/ada/sem_prag.adb @@ -7084,7 +7084,7 @@ package body Sem_Prag is Check_Interrupt_Or_Attach_Handler; -- The expression that designates the attribute may depend on a - -- discriminant, and is therefore a per- object expression, to + -- discriminant, and is therefore a per-object expression, to -- be expanded in the init proc. If expansion is enabled, then -- perform semantic checks on a copy only. @@ -15308,13 +15308,12 @@ package body Sem_Prag is -- Make an aspect from any PPC pragma - Append ( + Append_To (Aspects, Make_Aspect_Specification (Loc, Identifier => Make_Identifier (Loc, Chars (Pragma_Identifier (Prag))), Expression => - Copy_Separate_Tree (Expression (Prag_Arg_Ass))), - Aspects); + Copy_Separate_Tree (Expression (Prag_Arg_Ass)))); -- Generate the analysis information in the pragma expression -- and then set the pragma node analyzed to avoid any further |