Status: New
Owner: ----
New issue 835 by BMotters: eval in inner scope sees different scope-chain
when invoked indirectly
http://code.google.com/p/v8/issues/detail?id=835
Scope chains are not set up correctly when an inner scope invokes eval
indirectly.
function evalx(x){eval(x);}
var v="global";
(function(){var v="inner"; return function(){eval("print(v)");}})()();
(function(){var v="inner"; return function(){evalx("print(v)");}})()();
The first function prints "inner". which is expected. The second function
prints "global", which is incorrect. If one runs v8 with --print-scopes,
the scopes for the first case are indicated correctly as having inner
scopes which are eval-tainted. Not so for the second case.
This problem may be related to #267 and #496, which were marked as "Fixed".
Brian Mottershead
--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev