1-- { dg-do compile }
2
3procedure Class_Wide1 is
4    package P is
5       type T is tagged null record;
6       procedure P1 (x : T'Class);
7       procedure P2 (x : access T'Class);
8    end P;
9    package body P is
10        procedure P1 (x : T'Class) is
11       begin
12          null;
13       end;
14       procedure P2 (x : access T'Class) is
15       begin
16          null;
17       end;
18    end P;
19    use P;
20    a : T;
21    type Ptr is access T;
22    b : Ptr := new T;
23begin
24    A.P1;
25    B.P2;
26end;
27