fpc/tests/test/tabstract1.pp
florian eb433d1bdd * merged sealed and abstract support by Paul Ishenin
-- Zusammenführen von r13884 in ».«:
U    compiler/msgtxt.inc
U    compiler/msgidx.inc
U    compiler/pdecsub.pas
U    compiler/pdecobj.pas
U    compiler/tokens.pas
U    compiler/ppu.pas
U    compiler/symconst.pas
U    compiler/msg/errore.msg
U    compiler/utils/ppudump.pp
-- Zusammenführen von r13885 in ».«:
A    tests/test/tsealed1.pp
A    tests/test/tabstract1.pp
A    tests/test/tsealed2.pp
-- Zusammenführen von r13893 in ».«:
A    tests/test/tsealed3.pp
A    tests/test/tsealed4.pp

git-svn-id: trunk@13908 -
2009-10-18 20:05:29 +00:00

50 lines
750 B
ObjectPascal

{$ifdef fpc}
{$mode objfpc}
{$endif fpc}
type
TAbstractClass = class abstract
public
procedure Test; virtual;
end;
TAbstractClassDescendant = class(TAbstractClass)
public
procedure Test; override;
end;
TSealedClass = class sealed
public
procedure Test;
end;
procedure TAbstractClass.Test;
begin
end;
procedure TAbstractClassDescendant.Test;
begin
end;
procedure TSealedClass.Test;
begin
end;
var
AClass: TAbstractClass;
AClassDesc: TAbstractClassDescendant;
SClass: TSealedClass;
begin
AClass := TAbstractClass.Create;
AClass.Test;
AClass.Free;
AClassDesc:= TAbstractClassDescendant.Create;
AClassDesc.Test;
AClassDesc.Free;
SClass := TSealedClass.Create;
SClass.Test;
SClass.Free;
end.