2 -- { dg-options "-gnatws" }
6 type Ar
is access all R
;
7 type R
is record F1
: Integer; F2
: Ar
; end record;
14 procedure Foo
(RR1
, RR2
: Ar
);
16 procedure Foo
(RR1
, RR2
: Ar
) is
18 if RR2
.all.F1
/= 55 then raise program_error
; end if;
21 R3
: aliased R
:= (55, Null);
22 R2
: aliased R
:= (44, R3
'Access);
23 R1
: aliased R
:= (22, R2
'Access);
26 X
: Ar
renames P
.all.F2
;
27 Y
: Ar
renames X
.all.F2
;
34 if Y
.F1
/= -111 then raise Constraint_Error
; end if;