[multiple changes]

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
This commit is contained in:
Arnaud Charlet 2015-05-22 15:33:18 +02:00
parent f8d851c6f7
commit 088c7e1b0c
9 changed files with 31 additions and 13 deletions

View 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

View 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.

View 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

View 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)

View 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;

View 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

View 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);

View 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)

View 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