{$mode macpas} {$warnings off} program recursivefunctionparam; function first( function test( theint: integer): boolean): integer; begin test(2); end; function find: integer; var l: longint; function test( theint: integer): boolean; begin if (theint = 1) then first( test) else begin writeln('nested procvar call, l = ', l); if l<>1234567890 then halt(1); end; find:=0; end; begin l:=1234567890; test(1) end; begin find; end.