diff options
Diffstat (limited to 'test/suite/ch12/12.2')
60 files changed, 1045 insertions, 1079 deletions
diff --git a/test/suite/ch12/12.2/12.2.1/12.2.1-1-s.js b/test/suite/ch12/12.2/12.2.1/12.2.1-1-s.js index 102f9fdb0..d46cf707f 100644 --- a/test/suite/ch12/12.2/12.2.1/12.2.1-1-s.js +++ b/test/suite/ch12/12.2/12.2.1/12.2.1-1-s.js @@ -1,24 +1,26 @@ -/// 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.
-/**
- * @path ch12/12.2/12.2.1/12.2.1-1-s.js
- * @description eval - a function declaring a var named 'eval' throws SyntaxError in strict mode
- * @onlyStrict
- */
-
-
-function testcase() {
- 'use strict';
-
- try {
- eval('function foo() { var eval; }');
- return false;
- }
- catch (e) {
- return (e instanceof SyntaxError);
- }
- }
-runTestCase(testcase);
+// 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. + +/*--- +description: > + eval - a function declaring a var named 'eval' throws SyntaxError + in strict mode +flags: [onlyStrict] +includes: [runTestCase.js] +---*/ + +function testcase() { + 'use strict'; + + try { + eval('function foo() { var eval; }'); + return false; + } + catch (e) { + return (e instanceof SyntaxError); + } + } +runTestCase(testcase); diff --git a/test/suite/ch12/12.2/12.2.1/12.2.1-10-s.js b/test/suite/ch12/12.2/12.2.1/12.2.1-10-s.js index 8f442fc90..90ab37d51 100644 --- a/test/suite/ch12/12.2/12.2.1/12.2.1-10-s.js +++ b/test/suite/ch12/12.2/12.2.1/12.2.1-10-s.js @@ -1,19 +1,19 @@ -/// 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.
-/**
- * @path ch12/12.2/12.2.1/12.2.1-10-s.js
- * @description Strict Mode: an indirect eval assigning into 'eval' does not throw
- * @onlyStrict
- */
-
-
-function testcase() {
- 'use strict';
- var s = eval;
- s('eval = 42;');
- return true;
- }
-runTestCase(testcase);
+// 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. + +/*--- +description: "Strict Mode: an indirect eval assigning into 'eval' does not throw" +flags: [onlyStrict] +includes: [runTestCase.js] +---*/ + +function testcase() { + 'use strict'; + var s = eval; + s('eval = 42;'); + return true; + } +runTestCase(testcase); diff --git a/test/suite/ch12/12.2/12.2.1/12.2.1-11.js b/test/suite/ch12/12.2/12.2.1/12.2.1-11.js index 650835ee1..f8f37eb21 100644 --- a/test/suite/ch12/12.2/12.2.1/12.2.1-11.js +++ b/test/suite/ch12/12.2/12.2.1/12.2.1-11.js @@ -1,16 +1,16 @@ -/// 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.
-/**
- * @path ch12/12.2/12.2.1/12.2.1-11.js
- * @description arguments as var identifier in eval code is allowed
- */
-
-
-function testcase() {
- eval("var arguments;");
- return true;
- }
-runTestCase(testcase);
+// 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. + +/*--- +description: arguments as var identifier in eval code is allowed +includes: [runTestCase.js] +---*/ + +function testcase() { + eval("var arguments;"); + return true; + } +runTestCase(testcase); diff --git a/test/suite/ch12/12.2/12.2.1/12.2.1-12-s.js b/test/suite/ch12/12.2/12.2.1/12.2.1-12-s.js index 7d96f25fe..39ab8a95a 100644 --- a/test/suite/ch12/12.2/12.2.1/12.2.1-12-s.js +++ b/test/suite/ch12/12.2/12.2.1/12.2.1-12-s.js @@ -1,24 +1,24 @@ -/// 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.
-/**
- * @path ch12/12.2/12.2.1/12.2.1-12-s.js
- * @description arguments as local var identifier throws SyntaxError in strict mode
- * @onlyStrict
- */
-
-
-function testcase() {
- 'use strict';
-
- try {
- eval('function foo() { var arguments;}');
- return false;
- }
- catch (e) {
- return (e instanceof SyntaxError);
- }
- }
-runTestCase(testcase);
+// 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. + +/*--- +description: arguments as local var identifier throws SyntaxError in strict mode +flags: [onlyStrict] +includes: [runTestCase.js] +---*/ + +function testcase() { + 'use strict'; + + try { + eval('function foo() { var arguments;}'); + return false; + } + catch (e) { + return (e instanceof SyntaxError); + } + } +runTestCase(testcase); diff --git a/test/suite/ch12/12.2/12.2.1/12.2.1-12.js b/test/suite/ch12/12.2/12.2.1/12.2.1-12.js index f5ba2925d..63a7732cb 100644 --- a/test/suite/ch12/12.2/12.2.1/12.2.1-12.js +++ b/test/suite/ch12/12.2/12.2.1/12.2.1-12.js @@ -1,16 +1,16 @@ -/// 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.
-/**
- * @path ch12/12.2/12.2.1/12.2.1-12.js
- * @description arguments as local var identifier is allowed
- */
-
-
-function testcase() {
- eval("(function (){var arguments;})");
- return true;
- }
-runTestCase(testcase);
+// 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. + +/*--- +description: arguments as local var identifier is allowed +includes: [runTestCase.js] +---*/ + +function testcase() { + eval("(function (){var arguments;})"); + return true; + } +runTestCase(testcase); diff --git a/test/suite/ch12/12.2/12.2.1/12.2.1-13-s.js b/test/suite/ch12/12.2/12.2.1/12.2.1-13-s.js index d34ab90d1..e695ce5c0 100644 --- a/test/suite/ch12/12.2/12.2.1/12.2.1-13-s.js +++ b/test/suite/ch12/12.2/12.2.1/12.2.1-13-s.js @@ -1,24 +1,24 @@ -/// 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.
-/**
- * @path ch12/12.2/12.2.1/12.2.1-13-s.js
- * @description arguments assignment throws SyntaxError in strict mode
- * @onlyStrict
- */
-
-
-function testcase() {
- 'use strict';
-
- try {
- eval('function foo() { arguments = 42; }; foo()');
- return false;
- }
- catch (e) {
- return (e instanceof SyntaxError);
- }
- }
-runTestCase(testcase);
+// 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. + +/*--- +description: arguments assignment throws SyntaxError in strict mode +flags: [onlyStrict] +includes: [runTestCase.js] +---*/ + +function testcase() { + 'use strict'; + + try { + eval('function foo() { arguments = 42; }; foo()'); + return false; + } + catch (e) { + return (e instanceof SyntaxError); + } + } +runTestCase(testcase); diff --git a/test/suite/ch12/12.2/12.2.1/12.2.1-14-s.js b/test/suite/ch12/12.2/12.2.1/12.2.1-14-s.js index 252688c96..47e8ab9cf 100644 --- a/test/suite/ch12/12.2/12.2.1/12.2.1-14-s.js +++ b/test/suite/ch12/12.2/12.2.1/12.2.1-14-s.js @@ -1,26 +1,26 @@ -/// 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.
-/**
- * @path ch12/12.2/12.2.1/12.2.1-14-s.js
- * @description arguments - a function expr declaring a var named 'arguments' throws SyntaxError in strict mode
- * @onlyStrict
- */
-
-
-
-
-function testcase() {
- 'use strict';
-
- try {
- eval('(function (){var arguments;});');
- return false;
- }
- catch (e) {
- return (e instanceof SyntaxError);
- }
-}
-runTestCase(testcase);
\ No newline at end of file +// 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. + +/*--- +description: > + arguments - a function expr declaring a var named 'arguments' + throws SyntaxError in strict mode +flags: [onlyStrict] +includes: [runTestCase.js] +---*/ + +function testcase() { + 'use strict'; + + try { + eval('(function (){var arguments;});'); + return false; + } + catch (e) { + return (e instanceof SyntaxError); + } +} +runTestCase(testcase); diff --git a/test/suite/ch12/12.2/12.2.1/12.2.1-15-s.js b/test/suite/ch12/12.2/12.2.1/12.2.1-15-s.js index 185ba5156..b68444270 100644 --- a/test/suite/ch12/12.2/12.2.1/12.2.1-15-s.js +++ b/test/suite/ch12/12.2/12.2.1/12.2.1-15-s.js @@ -1,26 +1,26 @@ -/// 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.
-/**
- * @path ch12/12.2/12.2.1/12.2.1-15-s.js
- * @description arguments - a function expr assigning into 'arguments' throws a SyntaxError in strict mode
- * @onlyStrict
- */
-
-
-
-
-function testcase() {
- 'use strict';
-
- try {
- eval('(function () {arguments = 42;})()');
- return false;
- }
- catch (e) {
- return (e instanceof SyntaxError);
- }
-}
-runTestCase(testcase);
\ No newline at end of file +// 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. + +/*--- +description: > + arguments - a function expr assigning into 'arguments' throws a + SyntaxError in strict mode +flags: [onlyStrict] +includes: [runTestCase.js] +---*/ + +function testcase() { + 'use strict'; + + try { + eval('(function () {arguments = 42;})()'); + return false; + } + catch (e) { + return (e instanceof SyntaxError); + } +} +runTestCase(testcase); diff --git a/test/suite/ch12/12.2/12.2.1/12.2.1-16-s.js b/test/suite/ch12/12.2/12.2.1/12.2.1-16-s.js index d39963bc7..25ad409fe 100644 --- a/test/suite/ch12/12.2/12.2.1/12.2.1-16-s.js +++ b/test/suite/ch12/12.2/12.2.1/12.2.1-16-s.js @@ -1,20 +1,20 @@ -/// 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.
-/**
- * @path ch12/12.2/12.2.1/12.2.1-16-s.js
- * @description A Function constructor (called as a function) declaring a var named 'arguments' does not throw a SyntaxError in strict mode
- * @onlyStrict
- */
-
-
-
-
-function testcase() {
- 'use strict';
- Function('var arguments;');
- return true;
-}
-runTestCase(testcase);
\ No newline at end of file +// 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. + +/*--- +description: > + A Function constructor (called as a function) declaring a var + named 'arguments' does not throw a SyntaxError in strict mode +flags: [onlyStrict] +includes: [runTestCase.js] +---*/ + +function testcase() { + 'use strict'; + Function('var arguments;'); + return true; +} +runTestCase(testcase); diff --git a/test/suite/ch12/12.2/12.2.1/12.2.1-17-s.js b/test/suite/ch12/12.2/12.2.1/12.2.1-17-s.js index c53dce258..e587cba91 100644 --- a/test/suite/ch12/12.2/12.2.1/12.2.1-17-s.js +++ b/test/suite/ch12/12.2/12.2.1/12.2.1-17-s.js @@ -1,22 +1,23 @@ -/// 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.
-/**
- * @path ch12/12.2/12.2.1/12.2.1-17-s.js
- * @description A Function constructor (called as a function) assigning into 'arguments' will not throw any error if contained within strict mode and its body does not start with strict mode
- * @onlyStrict
- */
-
-
-
-
-function testcase() {
- 'use strict';
-
- var f = Function('arguments = 42;');
- f();
- return true;
-}
-runTestCase(testcase);
\ No newline at end of file +// 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. + +/*--- +description: > + A Function constructor (called as a function) assigning into + 'arguments' will not throw any error if contained within strict + mode and its body does not start with strict mode +flags: [onlyStrict] +includes: [runTestCase.js] +---*/ + +function testcase() { + 'use strict'; + + var f = Function('arguments = 42;'); + f(); + return true; +} +runTestCase(testcase); diff --git a/test/suite/ch12/12.2/12.2.1/12.2.1-18-s.js b/test/suite/ch12/12.2/12.2.1/12.2.1-18-s.js index fb4afd3c2..f461c7840 100644 --- a/test/suite/ch12/12.2/12.2.1/12.2.1-18-s.js +++ b/test/suite/ch12/12.2/12.2.1/12.2.1-18-s.js @@ -1,26 +1,26 @@ -/// 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.
-/**
- * @path ch12/12.2/12.2.1/12.2.1-18-s.js
- * @description A direct eval declaring a var named 'arguments' throws SyntaxError in strict mode
- * @onlyStrict
- */
-
-
-
-
-function testcase() {
- 'use strict';
-
- try {
- eval('var arguments;');
- return false;
- }
- catch (e) {
- return (e instanceof SyntaxError);
- }
-}
-runTestCase(testcase);
\ No newline at end of file +// 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. + +/*--- +description: > + A direct eval declaring a var named 'arguments' throws SyntaxError + in strict mode +flags: [onlyStrict] +includes: [runTestCase.js] +---*/ + +function testcase() { + 'use strict'; + + try { + eval('var arguments;'); + return false; + } + catch (e) { + return (e instanceof SyntaxError); + } +} +runTestCase(testcase); diff --git a/test/suite/ch12/12.2/12.2.1/12.2.1-19-s.js b/test/suite/ch12/12.2/12.2.1/12.2.1-19-s.js index 18fcc5d18..7d248df1a 100644 --- a/test/suite/ch12/12.2/12.2.1/12.2.1-19-s.js +++ b/test/suite/ch12/12.2/12.2.1/12.2.1-19-s.js @@ -1,26 +1,26 @@ -/// 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.
-/**
- * @path ch12/12.2/12.2.1/12.2.1-19-s.js
- * @description A direct eval assigning into 'arguments' throws SyntaxError in strict mode
- * @onlyStrict
- */
-
-
-
-
-function testcase() {
- 'use strict';
-
- try {
- eval('arguments = 42;');
- return false;
- }
- catch (e) {
- return (e instanceof SyntaxError) ;
- }
-}
-runTestCase(testcase);
\ No newline at end of file +// 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. + +/*--- +description: > + A direct eval assigning into 'arguments' throws SyntaxError in + strict mode +flags: [onlyStrict] +includes: [runTestCase.js] +---*/ + +function testcase() { + 'use strict'; + + try { + eval('arguments = 42;'); + return false; + } + catch (e) { + return (e instanceof SyntaxError) ; + } +} +runTestCase(testcase); diff --git a/test/suite/ch12/12.2/12.2.1/12.2.1-1gs.js b/test/suite/ch12/12.2/12.2.1/12.2.1-1gs.js index a93b2aae7..f08c073f3 100644 --- a/test/suite/ch12/12.2/12.2.1/12.2.1-1gs.js +++ b/test/suite/ch12/12.2/12.2.1/12.2.1-1gs.js @@ -1,14 +1,17 @@ -/// 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.
-/**
- * @path ch12/12.2/12.2.1/12.2.1-1gs.js
- * @description Strict Mode - SyntaxError is thrown if a VariableDeclaration occurs within strict code and its Identifier is eval
- * @onlyStrict
- * @negative ^((?!NotEarlyError).)*$
- */
-"use strict";
-throw NotEarlyError;
-for (var eval in arrObj) { }
\ No newline at end of file +// 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. + +/*--- +description: > + Strict Mode - SyntaxError is thrown if a VariableDeclaration + occurs within strict code and its Identifier is eval +negative: ^((?!NotEarlyError).)*$ +flags: [onlyStrict] +---*/ + +"use strict"; +throw NotEarlyError; +for (var eval in arrObj) { } diff --git a/test/suite/ch12/12.2/12.2.1/12.2.1-2-s.js b/test/suite/ch12/12.2/12.2.1/12.2.1-2-s.js index 8b9848c54..5a1aaa3b6 100644 --- a/test/suite/ch12/12.2/12.2.1/12.2.1-2-s.js +++ b/test/suite/ch12/12.2/12.2.1/12.2.1-2-s.js @@ -1,24 +1,26 @@ -/// 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.
-/**
- * @path ch12/12.2/12.2.1/12.2.1-2-s.js
- * @description eval - a function assigning into 'eval' throws SyntaxError in strict mode
- * @onlyStrict
- */
-
-
-function testcase() {
- 'use strict';
-
- try {
- eval('function foo() { eval = 42; }; foo()');
- return false;
- }
- catch (e) {
- return (e instanceof SyntaxError);
- }
- }
-runTestCase(testcase);
+// 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. + +/*--- +description: > + eval - a function assigning into 'eval' throws SyntaxError in + strict mode +flags: [onlyStrict] +includes: [runTestCase.js] +---*/ + +function testcase() { + 'use strict'; + + try { + eval('function foo() { eval = 42; }; foo()'); + return false; + } + catch (e) { + return (e instanceof SyntaxError); + } + } +runTestCase(testcase); diff --git a/test/suite/ch12/12.2/12.2.1/12.2.1-20-s.js b/test/suite/ch12/12.2/12.2.1/12.2.1-20-s.js index 230340fda..2948c5d71 100644 --- a/test/suite/ch12/12.2/12.2.1/12.2.1-20-s.js +++ b/test/suite/ch12/12.2/12.2.1/12.2.1-20-s.js @@ -1,21 +1,21 @@ -/// 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.
-/**
- * @path ch12/12.2/12.2.1/12.2.1-20-s.js
- * @description Strict Mode: an indirect eval declaring a var named 'arguments' does not throw
- * @onlyStrict
- */
-
-
-
-
-function testcase() {
- 'use strict';
- var s = eval;
- s('var arguments;');
- return true;
-}
-runTestCase(testcase);
\ No newline at end of file +// 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. + +/*--- +description: > + Strict Mode: an indirect eval declaring a var named 'arguments' + does not throw +flags: [onlyStrict] +includes: [runTestCase.js] +---*/ + +function testcase() { + 'use strict'; + var s = eval; + s('var arguments;'); + return true; +} +runTestCase(testcase); diff --git a/test/suite/ch12/12.2/12.2.1/12.2.1-21-s.js b/test/suite/ch12/12.2/12.2.1/12.2.1-21-s.js index 2d1907b01..1f8c8f6d9 100644 --- a/test/suite/ch12/12.2/12.2.1/12.2.1-21-s.js +++ b/test/suite/ch12/12.2/12.2.1/12.2.1-21-s.js @@ -1,21 +1,21 @@ -/// 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.
-/**
- * @path ch12/12.2/12.2.1/12.2.1-21-s.js
- * @description Strict Mode: an indirect eval assigning into 'arguments' does not throw
- * @onlyStrict
- */
-
-
-
-
-function testcase() {
- 'use strict';
- var s = eval;
- s('arguments = 42;');
- return true;
-}
-runTestCase(testcase);
\ No newline at end of file +// 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. + +/*--- +description: > + Strict Mode: an indirect eval assigning into 'arguments' does not + throw +flags: [onlyStrict] +includes: [runTestCase.js] +---*/ + +function testcase() { + 'use strict'; + var s = eval; + s('arguments = 42;'); + return true; +} +runTestCase(testcase); diff --git a/test/suite/ch12/12.2/12.2.1/12.2.1-22-s.js b/test/suite/ch12/12.2/12.2.1/12.2.1-22-s.js index 943360cda..2c70d7741 100644 --- a/test/suite/ch12/12.2/12.2.1/12.2.1-22-s.js +++ b/test/suite/ch12/12.2/12.2.1/12.2.1-22-s.js @@ -1,27 +1,27 @@ -/// 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.
-/**
- * @path ch12/12.2/12.2.1/12.2.1-22-s.js
- * @description arguments as global var identifier throws SyntaxError in strict mode
- * @onlyStrict
- */
-
-
-
-
-function testcase() {
-
- var indirectEval = eval;
-
- try {
- indirectEval("'use strict'; var arguments;");
- return false;
- }
- catch (e) {
- return (e instanceof SyntaxError);
- }
-}
-runTestCase(testcase);
\ No newline at end of file +// 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. + +/*--- +description: > + arguments as global var identifier throws SyntaxError in strict + mode +flags: [onlyStrict] +includes: [runTestCase.js] +---*/ + +function testcase() { + + var indirectEval = eval; + + try { + indirectEval("'use strict'; var arguments;"); + return false; + } + catch (e) { + return (e instanceof SyntaxError); + } +} +runTestCase(testcase); diff --git a/test/suite/ch12/12.2/12.2.1/12.2.1-23-s.js b/test/suite/ch12/12.2/12.2.1/12.2.1-23-s.js index 29d667897..b770ffa50 100644 --- a/test/suite/ch12/12.2/12.2.1/12.2.1-23-s.js +++ b/test/suite/ch12/12.2/12.2.1/12.2.1-23-s.js @@ -1,26 +1,26 @@ -/// 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.
-/**
- * @path ch12/12.2/12.2.1/12.2.1-23-s.js
- * @description arguments as local var identifier assigned to throws SyntaxError in strict mode
- * @onlyStrict
- */
-
-
-
-
-function testcase() {
- 'use strict';
-
- try {
- eval('function foo() { var arguments = 42;}');
- return false;
- }
- catch (e) {
- return (e instanceof SyntaxError);
- }
-}
-runTestCase(testcase);
\ No newline at end of file +// 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. + +/*--- +description: > + arguments as local var identifier assigned to throws SyntaxError + in strict mode +flags: [onlyStrict] +includes: [runTestCase.js] +---*/ + +function testcase() { + 'use strict'; + + try { + eval('function foo() { var arguments = 42;}'); + return false; + } + catch (e) { + return (e instanceof SyntaxError); + } +} +runTestCase(testcase); diff --git a/test/suite/ch12/12.2/12.2.1/12.2.1-24-s.js b/test/suite/ch12/12.2/12.2.1/12.2.1-24-s.js index bd9cc069d..5234cc3a6 100644 --- a/test/suite/ch12/12.2/12.2.1/12.2.1-24-s.js +++ b/test/suite/ch12/12.2/12.2.1/12.2.1-24-s.js @@ -1,26 +1,26 @@ -/// 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.
-/**
- * @path ch12/12.2/12.2.1/12.2.1-24-s.js
- * @description eval as local var identifier assigned to throws SyntaxError in strict mode
- * @onlyStrict
- */
-
-
-
-
-function testcase() {
- 'use strict';
-
- try {
- eval('function foo() { var eval = 42;}');
- return false;
- }
- catch (e) {
- return (e instanceof SyntaxError);
- }
-}
-runTestCase(testcase);
\ No newline at end of file +// 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. + +/*--- +description: > + eval as local var identifier assigned to throws SyntaxError in + strict mode +flags: [onlyStrict] +includes: [runTestCase.js] +---*/ + +function testcase() { + 'use strict'; + + try { + eval('function foo() { var eval = 42;}'); + return false; + } + catch (e) { + return (e instanceof SyntaxError); + } +} +runTestCase(testcase); diff --git a/test/suite/ch12/12.2/12.2.1/12.2.1-25-s.js b/test/suite/ch12/12.2/12.2.1/12.2.1-25-s.js index f28397959..50f1eab51 100644 --- a/test/suite/ch12/12.2/12.2.1/12.2.1-25-s.js +++ b/test/suite/ch12/12.2/12.2.1/12.2.1-25-s.js @@ -1,26 +1,24 @@ -/// 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.
-/**
- * @path ch12/12.2/12.2.1/12.2.1-25-s.js
- * @description arguments as local var identifier throws SyntaxError in strict mode
- * @onlyStrict
- */
-
-
-
-
-function testcase() {
- 'use strict';
-
- try {
- eval('function foo() { var arguments, a;}');
- return false;
- }
- catch (e) {
- return (e instanceof SyntaxError);
- }
-}
-runTestCase(testcase);
\ No newline at end of file +// 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. + +/*--- +description: arguments as local var identifier throws SyntaxError in strict mode +flags: [onlyStrict] +includes: [runTestCase.js] +---*/ + +function testcase() { + 'use strict'; + + try { + eval('function foo() { var arguments, a;}'); + return false; + } + catch (e) { + return (e instanceof SyntaxError); + } +} +runTestCase(testcase); diff --git a/test/suite/ch12/12.2/12.2.1/12.2.1-26-s.js b/test/suite/ch12/12.2/12.2.1/12.2.1-26-s.js index b4e24356f..4e9af9d92 100644 --- a/test/suite/ch12/12.2/12.2.1/12.2.1-26-s.js +++ b/test/suite/ch12/12.2/12.2.1/12.2.1-26-s.js @@ -1,26 +1,24 @@ -/// 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.
-/**
- * @path ch12/12.2/12.2.1/12.2.1-26-s.js
- * @description eval as local var identifier throws SyntaxError in strict mode
- * @onlyStrict
- */
-
-
-
-
-function testcase() {
- 'use strict';
-
- try {
- eval('function foo() { var a, eval;}');
- return false;
- }
- catch (e) {
- return (e instanceof SyntaxError);
- }
-}
-runTestCase(testcase);
\ No newline at end of file +// 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. + +/*--- +description: eval as local var identifier throws SyntaxError in strict mode +flags: [onlyStrict] +includes: [runTestCase.js] +---*/ + +function testcase() { + 'use strict'; + + try { + eval('function foo() { var a, eval;}'); + return false; + } + catch (e) { + return (e instanceof SyntaxError); + } +} +runTestCase(testcase); diff --git a/test/suite/ch12/12.2/12.2.1/12.2.1-27-s.js b/test/suite/ch12/12.2/12.2.1/12.2.1-27-s.js index 8f08b1b2a..9ea776324 100644 --- a/test/suite/ch12/12.2/12.2.1/12.2.1-27-s.js +++ b/test/suite/ch12/12.2/12.2.1/12.2.1-27-s.js @@ -1,26 +1,26 @@ -/// 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.
-/**
- * @path ch12/12.2/12.2.1/12.2.1-27-s.js
- * @description eval as local var identifier assigned to throws SyntaxError in strict mode
- * @onlyStrict
- */
-
-
-
-
-function testcase() {
- 'use strict';
-
- try {
- eval('function foo() { var eval = 42, a;}');
- return false;
- }
- catch (e) {
- return (e instanceof SyntaxError);
- }
-}
-runTestCase(testcase);
\ No newline at end of file +// 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. + +/*--- +description: > + eval as local var identifier assigned to throws SyntaxError in + strict mode +flags: [onlyStrict] +includes: [runTestCase.js] +---*/ + +function testcase() { + 'use strict'; + + try { + eval('function foo() { var eval = 42, a;}'); + return false; + } + catch (e) { + return (e instanceof SyntaxError); + } +} +runTestCase(testcase); diff --git a/test/suite/ch12/12.2/12.2.1/12.2.1-28-s.js b/test/suite/ch12/12.2/12.2.1/12.2.1-28-s.js index ea6d73a0c..0f4271b3a 100644 --- a/test/suite/ch12/12.2/12.2.1/12.2.1-28-s.js +++ b/test/suite/ch12/12.2/12.2.1/12.2.1-28-s.js @@ -1,26 +1,26 @@ -/// 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.
-/**
- * @path ch12/12.2/12.2.1/12.2.1-28-s.js
- * @description arguments as local var identifier assigned to throws SyntaxError in strict mode
- * @onlyStrict
- */
-
-
-
-
-function testcase() {
- 'use strict';
-
- try {
- eval('function foo() { var a, arguments = 42;}');
- return false;
- }
- catch (e) {
- return (e instanceof SyntaxError);
- }
-}
-runTestCase(testcase);
\ No newline at end of file +// 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. + +/*--- +description: > + arguments as local var identifier assigned to throws SyntaxError + in strict mode +flags: [onlyStrict] +includes: [runTestCase.js] +---*/ + +function testcase() { + 'use strict'; + + try { + eval('function foo() { var a, arguments = 42;}'); + return false; + } + catch (e) { + return (e instanceof SyntaxError); + } +} +runTestCase(testcase); diff --git a/test/suite/ch12/12.2/12.2.1/12.2.1-29-s.js b/test/suite/ch12/12.2/12.2.1/12.2.1-29-s.js index 4b389d966..8c2548ac7 100644 --- a/test/suite/ch12/12.2/12.2.1/12.2.1-29-s.js +++ b/test/suite/ch12/12.2/12.2.1/12.2.1-29-s.js @@ -1,26 +1,24 @@ -/// 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.
-/**
- * @path ch12/12.2/12.2.1/12.2.1-29-s.js
- * @description eval as local var identifier throws SyntaxError in strict mode
- * @onlyStrict
- */
-
-
-
-
-function testcase() {
- 'use strict';
-
- try {
- eval('function foo() { var eval, a = 42;}');
- return false;
- }
- catch (e) {
- return (e instanceof SyntaxError);
- }
-}
-runTestCase(testcase);
\ No newline at end of file +// 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. + +/*--- +description: eval as local var identifier throws SyntaxError in strict mode +flags: [onlyStrict] +includes: [runTestCase.js] +---*/ + +function testcase() { + 'use strict'; + + try { + eval('function foo() { var eval, a = 42;}'); + return false; + } + catch (e) { + return (e instanceof SyntaxError); + } +} +runTestCase(testcase); diff --git a/test/suite/ch12/12.2/12.2.1/12.2.1-3-s.js b/test/suite/ch12/12.2/12.2.1/12.2.1-3-s.js index 6f207527e..6b439968c 100644 --- a/test/suite/ch12/12.2/12.2.1/12.2.1-3-s.js +++ b/test/suite/ch12/12.2/12.2.1/12.2.1-3-s.js @@ -1,24 +1,26 @@ -/// 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.
-/**
- * @path ch12/12.2/12.2.1/12.2.1-3-s.js
- * @description eval - a function expr declaring a var named 'eval' throws SyntaxError in strict mode
- * @onlyStrict
- */
-
-
-function testcase() {
- 'use strict';
-
- try {
- eval('(function () { var eval; })');
- return false;
- }
- catch (e) {
- return (e instanceof SyntaxError);
- }
- }
-runTestCase(testcase);
+// 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. + +/*--- +description: > + eval - a function expr declaring a var named 'eval' throws + SyntaxError in strict mode +flags: [onlyStrict] +includes: [runTestCase.js] +---*/ + +function testcase() { + 'use strict'; + + try { + eval('(function () { var eval; })'); + return false; + } + catch (e) { + return (e instanceof SyntaxError); + } + } +runTestCase(testcase); diff --git a/test/suite/ch12/12.2/12.2.1/12.2.1-30-s.js b/test/suite/ch12/12.2/12.2.1/12.2.1-30-s.js index 8998405d0..a654c4519 100644 --- a/test/suite/ch12/12.2/12.2.1/12.2.1-30-s.js +++ b/test/suite/ch12/12.2/12.2.1/12.2.1-30-s.js @@ -1,26 +1,24 @@ -/// 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.
-/**
- * @path ch12/12.2/12.2.1/12.2.1-30-s.js
- * @description arguments as local var identifier throws SyntaxError in strict mode
- * @onlyStrict
- */
-
-
-
-
-function testcase() {
- 'use strict';
-
- try {
- eval('function foo() { var a = 42, arguments;}');
- return false;
- }
- catch (e) {
- return (e instanceof SyntaxError);
- }
-}
-runTestCase(testcase);
\ No newline at end of file +// 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. + +/*--- +description: arguments as local var identifier throws SyntaxError in strict mode +flags: [onlyStrict] +includes: [runTestCase.js] +---*/ + +function testcase() { + 'use strict'; + + try { + eval('function foo() { var a = 42, arguments;}'); + return false; + } + catch (e) { + return (e instanceof SyntaxError); + } +} +runTestCase(testcase); diff --git a/test/suite/ch12/12.2/12.2.1/12.2.1-31-s.js b/test/suite/ch12/12.2/12.2.1/12.2.1-31-s.js index 305af43d2..9c0ea9ea2 100644 --- a/test/suite/ch12/12.2/12.2.1/12.2.1-31-s.js +++ b/test/suite/ch12/12.2/12.2.1/12.2.1-31-s.js @@ -1,26 +1,26 @@ -/// 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.
-/**
- * @path ch12/12.2/12.2.1/12.2.1-31-s.js
- * @description eval as local var identifier defined twice throws SyntaxError in strict mode
- * @onlyStrict
- */
-
-
-
-
-function testcase() {
- 'use strict';
-
- try {
- eval('function foo() { var eval, eval;}');
- return false;
- }
- catch (e) {
- return (e instanceof SyntaxError);
- }
-}
-runTestCase(testcase);
\ No newline at end of file +// 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. + +/*--- +description: > + eval as local var identifier defined twice throws SyntaxError in + strict mode +flags: [onlyStrict] +includes: [runTestCase.js] +---*/ + +function testcase() { + 'use strict'; + + try { + eval('function foo() { var eval, eval;}'); + return false; + } + catch (e) { + return (e instanceof SyntaxError); + } +} +runTestCase(testcase); diff --git a/test/suite/ch12/12.2/12.2.1/12.2.1-32-s.js b/test/suite/ch12/12.2/12.2.1/12.2.1-32-s.js index b68ecb63d..5074aae67 100644 --- a/test/suite/ch12/12.2/12.2.1/12.2.1-32-s.js +++ b/test/suite/ch12/12.2/12.2.1/12.2.1-32-s.js @@ -1,26 +1,26 @@ -/// 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.
-/**
- * @path ch12/12.2/12.2.1/12.2.1-32-s.js
- * @description arguments as local var identifier defined twice and assigned once throws SyntaxError in strict mode
- * @onlyStrict
- */
-
-
-
-
-function testcase() {
- 'use strict';
-
- try {
- eval('function foo() { var arguments, arguments = 42;}');
- return false;
- }
- catch (e) {
- return (e instanceof SyntaxError);
- }
-}
-runTestCase(testcase);
\ No newline at end of file +// 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. + +/*--- +description: > + arguments as local var identifier defined twice and assigned once + throws SyntaxError in strict mode +flags: [onlyStrict] +includes: [runTestCase.js] +---*/ + +function testcase() { + 'use strict'; + + try { + eval('function foo() { var arguments, arguments = 42;}'); + return false; + } + catch (e) { + return (e instanceof SyntaxError); + } +} +runTestCase(testcase); diff --git a/test/suite/ch12/12.2/12.2.1/12.2.1-33-s.js b/test/suite/ch12/12.2/12.2.1/12.2.1-33-s.js index 1a54c5e5b..6aed7ea0a 100644 --- a/test/suite/ch12/12.2/12.2.1/12.2.1-33-s.js +++ b/test/suite/ch12/12.2/12.2.1/12.2.1-33-s.js @@ -1,26 +1,24 @@ -/// 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.
-/**
- * @path ch12/12.2/12.2.1/12.2.1-33-s.js
- * @description arguments as local var identifier throws SyntaxError in strict mode
- * @onlyStrict
- */
-
-
-
-
-function testcase() {
- 'use strict';
-
- try {
- eval('function foo() { var a, arguments, b;}');
- return false;
- }
- catch (e) {
- return (e instanceof SyntaxError);
- }
-}
-runTestCase(testcase);
\ No newline at end of file +// 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. + +/*--- +description: arguments as local var identifier throws SyntaxError in strict mode +flags: [onlyStrict] +includes: [runTestCase.js] +---*/ + +function testcase() { + 'use strict'; + + try { + eval('function foo() { var a, arguments, b;}'); + return false; + } + catch (e) { + return (e instanceof SyntaxError); + } +} +runTestCase(testcase); diff --git a/test/suite/ch12/12.2/12.2.1/12.2.1-34-s.js b/test/suite/ch12/12.2/12.2.1/12.2.1-34-s.js index c41cb67a6..c07b55639 100644 --- a/test/suite/ch12/12.2/12.2.1/12.2.1-34-s.js +++ b/test/suite/ch12/12.2/12.2.1/12.2.1-34-s.js @@ -1,24 +1,24 @@ -/// 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.
-/**
- * @path ch12/12.2/12.2.1/12.2.1-34-s.js
- * @description 'for(var eval in ...) {...}' throws SyntaxError in strict mode
- * @onlyStrict
- */
-
-
-function testcase() {
- 'use strict';
-
- try {
- eval('for (var eval in null) {};');
- return false;
- }
- catch (e) {
- return (e instanceof SyntaxError);
- }
- }
-runTestCase(testcase);
+// 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. + +/*--- +description: "'for(var eval in ...) {...}' throws SyntaxError in strict mode" +flags: [onlyStrict] +includes: [runTestCase.js] +---*/ + +function testcase() { + 'use strict'; + + try { + eval('for (var eval in null) {};'); + return false; + } + catch (e) { + return (e instanceof SyntaxError); + } + } +runTestCase(testcase); diff --git a/test/suite/ch12/12.2/12.2.1/12.2.1-35-s.js b/test/suite/ch12/12.2/12.2.1/12.2.1-35-s.js index 41eaacabf..c13914cc4 100644 --- a/test/suite/ch12/12.2/12.2.1/12.2.1-35-s.js +++ b/test/suite/ch12/12.2/12.2.1/12.2.1-35-s.js @@ -1,24 +1,24 @@ -/// 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.
-/**
- * @path ch12/12.2/12.2.1/12.2.1-35-s.js
- * @description 'for(var eval = 42 in ...) {...}' throws SyntaxError in strict mode
- * @onlyStrict
- */
-
-
-function testcase() {
- 'use strict';
-
- try {
- eval('for (var eval = 42 in null) {};');
- return false;
- }
- catch (e) {
- return (e instanceof SyntaxError);
- }
- }
-runTestCase(testcase);
+// 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. + +/*--- +description: "'for(var eval = 42 in ...) {...}' throws SyntaxError in strict mode" +flags: [onlyStrict] +includes: [runTestCase.js] +---*/ + +function testcase() { + 'use strict'; + + try { + eval('for (var eval = 42 in null) {};'); + return false; + } + catch (e) { + return (e instanceof SyntaxError); + } + } +runTestCase(testcase); diff --git a/test/suite/ch12/12.2/12.2.1/12.2.1-36-s.js b/test/suite/ch12/12.2/12.2.1/12.2.1-36-s.js index f33169483..3283e9231 100644 --- a/test/suite/ch12/12.2/12.2.1/12.2.1-36-s.js +++ b/test/suite/ch12/12.2/12.2.1/12.2.1-36-s.js @@ -1,24 +1,24 @@ -/// 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.
-/**
- * @path ch12/12.2/12.2.1/12.2.1-36-s.js
- * @description 'for(var arguments in ...) {...}' throws SyntaxError in strict mode
- * @onlyStrict
- */
-
-
-function testcase() {
- 'use strict';
-
- try {
- eval('for (var arguments in null) {};');
- return false;
- }
- catch (e) {
- return (e instanceof SyntaxError);
- }
- }
-runTestCase(testcase);
+// 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. + +/*--- +description: "'for(var arguments in ...) {...}' throws SyntaxError in strict mode" +flags: [onlyStrict] +includes: [runTestCase.js] +---*/ + +function testcase() { + 'use strict'; + + try { + eval('for (var arguments in null) {};'); + return false; + } + catch (e) { + return (e instanceof SyntaxError); + } + } +runTestCase(testcase); diff --git a/test/suite/ch12/12.2/12.2.1/12.2.1-37-s.js b/test/suite/ch12/12.2/12.2.1/12.2.1-37-s.js index 2a134a665..d147d337d 100644 --- a/test/suite/ch12/12.2/12.2.1/12.2.1-37-s.js +++ b/test/suite/ch12/12.2/12.2.1/12.2.1-37-s.js @@ -1,24 +1,26 @@ -/// 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.
-/**
- * @path ch12/12.2/12.2.1/12.2.1-37-s.js
- * @description 'for(var arguments = 42 in ...) {...}' throws SyntaxError in strict mode
- * @onlyStrict
- */
-
-
-function testcase() {
- 'use strict';
-
- try {
- eval('for (var arguments = 42 in null) {};');
- return false;
- }
- catch (e) {
- return (e instanceof SyntaxError);
- }
- }
-runTestCase(testcase);
+// 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. + +/*--- +description: > + 'for(var arguments = 42 in ...) {...}' throws SyntaxError in + strict mode +flags: [onlyStrict] +includes: [runTestCase.js] +---*/ + +function testcase() { + 'use strict'; + + try { + eval('for (var arguments = 42 in null) {};'); + return false; + } + catch (e) { + return (e instanceof SyntaxError); + } + } +runTestCase(testcase); diff --git a/test/suite/ch12/12.2/12.2.1/12.2.1-4-s.js b/test/suite/ch12/12.2/12.2.1/12.2.1-4-s.js index 2eef4faaa..b33df3564 100644 --- a/test/suite/ch12/12.2/12.2.1/12.2.1-4-s.js +++ b/test/suite/ch12/12.2/12.2.1/12.2.1-4-s.js @@ -1,24 +1,26 @@ -/// 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.
-/**
- * @path ch12/12.2/12.2.1/12.2.1-4-s.js
- * @description eval - a function expr assigning into 'eval' throws a SyntaxError in strict mode
- * @onlyStrict
- */
-
-
-function testcase() {
- 'use strict';
-
- try {
- eval('(function () { eval = 42; })()');
- return false;
- }
- catch (e) {
- return (e instanceof SyntaxError);
- }
- }
-runTestCase(testcase);
+// 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. + +/*--- +description: > + eval - a function expr assigning into 'eval' throws a SyntaxError + in strict mode +flags: [onlyStrict] +includes: [runTestCase.js] +---*/ + +function testcase() { + 'use strict'; + + try { + eval('(function () { eval = 42; })()'); + return false; + } + catch (e) { + return (e instanceof SyntaxError); + } + } +runTestCase(testcase); diff --git a/test/suite/ch12/12.2/12.2.1/12.2.1-4gs.js b/test/suite/ch12/12.2/12.2.1/12.2.1-4gs.js index add5e144d..0381cbf1f 100644 --- a/test/suite/ch12/12.2/12.2.1/12.2.1-4gs.js +++ b/test/suite/ch12/12.2/12.2.1/12.2.1-4gs.js @@ -1,14 +1,17 @@ -/// 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.
-/**
- * @path ch12/12.2/12.2.1/12.2.1-4gs.js
- * @description Strict Mode - SyntaxError is thrown if a VariableDeclarationNoIn occurs within strict code and its Identifier is arguments
- * @onlyStrict
- * @negative ^((?!NotEarlyError).)*$
- */
-"use strict";
-throw NotEarlyError;
-var arguments;
\ No newline at end of file +// 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. + +/*--- +description: > + Strict Mode - SyntaxError is thrown if a VariableDeclarationNoIn + occurs within strict code and its Identifier is arguments +negative: ^((?!NotEarlyError).)*$ +flags: [onlyStrict] +---*/ + +"use strict"; +throw NotEarlyError; +var arguments; diff --git a/test/suite/ch12/12.2/12.2.1/12.2.1-5-s.js b/test/suite/ch12/12.2/12.2.1/12.2.1-5-s.js index 8644c4a20..9b80b2d16 100644 --- a/test/suite/ch12/12.2/12.2.1/12.2.1-5-s.js +++ b/test/suite/ch12/12.2/12.2.1/12.2.1-5-s.js @@ -1,18 +1,20 @@ -/// 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.
-/**
- * @path ch12/12.2/12.2.1/12.2.1-5-s.js
- * @description Strict Mode - a Function declaring var named 'eval' does not throw SyntaxError
- * @onlyStrict
- */
-
-
-function testcase() {
- 'use strict';
- Function('var eval;');
- return true;
- }
-runTestCase(testcase);
+// 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. + +/*--- +description: > + Strict Mode - a Function declaring var named 'eval' does not throw + SyntaxError +flags: [onlyStrict] +includes: [runTestCase.js] +---*/ + +function testcase() { + 'use strict'; + Function('var eval;'); + return true; + } +runTestCase(testcase); diff --git a/test/suite/ch12/12.2/12.2.1/12.2.1-6-s.js b/test/suite/ch12/12.2/12.2.1/12.2.1-6-s.js index 2db1c2bf8..64a5d3e6f 100644 --- a/test/suite/ch12/12.2/12.2.1/12.2.1-6-s.js +++ b/test/suite/ch12/12.2/12.2.1/12.2.1-6-s.js @@ -1,20 +1,23 @@ -/// 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.
-/**
- * @path ch12/12.2/12.2.1/12.2.1-6-s.js
- * @description eval - a Function assigning into 'eval' will not throw any error if contained within strict mode and its body does not start with strict mode
- * @onlyStrict
- */
-
-
-function testcase() {
- 'use strict';
-
- var f = Function('eval = 42;');
- f();
- return true;
- }
-runTestCase(testcase);
+// 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. + +/*--- +description: > + eval - a Function assigning into 'eval' will not throw any error + if contained within strict mode and its body does not start with + strict mode +flags: [onlyStrict] +includes: [runTestCase.js] +---*/ + +function testcase() { + 'use strict'; + + var f = Function('eval = 42;'); + f(); + return true; + } +runTestCase(testcase); diff --git a/test/suite/ch12/12.2/12.2.1/12.2.1-7-s.js b/test/suite/ch12/12.2/12.2.1/12.2.1-7-s.js index fec5ae659..4554aa888 100644 --- a/test/suite/ch12/12.2/12.2.1/12.2.1-7-s.js +++ b/test/suite/ch12/12.2/12.2.1/12.2.1-7-s.js @@ -1,24 +1,26 @@ -/// 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.
-/**
- * @path ch12/12.2/12.2.1/12.2.1-7-s.js
- * @description eval - a direct eval declaring a var named 'eval' throws SyntaxError in strict mode
- * @onlyStrict
- */
-
-
-function testcase() {
- 'use strict';
-
- try {
- eval('var eval;');
- return false;
- }
- catch (e) {
- return (e instanceof SyntaxError);
- }
- }
-runTestCase(testcase);
+// 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. + +/*--- +description: > + eval - a direct eval declaring a var named 'eval' throws + SyntaxError in strict mode +flags: [onlyStrict] +includes: [runTestCase.js] +---*/ + +function testcase() { + 'use strict'; + + try { + eval('var eval;'); + return false; + } + catch (e) { + return (e instanceof SyntaxError); + } + } +runTestCase(testcase); diff --git a/test/suite/ch12/12.2/12.2.1/12.2.1-8-s.js b/test/suite/ch12/12.2/12.2.1/12.2.1-8-s.js index 385808d44..1f01ffff8 100644 --- a/test/suite/ch12/12.2/12.2.1/12.2.1-8-s.js +++ b/test/suite/ch12/12.2/12.2.1/12.2.1-8-s.js @@ -1,24 +1,26 @@ -/// 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.
-/**
- * @path ch12/12.2/12.2.1/12.2.1-8-s.js
- * @description eval - a direct eval assigning into 'eval' throws SyntaxError in strict mode
- * @onlyStrict
- */
-
-
-function testcase() {
- 'use strict';
-
- try {
- eval('eval = 42;');
- return false;
- }
- catch (e) {
- return (e instanceof SyntaxError) ;
- }
- }
-runTestCase(testcase);
+// 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. + +/*--- +description: > + eval - a direct eval assigning into 'eval' throws SyntaxError in + strict mode +flags: [onlyStrict] +includes: [runTestCase.js] +---*/ + +function testcase() { + 'use strict'; + + try { + eval('eval = 42;'); + return false; + } + catch (e) { + return (e instanceof SyntaxError) ; + } + } +runTestCase(testcase); diff --git a/test/suite/ch12/12.2/12.2.1/12.2.1-9-s.js b/test/suite/ch12/12.2/12.2.1/12.2.1-9-s.js index 6479cc174..5befdf6d3 100644 --- a/test/suite/ch12/12.2/12.2.1/12.2.1-9-s.js +++ b/test/suite/ch12/12.2/12.2.1/12.2.1-9-s.js @@ -1,19 +1,21 @@ -/// 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.
-/**
- * @path ch12/12.2/12.2.1/12.2.1-9-s.js
- * @description Strict Mode: an indirect eval declaring a var named 'eval' does not throw
- * @onlyStrict
- */
-
-
-function testcase() {
- 'use strict';
- var s = eval;
- s('var eval;');
- return true;
- }
-runTestCase(testcase);
+// 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. + +/*--- +description: > + Strict Mode: an indirect eval declaring a var named 'eval' does + not throw +flags: [onlyStrict] +includes: [runTestCase.js] +---*/ + +function testcase() { + 'use strict'; + var s = eval; + s('var eval;'); + return true; + } +runTestCase(testcase); diff --git a/test/suite/ch12/12.2/S12.2_A1.js b/test/suite/ch12/12.2/S12.2_A1.js index 520daebf5..40294a081 100644 --- a/test/suite/ch12/12.2/S12.2_A1.js +++ b/test/suite/ch12/12.2/S12.2_A1.js @@ -1,14 +1,14 @@ // Copyright 2009 the Sputnik authors. All rights reserved. // This code is governed by the BSD license found in the LICENSE file. -/** - * Variables are created when the program is entered. Variables are initialised to "undefined" - * when created. A variable with an Initialiser is assigned the value of its AssignmentExpression when the - * VariableStatement is executed, not when the variable is created - * - * @path ch12/12.2/S12.2_A1.js - * @description Creating variables after entering the execution scope - */ +/*--- +info: > + Variables are created when the program is entered. Variables are initialised to "undefined" + when created. A variable with an Initialiser is assigned the value of its AssignmentExpression when the + VariableStatement is executed, not when the variable is created +description: Creating variables after entering the execution scope +includes: [$PRINT.js] +---*/ ////////////////////////////////////////////////////////////////////////////// //CHECK#1 @@ -50,4 +50,3 @@ if (!__y&!(__z = "smeagol")) { } // ////////////////////////////////////////////////////////////////////////////// - diff --git a/test/suite/ch12/12.2/S12.2_A10.js b/test/suite/ch12/12.2/S12.2_A10.js index b85f957b2..d48fe62fe 100644 --- a/test/suite/ch12/12.2/S12.2_A10.js +++ b/test/suite/ch12/12.2/S12.2_A10.js @@ -1,12 +1,10 @@ // Copyright 2009 the Sputnik authors. All rights reserved. // This code is governed by the BSD license found in the LICENSE file. -/** - * "var" statement within "for" statement is allowed - * - * @path ch12/12.2/S12.2_A10.js - * @description Declaring variable within a "for" IterationStatement - */ +/*--- +info: "\"var\" statement within \"for\" statement is allowed" +description: Declaring variable within a "for" IterationStatement +---*/ ////////////////////////////////////////////////////////////////////////////// //CHECK#1 @@ -21,4 +19,3 @@ try { for (var __ind;;){ break; } - diff --git a/test/suite/ch12/12.2/S12.2_A11.js b/test/suite/ch12/12.2/S12.2_A11.js index 392d4e74b..9641c113b 100644 --- a/test/suite/ch12/12.2/S12.2_A11.js +++ b/test/suite/ch12/12.2/S12.2_A11.js @@ -1,12 +1,10 @@ // Copyright 2009 the Sputnik authors. All rights reserved. // This code is governed by the BSD license found in the LICENSE file. -/** - * When using property attributes, {ReadOnly} is not used - * - * @path ch12/12.2/S12.2_A11.js - * @description Changing variable value using property attributes - */ +/*--- +info: When using property attributes, {ReadOnly} is not used +description: Changing variable value using property attributes +---*/ ////////////////////////////////////////////////////////////////////////////// //CHECK#1 @@ -26,4 +24,3 @@ if (__declared__var !== "baloon") { ////////////////////////////////////////////////////////////////////////////// var __declared__var; - diff --git a/test/suite/ch12/12.2/S12.2_A12.js b/test/suite/ch12/12.2/S12.2_A12.js index d69e27539..f03a6412b 100644 --- a/test/suite/ch12/12.2/S12.2_A12.js +++ b/test/suite/ch12/12.2/S12.2_A12.js @@ -1,12 +1,10 @@ // Copyright 2009 the Sputnik authors. All rights reserved. // This code is governed by the BSD license found in the LICENSE file. -/** - * VariableDeclaration within "do-while" loop is allowed - * - * @path ch12/12.2/S12.2_A12.js - * @description Declaring variable within "do-while" statement - */ +/*--- +info: VariableDeclaration within "do-while" loop is allowed +description: Declaring variable within "do-while" statement +---*/ ////////////////////////////////////////////////////////////////////////////// //CHECK#1 @@ -19,4 +17,3 @@ try { ////////////////////////////////////////////////////////////////////////////// do var x; while (false); - diff --git a/test/suite/ch12/12.2/S12.2_A2.js b/test/suite/ch12/12.2/S12.2_A2.js index 5f7de5abc..bdbaa0eed 100644 --- a/test/suite/ch12/12.2/S12.2_A2.js +++ b/test/suite/ch12/12.2/S12.2_A2.js @@ -1,12 +1,15 @@ // Copyright 2009 the Sputnik authors. All rights reserved. // This code is governed by the BSD license found in the LICENSE file. -/** - * Variables are defined with global scope (that is, they are created as members of the global object, as described in 10.1.3) using property attributes { DontDelete} - * - * @path ch12/12.2/S12.2_A2.js - * @description Checking if deleting global variables that have the attributes {DontDelete} fails - */ +/*--- +info: > + Variables are defined with global scope (that is, they are created as + members of the global object, as described in 10.1.3) using property + attributes { DontDelete} +description: > + Checking if deleting global variables that have the attributes + {DontDelete} fails +---*/ ////////////////////////////////////////////////////////////////////////////// //CHECK#1 @@ -43,5 +46,3 @@ if ((__variable !== "defined")|(this["__variable"] !=="defined")) { } // ////////////////////////////////////////////////////////////////////////////// - - diff --git a/test/suite/ch12/12.2/S12.2_A3.js b/test/suite/ch12/12.2/S12.2_A3.js index 5c0845ad2..11ef08907 100644 --- a/test/suite/ch12/12.2/S12.2_A3.js +++ b/test/suite/ch12/12.2/S12.2_A3.js @@ -1,12 +1,10 @@ // Copyright 2009 the Sputnik authors. All rights reserved. // This code is governed by the BSD license found in the LICENSE file. -/** - * FunctionDeclaration produces a new scope - * - * @path ch12/12.2/S12.2_A3.js - * @description Using Global scope and Function scope together - */ +/*--- +info: FunctionDeclaration produces a new scope +description: Using Global scope and Function scope together +---*/ var __var = "OUT"; @@ -52,4 +50,3 @@ if (__var!=="INNERED") { } // ////////////////////////////////////////////////////////////////////////////// - diff --git a/test/suite/ch12/12.2/S12.2_A4.js b/test/suite/ch12/12.2/S12.2_A4.js index 17f5c6a87..224a25687 100644 --- a/test/suite/ch12/12.2/S12.2_A4.js +++ b/test/suite/ch12/12.2/S12.2_A4.js @@ -1,12 +1,10 @@ // Copyright 2009 the Sputnik authors. All rights reserved. // This code is governed by the BSD license found in the LICENSE file. -/** - * Unicode characters in variable Identifier are allowed - * - * @path ch12/12.2/S12.2_A4.js - * @description Create and use unicode characters in variable Identifier - */ +/*--- +info: Unicode characters in variable Identifier are allowed +description: Create and use unicode characters in variable Identifier +---*/ ////////////////////////////////////////////////////////////////////////////// //CHECK#1 @@ -27,4 +25,3 @@ if (__var !== 1) { } // ////////////////////////////////////////////////////////////////////////////// - diff --git a/test/suite/ch12/12.2/S12.2_A5.js b/test/suite/ch12/12.2/S12.2_A5.js index c168bfd2b..9c1bd6631 100644 --- a/test/suite/ch12/12.2/S12.2_A5.js +++ b/test/suite/ch12/12.2/S12.2_A5.js @@ -1,12 +1,13 @@ // Copyright 2009 the Sputnik authors. All rights reserved. // This code is governed by the BSD license found in the LICENSE file. -/** - * VariableDeclaration within Eval statement is initialized as the program reaches the eval statement - * - * @path ch12/12.2/S12.2_A5.js - * @description Executing eval("var x") - */ +/*--- +info: > + VariableDeclaration within Eval statement is initialized as the program + reaches the eval statement +description: Executing eval("var x") +includes: [$PRINT.js] +---*/ ////////////////////////////////////////////////////////////////////////////// //CHECK#1 @@ -30,4 +31,3 @@ try{ }; // ////////////////////////////////////////////////////////////////////////////// - diff --git a/test/suite/ch12/12.2/S12.2_A6_T1.js b/test/suite/ch12/12.2/S12.2_A6_T1.js index 34e7f0e7a..825751e8f 100644 --- a/test/suite/ch12/12.2/S12.2_A6_T1.js +++ b/test/suite/ch12/12.2/S12.2_A6_T1.js @@ -1,12 +1,10 @@ // Copyright 2009 the Sputnik authors. All rights reserved. // This code is governed by the BSD license found in the LICENSE file. -/** - * VariableDeclaration within "try-catch" statement is allowed - * - * @path ch12/12.2/S12.2_A6_T1.js - * @description Declaring variable within "try-catch" statement - */ +/*--- +info: VariableDeclaration within "try-catch" statement is allowed +description: Declaring variable within "try-catch" statement +---*/ ////////////////////////////////////////////////////////////////////////////// //CHECK#1 @@ -33,4 +31,3 @@ try{ }catch(e){ var incatch__var; }; - diff --git a/test/suite/ch12/12.2/S12.2_A6_T2.js b/test/suite/ch12/12.2/S12.2_A6_T2.js index 4b586e0ab..aa725a01a 100644 --- a/test/suite/ch12/12.2/S12.2_A6_T2.js +++ b/test/suite/ch12/12.2/S12.2_A6_T2.js @@ -1,12 +1,10 @@ // Copyright 2009 the Sputnik authors. All rights reserved. // This code is governed by the BSD license found in the LICENSE file. -/** - * VariableDeclaration within "try-catch" statement is allowed - * - * @path ch12/12.2/S12.2_A6_T2.js - * @description Declaring variables within "try-catch" statement - */ +/*--- +info: VariableDeclaration within "try-catch" statement is allowed +description: Declaring variables within "try-catch" statement +---*/ ////////////////////////////////////////////////////////////////////////////// //CHECK#1 @@ -35,4 +33,3 @@ try{ } }; - diff --git a/test/suite/ch12/12.2/S12.2_A7.js b/test/suite/ch12/12.2/S12.2_A7.js index 167355a9f..76ca62e7a 100644 --- a/test/suite/ch12/12.2/S12.2_A7.js +++ b/test/suite/ch12/12.2/S12.2_A7.js @@ -1,12 +1,10 @@ // Copyright 2009 the Sputnik authors. All rights reserved. // This code is governed by the BSD license found in the LICENSE file. -/** - * VariableDeclaration within "for" statement is allowed - * - * @path ch12/12.2/S12.2_A7.js - * @description Declaring variable within "for" statement - */ +/*--- +info: VariableDeclaration within "for" statement is allowed +description: Declaring variable within "for" statement +---*/ ////////////////////////////////////////////////////////////////////////////// //CHECK#1 @@ -22,4 +20,3 @@ for (;;){ break; var infor_var; } - diff --git a/test/suite/ch12/12.2/S12.2_A8_T1.js b/test/suite/ch12/12.2/S12.2_A8_T1.js index c9466b665..161ebfea0 100644 --- a/test/suite/ch12/12.2/S12.2_A8_T1.js +++ b/test/suite/ch12/12.2/S12.2_A8_T1.js @@ -1,17 +1,14 @@ // Copyright 2009 the Sputnik authors. All rights reserved. // This code is governed by the BSD license found in the LICENSE file. -/** - * Only AssignmentExpression is admitted when variable is initialized - * - * @path ch12/12.2/S12.2_A8_T1.js - * @description Checking if execution of "var x += 1" fails - * @negative - */ +/*--- +info: Only AssignmentExpression is admitted when variable is initialized +description: Checking if execution of "var x += 1" fails +flags: [negative] +---*/ ////////////////////////////////////////////////////////////////////////////// //CHECK#1 var x += 1; // ////////////////////////////////////////////////////////////////////////////// - diff --git a/test/suite/ch12/12.2/S12.2_A8_T2.js b/test/suite/ch12/12.2/S12.2_A8_T2.js index f5b9edc5f..69f173008 100644 --- a/test/suite/ch12/12.2/S12.2_A8_T2.js +++ b/test/suite/ch12/12.2/S12.2_A8_T2.js @@ -1,17 +1,14 @@ // Copyright 2009 the Sputnik authors. All rights reserved. // This code is governed by the BSD license found in the LICENSE file. -/** - * Only AssignmentExpression is admitted when variable is initialized - * - * @path ch12/12.2/S12.2_A8_T2.js - * @description Checking if execution of "var x | true" fails - * @negative - */ +/*--- +info: Only AssignmentExpression is admitted when variable is initialized +description: Checking if execution of "var x | true" fails +flags: [negative] +---*/ ////////////////////////////////////////////////////////////////////////////// //CHECK#1 var x | true; // ////////////////////////////////////////////////////////////////////////////// - diff --git a/test/suite/ch12/12.2/S12.2_A8_T3.js b/test/suite/ch12/12.2/S12.2_A8_T3.js index 4272e5c1b..726faa8fe 100644 --- a/test/suite/ch12/12.2/S12.2_A8_T3.js +++ b/test/suite/ch12/12.2/S12.2_A8_T3.js @@ -1,17 +1,14 @@ // Copyright 2009 the Sputnik authors. All rights reserved. // This code is governed by the BSD license found in the LICENSE file. -/** - * Only AssignmentExpression is admitted when variable is initialized - * - * @path ch12/12.2/S12.2_A8_T3.js - * @description Checking if execution of "var x && 1" fails - * @negative - */ +/*--- +info: Only AssignmentExpression is admitted when variable is initialized +description: Checking if execution of "var x && 1" fails +flags: [negative] +---*/ ////////////////////////////////////////////////////////////////////////////// //CHECK#1 var x && 1; // ////////////////////////////////////////////////////////////////////////////// - diff --git a/test/suite/ch12/12.2/S12.2_A8_T4.js b/test/suite/ch12/12.2/S12.2_A8_T4.js index 1f4641770..ae8601f10 100644 --- a/test/suite/ch12/12.2/S12.2_A8_T4.js +++ b/test/suite/ch12/12.2/S12.2_A8_T4.js @@ -1,17 +1,14 @@ // Copyright 2009 the Sputnik authors. All rights reserved. // This code is governed by the BSD license found in the LICENSE file. -/** - * Only AssignmentExpression is admitted when variable is initialized - * - * @path ch12/12.2/S12.2_A8_T4.js - * @description Checking if execution of "var x++" fails - * @negative - */ +/*--- +info: Only AssignmentExpression is admitted when variable is initialized +description: Checking if execution of "var x++" fails +flags: [negative] +---*/ ////////////////////////////////////////////////////////////////////////////// //CHECK#1 var x++; // ////////////////////////////////////////////////////////////////////////////// - diff --git a/test/suite/ch12/12.2/S12.2_A8_T5.js b/test/suite/ch12/12.2/S12.2_A8_T5.js index 1c414f6dd..6e0e2279b 100644 --- a/test/suite/ch12/12.2/S12.2_A8_T5.js +++ b/test/suite/ch12/12.2/S12.2_A8_T5.js @@ -1,17 +1,14 @@ // Copyright 2009 the Sputnik authors. All rights reserved. // This code is governed by the BSD license found in the LICENSE file. -/** - * Only AssignmentExpression is admitted when variable is initialized - * - * @path ch12/12.2/S12.2_A8_T5.js - * @description Checking if execution of "var --x" fails - * @negative - */ +/*--- +info: Only AssignmentExpression is admitted when variable is initialized +description: Checking if execution of "var --x" fails +flags: [negative] +---*/ ////////////////////////////////////////////////////////////////////////////// //CHECK#1 var --x; // ////////////////////////////////////////////////////////////////////////////// - diff --git a/test/suite/ch12/12.2/S12.2_A8_T6.js b/test/suite/ch12/12.2/S12.2_A8_T6.js index c763f07aa..4d72fa326 100644 --- a/test/suite/ch12/12.2/S12.2_A8_T6.js +++ b/test/suite/ch12/12.2/S12.2_A8_T6.js @@ -1,18 +1,14 @@ // Copyright 2009 the Sputnik authors. All rights reserved. // This code is governed by the BSD license found in the LICENSE file. -/** - * Only AssignmentExpression is admitted when variable is initialized - * - * @path ch12/12.2/S12.2_A8_T6.js - * @description Checking if execution of "var x*1" fails - * @negative - */ +/*--- +info: Only AssignmentExpression is admitted when variable is initialized +description: Checking if execution of "var x*1" fails +flags: [negative] +---*/ ////////////////////////////////////////////////////////////////////////////// //CHECK#1 var x*1; // ////////////////////////////////////////////////////////////////////////////// - - diff --git a/test/suite/ch12/12.2/S12.2_A8_T7.js b/test/suite/ch12/12.2/S12.2_A8_T7.js index 86d1c3398..5a173c6db 100644 --- a/test/suite/ch12/12.2/S12.2_A8_T7.js +++ b/test/suite/ch12/12.2/S12.2_A8_T7.js @@ -1,18 +1,14 @@ // Copyright 2009 the Sputnik authors. All rights reserved. // This code is governed by the BSD license found in the LICENSE file. -/** - * Only AssignmentExpression is admitted when variable is initialized - * - * @path ch12/12.2/S12.2_A8_T7.js - * @description Checking if execution of "var x>>1" fails - * @negative - */ +/*--- +info: Only AssignmentExpression is admitted when variable is initialized +description: Checking if execution of "var x>>1" fails +flags: [negative] +---*/ ////////////////////////////////////////////////////////////////////////////// //CHECK#1 var x>>1; // ////////////////////////////////////////////////////////////////////////////// - - diff --git a/test/suite/ch12/12.2/S12.2_A8_T8.js b/test/suite/ch12/12.2/S12.2_A8_T8.js index d798757d6..5b89a750e 100644 --- a/test/suite/ch12/12.2/S12.2_A8_T8.js +++ b/test/suite/ch12/12.2/S12.2_A8_T8.js @@ -1,13 +1,11 @@ // Copyright 2009 the Sputnik authors. All rights reserved. // This code is governed by the BSD license found in the LICENSE file. -/** - * Only AssignmentExpression is admitted when variable is initialized - * - * @path ch12/12.2/S12.2_A8_T8.js - * @description Checking if execution of "var x in __arr" fails - * @negative - */ +/*--- +info: Only AssignmentExpression is admitted when variable is initialized +description: Checking if execution of "var x in __arr" fails +flags: [negative] +---*/ __arr = []; @@ -16,5 +14,3 @@ __arr = []; var x in __arr; // ////////////////////////////////////////////////////////////////////////////// - - diff --git a/test/suite/ch12/12.2/S12.2_A9.js b/test/suite/ch12/12.2/S12.2_A9.js index 261599a65..3d6eeebcb 100644 --- a/test/suite/ch12/12.2/S12.2_A9.js +++ b/test/suite/ch12/12.2/S12.2_A9.js @@ -1,12 +1,12 @@ // Copyright 2009 the Sputnik authors. All rights reserved. // This code is governed by the BSD license found in the LICENSE file. -/** - * When using property attributes, {DontEnum} is not used - * - * @path ch12/12.2/S12.2_A9.js - * @description Enumerating property attributes of "this" and then searching for the declared variable - */ +/*--- +info: When using property attributes, {DontEnum} is not used +description: > + Enumerating property attributes of "this" and then searching for + the declared variable +---*/ ////////////////////////////////////////////////////////////////////////////// //CHECK#1 @@ -21,4 +21,3 @@ if (!(enumed)) { ////////////////////////////////////////////////////////////////////////////// var __declared__var; - |