1package Discr37 is
2
3  subtype Index is Integer range 0 .. 100;
4
5  type Root;
6  type Frame_Ptr is access all Root'Class;
7
8  type Arr is array (Index range <>) of Frame_Ptr;
9
10  type Root (Level : Index) is tagged record
11    S : Arr (0 .. Level);
12  end record;
13
14  type Derived (Level : Index) is new Root (Level) with null record;
15
16  type Child is new Derived (0) with record
17    F : Arr (0 .. 100);
18  end record;
19
20  procedure Proc (A : access Child);
21
22end Discr37;
23