diff options
Diffstat (limited to 'test/suite/ch15/15.3/15.3.5')
132 files changed, 2589 insertions, 2508 deletions
diff --git a/test/suite/ch15/15.3/15.3.5/15.3.5-1gs.js b/test/suite/ch15/15.3/15.3.5/15.3.5-1gs.js index 87e1cf11d..d9b4ca9de 100644 --- a/test/suite/ch15/15.3/15.3.5/15.3.5-1gs.js +++ b/test/suite/ch15/15.3/15.3.5/15.3.5-1gs.js @@ -1,18 +1,18 @@ -/// 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 ch15/15.3/15.3.5/15.3.5-1gs.js
- * @description StrictMode - error is thrown when reading the 'caller' property of a function object
- * @onlyStrict
- * @negative NotEarlyError
- */
-
-"use strict";
-function _15_3_5_1_gs() {}
-throw NotEarlyError;
-_15_3_5_1_gs.caller;
-
+// 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: > + StrictMode - error is thrown when reading the 'caller' property of + a function object +negative: NotEarlyError +flags: [onlyStrict] +---*/ + +"use strict"; +function _15_3_5_1_gs() {} +throw NotEarlyError; +_15_3_5_1_gs.caller; diff --git a/test/suite/ch15/15.3/15.3.5/15.3.5-2gs.js b/test/suite/ch15/15.3/15.3.5/15.3.5-2gs.js index c173e4413..41de01f99 100644 --- a/test/suite/ch15/15.3/15.3.5/15.3.5-2gs.js +++ b/test/suite/ch15/15.3/15.3.5/15.3.5-2gs.js @@ -1,17 +1,18 @@ -/// 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 ch15/15.3/15.3.5/15.3.5-2gs.js
- * @description StrictMode - error is thrown when reading the 'caller' property of a function object
- * @onlyStrict
- * @negative ^((?!NotEarlyError).)*$
- */
-
-"use strict";
-function _15_3_5_1_gs() {}
-_15_3_5_1_gs.caller;
-throw NotEarlyError;
+// 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: > + StrictMode - error is thrown when reading the 'caller' property of + a function object +negative: ^((?!NotEarlyError).)*$ +flags: [onlyStrict] +---*/ + +"use strict"; +function _15_3_5_1_gs() {} +_15_3_5_1_gs.caller; +throw NotEarlyError; diff --git a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-10gs.js b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-10gs.js index e4709e980..c7d301c62 100644 --- a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-10gs.js +++ b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-10gs.js @@ -1,21 +1,22 @@ -/// 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 ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-10gs.js
- * @description Strict mode - checking access to strict function caller from non-strict function (New'ed Function constructor includes strict directive prologue)
- * @noStrict
- * @negative TypeError
- */
-
-
-var f = new Function("\"use strict\";\nreturn gNonStrict();");
-f();
-
-
-function gNonStrict() {
- return gNonStrict.caller || gNonStrict.caller.throwTypeError;
-}
-
+// 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 - checking access to strict function caller from + non-strict function (New'ed Function constructor includes strict + directive prologue) +negative: TypeError +flags: [noStrict] +---*/ + +var f = new Function("\"use strict\";\nreturn gNonStrict();"); +f(); + + +function gNonStrict() { + return gNonStrict.caller || gNonStrict.caller.throwTypeError; +} diff --git a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-11gs.js b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-11gs.js index e36af1df9..634f7dcd3 100644 --- a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-11gs.js +++ b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-11gs.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 ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-11gs.js
- * @description Strict mode - checking access to strict function caller from strict function (eval used within strict mode)
- * @onlyStrict
- * @negative TypeError
- */
-
-
-"use strict";
-eval("gNonStrict();");
-
-
-function gNonStrict() {
- return gNonStrict.caller;
-}
-
+// 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 - checking access to strict function caller from + strict function (eval used within strict mode) +negative: TypeError +flags: [onlyStrict] +---*/ + +"use strict"; +eval("gNonStrict();"); + + +function gNonStrict() { + return gNonStrict.caller; +} diff --git a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-12gs.js b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-12gs.js index 9d72fbbe4..f571e2346 100644 --- a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-12gs.js +++ b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-12gs.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 ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-12gs.js
- * @description Strict mode - checking access to non-strict function caller from non-strict function (eval includes strict directive prologue)
- * @noStrict
- */
-
-
-eval("\"use strict\";\ngNonStrict();");
-
-
-function gNonStrict() {
- return gNonStrict.caller;
-}
-
+// 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 - checking access to non-strict function caller from + non-strict function (eval includes strict directive prologue) +flags: [noStrict] +---*/ + +eval("\"use strict\";\ngNonStrict();"); + + +function gNonStrict() { + return gNonStrict.caller; +} diff --git a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-13gs.js b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-13gs.js index 65b6ea64a..b725b4035 100644 --- a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-13gs.js +++ b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-13gs.js @@ -1,22 +1,22 @@ -/// 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 ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-13gs.js
- * @description Strict mode - checking access to non-strict function caller from strict function (indirect eval used within strict mode)
- * @onlyStrict
- * @negative TypeError
- */
-
-
-"use strict";
-var my_eval = eval;
-my_eval("gNonStrict();");
-
-
-function gNonStrict() {
- return gNonStrict.caller;
-}
-
+// 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 - checking access to non-strict function caller from + strict function (indirect eval used within strict mode) +negative: TypeError +flags: [onlyStrict] +---*/ + +"use strict"; +var my_eval = eval; +my_eval("gNonStrict();"); + + +function gNonStrict() { + return gNonStrict.caller; +} diff --git a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-14gs.js b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-14gs.js index d7dcf1c4d..0a30f58b7 100644 --- a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-14gs.js +++ b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-14gs.js @@ -1,20 +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 ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-14gs.js
- * @description Strict mode - checking access to non-strict function caller from non-strict function (indirect eval includes strict directive prologue)
- * @noStrict
- */
-
-
-var my_eval = eval;
-my_eval("\"use strict\";\ngNonStrict();");
-
-
-function gNonStrict() {
- return gNonStrict.caller;
-}
-
+// 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 - checking access to non-strict function caller from + non-strict function (indirect eval includes strict directive + prologue) +flags: [noStrict] +---*/ + +var my_eval = eval; +my_eval("\"use strict\";\ngNonStrict();"); + + +function gNonStrict() { + return gNonStrict.caller; +} diff --git a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-15gs.js b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-15gs.js index f98fef128..708bfd6f0 100644 --- a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-15gs.js +++ b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-15gs.js @@ -1,24 +1,25 @@ -/// 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 ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-15gs.js
- * @description Strict mode - checking access to strict function caller from strict function (New'ed object from FunctionDeclaration defined within strict mode)
- * @onlyStrict
- * @negative TypeError
- */
-
-
-"use strict";
-function f() {
- return gNonStrict();
-}
-new f();
-
-
-function gNonStrict() {
- return gNonStrict.caller;
-}
-
+// 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 - checking access to strict function caller from + strict function (New'ed object from FunctionDeclaration defined + within strict mode) +negative: TypeError +flags: [onlyStrict] +---*/ + +"use strict"; +function f() { + return gNonStrict(); +} +new f(); + + +function gNonStrict() { + return gNonStrict.caller; +} diff --git a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-16gs.js b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-16gs.js index 7e2bddb40..cbcf6a952 100644 --- a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-16gs.js +++ b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-16gs.js @@ -1,24 +1,25 @@ -/// 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 ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-16gs.js
- * @description Strict mode - checking access to strict function caller from non-strict function (New'ed object from FunctionDeclaration includes strict directive prologue)
- * @noStrict
- * @negative TypeError
- */
-
-
-function f() {
- "use strict";
- return gNonStrict();
-}
-new f();
-
-
-function gNonStrict() {
- return gNonStrict.caller || gNonStrict.caller.throwTypeError;
-}
-
+// 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 - checking access to strict function caller from + non-strict function (New'ed object from FunctionDeclaration + includes strict directive prologue) +negative: TypeError +flags: [noStrict] +---*/ + +function f() { + "use strict"; + return gNonStrict(); +} +new f(); + + +function gNonStrict() { + return gNonStrict.caller || gNonStrict.caller.throwTypeError; +} diff --git a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-17gs.js b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-17gs.js index 4052e0aef..0fc4ec341 100644 --- a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-17gs.js +++ b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-17gs.js @@ -1,24 +1,25 @@ -/// 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 ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-17gs.js
- * @description Strict mode - checking access to strict function caller from strict function (New'ed object from FunctionExpression defined within strict mode)
- * @onlyStrict
- * @negative TypeError
- */
-
-
-"use strict";
-var f = function () {
- return gNonStrict();
-}
-new f();
-
-
-function gNonStrict() {
- return gNonStrict.caller;
-}
-
+// 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 - checking access to strict function caller from + strict function (New'ed object from FunctionExpression defined + within strict mode) +negative: TypeError +flags: [onlyStrict] +---*/ + +"use strict"; +var f = function () { + return gNonStrict(); +} +new f(); + + +function gNonStrict() { + return gNonStrict.caller; +} diff --git a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-18gs.js b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-18gs.js index 9282dfb62..d5d471b77 100644 --- a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-18gs.js +++ b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-18gs.js @@ -1,24 +1,25 @@ -/// 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 ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-18gs.js
- * @description Strict mode - checking access to strict function caller from non-strict function (New'ed object from FunctionExpression includes strict directive prologue)
- * @noStrict
- * @negative TypeError
- */
-
-
-var f = function () {
- "use strict";
- return gNonStrict();
-}
-new f();
-
-
-function gNonStrict() {
- return gNonStrict.caller || gNonStrict.caller.throwTypeError;
-}
-
+// 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 - checking access to strict function caller from + non-strict function (New'ed object from FunctionExpression + includes strict directive prologue) +negative: TypeError +flags: [noStrict] +---*/ + +var f = function () { + "use strict"; + return gNonStrict(); +} +new f(); + + +function gNonStrict() { + return gNonStrict.caller || gNonStrict.caller.throwTypeError; +} diff --git a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-19gs.js b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-19gs.js index 79adcf1ba..3e86ac856 100644 --- a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-19gs.js +++ b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-19gs.js @@ -1,23 +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 ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-19gs.js
- * @description Strict mode - checking access to strict function caller from strict function (New'ed object from Anonymous FunctionExpression defined within strict mode)
- * @onlyStrict
- * @negative TypeError
- */
-
-
-"use strict";
-var obj = new (function () {
- return gNonStrict();
-});
-
-
-function gNonStrict() {
- return gNonStrict.caller;
-}
-
+// 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 - checking access to strict function caller from + strict function (New'ed object from Anonymous FunctionExpression + defined within strict mode) +negative: TypeError +flags: [onlyStrict] +---*/ + +"use strict"; +var obj = new (function () { + return gNonStrict(); +}); + + +function gNonStrict() { + return gNonStrict.caller; +} diff --git a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-1gs.js b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-1gs.js index 4bb11ea8e..9de4ca680 100644 --- a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-1gs.js +++ b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-1gs.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 ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-1gs.js
- * @description Strict mode - checking access to strict function caller from strict function (FunctionDeclaration defined within strict mode)
- * @onlyStrict
- * @negative TypeError
- */
-
-
-"use strict";
-function f() {
- return gNonStrict();
-}
-f();
-
-
-function gNonStrict() {
- return gNonStrict.caller;
-}
-
+// 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 - checking access to strict function caller from + strict function (FunctionDeclaration defined within strict mode) +negative: TypeError +flags: [onlyStrict] +---*/ + +"use strict"; +function f() { + return gNonStrict(); +} +f(); + + +function gNonStrict() { + return gNonStrict.caller; +} diff --git a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-20gs.js b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-20gs.js index 654b3ead7..5e4d42d1d 100644 --- a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-20gs.js +++ b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-20gs.js @@ -1,23 +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 ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-20gs.js
- * @description Strict mode - checking access to strict function caller from non-strict function (New'ed object from Anonymous FunctionExpression includes strict directive prologue)
- * @noStrict
- * @negative TypeError
- */
-
-
-var obj = new (function () {
- "use strict";
- return gNonStrict();
-});
-
-
-function gNonStrict() {
- return gNonStrict.caller || gNonStrict.caller.throwTypeError;
-}
-
+// 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 - checking access to strict function caller from + non-strict function (New'ed object from Anonymous + FunctionExpression includes strict directive prologue) +negative: TypeError +flags: [noStrict] +---*/ + +var obj = new (function () { + "use strict"; + return gNonStrict(); +}); + + +function gNonStrict() { + return gNonStrict.caller || gNonStrict.caller.throwTypeError; +} diff --git a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-21gs.js b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-21gs.js index a62912ede..1b0474c36 100644 --- a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-21gs.js +++ b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-21gs.js @@ -1,27 +1,28 @@ -/// 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 ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-21gs.js
- * @description Strict mode - checking access to strict function caller from strict function (FunctionDeclaration defined within a FunctionDeclaration inside strict mode)
- * @onlyStrict
- * @negative TypeError
- */
-
-
-"use strict";
-function f1() {
- function f() {
- return gNonStrict();
- }
- return f();
-}
-f1();
-
-
-function gNonStrict() {
- return gNonStrict.caller;
-}
-
+// 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 - checking access to strict function caller from + strict function (FunctionDeclaration defined within a + FunctionDeclaration inside strict mode) +negative: TypeError +flags: [onlyStrict] +---*/ + +"use strict"; +function f1() { + function f() { + return gNonStrict(); + } + return f(); +} +f1(); + + +function gNonStrict() { + return gNonStrict.caller; +} diff --git a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-22gs.js b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-22gs.js index d710c5ef7..76506c02b 100644 --- a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-22gs.js +++ b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-22gs.js @@ -1,27 +1,28 @@ -/// 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 ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-22gs.js
- * @description Strict mode - checking access to strict function caller from strict function (FunctionExpression defined within a FunctionDeclaration inside strict mode)
- * @onlyStrict
- * @negative TypeError
- */
-
-
-"use strict";
-function f1() {
- var f = function () {
- return gNonStrict();
- }
- return f();
-}
-f1();
-
-
-function gNonStrict() {
- return gNonStrict.caller;
-}
-
+// 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 - checking access to strict function caller from + strict function (FunctionExpression defined within a + FunctionDeclaration inside strict mode) +negative: TypeError +flags: [onlyStrict] +---*/ + +"use strict"; +function f1() { + var f = function () { + return gNonStrict(); + } + return f(); +} +f1(); + + +function gNonStrict() { + return gNonStrict.caller; +} diff --git a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-23gs.js b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-23gs.js index 8497d91fc..aab1f45b0 100644 --- a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-23gs.js +++ b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-23gs.js @@ -1,26 +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 ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-23gs.js
- * @description Strict mode - checking access to strict function caller from strict function (Anonymous FunctionExpression defined within a FunctionDeclaration inside strict mode)
- * @onlyStrict
- * @negative TypeError
- */
-
-
-"use strict";
-function f1() {
- return (function () {
- return gNonStrict();
- })();
-}
-f1();
-
-
-function gNonStrict() {
- return gNonStrict.caller;
-}
-
+// 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 - checking access to strict function caller from + strict function (Anonymous FunctionExpression defined within a + FunctionDeclaration inside strict mode) +negative: TypeError +flags: [onlyStrict] +---*/ + +"use strict"; +function f1() { + return (function () { + return gNonStrict(); + })(); +} +f1(); + + +function gNonStrict() { + return gNonStrict.caller; +} diff --git a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-24gs.js b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-24gs.js index 4d0c4f658..f3daa54f1 100644 --- a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-24gs.js +++ b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-24gs.js @@ -1,27 +1,28 @@ -/// 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 ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-24gs.js
- * @description Strict mode - checking access to strict function caller from strict function (FunctionDeclaration defined within a FunctionExpression inside strict mode)
- * @onlyStrict
- * @negative TypeError
- */
-
-
-"use strict";
-var f1 = function () {
- function f() {
- return gNonStrict();
- }
- return f();
-}
-f1();
-
-
-function gNonStrict() {
- return gNonStrict.caller;
-}
-
+// 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 - checking access to strict function caller from + strict function (FunctionDeclaration defined within a + FunctionExpression inside strict mode) +negative: TypeError +flags: [onlyStrict] +---*/ + +"use strict"; +var f1 = function () { + function f() { + return gNonStrict(); + } + return f(); +} +f1(); + + +function gNonStrict() { + return gNonStrict.caller; +} diff --git a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-25gs.js b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-25gs.js index 85e6f5b24..f0af53442 100644 --- a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-25gs.js +++ b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-25gs.js @@ -1,27 +1,28 @@ -/// 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 ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-25gs.js
- * @description Strict mode - checking access to strict function caller from strict function (FunctionExpression defined within a FunctionExpression inside strict mode)
- * @onlyStrict
- * @negative TypeError
- */
-
-
-"use strict";
-var f1 = function () {
- var f = function () {
- return gNonStrict();
- }
- return f();
-}
-f1();
-
-
-function gNonStrict() {
- return gNonStrict.caller;
-}
-
+// 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 - checking access to strict function caller from + strict function (FunctionExpression defined within a + FunctionExpression inside strict mode) +negative: TypeError +flags: [onlyStrict] +---*/ + +"use strict"; +var f1 = function () { + var f = function () { + return gNonStrict(); + } + return f(); +} +f1(); + + +function gNonStrict() { + return gNonStrict.caller; +} diff --git a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-26gs.js b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-26gs.js index b1f23423b..c604338ee 100644 --- a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-26gs.js +++ b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-26gs.js @@ -1,26 +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 ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-26gs.js
- * @description Strict mode - checking access to strict function caller from strict function (Anonymous FunctionExpression defined within a FunctionExpression inside strict mode)
- * @onlyStrict
- * @negative TypeError
- */
-
-
-"use strict";
-var f1 = function () {
- return (function () {
- return gNonStrict();
- })();
-}
-f1();
-
-
-function gNonStrict() {
- return gNonStrict.caller;
-}
-
+// 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 - checking access to strict function caller from + strict function (Anonymous FunctionExpression defined within a + FunctionExpression inside strict mode) +negative: TypeError +flags: [onlyStrict] +---*/ + +"use strict"; +var f1 = function () { + return (function () { + return gNonStrict(); + })(); +} +f1(); + + +function gNonStrict() { + return gNonStrict.caller; +} diff --git a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-27gs.js b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-27gs.js index 451a69965..00b7b87b1 100644 --- a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-27gs.js +++ b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-27gs.js @@ -1,26 +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 ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-27gs.js
- * @description Strict mode - checking access to strict function caller from strict function (FunctionDeclaration defined within an Anonymous FunctionExpression inside strict mode)
- * @onlyStrict
- * @negative TypeError
- */
-
-
-"use strict";
-(function () {
- function f() {
- return gNonStrict();
- }
- return f();
-})();
-
-
-function gNonStrict() {
- return gNonStrict.caller;
-}
-
+// 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 - checking access to strict function caller from + strict function (FunctionDeclaration defined within an Anonymous + FunctionExpression inside strict mode) +negative: TypeError +flags: [onlyStrict] +---*/ + +"use strict"; +(function () { + function f() { + return gNonStrict(); + } + return f(); +})(); + + +function gNonStrict() { + return gNonStrict.caller; +} diff --git a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-28gs.js b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-28gs.js index 12abaf581..e714ff193 100644 --- a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-28gs.js +++ b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-28gs.js @@ -1,26 +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 ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-28gs.js
- * @description Strict mode - checking access to strict function caller from strict function (FunctionExpression defined within an Anonymous FunctionExpression inside strict mode)
- * @onlyStrict
- * @negative TypeError
- */
-
-
-"use strict";
-(function () {
- var f = function () {
- return gNonStrict();
- }
- return f();
-})();
-
-
-function gNonStrict() {
- return gNonStrict.caller;
-}
-
+// 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 - checking access to strict function caller from + strict function (FunctionExpression defined within an Anonymous + FunctionExpression inside strict mode) +negative: TypeError +flags: [onlyStrict] +---*/ + +"use strict"; +(function () { + var f = function () { + return gNonStrict(); + } + return f(); +})(); + + +function gNonStrict() { + return gNonStrict.caller; +} diff --git a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-29gs.js b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-29gs.js index 47a3091e1..98cc9832c 100644 --- a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-29gs.js +++ b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-29gs.js @@ -1,25 +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 ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-29gs.js
- * @description Strict mode - checking access to strict function caller from strict function (Anonymous FunctionExpression defined within an Anonymous FunctionExpression inside strict mode)
- * @onlyStrict
- * @negative TypeError
- */
-
-
-"use strict";
-(function () {
- return (function () {
- return gNonStrict();
- })();
-})();
-
-
-function gNonStrict() {
- return gNonStrict.caller;
-}
-
+// 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 - checking access to strict function caller from + strict function (Anonymous FunctionExpression defined within an + Anonymous FunctionExpression inside strict mode) +negative: TypeError +flags: [onlyStrict] +---*/ + +"use strict"; +(function () { + return (function () { + return gNonStrict(); + })(); +})(); + + +function gNonStrict() { + return gNonStrict.caller; +} diff --git a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-2gs.js b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-2gs.js index ac0a73919..44cb36c84 100644 --- a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-2gs.js +++ b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-2gs.js @@ -1,24 +1,25 @@ -/// 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 ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-2gs.js
- * @description Strict mode - checking access to strict function caller from non-strict function (FunctionDeclaration includes strict directive prologue)
- * @noStrict
- * @negative TypeError
- */
-
-
-function f() {
- "use strict";
- return gNonStrict();
-}
-f();
-
-
-function gNonStrict() {
- return gNonStrict.caller || gNonStrict.caller.throwTypeError;
-}
-
+// 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 - checking access to strict function caller from + non-strict function (FunctionDeclaration includes strict directive + prologue) +negative: TypeError +flags: [noStrict] +---*/ + +function f() { + "use strict"; + return gNonStrict(); +} +f(); + + +function gNonStrict() { + return gNonStrict.caller || gNonStrict.caller.throwTypeError; +} diff --git a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-30gs.js b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-30gs.js index 8928186ac..3c431e798 100644 --- a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-30gs.js +++ b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-30gs.js @@ -1,27 +1,28 @@ -/// 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 ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-30gs.js
- * @description Strict mode - checking access to strict function caller from non-strict function (FunctionDeclaration defined within a FunctionDeclaration with a strict directive prologue)
- * @noStrict
- * @negative TypeError
- */
-
-
-function f1() {
- "use strict";
- function f() {
- return gNonStrict();
- }
- return f();
-}
-f1();
-
-
-function gNonStrict() {
- return gNonStrict.caller || gNonStrict.caller.throwTypeError;
-}
-
+// 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 - checking access to strict function caller from + non-strict function (FunctionDeclaration defined within a + FunctionDeclaration with a strict directive prologue) +negative: TypeError +flags: [noStrict] +---*/ + +function f1() { + "use strict"; + function f() { + return gNonStrict(); + } + return f(); +} +f1(); + + +function gNonStrict() { + return gNonStrict.caller || gNonStrict.caller.throwTypeError; +} diff --git a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-31gs.js b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-31gs.js index eae058954..66f97f752 100644 --- a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-31gs.js +++ b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-31gs.js @@ -1,27 +1,28 @@ -/// 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 ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-31gs.js
- * @description Strict mode - checking access to strict function caller from non-strict function (FunctionExpression defined within a FunctionDeclaration with a strict directive prologue)
- * @noStrict
- * @negative TypeError
- */
-
-
-function f1() {
- "use strict";
- var f = function () {
- return gNonStrict();
- }
- return f();
-}
-f1();
-
-
-function gNonStrict() {
- return gNonStrict.caller || gNonStrict.caller.throwTypeError;
-}
-
+// 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 - checking access to strict function caller from + non-strict function (FunctionExpression defined within a + FunctionDeclaration with a strict directive prologue) +negative: TypeError +flags: [noStrict] +---*/ + +function f1() { + "use strict"; + var f = function () { + return gNonStrict(); + } + return f(); +} +f1(); + + +function gNonStrict() { + return gNonStrict.caller || gNonStrict.caller.throwTypeError; +} diff --git a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-32gs.js b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-32gs.js index 68e6e8e5f..a9ad3c88b 100644 --- a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-32gs.js +++ b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-32gs.js @@ -1,26 +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 ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-32gs.js
- * @description Strict mode - checking access to strict function caller from non-strict function (Anonymous FunctionExpression defined within a FunctionDeclaration with a strict directive prologue)
- * @noStrict
- * @negative TypeError
- */
-
-
-function f1() {
- "use strict";
- return (function () {
- return gNonStrict();
- })();
-}
-f1();
-
-
-function gNonStrict() {
- return gNonStrict.caller || gNonStrict.caller.throwTypeError;
-}
-
+// 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 - checking access to strict function caller from + non-strict function (Anonymous FunctionExpression defined within a + FunctionDeclaration with a strict directive prologue) +negative: TypeError +flags: [noStrict] +---*/ + +function f1() { + "use strict"; + return (function () { + return gNonStrict(); + })(); +} +f1(); + + +function gNonStrict() { + return gNonStrict.caller || gNonStrict.caller.throwTypeError; +} diff --git a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-33gs.js b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-33gs.js index 5186ef4a3..bf4541754 100644 --- a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-33gs.js +++ b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-33gs.js @@ -1,27 +1,28 @@ -/// 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 ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-33gs.js
- * @description Strict mode - checking access to strict function caller from non-strict function (FunctionDeclaration defined within a FunctionExpression with a strict directive prologue)
- * @noStrict
- * @negative TypeError
- */
-
-
-var f1 = function () {
- "use strict";
- function f() {
- return gNonStrict();
- }
- return f();
-}
-f1();
-
-
-function gNonStrict() {
- return gNonStrict.caller || gNonStrict.caller.throwTypeError;
-}
-
+// 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 - checking access to strict function caller from + non-strict function (FunctionDeclaration defined within a + FunctionExpression with a strict directive prologue) +negative: TypeError +flags: [noStrict] +---*/ + +var f1 = function () { + "use strict"; + function f() { + return gNonStrict(); + } + return f(); +} +f1(); + + +function gNonStrict() { + return gNonStrict.caller || gNonStrict.caller.throwTypeError; +} diff --git a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-34gs.js b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-34gs.js index 728330d49..9e8dbcd21 100644 --- a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-34gs.js +++ b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-34gs.js @@ -1,27 +1,28 @@ -/// 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 ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-34gs.js
- * @description Strict mode - checking access to strict function caller from non-strict function (FunctionExpression defined within a FunctionExpression with a strict directive prologue)
- * @noStrict
- * @negative TypeError
- */
-
-
-var f1 = function () {
- "use strict";
- var f = function () {
- return gNonStrict();
- }
- return f();
-}
-f1();
-
-
-function gNonStrict() {
- return gNonStrict.caller || gNonStrict.caller.throwTypeError;
-}
-
+// 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 - checking access to strict function caller from + non-strict function (FunctionExpression defined within a + FunctionExpression with a strict directive prologue) +negative: TypeError +flags: [noStrict] +---*/ + +var f1 = function () { + "use strict"; + var f = function () { + return gNonStrict(); + } + return f(); +} +f1(); + + +function gNonStrict() { + return gNonStrict.caller || gNonStrict.caller.throwTypeError; +} diff --git a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-35gs.js b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-35gs.js index f78ae96e9..731beaf19 100644 --- a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-35gs.js +++ b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-35gs.js @@ -1,26 +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 ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-35gs.js
- * @description Strict mode - checking access to strict function caller from non-strict function (Anonymous FunctionExpression defined within a FunctionExpression with a strict directive prologue)
- * @noStrict
- * @negative TypeError
- */
-
-
-var f1 = function () {
- "use strict";
- return (function () {
- return gNonStrict();
- })();
-}
-f1();
-
-
-function gNonStrict() {
- return gNonStrict.caller || gNonStrict.caller.throwTypeError;
-}
-
+// 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 - checking access to strict function caller from + non-strict function (Anonymous FunctionExpression defined within a + FunctionExpression with a strict directive prologue) +negative: TypeError +flags: [noStrict] +---*/ + +var f1 = function () { + "use strict"; + return (function () { + return gNonStrict(); + })(); +} +f1(); + + +function gNonStrict() { + return gNonStrict.caller || gNonStrict.caller.throwTypeError; +} diff --git a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-36gs.js b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-36gs.js index 4dca56c3b..7b69b993a 100644 --- a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-36gs.js +++ b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-36gs.js @@ -1,26 +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 ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-36gs.js
- * @description Strict mode - checking access to strict function caller from non-strict function (FunctionDeclaration defined within an Anonymous FunctionExpression with a strict directive prologue)
- * @noStrict
- * @negative TypeError
- */
-
-
-(function () {
- "use strict";
- function f() {
- return gNonStrict();
- }
- return f();
-})();
-
-
-function gNonStrict() {
- return gNonStrict.caller || gNonStrict.caller.throwTypeError;
-}
-
+// 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 - checking access to strict function caller from + non-strict function (FunctionDeclaration defined within an + Anonymous FunctionExpression with a strict directive prologue) +negative: TypeError +flags: [noStrict] +---*/ + +(function () { + "use strict"; + function f() { + return gNonStrict(); + } + return f(); +})(); + + +function gNonStrict() { + return gNonStrict.caller || gNonStrict.caller.throwTypeError; +} diff --git a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-37gs.js b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-37gs.js index 866802a24..e8a37dee9 100644 --- a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-37gs.js +++ b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-37gs.js @@ -1,26 +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 ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-37gs.js
- * @description Strict mode - checking access to strict function caller from non-strict function (FunctionExpression defined within an Anonymous FunctionExpression with a strict directive prologue)
- * @noStrict
- * @negative TypeError
- */
-
-
-(function () {
- "use strict";
- var f = function () {
- return gNonStrict();
- }
- return f();
-})();
-
-
-function gNonStrict() {
- return gNonStrict.caller || gNonStrict.caller.throwTypeError;
-}
-
+// 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 - checking access to strict function caller from + non-strict function (FunctionExpression defined within an + Anonymous FunctionExpression with a strict directive prologue) +negative: TypeError +flags: [noStrict] +---*/ + +(function () { + "use strict"; + var f = function () { + return gNonStrict(); + } + return f(); +})(); + + +function gNonStrict() { + return gNonStrict.caller || gNonStrict.caller.throwTypeError; +} diff --git a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-38gs.js b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-38gs.js index aa9734eb5..90faa0510 100644 --- a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-38gs.js +++ b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-38gs.js @@ -1,25 +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 ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-38gs.js
- * @description Strict mode - checking access to strict function caller from non-strict function (Anonymous FunctionExpression defined within an Anonymous FunctionExpression with a strict directive prologue)
- * @noStrict
- * @negative TypeError
- */
-
-
-(function () {
- "use strict";
- return (function () {
- return gNonStrict();
- })();
-})();
-
-
-function gNonStrict() {
- return gNonStrict.caller || gNonStrict.caller.throwTypeError;
-}
-
+// 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 - checking access to strict function caller from + non-strict function (Anonymous FunctionExpression defined within + an Anonymous FunctionExpression with a strict directive prologue) +negative: TypeError +flags: [noStrict] +---*/ + +(function () { + "use strict"; + return (function () { + return gNonStrict(); + })(); +})(); + + +function gNonStrict() { + return gNonStrict.caller || gNonStrict.caller.throwTypeError; +} diff --git a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-39gs.js b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-39gs.js index a60706623..495d355ce 100644 --- a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-39gs.js +++ b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-39gs.js @@ -1,27 +1,28 @@ -/// 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 ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-39gs.js
- * @description Strict mode - checking access to strict function caller from non-strict function (FunctionDeclaration with a strict directive prologue defined within a FunctionDeclaration)
- * @noStrict
- * @negative TypeError
- */
-
-
-function f1() {
- function f() {
- "use strict";
- return gNonStrict();
- }
- return f();
-}
-f1();
-
-
-function gNonStrict() {
- return gNonStrict.caller || gNonStrict.caller.throwTypeError;
-}
-
+// 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 - checking access to strict function caller from + non-strict function (FunctionDeclaration with a strict directive + prologue defined within a FunctionDeclaration) +negative: TypeError +flags: [noStrict] +---*/ + +function f1() { + function f() { + "use strict"; + return gNonStrict(); + } + return f(); +} +f1(); + + +function gNonStrict() { + return gNonStrict.caller || gNonStrict.caller.throwTypeError; +} diff --git a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-3gs.js b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-3gs.js index 4f89d3727..e3d01d163 100644 --- a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-3gs.js +++ b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-3gs.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 ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-3gs.js
- * @description Strict mode - checking access to strict function caller from strict function (FunctionExpression defined within strict mode)
- * @onlyStrict
- * @negative TypeError
- */
-
-
-"use strict";
-var f = function () {
- return gNonStrict();
-}
-f();
-
-
-function gNonStrict() {
- return gNonStrict.caller;
-}
-
+// 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 - checking access to strict function caller from + strict function (FunctionExpression defined within strict mode) +negative: TypeError +flags: [onlyStrict] +---*/ + +"use strict"; +var f = function () { + return gNonStrict(); +} +f(); + + +function gNonStrict() { + return gNonStrict.caller; +} diff --git a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-40gs.js b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-40gs.js index e96e2440e..f1e9c4092 100644 --- a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-40gs.js +++ b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-40gs.js @@ -1,27 +1,28 @@ -/// 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 ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-40gs.js
- * @description Strict mode - checking access to strict function caller from non-strict function (FunctionExpression with a strict directive prologue defined within a FunctionDeclaration)
- * @noStrict
- * @negative TypeError
- */
-
-
-function f1() {
- var f = function () {
- "use strict";
- return gNonStrict();
- }
- return f();
-}
-f1();
-
-
-function gNonStrict() {
- return gNonStrict.caller || gNonStrict.caller.throwTypeError;
-}
-
+// 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 - checking access to strict function caller from + non-strict function (FunctionExpression with a strict directive + prologue defined within a FunctionDeclaration) +negative: TypeError +flags: [noStrict] +---*/ + +function f1() { + var f = function () { + "use strict"; + return gNonStrict(); + } + return f(); +} +f1(); + + +function gNonStrict() { + return gNonStrict.caller || gNonStrict.caller.throwTypeError; +} diff --git a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-41gs.js b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-41gs.js index f6c72bea7..26c2ddfe0 100644 --- a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-41gs.js +++ b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-41gs.js @@ -1,26 +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 ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-41gs.js
- * @description Strict mode - checking access to strict function caller from non-strict function (Anonymous FunctionExpression with a strict directive prologue defined within a FunctionDeclaration)
- * @noStrict
- * @negative TypeError
- */
-
-
-function f1() {
- return (function () {
- "use strict";
- return gNonStrict();
- })();
-}
-f1();
-
-
-function gNonStrict() {
- return gNonStrict.caller || gNonStrict.caller.throwTypeError;
-}
-
+// 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 - checking access to strict function caller from + non-strict function (Anonymous FunctionExpression with a strict + directive prologue defined within a FunctionDeclaration) +negative: TypeError +flags: [noStrict] +---*/ + +function f1() { + return (function () { + "use strict"; + return gNonStrict(); + })(); +} +f1(); + + +function gNonStrict() { + return gNonStrict.caller || gNonStrict.caller.throwTypeError; +} diff --git a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-42gs.js b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-42gs.js index 32efa2793..a498ce942 100644 --- a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-42gs.js +++ b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-42gs.js @@ -1,27 +1,28 @@ -/// 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 ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-42gs.js
- * @description Strict mode - checking access to strict function caller from non-strict function (FunctionDeclaration with a strict directive prologue defined within a FunctionExpression)
- * @noStrict
- * @negative TypeError
- */
-
-
-var f1 = function () {
- function f() {
- "use strict";
- return gNonStrict();
- }
- return f();
-}
-f1();
-
-
-function gNonStrict() {
- return gNonStrict.caller || gNonStrict.caller.throwTypeError;
-}
-
+// 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 - checking access to strict function caller from + non-strict function (FunctionDeclaration with a strict directive + prologue defined within a FunctionExpression) +negative: TypeError +flags: [noStrict] +---*/ + +var f1 = function () { + function f() { + "use strict"; + return gNonStrict(); + } + return f(); +} +f1(); + + +function gNonStrict() { + return gNonStrict.caller || gNonStrict.caller.throwTypeError; +} diff --git a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-43gs.js b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-43gs.js index 3dd7ff941..d63748ea0 100644 --- a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-43gs.js +++ b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-43gs.js @@ -1,27 +1,28 @@ -/// 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 ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-43gs.js
- * @description Strict mode - checking access to strict function caller from non-strict function (FunctionExpression with a strict directive prologue defined within a FunctionExpression)
- * @noStrict
- * @negative TypeError
- */
-
-
-var f1 = function () {
- var f = function () {
- "use strict";
- return gNonStrict();
- }
- return f();
-}
-f1();
-
-
-function gNonStrict() {
- return gNonStrict.caller || gNonStrict.caller.throwTypeError;
-}
-
+// 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 - checking access to strict function caller from + non-strict function (FunctionExpression with a strict directive + prologue defined within a FunctionExpression) +negative: TypeError +flags: [noStrict] +---*/ + +var f1 = function () { + var f = function () { + "use strict"; + return gNonStrict(); + } + return f(); +} +f1(); + + +function gNonStrict() { + return gNonStrict.caller || gNonStrict.caller.throwTypeError; +} diff --git a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-44gs.js b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-44gs.js index 354c354e0..2c35a708d 100644 --- a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-44gs.js +++ b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-44gs.js @@ -1,26 +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 ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-44gs.js
- * @description Strict mode - checking access to strict function caller from non-strict function (Anonymous FunctionExpression with a strict directive prologue defined within a FunctionExpression)
- * @noStrict
- * @negative TypeError
- */
-
-
-var f1 = function () {
- return (function () {
- "use strict";
- return gNonStrict();
- })();
-}
-f1();
-
-
-function gNonStrict() {
- return gNonStrict.caller || gNonStrict.caller.throwTypeError;
-}
-
+// 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 - checking access to strict function caller from + non-strict function (Anonymous FunctionExpression with a strict + directive prologue defined within a FunctionExpression) +negative: TypeError +flags: [noStrict] +---*/ + +var f1 = function () { + return (function () { + "use strict"; + return gNonStrict(); + })(); +} +f1(); + + +function gNonStrict() { + return gNonStrict.caller || gNonStrict.caller.throwTypeError; +} diff --git a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-45gs.js b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-45gs.js index 16b05ee24..27c0a5cd4 100644 --- a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-45gs.js +++ b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-45gs.js @@ -1,26 +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 ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-45gs.js
- * @description Strict mode - checking access to strict function caller from non-strict function (FunctionDeclaration with a strict directive prologue defined within an Anonymous FunctionExpression)
- * @noStrict
- * @negative TypeError
- */
-
-
-(function () {
- function f() {
- "use strict";
- return gNonStrict();
- }
- return f();
-})();
-
-
-function gNonStrict() {
- return gNonStrict.caller || gNonStrict.caller.throwTypeError;
-}
-
+// 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 - checking access to strict function caller from + non-strict function (FunctionDeclaration with a strict directive + prologue defined within an Anonymous FunctionExpression) +negative: TypeError +flags: [noStrict] +---*/ + +(function () { + function f() { + "use strict"; + return gNonStrict(); + } + return f(); +})(); + + +function gNonStrict() { + return gNonStrict.caller || gNonStrict.caller.throwTypeError; +} diff --git a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-46gs.js b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-46gs.js index 93e0beda4..e3beb585a 100644 --- a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-46gs.js +++ b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-46gs.js @@ -1,26 +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 ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-46gs.js
- * @description Strict mode - checking access to strict function caller from non-strict function (FunctionExpression with a strict directive prologue defined within an Anonymous FunctionExpression)
- * @noStrict
- * @negative TypeError
- */
-
-
-(function () {
- var f = function () {
- "use strict";
- return gNonStrict();
- }
- return f();
-})();
-
-
-function gNonStrict() {
- return gNonStrict.caller || gNonStrict.caller.throwTypeError;
-}
-
+// 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 - checking access to strict function caller from + non-strict function (FunctionExpression with a strict directive + prologue defined within an Anonymous FunctionExpression) +negative: TypeError +flags: [noStrict] +---*/ + +(function () { + var f = function () { + "use strict"; + return gNonStrict(); + } + return f(); +})(); + + +function gNonStrict() { + return gNonStrict.caller || gNonStrict.caller.throwTypeError; +} diff --git a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-47gs.js b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-47gs.js index b68de18d7..6c4b2c3c4 100644 --- a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-47gs.js +++ b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-47gs.js @@ -1,25 +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 ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-47gs.js
- * @description Strict mode - checking access to strict function caller from non-strict function (Anonymous FunctionExpression with a strict directive prologue defined within an Anonymous FunctionExpression)
- * @noStrict
- * @negative TypeError
- */
-
-
-(function () {
- return (function () {
- "use strict";
- return gNonStrict();
- })();
-})();
-
-
-function gNonStrict() {
- return gNonStrict.caller || gNonStrict.caller.throwTypeError;
-}
-
+// 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 - checking access to strict function caller from + non-strict function (Anonymous FunctionExpression with a strict + directive prologue defined within an Anonymous FunctionExpression) +negative: TypeError +flags: [noStrict] +---*/ + +(function () { + return (function () { + "use strict"; + return gNonStrict(); + })(); +})(); + + +function gNonStrict() { + return gNonStrict.caller || gNonStrict.caller.throwTypeError; +} diff --git a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-48gs.js b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-48gs.js index 0fb987cd2..197656b09 100644 --- a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-48gs.js +++ b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-48gs.js @@ -1,22 +1,22 @@ -/// 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 ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-48gs.js
- * @description Strict mode - checking access to strict function caller from strict function (Literal getter defined within strict mode)
- * @onlyStrict
- * @negative TypeError
- */
-
-
-"use strict";
-var o = { get foo() { return gNonStrict(); } }
-o.foo;
-
-
-function gNonStrict() {
- return gNonStrict.caller;
-}
-
+// 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 - checking access to strict function caller from + strict function (Literal getter defined within strict mode) +negative: TypeError +flags: [onlyStrict] +---*/ + +"use strict"; +var o = { get foo() { return gNonStrict(); } } +o.foo; + + +function gNonStrict() { + return gNonStrict.caller; +} diff --git a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-49gs.js b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-49gs.js index 3eae7b11d..2fc6d0f19 100644 --- a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-49gs.js +++ b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-49gs.js @@ -1,21 +1,22 @@ -/// 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 ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-49gs.js
- * @description Strict mode - checking access to strict function caller from non-strict function (Literal getter includes strict directive prologue)
- * @noStrict
- * @negative TypeError
- */
-
-
-var o = { get foo() { "use strict"; return gNonStrict(); } }
-o.foo;
-
-
-function gNonStrict() {
- return gNonStrict.caller || gNonStrict.caller.throwTypeError;
-}
-
+// 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 - checking access to strict function caller from + non-strict function (Literal getter includes strict directive + prologue) +negative: TypeError +flags: [noStrict] +---*/ + +var o = { get foo() { "use strict"; return gNonStrict(); } } +o.foo; + + +function gNonStrict() { + return gNonStrict.caller || gNonStrict.caller.throwTypeError; +} diff --git a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-4gs.js b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-4gs.js index f6fd1036d..2b0cea156 100644 --- a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-4gs.js +++ b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-4gs.js @@ -1,24 +1,25 @@ -/// 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 ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-4gs.js
- * @description Strict mode - checking access to strict function caller from non-strict function (FunctionExpression includes strict directive prologue)
- * @noStrict
- * @negative TypeError
- */
-
-
-var f = function () {
- "use strict";
- return gNonStrict();
-}
-f();
-
-
-function gNonStrict() {
- return gNonStrict.caller || gNonStrict.caller.throwTypeError;
-}
-
+// 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 - checking access to strict function caller from + non-strict function (FunctionExpression includes strict directive + prologue) +negative: TypeError +flags: [noStrict] +---*/ + +var f = function () { + "use strict"; + return gNonStrict(); +} +f(); + + +function gNonStrict() { + return gNonStrict.caller || gNonStrict.caller.throwTypeError; +} diff --git a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-50gs.js b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-50gs.js index 433bceb56..eb9a11ab7 100644 --- a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-50gs.js +++ b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-50gs.js @@ -1,22 +1,22 @@ -/// 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 ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-50gs.js
- * @description Strict mode - checking access to strict function caller from strict function (Literal setter defined within strict mode)
- * @onlyStrict
- * @negative TypeError
- */
-
-
-"use strict";
-var o = { set foo(stuff) { return gNonStrict(); } }
-o.foo = 7;
-
-
-function gNonStrict() {
- return gNonStrict.caller;
-}
-
+// 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 - checking access to strict function caller from + strict function (Literal setter defined within strict mode) +negative: TypeError +flags: [onlyStrict] +---*/ + +"use strict"; +var o = { set foo(stuff) { return gNonStrict(); } } +o.foo = 7; + + +function gNonStrict() { + return gNonStrict.caller; +} diff --git a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-51gs.js b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-51gs.js index 49b69f4b9..bd27b5240 100644 --- a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-51gs.js +++ b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-51gs.js @@ -1,21 +1,22 @@ -/// 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 ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-51gs.js
- * @description Strict mode - checking access to strict function caller from non-strict function (Literal setter includes strict directive prologue)
- * @noStrict
- * @negative TypeError
- */
-
-
-var o = { set foo(stuff) { "use strict"; return gNonStrict(); } }
-o.foo = 8;
-
-
-function gNonStrict() {
- return gNonStrict.caller || gNonStrict.caller.throwTypeError;
-}
-
+// 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 - checking access to strict function caller from + non-strict function (Literal setter includes strict directive + prologue) +negative: TypeError +flags: [noStrict] +---*/ + +var o = { set foo(stuff) { "use strict"; return gNonStrict(); } } +o.foo = 8; + + +function gNonStrict() { + return gNonStrict.caller || gNonStrict.caller.throwTypeError; +} diff --git a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-52gs.js b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-52gs.js index 6f49e6cdd..8294ed907 100644 --- a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-52gs.js +++ b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-52gs.js @@ -1,23 +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 ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-52gs.js
- * @description Strict mode - checking access to strict function caller from strict function (Injected getter defined within strict mode)
- * @onlyStrict
- * @negative TypeError
- */
-
-
-"use strict";
-var o = {};
-Object.defineProperty(o, "foo", { get: function() { return gNonStrict(); } });
-o.foo;
-
-
-function gNonStrict() {
- return gNonStrict.caller;
-}
-
+// 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 - checking access to strict function caller from + strict function (Injected getter defined within strict mode) +negative: TypeError +flags: [onlyStrict] +---*/ + +"use strict"; +var o = {}; +Object.defineProperty(o, "foo", { get: function() { return gNonStrict(); } }); +o.foo; + + +function gNonStrict() { + return gNonStrict.caller; +} diff --git a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-53gs.js b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-53gs.js index 6c6bd48a8..20b919bce 100644 --- a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-53gs.js +++ b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-53gs.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 ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-53gs.js
- * @description Strict mode - checking access to strict function caller from non-strict function (Injected getter includes strict directive prologue)
- * @noStrict
- * @negative TypeError
- */
-
-
-var o = {};
-Object.defineProperty(o, "foo", { get: function() { "use strict"; return gNonStrict(); } });
-o.foo;
-
-
-function gNonStrict() {
- return gNonStrict.caller || gNonStrict.caller.throwTypeError;
-}
-
+// 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 - checking access to strict function caller from + non-strict function (Injected getter includes strict directive + prologue) +negative: TypeError +flags: [noStrict] +---*/ + +var o = {}; +Object.defineProperty(o, "foo", { get: function() { "use strict"; return gNonStrict(); } }); +o.foo; + + +function gNonStrict() { + return gNonStrict.caller || gNonStrict.caller.throwTypeError; +} diff --git a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-54gs.js b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-54gs.js index 9e7b792d8..218bf85a2 100644 --- a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-54gs.js +++ b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-54gs.js @@ -1,23 +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 ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-54gs.js
- * @description Strict mode - checking access to strict function caller from strict function (Injected setter defined within strict mode)
- * @onlyStrict
- * @negative TypeError
- */
-
-
-"use strict";
-var o = {};
-Object.defineProperty(o, "foo", { set: function(stuff) { return gNonStrict(); } });
-o.foo = 9;
-
-
-function gNonStrict() {
- return gNonStrict.caller;
-}
-
+// 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 - checking access to strict function caller from + strict function (Injected setter defined within strict mode) +negative: TypeError +flags: [onlyStrict] +---*/ + +"use strict"; +var o = {}; +Object.defineProperty(o, "foo", { set: function(stuff) { return gNonStrict(); } }); +o.foo = 9; + + +function gNonStrict() { + return gNonStrict.caller; +} diff --git a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-55gs.js b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-55gs.js index 2739fa9e0..345e46d42 100644 --- a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-55gs.js +++ b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-55gs.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 ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-55gs.js
- * @description Strict mode - checking access to strict function caller from non-strict function (Injected setter includes strict directive prologue)
- * @noStrict
- * @negative TypeError
- */
-
-
-var o = {};
-Object.defineProperty(o, "foo", { set: function(stuff) { "use strict"; return gNonStrict(); } });
-o.foo = 10;
-
-
-function gNonStrict() {
- return gNonStrict.caller || gNonStrict.caller.throwTypeError;
-}
-
+// 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 - checking access to strict function caller from + non-strict function (Injected setter includes strict directive + prologue) +negative: TypeError +flags: [noStrict] +---*/ + +var o = {}; +Object.defineProperty(o, "foo", { set: function(stuff) { "use strict"; return gNonStrict(); } }); +o.foo = 10; + + +function gNonStrict() { + return gNonStrict.caller || gNonStrict.caller.throwTypeError; +} diff --git a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-56gs.js b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-56gs.js index 0b58b9453..caa546d01 100644 --- a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-56gs.js +++ b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-56gs.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 ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-56gs.js
- * @description Strict mode - checking access to strict function caller from non-strict function (strict function declaration called by non-strict function declaration)
- * @noStrict
- * @negative TypeError
- */
-
-
-function f() { "use strict"; return gNonStrict();};
-function foo() { return f();}
-foo();
-
-
-function gNonStrict() {
- return gNonStrict.caller || gNonStrict.caller.throwTypeError;
-}
-
+// 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 - checking access to strict function caller from + non-strict function (strict function declaration called by + non-strict function declaration) +negative: TypeError +flags: [noStrict] +---*/ + +function f() { "use strict"; return gNonStrict();}; +function foo() { return f();} +foo(); + + +function gNonStrict() { + return gNonStrict.caller || gNonStrict.caller.throwTypeError; +} diff --git a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-57gs.js b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-57gs.js index b13890cd3..931b17dfa 100644 --- a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-57gs.js +++ b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-57gs.js @@ -1,21 +1,22 @@ -/// 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 ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-57gs.js
- * @description Strict mode - checking access to strict function caller from non-strict function (strict function declaration called by non-strict eval)
- * @noStrict
- * @negative TypeError
- */
-
-
-function f() { "use strict"; return gNonStrict();};
-eval("f();");
-
-
-function gNonStrict() {
- return gNonStrict.caller || gNonStrict.caller.throwTypeError;
-}
-
+// 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 - checking access to strict function caller from + non-strict function (strict function declaration called by + non-strict eval) +negative: TypeError +flags: [noStrict] +---*/ + +function f() { "use strict"; return gNonStrict();}; +eval("f();"); + + +function gNonStrict() { + return gNonStrict.caller || gNonStrict.caller.throwTypeError; +} diff --git a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-58gs.js b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-58gs.js index e418493a1..770d95b2f 100644 --- a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-58gs.js +++ b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-58gs.js @@ -1,21 +1,22 @@ -/// 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 ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-58gs.js
- * @description Strict mode - checking access to strict function caller from non-strict function (strict function declaration called by non-strict Function constructor)
- * @noStrict
- * @negative TypeError
- */
-
-
-function f() { "use strict"; return gNonStrict();};
-Function("return f();")();
-
-
-function gNonStrict() {
- return gNonStrict.caller || gNonStrict.caller.throwTypeError;
-}
-
+// 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 - checking access to strict function caller from + non-strict function (strict function declaration called by + non-strict Function constructor) +negative: TypeError +flags: [noStrict] +---*/ + +function f() { "use strict"; return gNonStrict();}; +Function("return f();")(); + + +function gNonStrict() { + return gNonStrict.caller || gNonStrict.caller.throwTypeError; +} diff --git a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-59gs.js b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-59gs.js index a66ea00ca..98a1cdc8f 100644 --- a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-59gs.js +++ b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-59gs.js @@ -1,21 +1,22 @@ -/// 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 ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-59gs.js
- * @description Strict mode - checking access to strict function caller from non-strict function (strict function declaration called by non-strict new'ed Function constructor)
- * @noStrict
- * @negative TypeError
- */
-
-
-function f() { "use strict"; return gNonStrict();};
-new Function("return f();")();
-
-
-function gNonStrict() {
- return gNonStrict.caller || gNonStrict.caller.throwTypeError;
-}
-
+// 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 - checking access to strict function caller from + non-strict function (strict function declaration called by + non-strict new'ed Function constructor) +negative: TypeError +flags: [noStrict] +---*/ + +function f() { "use strict"; return gNonStrict();}; +new Function("return f();")(); + + +function gNonStrict() { + return gNonStrict.caller || gNonStrict.caller.throwTypeError; +} diff --git a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-5gs.js b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-5gs.js index ce651dd22..5b078931e 100644 --- a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-5gs.js +++ b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-5gs.js @@ -1,23 +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 ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-5gs.js
- * @description Strict mode - checking access to strict function caller from strict function (Anonymous FunctionExpression defined within strict mode)
- * @onlyStrict
- * @negative TypeError
- */
-
-
-"use strict";
-(function () {
- return gNonStrict();
-})();
-
-
-function gNonStrict() {
- return gNonStrict.caller;
-}
-
+// 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 - checking access to strict function caller from + strict function (Anonymous FunctionExpression defined within + strict mode) +negative: TypeError +flags: [onlyStrict] +---*/ + +"use strict"; +(function () { + return gNonStrict(); +})(); + + +function gNonStrict() { + return gNonStrict.caller; +} diff --git a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-60gs.js b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-60gs.js index aaf42d98a..b425fe4d6 100644 --- a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-60gs.js +++ b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-60gs.js @@ -1,21 +1,22 @@ -/// 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 ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-60gs.js
- * @description Strict mode - checking access to strict function caller from non-strict function (strict function declaration called by Function.prototype.apply())
- * @noStrict
- * @negative TypeError
- */
-
-
-function f() { "use strict"; return gNonStrict();};
-f.apply();
-
-
-function gNonStrict() {
- return gNonStrict.caller || gNonStrict.caller.throwTypeError;
-}
-
+// 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 - checking access to strict function caller from + non-strict function (strict function declaration called by + Function.prototype.apply()) +negative: TypeError +flags: [noStrict] +---*/ + +function f() { "use strict"; return gNonStrict();}; +f.apply(); + + +function gNonStrict() { + return gNonStrict.caller || gNonStrict.caller.throwTypeError; +} diff --git a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-61gs.js b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-61gs.js index 9c100aef0..6e1ff29cb 100644 --- a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-61gs.js +++ b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-61gs.js @@ -1,21 +1,22 @@ -/// 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 ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-61gs.js
- * @description Strict mode - checking access to strict function caller from non-strict function (strict function declaration called by Function.prototype.apply(null))
- * @noStrict
- * @negative TypeError
- */
-
-
-function f() { "use strict"; return gNonStrict();};
-f.apply(null);
-
-
-function gNonStrict() {
- return gNonStrict.caller || gNonStrict.caller.throwTypeError;
-}
-
+// 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 - checking access to strict function caller from + non-strict function (strict function declaration called by + Function.prototype.apply(null)) +negative: TypeError +flags: [noStrict] +---*/ + +function f() { "use strict"; return gNonStrict();}; +f.apply(null); + + +function gNonStrict() { + return gNonStrict.caller || gNonStrict.caller.throwTypeError; +} diff --git a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-62gs.js b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-62gs.js index fe4cfd658..96f2713d0 100644 --- a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-62gs.js +++ b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-62gs.js @@ -1,21 +1,22 @@ -/// 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 ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-62gs.js
- * @description Strict mode - checking access to strict function caller from non-strict function (strict function declaration called by Function.prototype.apply(undefined))
- * @noStrict
- * @negative TypeError
- */
-
-
-function f() { "use strict"; return gNonStrict();};
-f.apply(undefined);
-
-
-function gNonStrict() {
- return gNonStrict.caller || gNonStrict.caller.throwTypeError;
-}
-
+// 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 - checking access to strict function caller from + non-strict function (strict function declaration called by + Function.prototype.apply(undefined)) +negative: TypeError +flags: [noStrict] +---*/ + +function f() { "use strict"; return gNonStrict();}; +f.apply(undefined); + + +function gNonStrict() { + return gNonStrict.caller || gNonStrict.caller.throwTypeError; +} diff --git a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-63gs.js b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-63gs.js index 6a77440dd..40b728c71 100644 --- a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-63gs.js +++ b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-63gs.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 ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-63gs.js
- * @description Strict mode - checking access to strict function caller from non-strict function (strict function declaration called by Function.prototype.apply(someObject))
- * @noStrict
- * @negative TypeError
- */
-
-
-function f() { "use strict"; return gNonStrict();};
-var o = {};
-f.apply(o);
-
-
-function gNonStrict() {
- return gNonStrict.caller || gNonStrict.caller.throwTypeError;
-}
-
+// 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 - checking access to strict function caller from + non-strict function (strict function declaration called by + Function.prototype.apply(someObject)) +negative: TypeError +flags: [noStrict] +---*/ + +function f() { "use strict"; return gNonStrict();}; +var o = {}; +f.apply(o); + + +function gNonStrict() { + return gNonStrict.caller || gNonStrict.caller.throwTypeError; +} diff --git a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-64gs.js b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-64gs.js index 5d630796e..771eb77d2 100644 --- a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-64gs.js +++ b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-64gs.js @@ -1,21 +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 ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-64gs.js
- * @description Strict mode - checking access to strict function caller from non-strict function (strict function declaration called by Function.prototype.apply(globalObject))
- * @noStrict
- * @negative TypeError
- */
-
-
-function f() { "use strict"; return gNonStrict();};
-f.apply(fnGlobalObject());
-
-
-function gNonStrict() {
- return gNonStrict.caller || gNonStrict.caller.throwTypeError;
-}
-
+// 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 - checking access to strict function caller from + non-strict function (strict function declaration called by + Function.prototype.apply(globalObject)) +negative: TypeError +flags: [noStrict] +includes: [fnGlobalObject.js] +---*/ + +function f() { "use strict"; return gNonStrict();}; +f.apply(fnGlobalObject()); + + +function gNonStrict() { + return gNonStrict.caller || gNonStrict.caller.throwTypeError; +} diff --git a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-65gs.js b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-65gs.js index 5447227df..b0e016220 100644 --- a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-65gs.js +++ b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-65gs.js @@ -1,21 +1,22 @@ -/// 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 ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-65gs.js
- * @description Strict mode - checking access to strict function caller from non-strict function (strict function declaration called by Function.prototype.call())
- * @noStrict
- * @negative TypeError
- */
-
-
-function f() { "use strict"; return gNonStrict();};
-f.call();
-
-
-function gNonStrict() {
- return gNonStrict.caller || gNonStrict.caller.throwTypeError;
-}
-
+// 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 - checking access to strict function caller from + non-strict function (strict function declaration called by + Function.prototype.call()) +negative: TypeError +flags: [noStrict] +---*/ + +function f() { "use strict"; return gNonStrict();}; +f.call(); + + +function gNonStrict() { + return gNonStrict.caller || gNonStrict.caller.throwTypeError; +} diff --git a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-66gs.js b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-66gs.js index b6a287d97..91a864d84 100644 --- a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-66gs.js +++ b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-66gs.js @@ -1,21 +1,22 @@ -/// 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 ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-66gs.js
- * @description Strict mode - checking access to strict function caller from non-strict function (strict function declaration called by Function.prototype.call(null))
- * @noStrict
- * @negative TypeError
- */
-
-
-function f() { "use strict"; return gNonStrict();};
-f.call(null);
-
-
-function gNonStrict() {
- return gNonStrict.caller || gNonStrict.caller.throwTypeError;
-}
-
+// 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 - checking access to strict function caller from + non-strict function (strict function declaration called by + Function.prototype.call(null)) +negative: TypeError +flags: [noStrict] +---*/ + +function f() { "use strict"; return gNonStrict();}; +f.call(null); + + +function gNonStrict() { + return gNonStrict.caller || gNonStrict.caller.throwTypeError; +} diff --git a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-67gs.js b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-67gs.js index 27bf71a06..4fcd16038 100644 --- a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-67gs.js +++ b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-67gs.js @@ -1,21 +1,22 @@ -/// 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 ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-67gs.js
- * @description Strict mode - checking access to strict function caller from non-strict function (strict function declaration called by Function.prototype.call(undefined))
- * @noStrict
- * @negative TypeError
- */
-
-
-function f() { "use strict"; return gNonStrict();};
-f.call(undefined);
-
-
-function gNonStrict() {
- return gNonStrict.caller || gNonStrict.caller.throwTypeError;
-}
-
+// 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 - checking access to strict function caller from + non-strict function (strict function declaration called by + Function.prototype.call(undefined)) +negative: TypeError +flags: [noStrict] +---*/ + +function f() { "use strict"; return gNonStrict();}; +f.call(undefined); + + +function gNonStrict() { + return gNonStrict.caller || gNonStrict.caller.throwTypeError; +} diff --git a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-68gs.js b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-68gs.js index a6f6d9e62..63a51a60b 100644 --- a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-68gs.js +++ b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-68gs.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 ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-68gs.js
- * @description Strict mode - checking access to strict function caller from non-strict function (strict function declaration called by Function.prototype.call(someObject))
- * @noStrict
- * @negative TypeError
- */
-
-
-function f() { "use strict"; return gNonStrict();};
-var o = {};
-f.call(o);
-
-
-function gNonStrict() {
- return gNonStrict.caller || gNonStrict.caller.throwTypeError;
-}
-
+// 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 - checking access to strict function caller from + non-strict function (strict function declaration called by + Function.prototype.call(someObject)) +negative: TypeError +flags: [noStrict] +---*/ + +function f() { "use strict"; return gNonStrict();}; +var o = {}; +f.call(o); + + +function gNonStrict() { + return gNonStrict.caller || gNonStrict.caller.throwTypeError; +} diff --git a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-69gs.js b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-69gs.js index 124c0d09a..12acd1c74 100644 --- a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-69gs.js +++ b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-69gs.js @@ -1,21 +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 ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-69gs.js
- * @description Strict mode - checking access to strict function caller from non-strict function (strict function declaration called by Function.prototype.call(globalObject))
- * @noStrict
- * @negative TypeError
- */
-
-
-function f() { "use strict"; return gNonStrict();};
-f.call(fnGlobalObject());
-
-
-function gNonStrict() {
- return gNonStrict.caller || gNonStrict.caller.throwTypeError;
-}
-
+// 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 - checking access to strict function caller from + non-strict function (strict function declaration called by + Function.prototype.call(globalObject)) +negative: TypeError +flags: [noStrict] +includes: [fnGlobalObject.js] +---*/ + +function f() { "use strict"; return gNonStrict();}; +f.call(fnGlobalObject()); + + +function gNonStrict() { + return gNonStrict.caller || gNonStrict.caller.throwTypeError; +} diff --git a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-6gs.js b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-6gs.js index 7a46ca1a7..2a684aa6b 100644 --- a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-6gs.js +++ b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-6gs.js @@ -1,23 +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 ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-6gs.js
- * @description Strict mode - checking access to strict function caller from non-strict function (Anonymous FunctionExpression includes strict directive prologue)
- * @noStrict
- * @negative TypeError
- */
-
-
-(function () {
- "use strict";
- return gNonStrict();
-})();
-
-
-function gNonStrict() {
- return gNonStrict.caller || gNonStrict.caller.throwTypeError;
-}
-
+// 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 - checking access to strict function caller from + non-strict function (Anonymous FunctionExpression includes strict + directive prologue) +negative: TypeError +flags: [noStrict] +---*/ + +(function () { + "use strict"; + return gNonStrict(); +})(); + + +function gNonStrict() { + return gNonStrict.caller || gNonStrict.caller.throwTypeError; +} diff --git a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-70gs.js b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-70gs.js index 587cd4d3d..6e8f838ff 100644 --- a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-70gs.js +++ b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-70gs.js @@ -1,21 +1,22 @@ -/// 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 ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-70gs.js
- * @description Strict mode - checking access to strict function caller from non-strict function (strict function declaration called by Function.prototype.bind()())
- * @noStrict
- * @negative TypeError
- */
-
-
-function f() { "use strict"; return gNonStrict();};
-f.bind()();
-
-
-function gNonStrict() {
- return gNonStrict.caller || gNonStrict.caller.throwTypeError;
-}
-
+// 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 - checking access to strict function caller from + non-strict function (strict function declaration called by + Function.prototype.bind()()) +negative: TypeError +flags: [noStrict] +---*/ + +function f() { "use strict"; return gNonStrict();}; +f.bind()(); + + +function gNonStrict() { + return gNonStrict.caller || gNonStrict.caller.throwTypeError; +} diff --git a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-71gs.js b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-71gs.js index 6a931da77..6b4cf92dc 100644 --- a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-71gs.js +++ b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-71gs.js @@ -1,21 +1,22 @@ -/// 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 ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-71gs.js
- * @description Strict mode - checking access to strict function caller from non-strict function (strict function declaration called by Function.prototype.bind(null)())
- * @noStrict
- * @negative TypeError
- */
-
-
-function f() { "use strict"; return gNonStrict();};
-f.bind(null)();
-
-
-function gNonStrict() {
- return gNonStrict.caller || gNonStrict.caller.throwTypeError;
-}
-
+// 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 - checking access to strict function caller from + non-strict function (strict function declaration called by + Function.prototype.bind(null)()) +negative: TypeError +flags: [noStrict] +---*/ + +function f() { "use strict"; return gNonStrict();}; +f.bind(null)(); + + +function gNonStrict() { + return gNonStrict.caller || gNonStrict.caller.throwTypeError; +} diff --git a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-72gs.js b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-72gs.js index 03c60ba4f..1881e66f4 100644 --- a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-72gs.js +++ b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-72gs.js @@ -1,21 +1,22 @@ -/// 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 ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-72gs.js
- * @description Strict mode - checking access to strict function caller from non-strict function (strict function declaration called by Function.prototype.bind(undefined)())
- * @noStrict
- * @negative TypeError
- */
-
-
-function f() { "use strict"; return gNonStrict();};
-f.bind(undefined)();
-
-
-function gNonStrict() {
- return gNonStrict.caller || gNonStrict.caller.throwTypeError;
-}
-
+// 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 - checking access to strict function caller from + non-strict function (strict function declaration called by + Function.prototype.bind(undefined)()) +negative: TypeError +flags: [noStrict] +---*/ + +function f() { "use strict"; return gNonStrict();}; +f.bind(undefined)(); + + +function gNonStrict() { + return gNonStrict.caller || gNonStrict.caller.throwTypeError; +} diff --git a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-73gs.js b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-73gs.js index 9ba366171..eb9d51c29 100644 --- a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-73gs.js +++ b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-73gs.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 ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-73gs.js
- * @description Strict mode - checking access to strict function caller from non-strict function (strict function declaration called by Function.prototype.bind(someObject)())
- * @noStrict
- * @negative TypeError
- */
-
-
-function f() { "use strict"; return gNonStrict();};
-var o = {};
-f.bind(o)();
-
-
-function gNonStrict() {
- return gNonStrict.caller || gNonStrict.caller.throwTypeError;
-}
-
+// 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 - checking access to strict function caller from + non-strict function (strict function declaration called by + Function.prototype.bind(someObject)()) +negative: TypeError +flags: [noStrict] +---*/ + +function f() { "use strict"; return gNonStrict();}; +var o = {}; +f.bind(o)(); + + +function gNonStrict() { + return gNonStrict.caller || gNonStrict.caller.throwTypeError; +} diff --git a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-74gs.js b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-74gs.js index dcd3a636d..a7f13e783 100644 --- a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-74gs.js +++ b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-74gs.js @@ -1,21 +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 ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-74gs.js
- * @description Strict mode - checking access to strict function caller from non-strict function (strict function declaration called by Function.prototype.bind(globalObject)())
- * @noStrict
- * @negative TypeError
- */
-
-
-function f() { "use strict"; return gNonStrict();};
-f.bind(fnGlobalObject())();
-
-
-function gNonStrict() {
- return gNonStrict.caller || gNonStrict.caller.throwTypeError;
-}
-
+// 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 - checking access to strict function caller from + non-strict function (strict function declaration called by + Function.prototype.bind(globalObject)()) +negative: TypeError +flags: [noStrict] +includes: [fnGlobalObject.js] +---*/ + +function f() { "use strict"; return gNonStrict();}; +f.bind(fnGlobalObject())(); + + +function gNonStrict() { + return gNonStrict.caller || gNonStrict.caller.throwTypeError; +} diff --git a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-75gs.js b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-75gs.js index cda7c0324..d81a0f0a3 100644 --- a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-75gs.js +++ b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-75gs.js @@ -1,21 +1,22 @@ -/// 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 ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-75gs.js
- * @description Strict mode - checking access to strict function caller from non-strict function (non-strict function declaration called by strict function declaration)
- * @noStrict
- */
-
-
-function f() { return gNonStrict();};
-function foo() { "use strict"; return f();}
-foo();
-
-
-function gNonStrict() {
- return gNonStrict.caller;
-}
-
+// 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 - checking access to strict function caller from + non-strict function (non-strict function declaration called by + strict function declaration) +flags: [noStrict] +---*/ + +function f() { return gNonStrict();}; +function foo() { "use strict"; return f();} +foo(); + + +function gNonStrict() { + return gNonStrict.caller; +} diff --git a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-76gs.js b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-76gs.js index 89c794699..454cceac4 100644 --- a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-76gs.js +++ b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-76gs.js @@ -1,20 +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 ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-76gs.js
- * @description Strict mode - checking access to strict function caller from non-strict function (non-strict function declaration called by strict eval)
- * @noStrict
- */
-
-
-function f() { return gNonStrict();};
-(function () {"use strict"; return eval("f();"); })();
-
-
-function gNonStrict() {
- return gNonStrict.caller;
-}
-
+// 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 - checking access to strict function caller from + non-strict function (non-strict function declaration called by + strict eval) +flags: [noStrict] +---*/ + +function f() { return gNonStrict();}; +(function () {"use strict"; return eval("f();"); })(); + + +function gNonStrict() { + return gNonStrict.caller; +} diff --git a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-77gs.js b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-77gs.js index 572122575..444b6aa0e 100644 --- a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-77gs.js +++ b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-77gs.js @@ -1,20 +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 ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-77gs.js
- * @description Strict mode - checking access to strict function caller from non-strict function (non-strict function declaration called by strict Function constructor)
- * @noStrict
- */
-
-
-function f() {return gNonStrict();};
-(function () {"use strict"; return Function("return f();")(); })();
-
-
-function gNonStrict() {
- return gNonStrict.caller;
-}
-
+// 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 - checking access to strict function caller from + non-strict function (non-strict function declaration called by + strict Function constructor) +flags: [noStrict] +---*/ + +function f() {return gNonStrict();}; +(function () {"use strict"; return Function("return f();")(); })(); + + +function gNonStrict() { + return gNonStrict.caller; +} diff --git a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-78gs.js b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-78gs.js index 56e51c18d..252b872bd 100644 --- a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-78gs.js +++ b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-78gs.js @@ -1,20 +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 ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-78gs.js
- * @description Strict mode - checking access to strict function caller from non-strict function (non-strict function declaration called by strict new'ed Function constructor)
- * @noStrict
- */
-
-
-function f() { return gNonStrict();};
-(function () {"use strict"; return new Function("return f();")(); })();
-
-
-function gNonStrict() {
- return gNonStrict.caller;
-}
-
+// 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 - checking access to strict function caller from + non-strict function (non-strict function declaration called by + strict new'ed Function constructor) +flags: [noStrict] +---*/ + +function f() { return gNonStrict();}; +(function () {"use strict"; return new Function("return f();")(); })(); + + +function gNonStrict() { + return gNonStrict.caller; +} diff --git a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-79gs.js b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-79gs.js index 845d4a0dc..b391119cd 100644 --- a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-79gs.js +++ b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-79gs.js @@ -1,20 +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 ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-79gs.js
- * @description Strict mode - checking access to strict function caller from non-strict function (non-strict function declaration called by strict Function.prototype.apply())
- * @noStrict
- */
-
-
-function f() { return gNonStrict();};
-(function () {"use strict"; return f.apply();})();
-
-
-function gNonStrict() {
- return gNonStrict.caller;
-}
-
+// 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 - checking access to strict function caller from + non-strict function (non-strict function declaration called by + strict Function.prototype.apply()) +flags: [noStrict] +---*/ + +function f() { return gNonStrict();}; +(function () {"use strict"; return f.apply();})(); + + +function gNonStrict() { + return gNonStrict.caller; +} diff --git a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-7gs.js b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-7gs.js index a75e3f030..9fb25f89f 100644 --- a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-7gs.js +++ b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-7gs.js @@ -1,22 +1,22 @@ -/// 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 ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-7gs.js
- * @description Strict mode - checking access to non-strict function caller from strict function (Function constructor defined within strict mode)
- * @onlyStrict
- * @negative TypeError
- */
-
-
-"use strict";
-var f = Function("return gNonStrict();");
-f();
-
-
-function gNonStrict() {
- return gNonStrict.caller;
-}
-
+// 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 - checking access to non-strict function caller from + strict function (Function constructor defined within strict mode) +negative: TypeError +flags: [onlyStrict] +---*/ + +"use strict"; +var f = Function("return gNonStrict();"); +f(); + + +function gNonStrict() { + return gNonStrict.caller; +} diff --git a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-80gs.js b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-80gs.js index 839c4ec6c..d9c12cc98 100644 --- a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-80gs.js +++ b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-80gs.js @@ -1,20 +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 ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-80gs.js
- * @description Strict mode - checking access to strict function caller from non-strict function (non-strict function declaration called by strict Function.prototype.apply(null))
- * @noStrict
- */
-
-
-function f() { return gNonStrict();};
-(function () {"use strict"; return f.apply(null); })();
-
-
-function gNonStrict() {
- return gNonStrict.caller;
-}
-
+// 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 - checking access to strict function caller from + non-strict function (non-strict function declaration called by + strict Function.prototype.apply(null)) +flags: [noStrict] +---*/ + +function f() { return gNonStrict();}; +(function () {"use strict"; return f.apply(null); })(); + + +function gNonStrict() { + return gNonStrict.caller; +} diff --git a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-81gs.js b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-81gs.js index 0425bd056..fa08289f2 100644 --- a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-81gs.js +++ b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-81gs.js @@ -1,20 +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 ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-81gs.js
- * @description Strict mode - checking access to strict function caller from non-strict function (non-strict function declaration called by strict Function.prototype.apply(undefined))
- * @noStrict
- */
-
-
-function f() { return gNonStrict();};
-(function () {"use strict"; return f.apply(undefined); })();
-
-
-function gNonStrict() {
- return gNonStrict.caller;
-}
-
+// 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 - checking access to strict function caller from + non-strict function (non-strict function declaration called by + strict Function.prototype.apply(undefined)) +flags: [noStrict] +---*/ + +function f() { return gNonStrict();}; +(function () {"use strict"; return f.apply(undefined); })(); + + +function gNonStrict() { + return gNonStrict.caller; +} diff --git a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-82gs.js b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-82gs.js index 43d35835a..82b1daf86 100644 --- a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-82gs.js +++ b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-82gs.js @@ -1,21 +1,22 @@ -/// 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 ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-82gs.js
- * @description Strict mode - checking access to strict function caller from non-strict function (non-strict function declaration called by strict Function.prototype.apply(someObject))
- * @noStrict
- */
-
-
-function f() { return gNonStrict();};
-var o = {};
-(function () {"use strict"; return f.apply(o); })();
-
-
-function gNonStrict() {
- return gNonStrict.caller;
-}
-
+// 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 - checking access to strict function caller from + non-strict function (non-strict function declaration called by + strict Function.prototype.apply(someObject)) +flags: [noStrict] +---*/ + +function f() { return gNonStrict();}; +var o = {}; +(function () {"use strict"; return f.apply(o); })(); + + +function gNonStrict() { + return gNonStrict.caller; +} diff --git a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-83gs.js b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-83gs.js index 0428553b7..7c49e6c27 100644 --- a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-83gs.js +++ b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-83gs.js @@ -1,20 +1,22 @@ -/// 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 ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-83gs.js
- * @description Strict mode - checking access to strict function caller from non-strict function (non-strict function declaration called by strict Function.prototype.apply(globalObject))
- * @noStrict
- */
-
-
-function f() { return gNonStrict();};
-(function () {"use strict"; return f.apply(fnGlobalObject()); })();
-
-
-function gNonStrict() {
- return gNonStrict.caller;
-}
-
+// 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 - checking access to strict function caller from + non-strict function (non-strict function declaration called by + strict Function.prototype.apply(globalObject)) +flags: [noStrict] +includes: [fnGlobalObject.js] +---*/ + +function f() { return gNonStrict();}; +(function () {"use strict"; return f.apply(fnGlobalObject()); })(); + + +function gNonStrict() { + return gNonStrict.caller; +} diff --git a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-84gs.js b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-84gs.js index 9984ceec7..a3ccc57eb 100644 --- a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-84gs.js +++ b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-84gs.js @@ -1,20 +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 ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-84gs.js
- * @description Strict mode - checking access to strict function caller from non-strict function (non-strict function declaration called by strict Function.prototype.call())
- * @noStrict
- */
-
-
-function f() { return gNonStrict();};
-(function () {"use strict"; return f.call();})();
-
-
-function gNonStrict() {
- return gNonStrict.caller;
-}
-
+// 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 - checking access to strict function caller from + non-strict function (non-strict function declaration called by + strict Function.prototype.call()) +flags: [noStrict] +---*/ + +function f() { return gNonStrict();}; +(function () {"use strict"; return f.call();})(); + + +function gNonStrict() { + return gNonStrict.caller; +} diff --git a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-85gs.js b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-85gs.js index 0eb29a573..8a1ddd4fa 100644 --- a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-85gs.js +++ b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-85gs.js @@ -1,20 +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 ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-85gs.js
- * @description Strict mode - checking access to strict function caller from non-strict function (non-strict function declaration called by strict Function.prototype.call(null))
- * @noStrict
- */
-
-
-function f() { return gNonStrict();};
-(function () {"use strict"; return f.call(null);})();
-
-
-function gNonStrict() {
- return gNonStrict.caller;
-}
-
+// 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 - checking access to strict function caller from + non-strict function (non-strict function declaration called by + strict Function.prototype.call(null)) +flags: [noStrict] +---*/ + +function f() { return gNonStrict();}; +(function () {"use strict"; return f.call(null);})(); + + +function gNonStrict() { + return gNonStrict.caller; +} diff --git a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-86gs.js b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-86gs.js index 87c216ae2..6370cd2ac 100644 --- a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-86gs.js +++ b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-86gs.js @@ -1,20 +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 ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-86gs.js
- * @description Strict mode - checking access to strict function caller from non-strict function (non-strict function declaration called by strict Function.prototype.call(undefined))
- * @noStrict
- */
-
-
-function f() { return gNonStrict();};
-(function () {"use strict"; return f.call(undefined); })();
-
-
-function gNonStrict() {
- return gNonStrict.caller;
-}
-
+// 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 - checking access to strict function caller from + non-strict function (non-strict function declaration called by + strict Function.prototype.call(undefined)) +flags: [noStrict] +---*/ + +function f() { return gNonStrict();}; +(function () {"use strict"; return f.call(undefined); })(); + + +function gNonStrict() { + return gNonStrict.caller; +} diff --git a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-87gs.js b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-87gs.js index 7936c1be2..f5144df3b 100644 --- a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-87gs.js +++ b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-87gs.js @@ -1,21 +1,22 @@ -/// 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 ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-87gs.js
- * @description Strict mode - checking access to strict function caller from non-strict function (non-strict function declaration called by strict Function.prototype.call(someObject))
- * @noStrict
- */
-
-
-function f() { return gNonStrict();};
-var o = {};
-(function () {"use strict"; return f.call(o); })();
-
-
-function gNonStrict() {
- return gNonStrict.caller;
-}
-
+// 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 - checking access to strict function caller from + non-strict function (non-strict function declaration called by + strict Function.prototype.call(someObject)) +flags: [noStrict] +---*/ + +function f() { return gNonStrict();}; +var o = {}; +(function () {"use strict"; return f.call(o); })(); + + +function gNonStrict() { + return gNonStrict.caller; +} diff --git a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-88gs.js b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-88gs.js index 30b8bc4b5..48682c757 100644 --- a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-88gs.js +++ b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-88gs.js @@ -1,20 +1,22 @@ -/// 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 ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-88gs.js
- * @description Strict mode - checking access to strict function caller from non-strict function (non-strict function declaration called by strict Function.prototype.call(globalObject))
- * @noStrict
- */
-
-
-function f() { return gNonStrict();};
-(function () {"use strict"; return f.call(fnGlobalObject()); })();
-
-
-function gNonStrict() {
- return gNonStrict.caller;
-}
-
+// 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 - checking access to strict function caller from + non-strict function (non-strict function declaration called by + strict Function.prototype.call(globalObject)) +flags: [noStrict] +includes: [fnGlobalObject.js] +---*/ + +function f() { return gNonStrict();}; +(function () {"use strict"; return f.call(fnGlobalObject()); })(); + + +function gNonStrict() { + return gNonStrict.caller; +} diff --git a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-89gs.js b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-89gs.js index 459cc0c23..664608f3e 100644 --- a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-89gs.js +++ b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-89gs.js @@ -1,20 +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 ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-89gs.js
- * @description Strict mode - checking access to strict function caller from non-strict function (non-strict function declaration called by strict Function.prototype.bind()())
- * @noStrict
- */
-
-
-function f() { return gNonStrict();};
-(function () {"use strict"; return f.bind()();})();
-
-
-function gNonStrict() {
- return gNonStrict.caller;
-}
-
+// 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 - checking access to strict function caller from + non-strict function (non-strict function declaration called by + strict Function.prototype.bind()()) +flags: [noStrict] +---*/ + +function f() { return gNonStrict();}; +(function () {"use strict"; return f.bind()();})(); + + +function gNonStrict() { + return gNonStrict.caller; +} diff --git a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-8gs.js b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-8gs.js index ccaa39bc9..68562726e 100644 --- a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-8gs.js +++ b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-8gs.js @@ -1,21 +1,22 @@ -/// 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 ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-8gs.js
- * @description Strict mode - checking access to strict function caller from non-strict function (Function constructor includes strict directive prologue)
- * @noStrict
- * @negative TypeError
- */
-
-
-var f = Function("\"use strict\";\nreturn gNonStrict();");
-f();
-
-
-function gNonStrict() {
- return gNonStrict.caller || gNonStrict.caller.throwTypeError;
-}
-
+// 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 - checking access to strict function caller from + non-strict function (Function constructor includes strict + directive prologue) +negative: TypeError +flags: [noStrict] +---*/ + +var f = Function("\"use strict\";\nreturn gNonStrict();"); +f(); + + +function gNonStrict() { + return gNonStrict.caller || gNonStrict.caller.throwTypeError; +} diff --git a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-90gs.js b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-90gs.js index ba624e0c2..c37a2124c 100644 --- a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-90gs.js +++ b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-90gs.js @@ -1,20 +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 ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-90gs.js
- * @description Strict mode - checking access to strict function caller from non-strict function (non-strict function declaration called by strict Function.prototype.bind(null)())
- * @noStrict
- */
-
-
-function f() { return gNonStrict();};
-(function () {"use strict"; return f.bind(null)(); })();
-
-
-function gNonStrict() {
- return gNonStrict.caller;
-}
-
+// 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 - checking access to strict function caller from + non-strict function (non-strict function declaration called by + strict Function.prototype.bind(null)()) +flags: [noStrict] +---*/ + +function f() { return gNonStrict();}; +(function () {"use strict"; return f.bind(null)(); })(); + + +function gNonStrict() { + return gNonStrict.caller; +} diff --git a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-91gs.js b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-91gs.js index cbb93f37f..ba676f097 100644 --- a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-91gs.js +++ b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-91gs.js @@ -1,20 +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 ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-91gs.js
- * @description Strict mode - checking access to strict function caller from non-strict function (non-strict function declaration called by strict Function.prototype.bind(undefined)())
- * @noStrict
- */
-
-
-function f() { return gNonStrict();};
-(function () {"use strict"; return f.bind(undefined)(); })();
-
-
-function gNonStrict() {
- return gNonStrict.caller;
-}
-
+// 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 - checking access to strict function caller from + non-strict function (non-strict function declaration called by + strict Function.prototype.bind(undefined)()) +flags: [noStrict] +---*/ + +function f() { return gNonStrict();}; +(function () {"use strict"; return f.bind(undefined)(); })(); + + +function gNonStrict() { + return gNonStrict.caller; +} diff --git a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-92gs.js b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-92gs.js index 96b7b1a28..91720f2be 100644 --- a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-92gs.js +++ b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-92gs.js @@ -1,21 +1,22 @@ -/// 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 ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-92gs.js
- * @description Strict mode - checking access to strict function caller from non-strict function (non-strict function declaration called by strict Function.prototype.bind(someObject)())
- * @noStrict
- */
-
-
-function f() { return gNonStrict();};
-var o = {};
-(function () {"use strict"; return f.bind(o)(); })();
-
-
-function gNonStrict() {
- return gNonStrict.caller;
-}
-
+// 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 - checking access to strict function caller from + non-strict function (non-strict function declaration called by + strict Function.prototype.bind(someObject)()) +flags: [noStrict] +---*/ + +function f() { return gNonStrict();}; +var o = {}; +(function () {"use strict"; return f.bind(o)(); })(); + + +function gNonStrict() { + return gNonStrict.caller; +} diff --git a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-93gs.js b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-93gs.js index 76fd8610c..6adb789bc 100644 --- a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-93gs.js +++ b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-93gs.js @@ -1,20 +1,22 @@ -/// 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 ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-93gs.js
- * @description Strict mode - checking access to strict function caller from non-strict function (non-strict function declaration called by strict Function.prototype.bind(globalObject)())
- * @noStrict
- */
-
-
-function f() { return gNonStrict();};
-(function () {"use strict"; return f.bind(fnGlobalObject())(); })();
-
-
-function gNonStrict() {
- return gNonStrict.caller;
-}
-
+// 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 - checking access to strict function caller from + non-strict function (non-strict function declaration called by + strict Function.prototype.bind(globalObject)()) +flags: [noStrict] +includes: [fnGlobalObject.js] +---*/ + +function f() { return gNonStrict();}; +(function () {"use strict"; return f.bind(fnGlobalObject())(); })(); + + +function gNonStrict() { + return gNonStrict.caller; +} diff --git a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-94gs.js b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-94gs.js index 1bfe4693f..37186cb19 100644 --- a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-94gs.js +++ b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-94gs.js @@ -1,21 +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 ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-94gs.js
- * @description Strict mode - checking access to strict function caller from non-strict function expression (FunctionDeclaration includes strict directive prologue)
- * @noStrict
- * @negative TypeError
- */
-
-var gNonStrict = function () {
- return gNonStrict.caller || gNonStrict.caller.throwTypeError;
-}
-
-function f() {
- "use strict";
- return gNonStrict();
-}
-f();
+// 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 - checking access to strict function caller from + non-strict function expression (FunctionDeclaration includes + strict directive prologue) +negative: TypeError +flags: [noStrict] +---*/ + +var gNonStrict = function () { + return gNonStrict.caller || gNonStrict.caller.throwTypeError; +} + +function f() { + "use strict"; + return gNonStrict(); +} +f(); diff --git a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-95gs.js b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-95gs.js index 52c3a2e8a..2294b72dd 100644 --- a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-95gs.js +++ b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-95gs.js @@ -1,19 +1,22 @@ -/// 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 ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-95gs.js
- * @description Strict mode - checking access to strict function caller from non-strict, constructor-based function (FunctionDeclaration includes strict directive prologue)
- * @noStrict
- * @negative TypeError
- */
-
-var gNonStrict = Function("return gNonStrict.caller || gNonStrict.caller.throwTypeError;");
-
-function f() {
- "use strict";
- return gNonStrict();
-}
-f();
+// 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 - checking access to strict function caller from + non-strict, constructor-based function (FunctionDeclaration + includes strict directive prologue) +negative: TypeError +flags: [noStrict] +---*/ + +var gNonStrict = Function("return gNonStrict.caller || gNonStrict.caller.throwTypeError;"); + +function f() { + "use strict"; + return gNonStrict(); +} +f(); diff --git a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-96gs.js b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-96gs.js index 27562fada..07a223dc1 100644 --- a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-96gs.js +++ b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-96gs.js @@ -1,25 +1,28 @@ -/// 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 ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-96gs.js
- * @description Strict mode - checking access to strict function caller from non-strict property (FunctionDeclaration includes strict directive prologue)
- * @noStrict
- * @negative TypeError
- */
-
-var o = {
- get gNonStrict() {
- var tmp = Object.getOwnPropertyDescriptor(o, "gNonStrict").get;
- return tmp.caller || tmp.caller.throwTypeError;
- }
-};
-
-
-function f() {
- "use strict";
- return o.gNonStrict;
-}
-f();
+// 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 - checking access to strict function caller from + non-strict property (FunctionDeclaration includes strict directive + prologue) +negative: TypeError +flags: [noStrict] +---*/ + +var o = { + get gNonStrict() { + var tmp = Object.getOwnPropertyDescriptor(o, "gNonStrict").get; + return tmp.caller || tmp.caller.throwTypeError; + } +}; + + +function f() { + "use strict"; + return o.gNonStrict; +} +f(); diff --git a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-97gs.js b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-97gs.js index 30b57a589..6468dc22f 100644 --- a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-97gs.js +++ b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-97gs.js @@ -1,25 +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 ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-97gs.js
- * @description Strict mode - checking access to strict function caller from bound non-strict function (FunctionDeclaration includes strict directive prologue)
- * @noStrict
- * @negative TypeError
- */
-
-var gNonStrict = gNonStrictBindee.bind(null);
-
-function f() {
- "use strict";
- return gNonStrict();
-}
-f();
-
-
-function gNonStrictBindee() {
- return gNonStrictBindee.caller || gNonStrictBindee.caller.throwTypeError;
-}
-
+// 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 - checking access to strict function caller from bound + non-strict function (FunctionDeclaration includes strict directive + prologue) +negative: TypeError +flags: [noStrict] +---*/ + +var gNonStrict = gNonStrictBindee.bind(null); + +function f() { + "use strict"; + return gNonStrict(); +} +f(); + + +function gNonStrictBindee() { + return gNonStrictBindee.caller || gNonStrictBindee.caller.throwTypeError; +} diff --git a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-9gs.js b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-9gs.js index b41bb2ef4..304dc7d57 100644 --- a/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-9gs.js +++ b/test/suite/ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-9gs.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 ch15/15.3/15.3.5/15.3.5.4/15.3.5.4_2-9gs.js
- * @description Strict mode - checking access to non-strict function caller from strict function (New'ed Function constructor defined within strict mode)
- * @onlyStrict
- * @negative TypeError
- */
-
-
-"use strict";
-var f = new Function("return gNonStrict();");
-f();
-
-
-function gNonStrict() {
- return gNonStrict.caller;
-}
-
+// 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 - checking access to non-strict function caller from + strict function (New'ed Function constructor defined within strict + mode) +negative: TypeError +flags: [onlyStrict] +---*/ + +"use strict"; +var f = new Function("return gNonStrict();"); +f(); + + +function gNonStrict() { + return gNonStrict.caller; +} diff --git a/test/suite/ch15/15.3/15.3.5/S15.3.5.1_A1_T1.js b/test/suite/ch15/15.3/15.3.5/S15.3.5.1_A1_T1.js index dba019d99..4ac1846a9 100644 --- a/test/suite/ch15/15.3/15.3.5/S15.3.5.1_A1_T1.js +++ b/test/suite/ch15/15.3/15.3.5/S15.3.5.1_A1_T1.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. -/** - * The value of the length property is usually an integer that indicates the 'typical' number of arguments expected by the function - * - * @path ch15/15.3/15.3.5/S15.3.5.1_A1_T1.js - * @description Checking length property of Function("arg1,arg2,arg3", null) - */ +/*--- +info: > + The value of the length property is usually an integer that indicates the + 'typical' number of arguments expected by the function +description: Checking length property of Function("arg1,arg2,arg3", null) +includes: [$FAIL.js] +---*/ f = new Function("arg1,arg2,arg3", null); @@ -19,4 +20,3 @@ if (!(f.hasOwnProperty('length'))) { if (f.length !== 3) { $ERROR('#2: The value of the length property is usually an integer that indicates the "typical" number of arguments expected by the function'); } - diff --git a/test/suite/ch15/15.3/15.3.5/S15.3.5.1_A1_T2.js b/test/suite/ch15/15.3/15.3.5/S15.3.5.1_A1_T2.js index e7ee6c2d1..8853eaa21 100644 --- a/test/suite/ch15/15.3/15.3.5/S15.3.5.1_A1_T2.js +++ b/test/suite/ch15/15.3/15.3.5/S15.3.5.1_A1_T2.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. -/** - * The value of the length property is usually an integer that indicates the 'typical' number of arguments expected by the function - * - * @path ch15/15.3/15.3.5/S15.3.5.1_A1_T2.js - * @description Checking length property of Function("arg1,arg2,arg3","arg4,arg5", null) - */ +/*--- +info: > + The value of the length property is usually an integer that indicates the + 'typical' number of arguments expected by the function +description: > + Checking length property of Function("arg1,arg2,arg3","arg4,arg5", + null) +includes: [$FAIL.js] +---*/ f = Function("arg1,arg2,arg3","arg4,arg5", null); @@ -19,4 +22,3 @@ if (!(f.hasOwnProperty('length'))) { if (f.length !== 5) { $ERROR('#2: The value of the length property is usually an integer that indicates the "typical" number of arguments expected by the function'); } - diff --git a/test/suite/ch15/15.3/15.3.5/S15.3.5.1_A1_T3.js b/test/suite/ch15/15.3/15.3.5/S15.3.5.1_A1_T3.js index ebabb31a0..58dd8596d 100644 --- a/test/suite/ch15/15.3/15.3.5/S15.3.5.1_A1_T3.js +++ b/test/suite/ch15/15.3/15.3.5/S15.3.5.1_A1_T3.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. -/** - * The value of the length property is usually an integer that indicates the 'typical' number of arguments expected by the function - * - * @path ch15/15.3/15.3.5/S15.3.5.1_A1_T3.js - * @description Checking length property of Function("arg1,arg2,arg3","arg1,arg2","arg3", null) - */ +/*--- +info: > + The value of the length property is usually an integer that indicates the + 'typical' number of arguments expected by the function +description: > + Checking length property of + Function("arg1,arg2,arg3","arg1,arg2","arg3", null) +includes: [$FAIL.js] +---*/ f = new Function("arg1,arg2,arg3","arg1,arg2","arg3", null); @@ -19,4 +22,3 @@ if (!(f.hasOwnProperty('length'))) { if (f.length !== 6) { $ERROR('#2: The value of the length property is usually an integer that indicates the "typical" number of arguments expected by the function'); } - diff --git a/test/suite/ch15/15.3/15.3.5/S15.3.5.1_A2_T1.js b/test/suite/ch15/15.3/15.3.5/S15.3.5.1_A2_T1.js index 2029841db..b3283b20a 100644 --- a/test/suite/ch15/15.3/15.3.5/S15.3.5.1_A2_T1.js +++ b/test/suite/ch15/15.3/15.3.5/S15.3.5.1_A2_T1.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. -/** - * the length property has the attributes { DontDelete } - * - * @path ch15/15.3/15.3.5/S15.3.5.1_A2_T1.js - * @description Checking if deleting the length property of Function("arg1,arg2,arg3", null) fails - */ +/*--- +info: the length property has the attributes { DontDelete } +description: > + Checking if deleting the length property of + Function("arg1,arg2,arg3", null) fails +includes: [$FAIL.js] +---*/ f = new Function("arg1,arg2,arg3", null); @@ -29,4 +30,3 @@ if (!(f.hasOwnProperty('length'))) { if (f.length !== 3) { $ERROR('#4: the length property has the attributes { DontDelete }'); } - diff --git a/test/suite/ch15/15.3/15.3.5/S15.3.5.1_A2_T2.js b/test/suite/ch15/15.3/15.3.5/S15.3.5.1_A2_T2.js index a430c4d0f..6b91eb17c 100644 --- a/test/suite/ch15/15.3/15.3.5/S15.3.5.1_A2_T2.js +++ b/test/suite/ch15/15.3/15.3.5/S15.3.5.1_A2_T2.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. -/** - * the length property has the attributes { DontDelete } - * - * @path ch15/15.3/15.3.5/S15.3.5.1_A2_T2.js - * @description Checking if deleting the length property of Function("arg1,arg2,arg3","arg4,arg5", null) fails - */ +/*--- +info: the length property has the attributes { DontDelete } +description: > + Checking if deleting the length property of + Function("arg1,arg2,arg3","arg4,arg5", null) fails +includes: [$FAIL.js] +---*/ f = Function("arg1,arg2,arg3","arg4,arg5", null); @@ -26,4 +27,3 @@ if (!(f.hasOwnProperty('length'))) { if (f.length !== 5) { $ERROR('#3: the length property has the attributes { DontDelete }'); } - diff --git a/test/suite/ch15/15.3/15.3.5/S15.3.5.1_A2_T3.js b/test/suite/ch15/15.3/15.3.5/S15.3.5.1_A2_T3.js index 7c769946d..06957ee7a 100644 --- a/test/suite/ch15/15.3/15.3.5/S15.3.5.1_A2_T3.js +++ b/test/suite/ch15/15.3/15.3.5/S15.3.5.1_A2_T3.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. -/** - * the length property has the attributes { DontDelete } - * - * @path ch15/15.3/15.3.5/S15.3.5.1_A2_T3.js - * @description Checking if deleting the length property of Function("arg1,arg2,arg3","arg1,arg2","arg3", null) fails - */ +/*--- +info: the length property has the attributes { DontDelete } +description: > + Checking if deleting the length property of + Function("arg1,arg2,arg3","arg1,arg2","arg3", null) fails +includes: [$FAIL.js] +---*/ f = new Function("arg1,arg2,arg3","arg1,arg2","arg3", null); @@ -26,4 +27,3 @@ if (!(f.hasOwnProperty('length'))) { if (f.length !== 6) { $ERROR('#3: the length property has the attributes { DontDelete }'); } - diff --git a/test/suite/ch15/15.3/15.3.5/S15.3.5.1_A3_T1.js b/test/suite/ch15/15.3/15.3.5/S15.3.5.1_A3_T1.js index c11f1e620..6244fb64f 100644 --- a/test/suite/ch15/15.3/15.3.5/S15.3.5.1_A3_T1.js +++ b/test/suite/ch15/15.3/15.3.5/S15.3.5.1_A3_T1.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. -/** - * the length property has the attributes { ReadOnly } - * - * @path ch15/15.3/15.3.5/S15.3.5.1_A3_T1.js - * @description Checking if varying the length property of Function("arg1,arg2,arg3","arg4,arg5", null) fails - */ +/*--- +info: the length property has the attributes { ReadOnly } +description: > + Checking if varying the length property of + Function("arg1,arg2,arg3","arg4,arg5", null) fails +includes: [$FAIL.js] +---*/ f = new Function("arg1,arg2,arg3","arg4,arg5", null); @@ -36,4 +37,3 @@ try { if (f.length !== 5) { $ERROR('#4: the length property has the attributes { ReadOnly }'); } - diff --git a/test/suite/ch15/15.3/15.3.5/S15.3.5.1_A3_T2.js b/test/suite/ch15/15.3/15.3.5/S15.3.5.1_A3_T2.js index 36e16ada4..02feaa396 100644 --- a/test/suite/ch15/15.3/15.3.5/S15.3.5.1_A3_T2.js +++ b/test/suite/ch15/15.3/15.3.5/S15.3.5.1_A3_T2.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. -/** - * the length property has the attributes { ReadOnly } - * - * @path ch15/15.3/15.3.5/S15.3.5.1_A3_T2.js - * @description Checking if varying the length property of Function("arg1,arg2,arg3", null) fails - */ +/*--- +info: the length property has the attributes { ReadOnly } +description: > + Checking if varying the length property of + Function("arg1,arg2,arg3", null) fails +includes: [$FAIL.js] +---*/ f = Function("arg1,arg2,arg3", null); @@ -36,4 +37,3 @@ try { if (f.length !== 3) { $ERROR('#4: the length property has the attributes { ReadOnly }'); } - diff --git a/test/suite/ch15/15.3/15.3.5/S15.3.5.1_A3_T3.js b/test/suite/ch15/15.3/15.3.5/S15.3.5.1_A3_T3.js index 3eb47a8b1..bd3e9d80e 100644 --- a/test/suite/ch15/15.3/15.3.5/S15.3.5.1_A3_T3.js +++ b/test/suite/ch15/15.3/15.3.5/S15.3.5.1_A3_T3.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. -/** - * the length property has the attributes { ReadOnly } - * - * @path ch15/15.3/15.3.5/S15.3.5.1_A3_T3.js - * @description Checking if varying the length property of Function("arg1,arg2,arg3","arg1,arg2","arg3", null) fails - */ +/*--- +info: the length property has the attributes { ReadOnly } +description: > + Checking if varying the length property of + Function("arg1,arg2,arg3","arg1,arg2","arg3", null) fails +includes: [$FAIL.js] +---*/ f = new Function("arg1,arg2,arg3","arg1,arg2","arg3", null); @@ -36,4 +37,3 @@ try { if (f.length !== 6) { $ERROR('#4: the length property has the attributes { ReadOnly }'); } - diff --git a/test/suite/ch15/15.3/15.3.5/S15.3.5.1_A4_T1.js b/test/suite/ch15/15.3/15.3.5/S15.3.5.1_A4_T1.js index 6ac1f63dc..96ccc51cc 100644 --- a/test/suite/ch15/15.3/15.3.5/S15.3.5.1_A4_T1.js +++ b/test/suite/ch15/15.3/15.3.5/S15.3.5.1_A4_T1.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. -/** - * the length property has the attributes { DontEnum } - * - * @path ch15/15.3/15.3.5/S15.3.5.1_A4_T1.js - * @description Checking if enumerating the length property of Function("arg1,arg2,arg3", null) fails - */ +/*--- +info: the length property has the attributes { DontEnum } +description: > + Checking if enumerating the length property of + Function("arg1,arg2,arg3", null) fails +includes: [$FAIL.js] +---*/ f = new Function("arg1,arg2,arg3", null); @@ -23,4 +24,3 @@ for(key in f) if (lengthenumed) { $ERROR('#2: the length property has the attributes { DontEnum }'); } - diff --git a/test/suite/ch15/15.3/15.3.5/S15.3.5.1_A4_T2.js b/test/suite/ch15/15.3/15.3.5/S15.3.5.1_A4_T2.js index ae7d5f551..e2a51b636 100644 --- a/test/suite/ch15/15.3/15.3.5/S15.3.5.1_A4_T2.js +++ b/test/suite/ch15/15.3/15.3.5/S15.3.5.1_A4_T2.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. -/** - * the length property has the attributes { DontEnum } - * - * @path ch15/15.3/15.3.5/S15.3.5.1_A4_T2.js - * @description Checking if enumerating the length property of Function("arg1,arg2,arg3","arg4,arg5", null) fails - */ +/*--- +info: the length property has the attributes { DontEnum } +description: > + Checking if enumerating the length property of + Function("arg1,arg2,arg3","arg4,arg5", null) fails +includes: [$FAIL.js] +---*/ f = Function("arg1,arg2,arg3","arg5,arg4", null); @@ -23,4 +24,3 @@ for(key in f) if (lengthenumed) { $ERROR('#2: the length property has the attributes { DontEnum }'); } - diff --git a/test/suite/ch15/15.3/15.3.5/S15.3.5.1_A4_T3.js b/test/suite/ch15/15.3/15.3.5/S15.3.5.1_A4_T3.js index a5287e541..be60b88fd 100644 --- a/test/suite/ch15/15.3/15.3.5/S15.3.5.1_A4_T3.js +++ b/test/suite/ch15/15.3/15.3.5/S15.3.5.1_A4_T3.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. -/** - * the length property has the attributes { DontEnum } - * - * @path ch15/15.3/15.3.5/S15.3.5.1_A4_T3.js - * @description Checking if enumerating the length property of Function("arg1,arg2,arg3","arg1,arg2","arg3", null) fails - */ +/*--- +info: the length property has the attributes { DontEnum } +description: > + Checking if enumerating the length property of + Function("arg1,arg2,arg3","arg1,arg2","arg3", null) fails +includes: [$FAIL.js] +---*/ f = new Function("arg1,arg2,arg3","arg1,arg2","arg3", null); @@ -23,4 +24,3 @@ for(key in f) if (lengthenumed) { $ERROR('#2: the length property has the attributes { DontEnum }'); } - diff --git a/test/suite/ch15/15.3/15.3.5/S15.3.5.2_A1_T1.js b/test/suite/ch15/15.3/15.3.5/S15.3.5.2_A1_T1.js index d58f7c76c..061fb5ead 100644 --- a/test/suite/ch15/15.3/15.3.5/S15.3.5.2_A1_T1.js +++ b/test/suite/ch15/15.3/15.3.5/S15.3.5.2_A1_T1.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. -/** - * the prototype property has the attributes { DontDelete } - * - * @path ch15/15.3/15.3.5/S15.3.5.2_A1_T1.js - * @description Checking if deleting the prototype property of Function("", null) fails - */ +/*--- +info: the prototype property has the attributes { DontDelete } +description: > + Checking if deleting the prototype property of Function("", null) + fails +includes: [$FAIL.js] +---*/ f = new Function("", null); @@ -26,4 +27,3 @@ if (delete f.prototype) { if (f.prototype !== fproto) { $ERROR('#3: the prototype property has the attributes { DontDelete }'); } - diff --git a/test/suite/ch15/15.3/15.3.5/S15.3.5.2_A1_T2.js b/test/suite/ch15/15.3/15.3.5/S15.3.5.2_A1_T2.js index cd8e1e4bd..fe7de3a42 100644 --- a/test/suite/ch15/15.3/15.3.5/S15.3.5.2_A1_T2.js +++ b/test/suite/ch15/15.3/15.3.5/S15.3.5.2_A1_T2.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. -/** - * the prototype property has the attributes { DontDelete } - * - * @path ch15/15.3/15.3.5/S15.3.5.2_A1_T2.js - * @description Checking if deleting the prototype property of Function(void 0, "") fails - */ +/*--- +info: the prototype property has the attributes { DontDelete } +description: > + Checking if deleting the prototype property of Function(void 0, + "") fails +includes: [$FAIL.js] +---*/ f = Function(void 0, ""); @@ -26,4 +27,3 @@ if (delete f.prototype) { if (f.prototype !== fproto) { $ERROR('#3: the prototype property has the attributes { DontDelete }'); } - diff --git a/test/suite/ch15/15.3/15.3.5/S15.3.5.3_A1_T1.js b/test/suite/ch15/15.3/15.3.5/S15.3.5.3_A1_T1.js index b90326eec..a139bd308 100644 --- a/test/suite/ch15/15.3/15.3.5/S15.3.5.3_A1_T1.js +++ b/test/suite/ch15/15.3/15.3.5/S15.3.5.3_A1_T1.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. -/** - * Assume F is a Function object. When the [[HasInstance]] method of F is called with value V, the following steps are taken: i) If V is not an object, return false - * - * @path ch15/15.3/15.3.5/S15.3.5.3_A1_T1.js - * @description V is number - */ +/*--- +info: > + Assume F is a Function object. When the [[HasInstance]] method of F is + called with value V, the following steps are taken: i) If V is not an + object, return false +description: V is number +---*/ FACTORY = Function("name","this.name=name;"); @@ -14,4 +15,3 @@ FACTORY = Function("name","this.name=name;"); if ((1 instanceof FACTORY)!==false) { $ERROR('#1: Assume F is a Function object. When the [[HasInstance]] method of F is called with value V, the following steps are taken: i) If V is not an object, return false'); } - diff --git a/test/suite/ch15/15.3/15.3.5/S15.3.5.3_A1_T2.js b/test/suite/ch15/15.3/15.3.5/S15.3.5.3_A1_T2.js index 79454b8fe..6bcde17a8 100644 --- a/test/suite/ch15/15.3/15.3.5/S15.3.5.3_A1_T2.js +++ b/test/suite/ch15/15.3/15.3.5/S15.3.5.3_A1_T2.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. -/** - * Assume F is a Function object. When the [[HasInstance]] method of F is called with value V, the following steps are taken: i) If V is not an object, return false - * - * @path ch15/15.3/15.3.5/S15.3.5.3_A1_T2.js - * @description V is string - */ +/*--- +info: > + Assume F is a Function object. When the [[HasInstance]] method of F is + called with value V, the following steps are taken: i) If V is not an + object, return false +description: V is string +---*/ FACTORY = Function("name","this.name=name;"); @@ -14,4 +15,3 @@ FACTORY = Function("name","this.name=name;"); if (("1" instanceof FACTORY)!==false) { $ERROR('#1: Assume F is a Function object. When the [[HasInstance]] method of F is called with value V, the following steps are taken: i) If V is not an object, return false'); } - diff --git a/test/suite/ch15/15.3/15.3.5/S15.3.5.3_A1_T3.js b/test/suite/ch15/15.3/15.3.5/S15.3.5.3_A1_T3.js index 9b7ebad28..e690608e7 100644 --- a/test/suite/ch15/15.3/15.3.5/S15.3.5.3_A1_T3.js +++ b/test/suite/ch15/15.3/15.3.5/S15.3.5.3_A1_T3.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. -/** - * Assume F is a Function object. When the [[HasInstance]] method of F is called with value V, the following steps are taken: i) If V is not an object, return false - * - * @path ch15/15.3/15.3.5/S15.3.5.3_A1_T3.js - * @description V is boolean true - */ +/*--- +info: > + Assume F is a Function object. When the [[HasInstance]] method of F is + called with value V, the following steps are taken: i) If V is not an + object, return false +description: V is boolean true +---*/ FACTORY = Function("name","this.name=name;"); @@ -14,4 +15,3 @@ FACTORY = Function("name","this.name=name;"); if ((true instanceof FACTORY)!==false) { $ERROR('#1: Assume F is a Function object. When the [[HasInstance]] method of F is called with value V, the following steps are taken: i) If V is not an object, return false'); } - diff --git a/test/suite/ch15/15.3/15.3.5/S15.3.5.3_A1_T4.js b/test/suite/ch15/15.3/15.3.5/S15.3.5.3_A1_T4.js index 364294e17..9c0476fb4 100644 --- a/test/suite/ch15/15.3/15.3.5/S15.3.5.3_A1_T4.js +++ b/test/suite/ch15/15.3/15.3.5/S15.3.5.3_A1_T4.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. -/** - * Assume F is a Function object. When the [[HasInstance]] method of F is called with value V, the following steps are taken: i) If V is not an object, return false - * - * @path ch15/15.3/15.3.5/S15.3.5.3_A1_T4.js - * @description V is boolean false - */ +/*--- +info: > + Assume F is a Function object. When the [[HasInstance]] method of F is + called with value V, the following steps are taken: i) If V is not an + object, return false +description: V is boolean false +---*/ FACTORY = Function("name","this.name=name;"); @@ -14,4 +15,3 @@ FACTORY = Function("name","this.name=name;"); if ((false instanceof FACTORY)!==false) { $ERROR('#1: Assume F is a Function object. When the [[HasInstance]] method of F is called with value V, the following steps are taken: i) If V is not an object, return false'); } - diff --git a/test/suite/ch15/15.3/15.3.5/S15.3.5.3_A1_T5.js b/test/suite/ch15/15.3/15.3.5/S15.3.5.3_A1_T5.js index ab5221bdf..012d82306 100644 --- a/test/suite/ch15/15.3/15.3.5/S15.3.5.3_A1_T5.js +++ b/test/suite/ch15/15.3/15.3.5/S15.3.5.3_A1_T5.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. -/** - * Assume F is a Function object. When the [[HasInstance]] method of F is called with value V, the following steps are taken: i) If V is not an object, return false - * - * @path ch15/15.3/15.3.5/S15.3.5.3_A1_T5.js - * @description V is void 0 - */ +/*--- +info: > + Assume F is a Function object. When the [[HasInstance]] method of F is + called with value V, the following steps are taken: i) If V is not an + object, return false +description: V is void 0 +---*/ FACTORY = Function("name","this.name=name;"); @@ -14,4 +15,3 @@ FACTORY = Function("name","this.name=name;"); if ((void 0 instanceof FACTORY)!==false) { $ERROR('#1: Assume F is a Function object. When the [[HasInstance]] method of F is called with value V, the following steps are taken: i) If V is not an object, return false'); } - diff --git a/test/suite/ch15/15.3/15.3.5/S15.3.5.3_A1_T6.js b/test/suite/ch15/15.3/15.3.5/S15.3.5.3_A1_T6.js index ac62538d8..9a83d745e 100644 --- a/test/suite/ch15/15.3/15.3.5/S15.3.5.3_A1_T6.js +++ b/test/suite/ch15/15.3/15.3.5/S15.3.5.3_A1_T6.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. -/** - * Assume F is a Function object. When the [[HasInstance]] method of F is called with value V, the following steps are taken: i) If V is not an object, return false - * - * @path ch15/15.3/15.3.5/S15.3.5.3_A1_T6.js - * @description V is null - */ +/*--- +info: > + Assume F is a Function object. When the [[HasInstance]] method of F is + called with value V, the following steps are taken: i) If V is not an + object, return false +description: V is null +---*/ FACTORY = Function("name","this.name=name;"); @@ -14,4 +15,3 @@ FACTORY = Function("name","this.name=name;"); if ((null instanceof FACTORY)!==false) { $ERROR('#1: Assume F is a Function object. When the [[HasInstance]] method of F is called with value V, the following steps are taken: i) If V is not an object, return false'); } - diff --git a/test/suite/ch15/15.3/15.3.5/S15.3.5.3_A1_T7.js b/test/suite/ch15/15.3/15.3.5/S15.3.5.3_A1_T7.js index 2ddb306eb..0acaef638 100644 --- a/test/suite/ch15/15.3/15.3.5/S15.3.5.3_A1_T7.js +++ b/test/suite/ch15/15.3/15.3.5/S15.3.5.3_A1_T7.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. -/** - * Assume F is a Function object. When the [[HasInstance]] method of F is called with value V, the following steps are taken: i) If V is not an object, return false - * - * @path ch15/15.3/15.3.5/S15.3.5.3_A1_T7.js - * @description V is undefined - */ +/*--- +info: > + Assume F is a Function object. When the [[HasInstance]] method of F is + called with value V, the following steps are taken: i) If V is not an + object, return false +description: V is undefined +---*/ FACTORY = Function("name","this.name=name;"); @@ -14,4 +15,3 @@ FACTORY = Function("name","this.name=name;"); if ((undefined instanceof FACTORY)!==false) { $ERROR('#1: Assume F is a Function object. When the [[HasInstance]] method of F is called with value V, the following steps are taken: i) If V is not an object, return false'); } - diff --git a/test/suite/ch15/15.3/15.3.5/S15.3.5.3_A1_T8.js b/test/suite/ch15/15.3/15.3.5/S15.3.5.3_A1_T8.js index 72cd6e7ac..3b56bf15a 100644 --- a/test/suite/ch15/15.3/15.3.5/S15.3.5.3_A1_T8.js +++ b/test/suite/ch15/15.3/15.3.5/S15.3.5.3_A1_T8.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. -/** - * Assume F is a Function object. When the [[HasInstance]] method of F is called with value V, the following steps are taken: i) If V is not an object, return false - * - * @path ch15/15.3/15.3.5/S15.3.5.3_A1_T8.js - * @description V is undefined variable - */ +/*--- +info: > + Assume F is a Function object. When the [[HasInstance]] method of F is + called with value V, the following steps are taken: i) If V is not an + object, return false +description: V is undefined variable +---*/ FACTORY = Function("name","this.name=name;"); @@ -16,4 +17,3 @@ if ((x instanceof FACTORY)!==false) { } var x; - diff --git a/test/suite/ch15/15.3/15.3.5/S15.3.5.3_A2_T2.js b/test/suite/ch15/15.3/15.3.5/S15.3.5.3_A2_T2.js index 1a76931b9..9d18b0e21 100644 --- a/test/suite/ch15/15.3/15.3.5/S15.3.5.3_A2_T2.js +++ b/test/suite/ch15/15.3/15.3.5/S15.3.5.3_A2_T2.js @@ -1,15 +1,15 @@ // Copyright 2009 the Sputnik authors. All rights reserved. // This code is governed by the BSD license found in the LICENSE file. -/** - * Assume F is a Function object. When the [[HasInstance]] method of F is called with value V and V is an object, the following steps are taken: - * i) Call the [[Get]] method of F with property name "prototype". - * ii) Let O be Result(i). - * iii) O is not an object, throw a TypeError exception - * - * @path ch15/15.3/15.3.5/S15.3.5.3_A2_T2.js - * @description F.prototype is undefined, and V is empty object - */ +/*--- +info: > + Assume F is a Function object. When the [[HasInstance]] method of F is called with value V and V is an object, the following steps are taken: + i) Call the [[Get]] method of F with property name "prototype". + ii) Let O be Result(i). + iii) O is not an object, throw a TypeError exception +description: F.prototype is undefined, and V is empty object +includes: [$FAIL.js] +---*/ FACTORY = new Function; @@ -26,6 +26,3 @@ try { $ERROR('#1.1: O is not an object, throw a TypeError exception'); } } - - - diff --git a/test/suite/ch15/15.3/15.3.5/S15.3.5.3_A2_T5.js b/test/suite/ch15/15.3/15.3.5/S15.3.5.3_A2_T5.js index c84ed748e..0be5c506f 100644 --- a/test/suite/ch15/15.3/15.3.5/S15.3.5.3_A2_T5.js +++ b/test/suite/ch15/15.3/15.3.5/S15.3.5.3_A2_T5.js @@ -1,16 +1,16 @@ // Copyright 2009 the Sputnik authors. All rights reserved. // This code is governed by the BSD license found in the LICENSE file. -/** - * Assume F is a Function object. When the [[HasInstance]] method of - * F is called with value V and V is an object, the following steps - * are taken: i) Call the [[Get]] method of F with property name - * "prototype". ii) Let O be Result(i). iii) O is not an object, - * throw a TypeError exception - * - * @path ch15/15.3/15.3.5/S15.3.5.3_A2_T5.js - * @description F.prototype is void 0, and V is new F - */ +/*--- +info: > + Assume F is a Function object. When the [[HasInstance]] method of + F is called with value V and V is an object, the following steps + are taken: i) Call the [[Get]] method of F with property name + "prototype". ii) Let O be Result(i). iii) O is not an object, + throw a TypeError exception +description: F.prototype is void 0, and V is new F +includes: [$FAIL.js] +---*/ FACTORY = Function("this.prop=1;"); @@ -34,4 +34,3 @@ try { if ((instance.constructor !== FACTORY) || (instance.name !== "fairy")) { $ERROR('#2: instance.constructor === FACTORY'); } - diff --git a/test/suite/ch15/15.3/15.3.5/S15.3.5.3_A2_T6.js b/test/suite/ch15/15.3/15.3.5/S15.3.5.3_A2_T6.js index 1ec347709..0cf183a50 100644 --- a/test/suite/ch15/15.3/15.3.5/S15.3.5.3_A2_T6.js +++ b/test/suite/ch15/15.3/15.3.5/S15.3.5.3_A2_T6.js @@ -1,16 +1,16 @@ // Copyright 2009 the Sputnik authors. All rights reserved. // This code is governed by the BSD license found in the LICENSE file. -/** - * Assume F is a Function object. When the [[HasInstance]] method of - * F is called with value V and V is an object, the following steps - * are taken: i) Call the [[Get]] method of F with property name - * "prototype". ii) Let O be Result(i). iii) O is not an object, - * throw a TypeError exception - * - * @path ch15/15.3/15.3.5/S15.3.5.3_A2_T6.js - * @description F.prototype is string, and V is function - */ +/*--- +info: > + Assume F is a Function object. When the [[HasInstance]] method of + F is called with value V and V is an object, the following steps + are taken: i) Call the [[Get]] method of F with property name + "prototype". ii) Let O be Result(i). iii) O is not an object, + throw a TypeError exception +description: F.prototype is string, and V is function +includes: [$FAIL.js] +---*/ FACTORY = new Function; @@ -26,4 +26,3 @@ try { $ERROR('#1.1: O is not an object, throw a TypeError exception'); } } - diff --git a/test/suite/ch15/15.3/15.3.5/S15.3.5.3_A3_T1.js b/test/suite/ch15/15.3/15.3.5/S15.3.5.3_A3_T1.js index 93779f8ff..8d6236fa0 100644 --- a/test/suite/ch15/15.3/15.3.5/S15.3.5.3_A3_T1.js +++ b/test/suite/ch15/15.3/15.3.5/S15.3.5.3_A3_T1.js @@ -1,18 +1,17 @@ // Copyright 2009 the Sputnik authors. All rights reserved. // This code is governed by the BSD license found in the LICENSE file. -/** - * Assume F is a Function object. When the [[HasInstance]] method of F is called with value V and V is an object, the following steps are taken: - * i) Call the [[Get]] method of F with property name "prototype". - * ii) Let O be Result(i) and O is an object. - * iii) Let V be the value of the [[Prototype]] property of V. - * iv) If V is null, return false. - * v) If O and V refer to the same object or if they refer to objects joined to each other (13.1.2), return true. - * vi) Go to step iii) - * - * @path ch15/15.3/15.3.5/S15.3.5.3_A3_T1.js - * @description F.prototype.type is 1, and V is new F - */ +/*--- +info: > + Assume F is a Function object. When the [[HasInstance]] method of F is called with value V and V is an object, the following steps are taken: + i) Call the [[Get]] method of F with property name "prototype". + ii) Let O be Result(i) and O is an object. + iii) Let V be the value of the [[Prototype]] property of V. + iv) If V is null, return false. + v) If O and V refer to the same object or if they refer to objects joined to each other (13.1.2), return true. + vi) Go to step iii) +description: F.prototype.type is 1, and V is new F +---*/ FACTORY = Function("this.name=\"root\""); @@ -24,4 +23,3 @@ instance = new FACTORY; if (!(instance instanceof FACTORY)) { $ERROR('#1: If O and V refer to the same object or if they refer to objects joined to each other (13.1.2), return true'); } - diff --git a/test/suite/ch15/15.3/15.3.5/S15.3.5.3_A3_T2.js b/test/suite/ch15/15.3/15.3.5/S15.3.5.3_A3_T2.js index d3f2cc7e3..5a28fb74f 100644 --- a/test/suite/ch15/15.3/15.3.5/S15.3.5.3_A3_T2.js +++ b/test/suite/ch15/15.3/15.3.5/S15.3.5.3_A3_T2.js @@ -1,18 +1,17 @@ // Copyright 2009 the Sputnik authors. All rights reserved. // This code is governed by the BSD license found in the LICENSE file. -/** - * Assume F is a Function object. When the [[HasInstance]] method of F is called with value V and V is an object, the following steps are taken: - * i) Call the [[Get]] method of F with property name "prototype". - * ii) Let O be Result(i) and O is an object. - * iii) Let V be the value of the [[Prototype]] property of V. - * iv) If V is null, return false. - * v) If O and V refer to the same object or if they refer to objects joined to each other (13.1.2), return true. - * vi) Go to step iii) - * - * @path ch15/15.3/15.3.5/S15.3.5.3_A3_T2.js - * @description F.prototype is Object.prototype, and V is empty object - */ +/*--- +info: > + Assume F is a Function object. When the [[HasInstance]] method of F is called with value V and V is an object, the following steps are taken: + i) Call the [[Get]] method of F with property name "prototype". + ii) Let O be Result(i) and O is an object. + iii) Let V be the value of the [[Prototype]] property of V. + iv) If V is null, return false. + v) If O and V refer to the same object or if they refer to objects joined to each other (13.1.2), return true. + vi) Go to step iii) +description: F.prototype is Object.prototype, and V is empty object +---*/ FAKEFACTORY = Function(); @@ -29,4 +28,3 @@ FAKEFACTORY.prototype=Object.prototype; if (!(fakeinstance instanceof FAKEFACTORY)) { $ERROR('#2: If O and V refer to the same object or if they refer to objects joined to each other (13.1.2), return true'); } - diff --git a/test/suite/ch15/15.3/15.3.5/S15.3.5_A1_T1.js b/test/suite/ch15/15.3/15.3.5/S15.3.5_A1_T1.js index 792eb4920..fa2839f9c 100644 --- a/test/suite/ch15/15.3/15.3.5/S15.3.5_A1_T1.js +++ b/test/suite/ch15/15.3/15.3.5/S15.3.5_A1_T1.js @@ -1,16 +1,13 @@ // Copyright 2009 the Sputnik authors. All rights reserved. // This code is governed by the BSD license found in the LICENSE file. -/** - * The value of the [[Class]] property is "Function" - * - * @path ch15/15.3/15.3.5/S15.3.5_A1_T1.js - * @description For testing use variable f = new Function - */ +/*--- +info: The value of the [[Class]] property is "Function" +description: For testing use variable f = new Function +---*/ var f = new Function; if (Object.prototype.toString.call(f) !== "[object Function]") { $ERROR('#1: The value of the [[Class]] property is "Function"'); } - diff --git a/test/suite/ch15/15.3/15.3.5/S15.3.5_A1_T2.js b/test/suite/ch15/15.3/15.3.5/S15.3.5_A1_T2.js index 1d33ccc16..03e786e0a 100644 --- a/test/suite/ch15/15.3/15.3.5/S15.3.5_A1_T2.js +++ b/test/suite/ch15/15.3/15.3.5/S15.3.5_A1_T2.js @@ -1,17 +1,13 @@ // Copyright 2009 the Sputnik authors. All rights reserved. // This code is governed by the BSD license found in the LICENSE file. -/** - * The value of the [[Class]] property is "Function" - * - * @path ch15/15.3/15.3.5/S15.3.5_A1_T2.js - * @description For testing use variable f = Function() - */ +/*--- +info: The value of the [[Class]] property is "Function" +description: For testing use variable f = Function() +---*/ var f = Function(); if (Object.prototype.toString.call(f) !== "[object Function]") { $ERROR('#1: The value of the [[Class]] property is "Function"'); } - - diff --git a/test/suite/ch15/15.3/15.3.5/S15.3.5_A2_T1.js b/test/suite/ch15/15.3/15.3.5/S15.3.5_A2_T1.js index a4c5c74f0..f623cedce 100644 --- a/test/suite/ch15/15.3/15.3.5/S15.3.5_A2_T1.js +++ b/test/suite/ch15/15.3/15.3.5/S15.3.5_A2_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. -/** - * Every function instance has a [[Call]] property - * - * @path ch15/15.3/15.3.5/S15.3.5_A2_T1.js - * @description For testing call Function("var x =1; this.y=2;return \"OK\";")() - */ +/*--- +info: Every function instance has a [[Call]] property +description: For testing call Function("var x =1; this.y=2;return \"OK\";")() +---*/ //CHECK#1 if (Function("var x =1; this.y=2;return \"OK\";")() !== "OK") { @@ -22,4 +20,3 @@ if (typeof x !== "undefined") { if (y !== 2) { $ERROR('#3: Every function instance has a [[Call]] property'); } - diff --git a/test/suite/ch15/15.3/15.3.5/S15.3.5_A2_T2.js b/test/suite/ch15/15.3/15.3.5/S15.3.5_A2_T2.js index 86d2ea801..b3b6426eb 100644 --- a/test/suite/ch15/15.3/15.3.5/S15.3.5_A2_T2.js +++ b/test/suite/ch15/15.3/15.3.5/S15.3.5_A2_T2.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. -/** - * Every function instance has a [[Call]] property - * - * @path ch15/15.3/15.3.5/S15.3.5_A2_T2.js - * @description For testing call (new Function("arg1,arg2","var x =arg1; this.y=arg2;return arg1+arg2;"))("1",2) - */ +/*--- +info: Every function instance has a [[Call]] property +description: > + For testing call (new Function("arg1,arg2","var x =arg1; + this.y=arg2;return arg1+arg2;"))("1",2) +---*/ //CHECK#1 if ((new Function("arg1,arg2","var x =arg1; this.y=arg2;return arg1+arg2;"))("1",2) !== "12") { @@ -22,4 +22,3 @@ if (typeof x !== "undefined") { if (y !== 2) { $ERROR('#3: Every function instance has a [[Call]] property'); } - diff --git a/test/suite/ch15/15.3/15.3.5/S15.3.5_A3_T1.js b/test/suite/ch15/15.3/15.3.5/S15.3.5_A3_T1.js index 357eb0c15..ea74492ba 100644 --- a/test/suite/ch15/15.3/15.3.5/S15.3.5_A3_T1.js +++ b/test/suite/ch15/15.3/15.3.5/S15.3.5_A3_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. -/** - * every function instance has a [[Construct]] property - * - * @path ch15/15.3/15.3.5/S15.3.5_A3_T1.js - * @description As constructor use Function("var x =1; this.y=2;return \"OK\";") - */ +/*--- +info: every function instance has a [[Construct]] property +description: As constructor use Function("var x =1; this.y=2;return \"OK\";") +---*/ FACTORY = Function("var x =1; this.y=2;return \"OK\";"); obj = new FACTORY; @@ -25,4 +23,3 @@ if (obj.constructor !== FACTORY) { if (obj.y !== 2) { $ERROR('#3: every function instance has a [[Construct]] property'); } - diff --git a/test/suite/ch15/15.3/15.3.5/S15.3.5_A3_T2.js b/test/suite/ch15/15.3/15.3.5/S15.3.5_A3_T2.js index ef8607eee..1762abba5 100644 --- a/test/suite/ch15/15.3/15.3.5/S15.3.5_A3_T2.js +++ b/test/suite/ch15/15.3/15.3.5/S15.3.5_A3_T2.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. -/** - * every function instance has a [[Construct]] property - * - * @path ch15/15.3/15.3.5/S15.3.5_A3_T2.js - * @description As constructor use new Function("arg1,arg2","var x =1; this.y=arg1+arg2;return \"OK\";") - */ +/*--- +info: every function instance has a [[Construct]] property +description: > + As constructor use new Function("arg1,arg2","var x =1; + this.y=arg1+arg2;return \"OK\";") +---*/ FACTORY = new Function("arg1,arg2","var x =1; this.y=arg1+arg2;return \"OK\";"); obj = new FACTORY("1",2); @@ -25,4 +25,3 @@ if (obj.constructor !== FACTORY) { if (obj.y !== "12") { $ERROR('#3: every function instance has a [[Construct]] property'); } - |