1--  { dg-do compile }
2
3procedure Generic_Pkg is
4   generic
5      type T_horizontal is new float;
6   package vectors_2D is end;
7
8   generic
9      with package C is new vectors_2d (<>);
10      with package D is new vectors_2d (<>);
11   package poshelp is end;
12
13   generic
14      with package Helper is new poshelp (<>);
15   package timevars is
16      use Helper.C;
17   end;
18
19   generic
20      with package C is new vectors_2d (<>);
21      with package D is new vectors_2d (<>);
22      with package Helper is new poshelp (C, D);
23   package Spagett is end;
24
25   generic
26      with package C is new vectors_2d (<>);
27      with package D is new vectors_2d (<>);
28      with package Helper is new poshelp (C, D);
29   package Touch is
30      use Helper;
31      package My_Spagett is new Spagett (C, D, Helper);
32      package timevars_Pkg is new timevars (Helper);
33   end;
34
35begin
36  null;
37end;
38