summaryrefslogtreecommitdiff
path: root/fpcsrc/tests/test/tgeneric14.pp
blob: 94b67cde47ab0a078fec3a99acb56b61bca30d4e (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
{ %fail }

{$mode objfpc}

{ we test the context sensitivity of generics here, by checking whether names
  are looked up at specialization or at definition time. 
  For the moment this fails, because the assembler symbols are not global and
  therefor not accessible from other .o files }

uses
  ugeneric14;

const
  Foo = 4;

type
  TIntTest = specialize TGTest<Integer>;

var
  A: TIntTest;
begin
  A := TIntTest.Create;
  A.DoSomething;
  writeln(A.data);
  if A.data = 4 then
    halt(1);
  A.Free;
end.