exp_ch5.adb: minor reformatting.
authorEd Schonberg <schonberg@adacore.com>
Mon, 4 Aug 2014 10:08:26 +0000 (10:08 +0000)
committerArnaud Charlet <charlet@gcc.gnu.org>
Mon, 4 Aug 2014 10:08:26 +0000 (12:08 +0200)
2014-08-04  Ed Schonberg  <schonberg@adacore.com>

* exp_ch5.adb: minor reformatting.
* einfo.ads, einfo.adb (Is_Processed_Transient): Applies to loop
parameters.

From-SVN: r213559

gcc/ada/ChangeLog
gcc/ada/einfo.adb
gcc/ada/einfo.ads
gcc/ada/exp_ch5.adb

index 5db6af9fe446ad32e07ed9f098794eae3985e55b..d18302471d32882453720f03a03ec03fc0c618ea 100644 (file)
@@ -1,3 +1,9 @@
+2014-08-04  Ed Schonberg  <schonberg@adacore.com>
+
+       * exp_ch5.adb: minor reformatting.
+       * einfo.ads, einfo.adb (Is_Processed_Transient): Applies to loop
+       parameters.
+
 2014-08-04  Thomas Quinot  <quinot@adacore.com>
 
        * s-fatgen.adb: Minor reformatting.
index f63e6fa850fd1afaffc380209ffbcd27df42dcdb..cecdabe9d005e90e7b3f16bf56f9f72157077ba3 100644 (file)
@@ -2292,7 +2292,7 @@ package body Einfo is
 
    function Is_Processed_Transient (Id : E) return B is
    begin
-      pragma Assert (Ekind_In (Id, E_Constant, E_Variable));
+      pragma Assert (Ekind_In (Id, E_Constant, E_Loop_Parameter, E_Variable));
       return Flag252 (Id);
    end Is_Processed_Transient;
 
@@ -5096,7 +5096,7 @@ package body Einfo is
 
    procedure Set_Is_Processed_Transient (Id : E; V : B := True) is
    begin
-      pragma Assert (Ekind_In (Id, E_Constant, E_Variable));
+      pragma Assert (Ekind_In (Id, E_Constant, E_Loop_Parameter, E_Variable));
       Set_Flag252 (Id, V);
    end Set_Is_Processed_Transient;
 
index c87a9899a001ad86c8ebffa4ae38e54ca997f57b..7dd8257e009fea9525e6b8891fc0ee03eacb69e4 100644 (file)
@@ -2402,6 +2402,9 @@ package Einfo is
 --       Defined in all type and subtype entities. Set in the subtype
 --       declaration that renames the generic formal as a subtype of the
 --       actual. Guarantees that the subtype is not static within the instance.
+--       Also used during analysis of an instance, to simplify resolution of
+--       accidental overloading that occurs when different formal types get the
+--       same actual.
 
 --    Is_Generic_Instance (Flag130)
 --       Defined in all entities. Set to indicate that the entity is an
@@ -2841,10 +2844,11 @@ package Einfo is
 --       as well as for record with private types as subtypes
 
 --    Is_Processed_Transient (Flag252)
---       Defined in entities of variables and constants. Set when a transient
---       object needs to be finalized and it has already been processed by the
---       transient scope machinery. This flag signals the general finalization
---       mechanism to ignore the transient object.
+--       Defined in entities of variables and constants, including the loop
+--       parameters of generalized iterators. Set when a transient object needs
+--       to be finalized and it has already been processed by the transient
+--       scope machinery. This flag signals the general finalization mechanism
+--       to ignore the transient object.
 
 --    Is_Protected_Component (synthesized)
 --       Applicable to all entities, true if the entity denotes a private
index 591e1d3d56c825517fe78e2e37d75d7d2d613fc4..363279580a2db86f72fbd7382b8e2f43480c6813 100644 (file)
@@ -3482,7 +3482,6 @@ package body Exp_Ch5 is
 
          else
             Cursor := Id;
-            --  Set_Ekind (Cursor, E_Variable);
          end if;
 
          Iterator := Make_Temporary (Loc, 'I');