mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-08-27 10:52:50 +02:00
*** empty log message ***
This commit is contained in:
parent
e02f1fc294
commit
3dfffb4d75
@ -9,6 +9,12 @@ uses
|
||||
dpmiexcp;
|
||||
{$endif go32v2}
|
||||
|
||||
Type
|
||||
TMyRecord = Record
|
||||
MyProc1,MyProc2 : Procedure(l : longint);
|
||||
MyVar : longint;
|
||||
end;
|
||||
|
||||
procedure do_error(i : longint);
|
||||
|
||||
begin
|
||||
@ -79,8 +85,18 @@ type
|
||||
globalvar:=l;
|
||||
end;
|
||||
|
||||
procedure testproc(l : longint);
|
||||
|
||||
begin
|
||||
globalvar:=l;
|
||||
end;
|
||||
|
||||
const
|
||||
constmethodaddr : pointer = @to1.test2;
|
||||
MyRecord : TMyRecord = (
|
||||
MyProc1 : TestProc;
|
||||
MyProc2 : @TestProc;
|
||||
);
|
||||
|
||||
var
|
||||
o1 : to1;
|
||||
@ -88,6 +104,17 @@ var
|
||||
p : procedure(l : longint) of object;
|
||||
|
||||
begin
|
||||
{ Simple procedure variables }
|
||||
writeln('Procedure variables');
|
||||
globalvar:=0;
|
||||
MyRecord.MyProc1(1234);
|
||||
if globalvar<>1234 then
|
||||
do_error(2000);
|
||||
globalvar:=0;
|
||||
MyRecord.MyProc2(4321);
|
||||
if globalvar<>4321 then
|
||||
do_error(2001);
|
||||
writeln('Ok');
|
||||
{ }
|
||||
{ Procedures of objects }
|
||||
{ }
|
||||
@ -114,12 +141,15 @@ begin
|
||||
globalvar:=0;
|
||||
callmethodparam(@o1,constmethodaddr,34);
|
||||
if globalvar<>34 then
|
||||
do_error(1001);
|
||||
do_error(1001);
|
||||
writeln('Ok');
|
||||
end.
|
||||
{
|
||||
$Log$
|
||||
Revision 1.1 1999-12-02 17:37:45 peter
|
||||
Revision 1.2 2000-04-02 09:06:55 florian
|
||||
*** empty log message ***
|
||||
|
||||
Revision 1.1 1999/12/02 17:37:45 peter
|
||||
* moved *.pp into subdirs
|
||||
* fpcmaked
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user