mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-04-18 13:59:47 +02:00
test untyped var arg for procvar in TP mode
This commit is contained in:
parent
427e658e52
commit
a3d3cd7b81
38
tests/test/testpva2.pp
Normal file
38
tests/test/testpva2.pp
Normal file
@ -0,0 +1,38 @@
|
||||
{$F+}
|
||||
{$ifdef fpc}
|
||||
{$mode tp}
|
||||
{$endif fpc}
|
||||
|
||||
type
|
||||
tproc = procedure;
|
||||
tprocx = procedure(x : longint);
|
||||
|
||||
const
|
||||
dummy_call_count : longint = 0;
|
||||
|
||||
procedure dummy;
|
||||
begin
|
||||
writeln('Dummy called');
|
||||
inc(dummy_call_count);
|
||||
end;
|
||||
|
||||
procedure dummyx(x : longint);
|
||||
begin
|
||||
writeln('Dummy called with x=',x);
|
||||
inc(dummy_call_count);
|
||||
end;
|
||||
|
||||
var
|
||||
tp2 : tproc;
|
||||
tp1x,tp2x : tprocx;
|
||||
const
|
||||
tp1 : tproc = dummy;
|
||||
|
||||
begin
|
||||
move(@tp1,@tp2,sizeof(tproc));
|
||||
tp2;
|
||||
tp1x:=dummyx;
|
||||
move(@tp1x,@tp2x,sizeof(tproc));
|
||||
tp2x(2);
|
||||
|
||||
end.
|
Loading…
Reference in New Issue
Block a user