test262/test/language/eval-code/10.4.2-3-c-3-s.js
Mike Pennisi 29ecced632 Update handling of directive prologues
Some tests specifically concern the application of the `use strict`
directive as it appears in JavaScript source code. These tests should
*not* be run with the `onlyStrict` flag because relying on the test
runner to enable strict mode makes the semantics of the source code
irrelevant. Update these tests to use the `noStrict` flag.

Other tests concern language semantics that are only valid in strict
mode, but the mechanism for enabling strictness is inconseqential.
Update these tests to use the `onlyStrict` flag and remove any redundant
`use strict` directive prologues contained within.

Still other tests are valid both within and outside of strict mode.
In keeping with the majority of other tests, do not specify any
restrictions on the environments in which these tests may be run.
2015-06-18 17:38:34 -04:00

25 lines
773 B
JavaScript

// Copyright (c) 2012 Ecma International. All rights reserved.
// Ecma International makes this code available under the terms and conditions set
// forth on http://hg.ecmascript.org/tests/test262/raw-file/tip/LICENSE (the
// "Use Terms"). Any redistribution of this code must retain the above
// copyright and this notice and otherwise comply with the Use Terms.
/*---
es5id: 10.4.2-3-c-3-s
description: >
Calling code in strict mode - eval cannot instantiate variable in
the global context
flags: [onlyStrict]
includes: [runTestCase.js]
---*/
var _10_4_2_3_c_3_s = 0;
function testcase() {
function _10_4_2_3_c_3_sFunc() {
eval("var _10_4_2_3_c_3_s = 1");
return _10_4_2_3_c_3_s===0;
}
return _10_4_2_3_c_3_sFunc();
}
runTestCase(testcase);