rt_gccstream/gcc/testsuite/gnat.dg/protected_self_ref1.adb

26 lines
450 B
Ada

-- { dg-do run }
with System;
procedure Protected_Self_Ref1 is
protected type P is
procedure Foo;
end P;
protected body P is
procedure Foo is
Ptr : access P; -- here P denotes the type P
T : Integer;
A : System.Address;
begin
Ptr := P'Access; -- here P denotes the "this" instance of P
T := P'Size;
A := P'Address;
end;
end P;
O : P;
begin
O.Foo;
end Protected_Self_Ref1;