1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53
|
{$mode macpas}
program tmaclocalprocparam3;
type
tnestedprocvar = procedure is nested;
var
tempp: tnestedprocvar;
procedure p1( pp: tnestedprocvar);
begin
tempp:=pp;
tempp
end;
procedure p2( pp: tnestedprocvar);
var
localpp: tnestedprocvar;
begin
localpp:=pp;
p1( localpp)
end;
procedure n;
begin
writeln( 'calling through n')
end;
procedure q;
var qi: longint;
procedure r;
begin
if qi = 1 then
writeln( 'success for r')
else
begin
writeln( 'fail');
halt( 1)
end
end;
begin
qi:= 1;
p1( r);
p2( r);
p1( n);
p2( n);
end;
begin
q
end.
|