From bb9af5f7617a93933d66702ab5a582e4540c71ff Mon Sep 17 00:00:00 2001 From: florian Date: Sat, 6 Sep 2003 22:18:22 +0000 Subject: [PATCH] no message --- tests/webtbs/tw2669.pp | 75 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 75 insertions(+) create mode 100644 tests/webtbs/tw2669.pp diff --git a/tests/webtbs/tw2669.pp b/tests/webtbs/tw2669.pp new file mode 100644 index 0000000000..f11bb13039 --- /dev/null +++ b/tests/webtbs/tw2669.pp @@ -0,0 +1,75 @@ +{ %version=1.1 } +{ Source provided for Free Pascal Bug Report 2669 } +{ Submitted by "marco" on 2003-09-06 } +{ e-mail: marco+web@freepascal.org } + +{$mode Delphi} +Type + TPop3NextProc = procedure of object; + t1= class + procedure server; virtual; + procedure run; virtual; + procedure connect; virtual; + end; + + t2=class + f1 : t1; + procedure exec(p:TPop3NextProc); + procedure callexec; + constructor create; + end; + + +procedure t1.server; + +begin + writeln('server'); +end; + +procedure t1.run; + +begin + writeln('run'); +end; + + +procedure t1.connect; + +begin + writeln('connect'); +end; + + +constructor t2.create; + +begin + inherited create; + f1:=t1.create; +end; + +procedure t2.exec(p:TPop3NextProc); + +begin + writeln('in exec'); + p; +end; + +procedure t2.callexec; + +begin + writeln('callexec'); + exec(f1.server); + exec(f1.run); + exec(f1.connect); +end; + + +var c1 : t2; + +begin + writeln('start'); + c1:=t2.create; + writeln('after create'); + c1.callexec; + writeln('end'); +end.