mirror of
https://github.com/tc39/test262.git
synced 2025-10-03 06:58:42 +02:00
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.
33 lines
1.0 KiB
JavaScript
33 lines
1.0 KiB
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.
|
|
|
|
/*---
|
|
info: >
|
|
Refer 13;
|
|
The production FunctionBody : SourceElementsopt is evaluated as follows:
|
|
es5id: 13.0-9-s
|
|
description: >
|
|
Strict Mode - SourceElements is evaluated as strict mode code when
|
|
a FunctionDeclaration that is contained in strict mode code has an
|
|
inner function
|
|
flags: [onlyStrict]
|
|
includes: [runTestCase.js]
|
|
---*/
|
|
|
|
function testcase() {
|
|
var _13_0_9_fun = function () {
|
|
function _13_0_9_inner() { eval("eval = 42;"); }
|
|
_13_0_9_inner();
|
|
};
|
|
try {
|
|
_13_0_9_fun();
|
|
return false;
|
|
} catch (e) {
|
|
return e instanceof SyntaxError;
|
|
}
|
|
}
|
|
runTestCase(testcase);
|