Commit dfdd3de1 by Eric Botcazou Committed by Pierre-Marie de Rodat

[Ada] Fix awkward placement of freeze node for actual subtype

2019-10-10  Eric Botcazou  <ebotcazou@adacore.com>

gcc/ada/

	* sem_ch6.adb (Set_Actual_Subtypes): Put the freeze node of the
	actual subtype after its declaration when the type of the formal
	has a predicate.

From-SVN: r276828
parent ab9e2084
2019-10-10 Eric Botcazou <ebotcazou@adacore.com>
* sem_ch13.adb (Adjust_Record_For_Reverse_Bit_Order): Do not use
the Esize of the component to compute its layout, but only the
Component_Clause. Do not issue a warning for the _Tag
component. Also set the Esize of the component at the end of
the layout.
(Analyze_Record_Representation_Clause): Remove Hbit local
variable. Lay out the Original_Record_Component only if it's
distinct from the component.
(Check_Record_Representation_Clause): Fix off-by-one bug for the
Last_Bit of the artificial clause built for the _Tag component.
\ No newline at end of file
* sem_ch6.adb (Set_Actual_Subtypes): Put the freeze node of the
actual subtype after its declaration when the type of the formal
has a predicate.
\ No newline at end of file
......@@ -12038,7 +12038,7 @@ package body Sem_Ch6 is
-- predicate may come from an explicit aspect of be inherited.
elsif Has_Predicates (T) then
Insert_List_Before_And_Analyze (Decl,
Insert_List_After_And_Analyze (Decl,
Freeze_Entity (Defining_Identifier (Decl), N));
end if;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment