diff -r 000000000000 -r 6474c204b198 js/src/tests/js1_4/Eval/regress-531682.js --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/js/src/tests/js1_4/Eval/regress-531682.js Wed Dec 31 06:09:35 2014 +0100 @@ -0,0 +1,34 @@ +/* -*- Mode: java; tab-width:8; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +//----------------------------------------------------------------------------- +var BUGNUMBER = 531682; +var summary = 'Checking proper wrapping of scope in eval(source, scope)'; +var actual; +var expect; + +//----------------------------------------------------------------------------- +var x = 0; + +test(); +//----------------------------------------------------------------------------- + +function scope1() { + eval('var x = 1;'); + return function() { return x; } +} + +function test() { + enterFunc ('test'); + printBugNumber(BUGNUMBER); + printStatus (summary); + + // The scope chain in eval should be just scope1() and the global object. + actual = eval('x', scope1()); + expect = 0; + reportCompare(expect, actual, summary); + exitFunc ('test'); +}