summaryrefslogtreecommitdiff
path: root/fpcsrc/tests/webtbf/tw3662.pp
blob: a2c88b7494523c760ebea9ad3d820b43e2df3b5e (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
{ %fail }

{$ifdef fpc}{$MODE delphi}{$endif}

type
  TA = class(TInterfacedObject)
  public
    constructor Create;
  end;

  TB = class(TA)
    function Clone: TB;
  end;


constructor TA.Create;
begin
  inherited Create;
end;

function TB.Clone: TB;
var
  b: TB;
begin
  b := Create;
  writeln(integer(b));
  writeln(integer(self));
  Result := b;
end;

var
  aa,aa2: TB;
begin
  aa := TB.Create;
  aa2 := aa.Clone;
end.