1234567891011121314151617181920212223242526272829303132333435363738 |
- {$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.
|