-- { dg-do compile } | |
-- { dg-options "-gnatws" } | |
procedure aliased1 is | |
type E is (One, Two); | |
type R (D : E := One) is record | |
case D is | |
when One => | |
I1 : Integer; | |
I2 : Integer; | |
when Two => | |
B1 : Boolean; | |
end case; | |
end record; | |
type Data_Type is record | |
Data : R; | |
end record; | |
type Array_Type is array (Natural range <>) of Data_Type; | |
function Get return Array_Type is | |
Ret : Array_Type (1 .. 2); | |
begin | |
return Ret; | |
end; | |
Object : aliased Array_Type := Get; | |
begin | |
null; | |
end; |