aboutsummaryrefslogtreecommitdiffstats
path: root/gcc-4.9/gcc/testsuite/gnat.dg/opt27_pkg.ads
blob: 01b3a909c6d09fad07249c42ec2fd692e204b760 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
generic

    type Element_T is private;

package Opt27_Pkg is

    type Node_T is private;

    type List_T is private;

    function Is_Null (Node : in Node_T) return Boolean;

    generic

        type Template_T is private;

        with function Is_Match
                         (Element : in Element_T;
                          Template : in Template_T) return Boolean is <>;

    function Find_Elem (Template : Template_T; List : List_T) return Node_T;

private

    type Node_Rec_T;
    type Node_T is access Node_Rec_T;

    type List_T is record
        First_Node : Node_T := null;
        Last_Node : Node_T := null;
    end record;

end Opt27_Pkg;