aboutsummaryrefslogtreecommitdiff
path: root/tests/iii/template-header-errors/program.cps
blob: 73c34a28e2e32cba435c3ebcfbc836fc4f6b4264 (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
34
35
36
37
38
39

TEMPLATE <T, t>
FUNCTION Duplicate(Value : T) RETURNS T
    RETURN Value
ENDFUNCTION

TEMPLATE <Rest..., T>
PROCEDURE NotLast()
ENDPROCEDURE

TEMPLATE <A..., B...>
PROCEDURE TwoPacks()
ENDPROCEDURE

TEMPLATE <T>
TYPE Alias = ^T

TEMPLATE <T>
OVERLOAD FUNCTION OPERATOR+(Value : T) RETURNS T
    RETURN Value
ENDFUNCTION

IF TRUE THEN
    TEMPLATE <T>
    PROCEDURE Nested(Value : T)
        OUTPUT 99
    ENDPROCEDURE
ENDIF

CLASS Outer
    TEMPLATE <T>
    PROCEDURE Member(Value : T)
    ENDPROCEDURE
ENDCLASS

TEMPLATE <>
PROCEDURE Empty()
ENDPROCEDURE

OUTPUT 0