mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-04-27 00:43:43 +02:00
40 lines
516 B
ObjectPascal
40 lines
516 B
ObjectPascal
{ %FAIL }
|
|
|
|
program tanonfunc74;
|
|
|
|
{$mode objfpc}
|
|
{$modeswitch anonymousfunctions}
|
|
{$modeswitch functionreferences}
|
|
{$modeswitch nestedprocvars}
|
|
|
|
{ verify that nested procedures aren't accessible from anonymous functions
|
|
in the captured procedure }
|
|
|
|
type
|
|
tproc = reference to procedure;
|
|
|
|
procedure baz(p: tproc);
|
|
begin
|
|
p();
|
|
end;
|
|
|
|
procedure foo;
|
|
|
|
procedure bar;
|
|
begin
|
|
end;
|
|
|
|
type
|
|
TNested = procedure is nested;
|
|
|
|
begin
|
|
bar;
|
|
baz(procedure var n: TNested; begin n := @bar; end);
|
|
end;
|
|
|
|
begin
|
|
foo;
|
|
end.
|
|
|
|
|