Browse Source

test untyped var arg for procvar in TP mode

pierre 25 years ago
parent
commit
a3d3cd7b81
1 changed files with 38 additions and 0 deletions
  1. 38 0
      tests/test/testpva2.pp

+ 38 - 0
tests/test/testpva2.pp

@@ -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.