1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556 |
- program tmacprocvar;
- {$MODE MACPAS}
- {Tests of different ways of handling functions in MW, THINK Pascal and FPC}
- type
- SInt8 = -128..127;
- Ptr = ^SInt8;
- ProcPtr = Ptr; {This is the definition of ProcPtr in Apples Univ Interfaces}
- procedure A;
- begin
- Writeln('Hello');
- end;
- procedure B (procedure X);
- begin
- X;
- end;
- {$IFC UNDEFINED THINK_Pascal }
- { ** Not supported in THINK Pascal ** }
- type
- M = procedure;
- var
- n: M;
- procedure C (Y: M);
- begin
- Y;
- end;
- {$ENDC}
- procedure D (Z: ProcPtr);
- begin
- Writeln(Ord(Z));
- end;
- begin
- B(A);
- D(@A);
- {$IFC UNDEFINED THINK_Pascal }
- { ** Not supported in THINK Pascal ** }
- B(@A);
- n := nil;
- n := A;
- if nil <> n then
- C(n);
- C(A);
- C(@A);
- {$ENDC}
- end.
|