diff options
-rw-r--r-- | gcc/ada/ChangeLog | 8 | ||||
-rw-r--r-- | gcc/ada/checks.adb | 4 | ||||
-rw-r--r-- | gcc/ada/einfo.adb | 24 | ||||
-rw-r--r-- | gcc/ada/einfo.ads | 44 | ||||
-rw-r--r-- | gcc/ada/exp_aggr.adb | 19 | ||||
-rw-r--r-- | gcc/ada/exp_attr.adb | 16 | ||||
-rw-r--r-- | gcc/ada/exp_ch4.adb | 6 | ||||
-rw-r--r-- | gcc/ada/exp_ch5.adb | 8 | ||||
-rw-r--r-- | gcc/ada/exp_dbug.adb | 8 | ||||
-rw-r--r-- | gcc/ada/exp_dbug.ads | 4 | ||||
-rw-r--r-- | gcc/ada/exp_pakd.adb | 44 | ||||
-rw-r--r-- | gcc/ada/exp_pakd.ads | 14 | ||||
-rw-r--r-- | gcc/ada/exp_util.adb | 14 | ||||
-rw-r--r-- | gcc/ada/freeze.adb | 25 | ||||
-rw-r--r-- | gcc/ada/layout.adb | 12 | ||||
-rw-r--r-- | gcc/ada/sem_aggr.adb | 2 | ||||
-rw-r--r-- | gcc/ada/sem_ch13.adb | 3 | ||||
-rw-r--r-- | gcc/ada/sem_ch3.adb | 20 | ||||
-rw-r--r-- | gcc/ada/sem_ch8.adb | 2 | ||||
-rw-r--r-- | gcc/ada/sem_eval.adb | 6 | ||||
-rw-r--r-- | gcc/ada/sem_type.adb | 6 | ||||
-rw-r--r-- | gcc/ada/sem_util.adb | 10 |
22 files changed, 159 insertions, 140 deletions
diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog index 766912bd27c..965216ca1e3 100644 --- a/gcc/ada/ChangeLog +++ b/gcc/ada/ChangeLog @@ -1,5 +1,13 @@ 2014-07-18 Robert Dewar <dewar@adacore.com> + * sem_aggr.adb, exp_ch5.adb, sem_ch3.adb, layout.adb, sem_type.adb, + exp_util.adb, exp_attr.adb, einfo.adb, einfo.ads, exp_pakd.adb, + checks.adb, exp_pakd.ads, freeze.adb, sem_util.adb, exp_dbug.adb, + exp_dbug.ads, exp_ch4.adb, sem_ch8.adb, exp_aggr.adb, sem_eval.adb, + sem_ch13.adb: Change name Packed_Array_Type to Packed_Array_Impl_Type. + +2014-07-18 Robert Dewar <dewar@adacore.com> + * lib-writ.adb, makeutl.adb, ali.ads: Minor reformatting. 2014-07-18 Vincent Celier <celier@adacore.com> diff --git a/gcc/ada/checks.adb b/gcc/ada/checks.adb index 587092ba776..d055306edd1 100644 --- a/gcc/ada/checks.adb +++ b/gcc/ada/checks.adb @@ -5307,7 +5307,7 @@ package body Checks is -- so they are also always valid (in particular, the unused bits can be -- random rubbish without affecting the validity of the array value). - if not Is_Scalar_Type (Typ) or else Is_Packed_Array_Type (Typ) then + if not Is_Scalar_Type (Typ) or else Is_Packed_Array_Impl_Type (Typ) then return True; -- If no validity checking, then everything is considered valid @@ -6526,7 +6526,7 @@ package body Checks is if Analyzed (PV) and then Nkind (PV) = N_Indexed_Component - and then Present (Packed_Array_Type (Etype (Prefix (PV)))) + and then Present (Packed_Array_Impl_Type (Etype (Prefix (PV)))) then Set_Analyzed (PV, False); end if; diff --git a/gcc/ada/einfo.adb b/gcc/ada/einfo.adb index a2abb45775d..34916804233 100644 --- a/gcc/ada/einfo.adb +++ b/gcc/ada/einfo.adb @@ -211,7 +211,7 @@ package body Einfo is -- Generic_Renamings Elist23 -- Inner_Instances Elist23 -- Limited_View Node23 - -- Packed_Array_Type Node23 + -- Packed_Array_Impl_Type Node23 -- Protection_Object Node23 -- Stored_Constraint Elist23 @@ -415,7 +415,7 @@ package body Einfo is -- Has_Aliased_Components Flag135 -- No_Strict_Aliasing Flag136 -- Is_Machine_Code_Subprogram Flag137 - -- Is_Packed_Array_Type Flag138 + -- Is_Packed_Array_Impl_Type Flag138 -- Has_Biased_Representation Flag139 -- Has_Complex_Representation Flag140 @@ -2201,10 +2201,10 @@ package body Einfo is return Flag51 (Implementation_Base_Type (Id)); end Is_Packed; - function Is_Packed_Array_Type (Id : E) return B is + function Is_Packed_Array_Impl_Type (Id : E) return B is begin return Flag138 (Id); - end Is_Packed_Array_Type; + end Is_Packed_Array_Impl_Type; function Is_Potentially_Use_Visible (Id : E) return B is begin @@ -2656,11 +2656,11 @@ package body Einfo is return Node26 (Id); end Package_Instantiation; - function Packed_Array_Type (Id : E) return E is + function Packed_Array_Impl_Type (Id : E) return E is begin pragma Assert (Is_Array_Type (Id)); return Node23 (Id); - end Packed_Array_Type; + end Packed_Array_Impl_Type; function Parent_Subtype (Id : E) return E is begin @@ -4946,10 +4946,10 @@ package body Einfo is Set_Flag51 (Id, V); end Set_Is_Packed; - procedure Set_Is_Packed_Array_Type (Id : E; V : B := True) is + procedure Set_Is_Packed_Array_Impl_Type (Id : E; V : B := True) is begin Set_Flag138 (Id, V); - end Set_Is_Packed_Array_Type; + end Set_Is_Packed_Array_Impl_Type; procedure Set_Is_Potentially_Use_Visible (Id : E; V : B := True) is begin @@ -5414,11 +5414,11 @@ package body Einfo is Set_Node26 (Id, V); end Set_Package_Instantiation; - procedure Set_Packed_Array_Type (Id : E; V : E) is + procedure Set_Packed_Array_Impl_Type (Id : E; V : E) is begin pragma Assert (Is_Array_Type (Id)); Set_Node23 (Id, V); - end Set_Packed_Array_Type; + end Set_Packed_Array_Impl_Type; procedure Set_Parent_Subtype (Id : E; V : E) is begin @@ -8325,7 +8325,7 @@ package body Einfo is W ("Is_Optional_Parameter", Flag134 (Id)); W ("Is_Package_Body_Entity", Flag160 (Id)); W ("Is_Packed", Flag51 (Id)); - W ("Is_Packed_Array_Type", Flag138 (Id)); + W ("Is_Packed_Array_Impl_Type", Flag138 (Id)); W ("Is_Potentially_Use_Visible", Flag9 (Id)); W ("Is_Predicate_Function", Flag255 (Id)); W ("Is_Predicate_Function_M", Flag256 (Id)); @@ -9277,7 +9277,7 @@ package body Einfo is Write_Str ("Inner_Instances"); when Array_Kind => - Write_Str ("Packed_Array_Type"); + Write_Str ("Packed_Array_Impl_Type"); when Entry_Kind => Write_Str ("Protection_Object"); diff --git a/gcc/ada/einfo.ads b/gcc/ada/einfo.ads index 42439ad0ea7..a6a41b7b424 100644 --- a/gcc/ada/einfo.ads +++ b/gcc/ada/einfo.ads @@ -2706,16 +2706,16 @@ package Einfo is -- Is_Packed_Array (synth) -- Applies to all entities, true if entity is for a packed array. --- Is_Packed_Array_Type (Flag138) +-- Is_Packed_Array_Impl_Type (Flag138) -- Defined in all entities. This flag is set on the entity for the type -- used to implement a packed array (either a modular type, or a subtype -- of Packed_Bytes{1,2,4} as appropriate). The flag is set if and only --- if the type appears in the Packed_Array_Type field of some other type +-- if the type appears in the Packed_Array_Impl_Type field of some other -- entity. It is used by the backend to activate the special processing -- for such types (unchecked conversions that would not otherwise be --- allowed are allowed for such types). If the Is_Packed_Array_Type flag --- is set in an entity, then the Original_Array_Type field of this entity --- points to the array type for which this is the packed array type. +-- allowed are allowed for such types). If Is_Packed_Array_Impl_Type is +-- set in an entity, then the Original_Array_Type field of this entity +-- points to the array type for which this is the Packed_Array_Impl_Type. -- Is_Potentially_Use_Visible (Flag9) -- Defined in all entities. Set if entity is potentially use visible, @@ -3402,8 +3402,8 @@ package Einfo is -- subprogram type. -- Original_Array_Type (Node21) --- Defined in modular types and array types and subtypes. Set only --- if the Is_Packed_Array_Type flag is set, indicating that the type +-- Defined in modular types and array types and subtypes. Set only if +-- the Is_Packed_Array_Impl_Type flag is set, indicating that the type -- is the implementation type for a packed array, and in this case it -- points to the original array type for which this is the packed -- array implementation type. @@ -3452,7 +3452,7 @@ package Einfo is -- it should be set in all cases, including package entities associated -- with formal packages. ??? --- Packed_Array_Type (Node23) +-- Packed_Array_Impl_Type (Node23) -- Defined in array types and subtypes, including the string literal -- subtype case, if the corresponding type is packed (either bit packed -- or packed to eliminate holes in non-contiguous enumeration type index @@ -3460,9 +3460,9 @@ package Einfo is -- is either a modular type for short static arrays, or an array of -- System.Unsigned. Note that in some situations (internal types, and -- references to fields of variant records), it is not always possible --- to construct this type in advance of its use. If Packed_Array_Type --- is empty, then the necessary type is declared on the fly for each --- reference to the array. +-- to construct this type in advance of its use. If this field is empty, +-- then the necessary type is declared on the fly for each reference to +-- the array. -- Parameter_Mode (synthesized) -- Applies to formal parameter entities. This is a synonym for Ekind, @@ -5098,7 +5098,7 @@ package Einfo is -- Is_Limited_Record (Flag25) -- Is_Obsolescent (Flag153) -- Is_Package_Body_Entity (Flag160) - -- Is_Packed_Array_Type (Flag138) + -- Is_Packed_Array_Impl_Type (Flag138) -- Is_Potentially_Use_Visible (Flag9) -- Is_Preelaborated (Flag59) -- Is_Primitive_Wrapper (Flag195) @@ -5309,7 +5309,7 @@ package Einfo is -- Component_Type (Node20) (base type only) -- Original_Array_Type (Node21) -- Component_Size (Uint22) (base type only) - -- Packed_Array_Type (Node23) + -- Packed_Array_Impl_Type (Node23) -- Related_Array_Object (Node25) -- Component_Alignment (special) (base type only) -- Has_Component_Size_Clause (Flag68) (base type only) @@ -6024,7 +6024,7 @@ package Einfo is -- String_Literal_Low_Bound (Node15) -- String_Literal_Length (Uint16) -- First_Index (Node17) (always Empty) - -- Packed_Array_Type (Node23) + -- Packed_Array_Impl_Type (Node23) -- (plus type attributes) -- E_Subprogram_Body @@ -6625,7 +6625,7 @@ package Einfo is function Is_Optional_Parameter (Id : E) return B; function Is_Package_Body_Entity (Id : E) return B; function Is_Packed (Id : E) return B; - function Is_Packed_Array_Type (Id : E) return B; + function Is_Packed_Array_Impl_Type (Id : E) return B; function Is_Potentially_Use_Visible (Id : E) return B; function Is_Predicate_Function (Id : E) return B; function Is_Predicate_Function_M (Id : E) return B; @@ -6705,7 +6705,7 @@ package Einfo is 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 Packed_Array_Impl_Type (Id : E) return E; function Parent_Subtype (Id : E) return E; function Part_Of_Constituents (Id : E) return L; function Postcondition_Proc (Id : E) return E; @@ -7256,7 +7256,7 @@ package Einfo is procedure Set_Is_Optional_Parameter (Id : E; V : B := True); procedure Set_Is_Package_Body_Entity (Id : E; V : B := True); procedure Set_Is_Packed (Id : E; V : B := True); - procedure Set_Is_Packed_Array_Type (Id : E; V : B := True); + procedure Set_Is_Packed_Array_Impl_Type (Id : E; V : B := True); procedure Set_Is_Potentially_Use_Visible (Id : E; V : B := True); procedure Set_Is_Predicate_Function (Id : E; V : B := True); procedure Set_Is_Predicate_Function_M (Id : E; V : B := True); @@ -7336,7 +7336,7 @@ package Einfo is 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_Packed_Array_Impl_Type (Id : E; V : E); procedure Set_Parent_Subtype (Id : E; V : E); procedure Set_Part_Of_Constituents (Id : E; V : L); procedure Set_Postcondition_Proc (Id : E; V : E); @@ -8026,7 +8026,7 @@ package Einfo is pragma Inline (Is_Overloadable); pragma Inline (Is_Package_Body_Entity); pragma Inline (Is_Packed); - pragma Inline (Is_Packed_Array_Type); + pragma Inline (Is_Packed_Array_Impl_Type); pragma Inline (Is_Potentially_Use_Visible); pragma Inline (Is_Predicate_Function); pragma Inline (Is_Predicate_Function_M); @@ -8116,7 +8116,7 @@ package Einfo is pragma Inline (Overridden_Operation); pragma Inline (PPC_Wrapper); pragma Inline (Package_Instantiation); - pragma Inline (Packed_Array_Type); + pragma Inline (Packed_Array_Impl_Type); pragma Inline (Parameter_Mode); pragma Inline (Parent_Subtype); pragma Inline (Part_Of_Constituents); @@ -8467,7 +8467,7 @@ package Einfo is pragma Inline (Set_Is_Optional_Parameter); pragma Inline (Set_Is_Package_Body_Entity); pragma Inline (Set_Is_Packed); - pragma Inline (Set_Is_Packed_Array_Type); + pragma Inline (Set_Is_Packed_Array_Impl_Type); pragma Inline (Set_Is_Potentially_Use_Visible); pragma Inline (Set_Is_Predicate_Function); pragma Inline (Set_Is_Predicate_Function_M); @@ -8547,7 +8547,7 @@ package Einfo is pragma Inline (Set_Overridden_Operation); pragma Inline (Set_PPC_Wrapper); pragma Inline (Set_Package_Instantiation); - pragma Inline (Set_Packed_Array_Type); + pragma Inline (Set_Packed_Array_Impl_Type); pragma Inline (Set_Parent_Subtype); pragma Inline (Set_Part_Of_Constituents); pragma Inline (Set_Postcondition_Proc); diff --git a/gcc/ada/exp_aggr.adb b/gcc/ada/exp_aggr.adb index c3d7a1f1d07..3c2101f218b 100644 --- a/gcc/ada/exp_aggr.adb +++ b/gcc/ada/exp_aggr.adb @@ -1607,7 +1607,7 @@ package body Exp_Aggr is if Present (Typ) and then Is_Bit_Packed_Array (Typ) - and then Is_Modular_Integer_Type (Packed_Array_Type (Typ)) + and then Is_Modular_Integer_Type (Packed_Array_Impl_Type (Typ)) then Append_To (New_Code, Make_Assignment_Statement (Loc, @@ -6317,14 +6317,14 @@ package body Exp_Aggr is end if; -- If two-dimensional, check whether it can be folded, and transformed - -- into a one-dimensional aggregate for the Packed_Array_Type of the - -- original type. + -- into a one-dimensional aggregate for the Packed_Array_Impl_Type of + -- the original type. if Number_Dimensions (Typ) = 2 then return Two_Dim_Packed_Array_Handled (N); end if; - if not Is_Modular_Integer_Type (Packed_Array_Type (Typ)) then + if not Is_Modular_Integer_Type (Packed_Array_Impl_Type (Typ)) then return False; end if; @@ -6523,7 +6523,7 @@ package body Exp_Aggr is Unchecked_Convert_To (Typ, Make_Qualified_Expression (Loc, Subtype_Mark => - New_Occurrence_Of (Packed_Array_Type (Typ), Loc), + New_Occurrence_Of (Packed_Array_Impl_Type (Typ), Loc), Expression => Lit))); Analyze_And_Resolve (N, Typ); @@ -6705,10 +6705,11 @@ package body Exp_Aggr is function Two_Dim_Packed_Array_Handled (N : Node_Id) return Boolean is Loc : constant Source_Ptr := Sloc (N); - Typ : constant Entity_Id := Etype (N); - Ctyp : constant Entity_Id := Component_Type (Typ); - Comp_Size : constant Int := UI_To_Int (Component_Size (Typ)); - Packed_Array : constant Entity_Id := Packed_Array_Type (Base_Type (Typ)); + Typ : constant Entity_Id := Etype (N); + Ctyp : constant Entity_Id := Component_Type (Typ); + Comp_Size : constant Int := UI_To_Int (Component_Size (Typ)); + Packed_Array : constant Entity_Id := + Packed_Array_Impl_Type (Base_Type (Typ)); One_Comp : Node_Id; -- Expression in original aggregate diff --git a/gcc/ada/exp_attr.adb b/gcc/ada/exp_attr.adb index 373faaaa7d0..a0a147fd11b 100644 --- a/gcc/ada/exp_attr.adb +++ b/gcc/ada/exp_attr.adb @@ -2863,7 +2863,7 @@ package body Exp_Attr is when Attribute_First => -- If the prefix type is a constrained packed array type which - -- already has a Packed_Array_Type representation defined, then + -- already has a Packed_Array_Impl_Type representation defined, then -- replace this attribute with a direct reference to 'First of the -- appropriate index subtype (since otherwise the back end will try -- to give us the value of 'First for this implementation type). @@ -3526,7 +3526,7 @@ package body Exp_Attr is when Attribute_Last => -- If the prefix type is a constrained packed array type which - -- already has a Packed_Array_Type representation defined, then + -- already has a Packed_Array_Impl_Type representation defined, then -- replace this attribute with a direct reference to 'Last of the -- appropriate index subtype (since otherwise the back end will try -- to give us the value of 'Last for this implementation type). @@ -3676,11 +3676,11 @@ package body Exp_Attr is return; -- If the prefix type is a constrained packed array type which - -- already has a Packed_Array_Type representation defined, then - -- replace this attribute with a direct reference to 'Range_Length - -- of the appropriate index subtype (since otherwise the back end - -- will try to give us the value of 'Length for this - -- implementation type). + -- already has a Packed_Array_Impl_Type representation defined, + -- then replace this attribute with a reference to 'Range_Length + -- of the appropriate index subtype (since otherwise the + -- back end will try to give us the value of 'Length for + -- this implementation type).s elsif Is_Constrained (Ptyp) then Rewrite (N, @@ -7663,7 +7663,7 @@ package body Exp_Attr is return Is_Array_Type (Arr) and then Is_Constrained (Arr) - and then Present (Packed_Array_Type (Arr)); + and then Present (Packed_Array_Impl_Type (Arr)); end Is_Constrained_Packed_Array; ---------------------------------------- diff --git a/gcc/ada/exp_ch4.adb b/gcc/ada/exp_ch4.adb index 725efabd3bb..adf8dfce8e6 100644 --- a/gcc/ada/exp_ch4.adb +++ b/gcc/ada/exp_ch4.adb @@ -6189,9 +6189,9 @@ package body Exp_Ch4 is return; end if; - -- For a reference to a component of a bit packed array, we have to - -- convert it to a reference to the corresponding Packed_Array_Type. - -- We only want to do this for simple references, and not for: + -- For a reference to a component of a bit packed array, we convert it + -- to a reference to the corresponding Packed_Array_Impl_Type. We only + -- want to do this for simple references, and not for: -- Left side of assignment, or prefix of left side of assignment, or -- prefix of the prefix, to handle packed arrays of packed arrays, diff --git a/gcc/ada/exp_ch5.adb b/gcc/ada/exp_ch5.adb index 2fd38ac86a6..eb621b312d9 100644 --- a/gcc/ada/exp_ch5.adb +++ b/gcc/ada/exp_ch5.adb @@ -6,7 +6,7 @@ -- -- -- B o d y -- -- -- --- Copyright (C) 1992-2013, Free Software Foundation, Inc. -- +-- Copyright (C) 1992-2014, Free Software Foundation, Inc. -- -- -- -- GNAT is free software; you can redistribute it and/or modify it under -- -- terms of the GNU General Public License as published by the Free Soft- -- @@ -503,9 +503,9 @@ package body Exp_Ch5 is Des_Type : Entity_Id; begin - if Present (Packed_Array_Type (Typ)) - and then Is_Array_Type (Packed_Array_Type (Typ)) - and then not Is_Constrained (Packed_Array_Type (Typ)) + if Present (Packed_Array_Impl_Type (Typ)) + and then Is_Array_Type (Packed_Array_Impl_Type (Typ)) + and then not Is_Constrained (Packed_Array_Impl_Type (Typ)) then return True; diff --git a/gcc/ada/exp_dbug.adb b/gcc/ada/exp_dbug.adb index 13620290815..cbd4c55d949 100644 --- a/gcc/ada/exp_dbug.adb +++ b/gcc/ada/exp_dbug.adb @@ -6,7 +6,7 @@ -- -- -- B o d y -- -- -- --- Copyright (C) 1996-2013, Free Software Foundation, Inc. -- +-- Copyright (C) 1996-2014, Free Software Foundation, Inc. -- -- -- -- GNAT is free software; you can redistribute it and/or modify it under -- -- terms of the GNU General Public License as published by the Free Soft- -- @@ -958,10 +958,10 @@ package body Exp_Dbug is end Get_Secondary_DT_External_Name; --------------------------------- - -- Make_Packed_Array_Type_Name -- + -- Make_Packed_Array_Impl_Type_Name -- --------------------------------- - function Make_Packed_Array_Type_Name + function Make_Packed_Array_Impl_Type_Name (Typ : Entity_Id; Csize : Uint) return Name_Id @@ -971,7 +971,7 @@ package body Exp_Dbug is Add_Str_To_Name_Buffer ("___XP"); Add_Uint_To_Buffer (Csize); return Name_Find; - end Make_Packed_Array_Type_Name; + end Make_Packed_Array_Impl_Type_Name; ----------------------------------- -- Output_Homonym_Numbers_Suffix -- diff --git a/gcc/ada/exp_dbug.ads b/gcc/ada/exp_dbug.ads index 6f27bfe0e3d..c687cdde9d5 100644 --- a/gcc/ada/exp_dbug.ads +++ b/gcc/ada/exp_dbug.ads @@ -6,7 +6,7 @@ -- -- -- S p e c -- -- -- --- Copyright (C) 1996-2012, Free Software Foundation, Inc. -- +-- Copyright (C) 1996-2014, Free Software Foundation, Inc. -- -- -- -- GNAT is free software; you can redistribute it and/or modify it under -- -- terms of the GNU General Public License as published by the Free Soft- -- @@ -1206,7 +1206,7 @@ package Exp_Dbug is -- Subprograms for Handling Packed Array Type Names -- ------------------------------------------------------ - function Make_Packed_Array_Type_Name + function Make_Packed_Array_Impl_Type_Name (Typ : Entity_Id; Csize : Uint) return Name_Id; diff --git a/gcc/ada/exp_pakd.adb b/gcc/ada/exp_pakd.adb index 35d310be0f2..7455e25eeb2 100644 --- a/gcc/ada/exp_pakd.adb +++ b/gcc/ada/exp_pakd.adb @@ -519,7 +519,7 @@ package body Exp_Pakd is -- -- Atyp is the constrained array type (the actual subtype has been -- computed if necessary to obtain the constraints, but this is still - -- the original array type, not the Packed_Array_Type value). + -- the original array type, not the Packed_Array_Impl_Type value). -- -- Obj is the object which is to be indexed. It is always of type Atyp. -- @@ -767,7 +767,7 @@ package body Exp_Pakd is begin Convert_To_Actual_Subtype (Aexp); Act_ST := Underlying_Type (Etype (Aexp)); - Create_Packed_Array_Type (Act_ST); + Create_Packed_Array_Impl_Type (Act_ST); -- Just replace the etype with the packed array type. This works because -- the expression will not be further analyzed, and Gigi considers the @@ -784,7 +784,7 @@ package body Exp_Pakd is -- more complex packed expressions in actuals is confused. Probably the -- problem only remains for actuals in calls. - Set_Etype (Aexp, Packed_Array_Type (Act_ST)); + Set_Etype (Aexp, Packed_Array_Impl_Type (Act_ST)); if Is_Entity_Name (Aexp) or else @@ -797,10 +797,10 @@ package body Exp_Pakd is end Convert_To_PAT_Type; ------------------------------ - -- Create_Packed_Array_Type -- + -- Create_Packed_Array_Impl_Type -- ------------------------------ - procedure Create_Packed_Array_Type (Typ : Entity_Id) is + procedure Create_Packed_Array_Impl_Type (Typ : Entity_Id) is Loc : constant Source_Ptr := Sloc (Typ); Ctyp : constant Entity_Id := Component_Type (Typ); Csize : constant Uint := Component_Size (Typ); @@ -865,7 +865,7 @@ package body Exp_Pakd is end if; Set_Is_Itype (PAT, True); - Set_Packed_Array_Type (Typ, PAT); + Set_Packed_Array_Impl_Type (Typ, PAT); Analyze (Decl, Suppress => All_Checks); if Pushed_Scope then @@ -891,7 +891,7 @@ package body Exp_Pakd is Init_Alignment (PAT); Set_Parent (PAT, Empty); Set_Associated_Node_For_Itype (PAT, Typ); - Set_Is_Packed_Array_Type (PAT, True); + Set_Is_Packed_Array_Impl_Type (PAT, True); Set_Original_Array_Type (PAT, Typ); -- For a non-bit-packed array, propagate reverse storage order @@ -942,12 +942,12 @@ package body Exp_Pakd is end if; end Set_PB_Type; - -- Start of processing for Create_Packed_Array_Type + -- Start of processing for Create_Packed_Array_Impl_Type begin -- If we already have a packed array type, nothing to do - if Present (Packed_Array_Type (Typ)) then + if Present (Packed_Array_Impl_Type (Typ)) then return; end if; @@ -963,9 +963,9 @@ package body Exp_Pakd is if Present (Ancest) and then Is_Array_Type (Ancest) and then Is_Constrained (Ancest) - and then Present (Packed_Array_Type (Ancest)) + and then Present (Packed_Array_Impl_Type (Ancest)) then - Set_Packed_Array_Type (Typ, Packed_Array_Type (Ancest)); + Set_Packed_Array_Impl_Type (Typ, Packed_Array_Impl_Type (Ancest)); return; end if; end if; @@ -1015,7 +1015,7 @@ package body Exp_Pakd is Make_Defining_Identifier (Loc, Chars => New_External_Name (Chars (Typ), 'P')); - Set_Packed_Array_Type (Typ, PAT); + Set_Packed_Array_Impl_Type (Typ, PAT); declare Indexes : constant List_Id := New_List; @@ -1114,7 +1114,7 @@ package body Exp_Pakd is -- Set type as packed array type and install it - Set_Is_Packed_Array_Type (PAT); + Set_Is_Packed_Array_Impl_Type (PAT); Install_PAT; return; @@ -1124,9 +1124,9 @@ package body Exp_Pakd is elsif not Is_Constrained (Typ) then PAT := Make_Defining_Identifier (Loc, - Chars => Make_Packed_Array_Type_Name (Typ, Csize)); + Chars => Make_Packed_Array_Impl_Type_Name (Typ, Csize)); - Set_Packed_Array_Type (Typ, PAT); + Set_Packed_Array_Impl_Type (Typ, PAT); Set_PB_Type; Decl := @@ -1148,9 +1148,9 @@ package body Exp_Pakd is else PAT := Make_Defining_Identifier (Loc, - Chars => Make_Packed_Array_Type_Name (Typ, Csize)); + Chars => Make_Packed_Array_Impl_Type_Name (Typ, Csize)); - Set_Packed_Array_Type (Typ, PAT); + Set_Packed_Array_Impl_Type (Typ, PAT); -- Build an expression for the length of the array in bits. -- This is the product of the length of each of the dimensions @@ -1350,7 +1350,7 @@ package body Exp_Pakd is Set_Must_Be_On_Byte_Boundary (Typ); end if; end if; - end Create_Packed_Array_Type; + end Create_Packed_Array_Impl_Type; ----------------------------------- -- Expand_Bit_Packed_Element_Set -- @@ -1424,7 +1424,7 @@ package body Exp_Pakd is Obj := Relocate_Node (Prefix (Lhs)); Convert_To_Actual_Subtype (Obj); Atyp := Etype (Obj); - PAT := Packed_Array_Type (Atyp); + PAT := Packed_Array_Impl_Type (Atyp); Ctyp := Component_Type (Atyp); Csiz := UI_To_Int (Component_Size (Atyp)); @@ -2048,7 +2048,7 @@ package body Exp_Pakd is Obj := Relocate_Node (Prefix (N)); Convert_To_Actual_Subtype (Obj); Atyp := Etype (Obj); - PAT := Packed_Array_Type (Atyp); + PAT := Packed_Array_Impl_Type (Atyp); Ctyp := Component_Type (Atyp); Csiz := UI_To_Int (Component_Size (Atyp)); @@ -2696,7 +2696,7 @@ package body Exp_Pakd is -- with its actual subtype. This actual subtype will have a packed array -- type with appropriate bounds. - if not Is_Constrained (Packed_Array_Type (Etype (Pfx))) then + if not Is_Constrained (Packed_Array_Impl_Type (Etype (Pfx))) then Convert_To_Actual_Subtype (Pfx); end if; @@ -2725,7 +2725,7 @@ package body Exp_Pakd is Rewrite (N, Make_Indexed_Component (Sloc (N), Prefix => - Unchecked_Convert_To (Packed_Array_Type (Etype (Pfx)), Pfx), + Unchecked_Convert_To (Packed_Array_Impl_Type (Etype (Pfx)), Pfx), Expressions => Exprs)); Analyze_And_Resolve (N, Typ); diff --git a/gcc/ada/exp_pakd.ads b/gcc/ada/exp_pakd.ads index bd21a30effe..586d80687e8 100644 --- a/gcc/ada/exp_pakd.ads +++ b/gcc/ada/exp_pakd.ads @@ -6,7 +6,7 @@ -- -- -- S p e c -- -- -- --- Copyright (C) 1992-2010, Free Software Foundation, Inc. -- +-- Copyright (C) 1992-2014, Free Software Foundation, Inc. -- -- -- -- GNAT is free software; you can redistribute it and/or modify it under -- -- terms of the GNU General Public License as published by the Free Soft- -- @@ -34,8 +34,8 @@ package Exp_Pakd is ------------------------------------- -- When a packed array (sub)type is frozen, we create a corresponding - -- type that will be used to hold the bits of the packed value, and - -- store the entity for this type in the Packed_Array_Type field of the + -- type that will be used to hold the bits of the packed value, and store + -- the entity for this type in the Packed_Array_Impl_Type field of the -- E_Array_Type or E_Array_Subtype entity for the packed array. -- This packed array type has the name xxxPn, where xxx is the name @@ -207,11 +207,11 @@ package Exp_Pakd is -- Subprograms -- ----------------- - procedure Create_Packed_Array_Type (Typ : Entity_Id); + procedure Create_Packed_Array_Impl_Type (Typ : Entity_Id); -- Typ is a array type or subtype to which pragma Pack applies. If the - -- Packed_Array_Type field of Typ is already set, then the call has no - -- effect, otherwise a suitable type or subtype is created and stored - -- in the Packed_Array_Type field of Typ. This created type is an Itype + -- Packed_Array_Impl_Type field of Typ is already set, then the call has + -- no effect, otherwise a suitable type or subtype is created and stored in + -- the Packed_Array_Impl_Type field of Typ. This created type is an Itype -- so that Gigi will simply elaborate and freeze the type on first use -- (which is typically the definition of the corresponding array type). -- diff --git a/gcc/ada/exp_util.adb b/gcc/ada/exp_util.adb index ea337266105..6db424c1708 100644 --- a/gcc/ada/exp_util.adb +++ b/gcc/ada/exp_util.adb @@ -6272,8 +6272,10 @@ package body Exp_Util is elsif Esize (Typ) /= 0 and then Esize (Typ) <= 256 then return False; - elsif Is_Array_Type (Typ) and then Present (Packed_Array_Type (Typ)) then - return May_Generate_Large_Temp (Packed_Array_Type (Typ)); + elsif Is_Array_Type (Typ) + and then Present (Packed_Array_Impl_Type (Typ)) + then + return May_Generate_Large_Temp (Packed_Array_Impl_Type (Typ)); -- We could do more here to find other small types ??? @@ -6403,7 +6405,7 @@ package body Exp_Util is or else Is_Access_Type (Typ) or else (Is_Bit_Packed_Array (Typ) - and then Is_Modular_Integer_Type (Packed_Array_Type (Typ))) + and then Is_Modular_Integer_Type (Packed_Array_Impl_Type (Typ))) then return False; @@ -7283,7 +7285,7 @@ package body Exp_Util is begin return Is_Scalar_Type (UT) or else (Is_Bit_Packed_Array (UT) - and then Is_Scalar_Type (Packed_Array_Type (UT))); + and then Is_Scalar_Type (Packed_Array_Impl_Type (UT))); end Represented_As_Scalar; ------------------------------ @@ -7713,8 +7715,8 @@ package body Exp_Util is -- Conversions to and from packed array types are always ignored and -- hence are safe. - elsif Is_Packed_Array_Type (Otyp) - or else Is_Packed_Array_Type (Ityp) + elsif Is_Packed_Array_Impl_Type (Otyp) + or else Is_Packed_Array_Impl_Type (Ityp) then return True; end if; diff --git a/gcc/ada/freeze.adb b/gcc/ada/freeze.adb index fb359420ec9..bf678b6aa2a 100644 --- a/gcc/ada/freeze.adb +++ b/gcc/ada/freeze.adb @@ -918,7 +918,7 @@ package body Freeze is -- directly, where all the information is at hand ??? if Is_Array_Type (Etype (Comp)) - and then Present (Packed_Array_Type (Etype (Comp))) + and then Present (Packed_Array_Impl_Type (Etype (Comp))) then declare Ocomp : constant Entity_Id := @@ -975,9 +975,10 @@ package body Freeze is if Is_Elementary_Type (Ctyp) or else (Is_Array_Type (Ctyp) - and then Present (Packed_Array_Type (Ctyp)) + and then Present + (Packed_Array_Impl_Type (Ctyp)) and then Is_Modular_Integer_Type - (Packed_Array_Type (Ctyp))) + (Packed_Array_Impl_Type (Ctyp))) then -- Packed size unknown if we have an atomic type -- or a by reference type, since the back end @@ -2523,27 +2524,27 @@ package body Freeze is if Is_Packed (Arr) and then Ekind (Arr) /= E_String_Literal_Subtype then - Create_Packed_Array_Type (Arr); - Freeze_And_Append (Packed_Array_Type (Arr), N, Result); + Create_Packed_Array_Impl_Type (Arr); + Freeze_And_Append (Packed_Array_Impl_Type (Arr), N, Result); -- Size information of packed array type is copied to the array -- type, since this is really the representation. But do not -- override explicit existing size values. If the ancestor subtype - -- is constrained the packed_array_type will be inherited from it, - -- but the size may have been provided already, and must not be - -- overridden either. + -- is constrained the Packed_Array_Impl_Type will be inherited + -- from it, but the size may have been provided already, and + -- must not be overridden either. if not Has_Size_Clause (Arr) and then (No (Ancestor_Subtype (Arr)) or else not Has_Size_Clause (Ancestor_Subtype (Arr))) then - Set_Esize (Arr, Esize (Packed_Array_Type (Arr))); - Set_RM_Size (Arr, RM_Size (Packed_Array_Type (Arr))); + Set_Esize (Arr, Esize (Packed_Array_Impl_Type (Arr))); + Set_RM_Size (Arr, RM_Size (Packed_Array_Impl_Type (Arr))); end if; if not Has_Alignment_Clause (Arr) then - Set_Alignment (Arr, Alignment (Packed_Array_Type (Arr))); + Set_Alignment (Arr, Alignment (Packed_Array_Impl_Type (Arr))); end if; end if; @@ -7321,7 +7322,7 @@ package body Freeze is then exit; elsif Is_Array_Type (Etype (Comp)) - and then Present (Packed_Array_Type (Etype (Comp))) + and then Present (Packed_Array_Impl_Type (Etype (Comp))) then Error_Msg_NE ("\packed array component& " & diff --git a/gcc/ada/layout.adb b/gcc/ada/layout.adb index 52c981e36c8..d9108c9803c 100644 --- a/gcc/ada/layout.adb +++ b/gcc/ada/layout.adb @@ -1724,7 +1724,7 @@ package body Layout is elsif Is_Array_Type (Ctyp) and then Is_Bit_Packed_Array (Ctyp) - and then Is_Modular_Integer_Type (Packed_Array_Type (Ctyp)) + and then Is_Modular_Integer_Type (Packed_Array_Impl_Type (Ctyp)) then Forc := False; @@ -2624,9 +2624,11 @@ package body Layout is -- array type if a packed array type has been created and the fields -- are not currently set. - if Is_Array_Type (E) and then Present (Packed_Array_Type (E)) then + if Is_Array_Type (E) + and then Present (Packed_Array_Impl_Type (E)) + then declare - PAT : constant Entity_Id := Packed_Array_Type (E); + PAT : constant Entity_Id := Packed_Array_Impl_Type (E); begin if Unknown_Esize (E) then @@ -3169,7 +3171,9 @@ package body Layout is -- front end layout, because otherwise this is always handled in the -- backend. - if Is_Packed_Array_Type (E) and then not Frontend_Layout_On_Target then + if Is_Packed_Array_Impl_Type (E) + and then not Frontend_Layout_On_Target + then return; -- If there is an alignment clause, then we respect it diff --git a/gcc/ada/sem_aggr.adb b/gcc/ada/sem_aggr.adb index 0a272391d16..b11b10a90ec 100644 --- a/gcc/ada/sem_aggr.adb +++ b/gcc/ada/sem_aggr.adb @@ -610,7 +610,7 @@ package body Sem_Aggr is and then Size_Known_At_Compile_Time (Component_Type (Typ))); -- We always need a freeze node for a packed array subtype, so that we - -- can build the Packed_Array_Type corresponding to the subtype. If + -- can build the Packed_Array_Impl_Type corresponding to the subtype. If -- expansion is disabled, the packed array subtype is not built, and we -- must not generate a freeze node for the type, or else it will appear -- incomplete to gigi. diff --git a/gcc/ada/sem_ch13.adb b/gcc/ada/sem_ch13.adb index fe54f88240b..84e62db555e 100644 --- a/gcc/ada/sem_ch13.adb +++ b/gcc/ada/sem_ch13.adb @@ -890,7 +890,8 @@ package body Sem_Ch13 is if Is_Bit_Packed_Array (P) then Set_Is_Bit_Packed_Array (Base_Type (E)); - Set_Packed_Array_Type (E, Packed_Array_Type (P)); + Set_Packed_Array_Impl_Type + (E, Packed_Array_Impl_Type (P)); end if; end if; diff --git a/gcc/ada/sem_ch3.adb b/gcc/ada/sem_ch3.adb index 1a02abf2ffc..e3bf564d62f 100644 --- a/gcc/ada/sem_ch3.adb +++ b/gcc/ada/sem_ch3.adb @@ -5165,7 +5165,7 @@ package body Sem_Ch3 is Set_Component_Type (Implicit_Base, Element_Type); Set_Has_Task (Implicit_Base, Has_Task (Element_Type)); Set_Component_Size (Implicit_Base, Uint_0); - Set_Packed_Array_Type (Implicit_Base, Empty); + Set_Packed_Array_Impl_Type (Implicit_Base, Empty); Set_Has_Controlled_Component (Implicit_Base, Has_Controlled_Component (Element_Type) @@ -5198,7 +5198,7 @@ package body Sem_Ch3 is -- Common attributes for both cases Set_Component_Type (Base_Type (T), Element_Type); - Set_Packed_Array_Type (T, Empty); + Set_Packed_Array_Impl_Type (T, Empty); if Aliased_Present (Component_Definition (Def)) then Check_SPARK_Restriction @@ -5269,7 +5269,9 @@ package body Sem_Ch3 is -- types created for packed entities do not need such, they are -- compatible with the user-defined type. - if Number_Dimensions (T) = 1 and then not Is_Packed_Array_Type (T) then + if Number_Dimensions (T) = 1 + and then not Is_Packed_Array_Impl_Type (T) + then New_Concatenation_Op (T); end if; @@ -11473,13 +11475,13 @@ package body Sem_Ch3 is Set_Is_Private_Composite (Def_Id, Is_Private_Composite (T)); Set_Is_Limited_Composite (Def_Id, Is_Limited_Composite (T)); - -- A subtype does not inherit the packed_array_type of is parent. We - -- need to initialize the attribute because if Def_Id is previously + -- A subtype does not inherit the Packed_Array_Impl_Type of is parent. + -- We need to initialize the attribute because if Def_Id is previously -- analyzed through a limited_with clause, it will have the attributes -- of an incomplete type, one of which is an Elist that overlaps the - -- Packed_Array_Type field. + -- Packed_Array_Impl_Type field. - Set_Packed_Array_Type (Def_Id, Empty); + Set_Packed_Array_Impl_Type (Def_Id, Empty); -- Build a freeze node if parent still needs one. Also make sure that -- the Depends_On_Private status is set because the subtype will need @@ -11913,7 +11915,7 @@ package body Sem_Ch3 is and then Is_Packed (Compon_Type) and then Is_Frozen (Current_Scope) then - Create_Packed_Array_Type (Array_Comp); + Create_Packed_Array_Impl_Type (Array_Comp); end if; return Array_Comp; @@ -12775,7 +12777,7 @@ package body Sem_Ch3 is Set_Convention (T1, Convention (T2)); Set_Is_Limited_Composite (T1, Is_Limited_Composite (T2)); Set_Is_Private_Composite (T1, Is_Private_Composite (T2)); - Set_Packed_Array_Type (T1, Packed_Array_Type (T2)); + Set_Packed_Array_Impl_Type (T1, Packed_Array_Impl_Type (T2)); end Copy_Array_Subtype_Attributes; ----------------------------------- diff --git a/gcc/ada/sem_ch8.adb b/gcc/ada/sem_ch8.adb index 2bc1ea03e07..e085cd203c0 100644 --- a/gcc/ada/sem_ch8.adb +++ b/gcc/ada/sem_ch8.adb @@ -4767,7 +4767,7 @@ package body Sem_Ch8 is if Is_Array_Type (Entyp) and then Is_Packed (Entyp) and then Present (Etype (N)) - and then Etype (N) = Packed_Array_Type (Entyp) + and then Etype (N) = Packed_Array_Impl_Type (Entyp) then null; diff --git a/gcc/ada/sem_eval.adb b/gcc/ada/sem_eval.adb index 27eab6e2d19..4ee8297530c 100644 --- a/gcc/ada/sem_eval.adb +++ b/gcc/ada/sem_eval.adb @@ -780,7 +780,7 @@ package body Sem_Eval is -- We do not attempt comparisons for packed arrays arrays represented as -- modular types, where the semantics of comparison is quite different. - elsif Is_Packed_Array_Type (Ltyp) + elsif Is_Packed_Array_Impl_Type (Ltyp) and then Is_Modular_Integer_Type (Ltyp) then return Unknown; @@ -1317,7 +1317,7 @@ package body Sem_Eval is -- We might want to try to evaluate these at compile time one -- day, but we do not make that attempt now. - if Is_Packed_Array_Type (Etype (Op)) then + if Is_Packed_Array_Impl_Type (Etype (Op)) then return False; end if; @@ -4620,7 +4620,7 @@ package body Sem_Eval is then if Nkind (Parent (N)) = N_Defining_Identifier and then Is_Array_Type (Parent (N)) - and then Present (Packed_Array_Type (Parent (N))) + and then Present (Packed_Array_Impl_Type (Parent (N))) and then Present (First_Rep_Item (Parent (N))) then Error_Msg_N diff --git a/gcc/ada/sem_type.adb b/gcc/ada/sem_type.adb index 22d10e6f551..be2b4c19daf 100644 --- a/gcc/ada/sem_type.adb +++ b/gcc/ada/sem_type.adb @@ -6,7 +6,7 @@ -- -- -- B o d y -- -- -- --- Copyright (C) 1992-2013, Free Software Foundation, Inc. -- +-- Copyright (C) 1992-2014, Free Software Foundation, Inc. -- -- -- -- GNAT is free software; you can redistribute it and/or modify it under -- -- terms of the GNU General Public License as published by the Free Soft- -- @@ -1140,7 +1140,7 @@ package body Sem_Type is elsif Is_Array_Type (T2) and then Is_Packed (T2) - and then T1 = Packed_Array_Type (T2) + and then T1 = Packed_Array_Impl_Type (T2) then return True; @@ -1148,7 +1148,7 @@ package body Sem_Type is elsif Is_Array_Type (T1) and then Is_Packed (T1) - and then T2 = Packed_Array_Type (T1) + and then T2 = Packed_Array_Impl_Type (T1) then return True; diff --git a/gcc/ada/sem_util.adb b/gcc/ada/sem_util.adb index 2c53b51b32d..06f281591d8 100644 --- a/gcc/ada/sem_util.adb +++ b/gcc/ada/sem_util.adb @@ -13167,9 +13167,9 @@ package body Sem_Util is end if; if Is_Packed (New_Itype) then - Set_Packed_Array_Type (New_Itype, + Set_Packed_Array_Impl_Type (New_Itype, Copy_Node_With_Replacement - (Packed_Array_Type (New_Itype))); + (Packed_Array_Impl_Type (New_Itype))); end if; end if; end Copy_Itype_With_Replacement; @@ -13675,7 +13675,7 @@ package body Sem_Util is end if; if Is_Packed (Old_Itype) then - Visit_Field (Union_Id (Packed_Array_Type (Old_Itype)), + Visit_Field (Union_Id (Packed_Array_Impl_Type (Old_Itype)), Old_Itype); end if; end if; @@ -16057,10 +16057,10 @@ package body Sem_Util is -- also need it for the former if we need it for the latter. if Is_Packed (T) then - Set_Debug_Info_Needed_If_Not_Set (Packed_Array_Type (T)); + Set_Debug_Info_Needed_If_Not_Set (Packed_Array_Impl_Type (T)); end if; - if Is_Packed_Array_Type (T) then + if Is_Packed_Array_Impl_Type (T) then Set_Debug_Info_Needed_If_Not_Set (Original_Array_Type (T)); end if; |