+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.
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;
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;
-- 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
-- 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