[fpc-devel] Delphi anonymous methods
Vasiliy Kevroletin
kevroletin at gmail.com
Sun Mar 3 06:08:10 CET 2013
> Do you have any ideas how and why such behaviour implemented ?
>
Now I can answer my question myself. *Local variables of anonymous
method are located on stack*.
This assumption is based on 2 points:
1.
assignment to local variable of anonymous function
x := 10;
will become this
mov [ebp - $04], $a
=== full example ===
begin
Call( procedure
var x: Integer;
begin
x := 10; { mov [ebp - $04], $a }
Writeln(x);
end );
end.
===
2. example
https://gist.github.com/vkevroletin/5069653
output for example is in first comment after code.
Vasiliy
P.S.
In last email I pasted one javascript example 3 times accidentally.
I was writing from vrt277 at gmail.com before because emails from my main
mailbox wasn't delivered to mail list.
More information about the fpc-devel
mailing list