Do not call Set_Cloned_Subtype on private type

Build_Discriminated_Subtype may be invoked on a E_Record_Type_With_Private,
in which case it builds a E_Record_Subtype_With_Private which does not have
the Cloned_Subtype field.

gcc/ada/
	PR ada/99020
	* sem_ch3.adb (Build_Discriminated_Subtype): Set the Cloned_Subtype
	only if the type is not private.
This commit is contained in:
Eric Botcazou 2021-03-02 01:04:10 +01:00
parent 491d5b3cf8
commit 3104dbdcf4

View File

@ -10493,7 +10493,7 @@ package body Sem_Ch3 is
then
Create_Constrained_Components (Def_Id, Related_Nod, T, Elist);
else
elsif not Is_Private_Type (T) then
Set_Cloned_Subtype (Def_Id, T);
end if;
end if;