michael@0: /// Copyright (c) 2012 Ecma International. All rights reserved. michael@0: /// Ecma International makes this code available under the terms and conditions set michael@0: /// forth on http://hg.ecmascript.org/tests/test262/raw-file/tip/LICENSE (the michael@0: /// "Use Terms"). Any redistribution of this code must retain the above michael@0: /// copyright and this notice and otherwise comply with the Use Terms. michael@0: /** michael@0: * @path ch10/10.4/10.4.2/10.4.2-1-4.js michael@0: * @description Indirect call to eval has context set to global context (with block) michael@0: */ michael@0: michael@0: var __10_4_2_1_4 = "str"; michael@0: function testcase() { michael@0: try { michael@0: var o = new Object(); michael@0: o.__10_4_2_1_4 = "str2"; michael@0: var _eval = eval; michael@0: var __10_4_2_1_4 = "str1"; michael@0: with (o) { michael@0: if (_eval("\'str\' === __10_4_2_1_4") === true && // indirect eval michael@0: eval("\'str2\' === __10_4_2_1_4") === true) { // direct eval michael@0: return true; michael@0: } michael@0: } michael@0: return false; michael@0: } finally { michael@0: delete this.__10_4_2_1_4; michael@0: } michael@0: } michael@0: runTestCase(testcase);