[multiple changes]
authorArnaud Charlet <charlet@gcc.gnu.org>
Fri, 22 May 2015 13:33:18 +0000 (15:33 +0200)
committerArnaud Charlet <charlet@gcc.gnu.org>
Fri, 22 May 2015 13:33:18 +0000 (15:33 +0200)
2015-05-22  Ed Schonberg  <schonberg@adacore.com>

* sem_ch3.adb (Constrain_Concurrent): If the context is a
type declaration, generate an Itype_Reference for the anonymous
subtype, to force elaboration at this point in gigi.

2015-05-22  Gary Dismukes  <dismukes@adacore.com>

* layout.adb, einfo.ads, sem_ch12.adb, freeze.adb, sem_util.ads,
exp_ch4.adb, sem_ch6.adb: Minor reformatting and typo fixes.

From-SVN: r223573

gcc/ada/ChangeLog
gcc/ada/einfo.ads
gcc/ada/exp_ch4.adb
gcc/ada/freeze.adb
gcc/ada/layout.adb
gcc/ada/sem_ch12.adb
gcc/ada/sem_ch3.adb
gcc/ada/sem_ch6.adb
gcc/ada/sem_util.ads

index 8b3f99f2797eaa547e9734903942aae7702e07a9..4a6f27753032d893e39d8bb222bc28c67c931de0 100644 (file)
@@ -1,3 +1,14 @@
+2015-05-22  Ed Schonberg  <schonberg@adacore.com>
+
+       * sem_ch3.adb (Constrain_Concurrent): If the context is a
+       type declaration, generate an Itype_Reference for the anonymous
+       subtype, to force elaboration at this point in gigi.
+
+2015-05-22  Gary Dismukes  <dismukes@adacore.com>
+
+       * layout.adb, einfo.ads, sem_ch12.adb, freeze.adb, sem_util.ads,
+       exp_ch4.adb, sem_ch6.adb: Minor reformatting and typo fixes.
+
 2015-05-22  Ed Schonberg  <schonberg@adacore.com>
 
        * sem_res.adb (Resolve_Actuals): If the call is to an overridden
index 5d876551f1e2a2b580fb749cb9b89ded50c310c6..fcb37fa54b6d0a21b18471c88d4b47b3b09061d4 100644 (file)
@@ -2085,11 +2085,11 @@ package Einfo is
 --       to multiple subprogram entities).
 
 --    Incomplete_Actuals (Elist24)
---       Defined on package entities that are instances. Indicates the actusl
---       types in the instantiation that are limited views. IF this list is
+--       Defined on package entities that are instances. Indicates the actuals
+--       types in the instantiation that are limited views. If this list is
 --       not empty, the instantiation, which appears in a package declaration,
 --       is relocated to the corresponding package body, which must have a
---       corresponding non-limited with_clause.
+--       corresponding nonlimited with_clause.
 
 --    In_Package_Body (Flag48)
 --       Defined in package entities. Set on the entity that denotes the
@@ -2207,7 +2207,7 @@ package Einfo is
 --       keyword. For Ada 2012, also applies to formal parameters.
 
 --    Is_Atomic (Flag85)
---       Defined in all type entities, and also in constants, components and
+--       Defined in all type entities, and also in constants, components, and
 --       variables. Set if a pragma Atomic or Shared applies to the entity.
 --       In the case of private and incomplete types, this flag is set in
 --       both the partial view and the full view.
@@ -3187,7 +3187,7 @@ package Einfo is
 --       rather than testing this flag.
 
 --    Is_Volatile_Full_Access (Flag285)
---       Defined in all type entities, and also in constants, components and
+--       Defined in all type entities, and also in constants, components, and
 --       variables. Set if a pragma Volatile_Full_Access applies to the entity.
 --       In the case of private and incomplete types, this flag is set in
 --       both the partial view and the full view.
index 0ef690b0f9313a6cc05e4ec44858d2487c840960..7bd3c6be15770554311a4bf809dbe1a744d50e09 100644 (file)
@@ -7523,9 +7523,9 @@ package body Exp_Ch4 is
 
       Optimize_Length_Comparison (N);
 
-      --  One more special case, if we have a comparison of X'Result = expr
+      --  One more special case: if we have a comparison of X'Result = expr
       --  in floating-point, then if not already there, change expr to be
-      --  f'Machine (expr) to eliminate suprise from extra precision.
+      --  f'Machine (expr) to eliminate surprise from extra precision.
 
       if Is_Floating_Point_Type (Typl)
         and then Nkind (Original_Node (Lhs)) = N_Attribute_Reference
index 586289dab7d60e2896b6a9be616fdf562e32f29d..64367614ede9d08d528ea739ae824f5c64f4dc6d 100644 (file)
@@ -944,7 +944,7 @@ package body Freeze is
 
                   --  We do not know the packed size for an atomic/VFA type
                   --  or component, or an independent type or component, or a
-                  --  by reference type or aliased component (because packing
+                  --  by-reference type or aliased component (because packing
                   --  does not touch these).
 
                   if        Is_Atomic_Or_VFA (Ctyp)
@@ -1037,7 +1037,7 @@ package body Freeze is
                                             (Packed_Array_Impl_Type (Ctyp)))
                      then
                         --  Packed size unknown if we have an atomic/VFA type
-                        --  or a by reference type, since the back end knows
+                        --  or a by-reference type, since the back end knows
                         --  how these are layed out.
 
                         if Is_Atomic_Or_VFA (Ctyp)
index c44941667ba16e4a5c395391b5fd4ebba50c8d41..0c7a77778687456806a86ad1391f761139674a1c 100644 (file)
@@ -2928,7 +2928,7 @@ package body Layout is
             return;
          end if;
 
-         --  No effect if any component is atomic/VFA or is a by reference type
+         --  No effect if any component is atomic/VFA or is a by-reference type
 
          declare
             Ent : Entity_Id;
index f38ff5fa7c1fcdf57f4a024141aa98f62603a420..b5c8888bb6aee30616a658f2c2420d94f4566402 100644 (file)
@@ -833,7 +833,7 @@ package body Sem_Ch12 is
    --
    --  If Inst is present, it is the entity of the package instance. This
    --  entity is marked as having a limited_view actual when some actual is
-   --  a limited view. This is used to place the instance body properly..
+   --  a limited view. This is used to place the instance body properly.
 
    procedure Remove_Parent (In_Body : Boolean := False);
    --  Reverse effect after instantiation of child is complete
index 30c35c20a98b0c1bea4bae3cc973b364057bfbb5..f0abad3a9501e55f034c21b19c5fd3ac8609fbad 100644 (file)
@@ -12901,6 +12901,13 @@ package body Sem_Ch3 is
 
          if No (Def_Id) then
             Def_Id := Create_Itype (E_Void, Related_Nod, Related_Id, Suffix);
+
+            --  Elaborate itype now, as it may be used in a subsequent
+            --  synchronized operation in another scope.
+
+            if Nkind (Related_Nod) = N_Full_Type_Declaration then
+               Build_Itype_Reference (Def_Id, Related_Nod);
+            end if;
          end if;
 
          Constrain_Discriminated_Type (Def_Id, SI, Related_Nod);
index fba28c362cea8a78fd2f593f1d92b91f82af1df3..d92e5baceb908ca52ddba4fdf85223d585e20008 100644 (file)
@@ -6521,7 +6521,7 @@ package body Sem_Ch6 is
          return Ctype <= Mode_Conformant
            or else Subtypes_Statically_Match (Type_1, Full_View (Type_2));
 
-      --  In Ada2012, incomplete types (including limited views) can appear
+      --  In Ada 2012, incomplete types (including limited views) can appear
       --  as actuals in instantiations.
 
       elsif Is_Incomplete_Type (Type_1)
index bb537edf4cb975b220b3a7f13421e8e5896fab40..cf74bf75dbc15e26bebe2d1829d36842f1099c3b 100644 (file)
@@ -1170,7 +1170,7 @@ package Sem_Util is
 
    function Is_Atomic_Or_VFA_Object (N : Node_Id) return Boolean;
    --  Determines if the given node is an atomic object (Is_Atomic_Object true)
-   --  or else is an object for which  VFA is present.
+   --  or else is an object for which VFA is present.
 
    function Is_Attribute_Result (N : Node_Id) return Boolean;
    --  Determine whether node N denotes attribute 'Result