From 303880e2d03cfc6d9f7b4d7a43aa80de33377993 Mon Sep 17 00:00:00 2001 From: Jordan Harband Date: Wed, 19 Jan 2022 12:55:51 -0800 Subject: [PATCH] add class fields test for chrome bug See: - https://github.com/babel/babel/issues/14181 - https://bugs.chromium.org/p/v8/issues/detail?id=12421 - https://github.com/nodejs/node/pull/40907 --- data-es2016plus.js | 29 +++ es2016plus/index.html | 489 +++++++++++++++++++++++++++--------------- 2 files changed, 347 insertions(+), 171 deletions(-) diff --git a/data-es2016plus.js b/data-es2016plus.js index 3c49cbf220..e181f404dc 100644 --- a/data-es2016plus.js +++ b/data-es2016plus.js @@ -5604,6 +5604,35 @@ exports.tests = [ rhino1_7_13: false } }, + { + name: 'static class fields use [[Define]]', + exec: function () { /* + return (class X { static name = "name"; }).name === 'name'; + */}, + res: { + chrome73: true, + chrome90: true, + chrome94: true, + chrome97: false, + firefox95: true, + firefox96: true, + node11_0: false, + node12_0: true, + node12_5: true, + node12_9: true, + node12_11: true, + node13_0: true, + node13_2: true, + node14_0: true, + node14_5: true, + node14_6: true, + node15_0: true, + node16_0: true, + node16_9: true, + node16_11: true, + safari15: true + } + }, { name: 'private static class fields', mdn: 'https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Classes/Class_elements#Private_static_fields', diff --git a/es2016plus/index.html b/es2016plus/index.html index c46aa89e6a..f29e627232 100644 --- a/es2016plus/index.html +++ b/es2016plus/index.html @@ -27325,148 +27325,148 @@ Yes §static class fields -1/3 -1/3 -3/3 -3/3 -0/3 -0/3 -0/3 -0/3 -0/3 -0/3 -0/3 -0/3 -1/3 -1/3 -1/3 -1/3 -1/3 -1/3 -1/3 -1/3 -0/3 -0/3 -2/3 -2/3 -2/3 -2/3 -2/3 -2/3 -2/3 -3/3 -3/3 -3/3 -3/3 -3/3 -3/3 -3/3 -3/3 -0/3 -3/3 -3/3 -3/3 -3/3 -3/3 -3/3 -3/3 -3/3 -3/3 -3/3 -3/3 -3/3 -0/3 -3/3 -3/3 -3/3 -3/3 -3/3 -3/3 -3/3 -3/3 -3/3 -3/3 -0/3 -0/3 -0/3 -3/3 -3/3 -3/3 -3/3 -3/3 -3/3 -3/3 -3/3 -3/3 -3/3 -3/3 -3/3 -3/3 -3/3 -0/3 -0/3 -0/3 -0/3 -0/3 -0/3 -0/3 -0/3 -0/3 -0/3 -0/3 -0/3 -0/3 -0/3 -0/3 -0/3 -3/3 -3/3 -3/3 -3/3 -3/3 -3/3 -3/3 -3/3 -3/3 -3/3 -3/3 -3/3 -3/3 -0/3 -0/3 -0/3 -0/3 -0/3 -0/3 -0/3 -3/3 -3/3 -3/3 -3/3 -3/3 -0/3 -0/3 -0/3 -0/3 -0/3 -0/3 -0/3 -0/3 -0/3 -0/3 -0/3 -3/3 -3/3 -3/3 -3/3 -3/3 -3/3 -3/3 -3/3 -3/3 -3/3 -3/3 -3/3 +1/4 +1/4 +3/4 +3/4 +0/4 +0/4 +0/4 +0/4 +0/4 +0/4 +0/4 +0/4 +1/4 +1/4 +1/4 +1/4 +1/4 +1/4 +1/4 +1/4 +0/4 +0/4 +2/4 +2/4 +2/4 +2/4 +2/4 +2/4 +2/4 +3/4 +3/4 +3/4 +3/4 +3/4 +4/4 +4/4 +4/4 +0/4 +4/4 +4/4 +4/4 +4/4 +4/4 +4/4 +4/4 +4/4 +4/4 +4/4 +4/4 +3/4 +0/4 +4/4 +4/4 +4/4 +4/4 +4/4 +4/4 +4/4 +4/4 +4/4 +4/4 +0/4 +0/4 +0/4 +3/4 +4/4 +4/4 +4/4 +4/4 +4/4 +4/4 +4/4 +4/4 +4/4 +4/4 +4/4 +4/4 +4/4 +0/4 +0/4 +0/4 +0/4 +0/4 +0/4 +0/4 +0/4 +0/4 +0/4 +0/4 +0/4 +0/4 +0/4 +0/4 +0/4 +4/4 +4/4 +4/4 +4/4 +4/4 +4/4 +4/4 +4/4 +4/4 +4/4 +4/4 +4/4 +4/4 +0/4 +0/4 +0/4 +0/4 +0/4 +0/4 +0/4 +3/4 +3/4 +3/4 +3/4 +3/4 +0/4 +0/4 +0/4 +0/4 +0/4 +0/4 +0/4 +0/4 +0/4 +0/4 +0/4 +4/4 +4/4 +4/4 +4/4 +4/4 +4/4 +4/4 +4/4 +4/4 +4/4 +4/4 +4/4 §public static class fields MDN (Mozilla Development Network) logo  +? +? +? +? +? +? +? +? +? +? +? +? +? +? +? +? +? +? +? +? +? +? +? +? +? +? +? +? +? +? +? +? +? +? +Yes +Yes +Yes +? +Yes +Yes +Yes +Yes +Yes +Yes +Yes +Yes +Yes +Yes +Yes +No +? +Yes +Yes +Yes +Yes +Yes +Yes +Yes +Yes +Yes +Yes +? +? +? +? +Yes +Yes +Yes +Yes +Yes +Yes +Yes +Yes +Yes +Yes +Yes +Yes +Yes +? +? +? +? +? +? +? +? +? +? +? +? +? +? +? +No +Yes +Yes +Yes +Yes +Yes +Yes +Yes +Yes +Yes +Yes +Yes +Yes +Yes +? +? +? +? +? +? +? +? +? +? +? +? +? +? +? +? +? +? +? +? +? +? +? +Yes +Yes +Yes +Yes +Yes +Yes +Yes +Yes +Yes +Yes +Yes +Yes + §private static class fields MDN (Mozilla Development Network) logo  ? ? @@ -27776,7 +27923,7 @@ static ['x'] = 42; } return C.x === 42; - ">test(function(){try{var asyncTestPassed=global.__asyncPassedFn && __asyncPassedFn("183");try{return Function("asyncTestPassed","\nclass C {\n static ['x'] = 42;\n}\nreturn C.x === 42;\n ")(asyncTestPassed)}catch(e){asyncTestPassed=global.__strictAsyncPassedFn && __strictAsyncPassedFn("183");return Function("asyncTestPassed","'use strict';"+"\nclass C {\n static ['x'] = 42;\n}\nreturn C.x === 42;\n ")(asyncTestPassed)&&"Strict"}}catch(e){return false;}}()); + ">test(function(){try{var asyncTestPassed=global.__asyncPassedFn && __asyncPassedFn("184");try{return Function("asyncTestPassed","\nclass C {\n static ['x'] = 42;\n}\nreturn C.x === 42;\n ")(asyncTestPassed)}catch(e){asyncTestPassed=global.__strictAsyncPassedFn && __strictAsyncPassedFn("184");return Function("asyncTestPassed","'use strict';"+"\nclass C {\n static ['x'] = 42;\n}\nreturn C.x === 42;\n ")(asyncTestPassed)&&"Strict"}}catch(e){return false;}}()); ? ? @@ -28073,7 +28220,7 @@ } } return new C().x() === 42; - ">test(function(){try{var asyncTestPassed=global.__asyncPassedFn && __asyncPassedFn("185");try{return Function("asyncTestPassed","\nclass C {\n #x() { return 42; }\n x() {\n return this.#x();\n }\n}\nreturn new C().x() === 42;\n ")(asyncTestPassed)}catch(e){asyncTestPassed=global.__strictAsyncPassedFn && __strictAsyncPassedFn("185");return Function("asyncTestPassed","'use strict';"+"\nclass C {\n #x() { return 42; }\n x() {\n return this.#x();\n }\n}\nreturn new C().x() === 42;\n ")(asyncTestPassed)&&"Strict"}}catch(e){return false;}}()); + ">test(function(){try{var asyncTestPassed=global.__asyncPassedFn && __asyncPassedFn("186");try{return Function("asyncTestPassed","\nclass C {\n #x() { return 42; }\n x() {\n return this.#x();\n }\n}\nreturn new C().x() === 42;\n ")(asyncTestPassed)}catch(e){asyncTestPassed=global.__strictAsyncPassedFn && __strictAsyncPassedFn("186");return Function("asyncTestPassed","'use strict';"+"\nclass C {\n #x() { return 42; }\n x() {\n return this.#x();\n }\n}\nreturn new C().x() === 42;\n ")(asyncTestPassed)&&"Strict"}}catch(e){return false;}}()); ? ? @@ -28226,7 +28373,7 @@ } } return new C().x() === 42; - ">test(function(){try{var asyncTestPassed=global.__asyncPassedFn && __asyncPassedFn("186");try{return Function("asyncTestPassed","\nclass C {\n static #x() { return 42; }\n x() {\n return C.#x();\n }\n}\nreturn new C().x() === 42;\n ")(asyncTestPassed)}catch(e){asyncTestPassed=global.__strictAsyncPassedFn && __strictAsyncPassedFn("186");return Function("asyncTestPassed","'use strict';"+"\nclass C {\n static #x() { return 42; }\n x() {\n return C.#x();\n }\n}\nreturn new C().x() === 42;\n ")(asyncTestPassed)&&"Strict"}}catch(e){return false;}}()); + ">test(function(){try{var asyncTestPassed=global.__asyncPassedFn && __asyncPassedFn("187");try{return Function("asyncTestPassed","\nclass C {\n static #x() { return 42; }\n x() {\n return C.#x();\n }\n}\nreturn new C().x() === 42;\n ")(asyncTestPassed)}catch(e){asyncTestPassed=global.__strictAsyncPassedFn && __strictAsyncPassedFn("187");return Function("asyncTestPassed","'use strict';"+"\nclass C {\n static #x() { return 42; }\n x() {\n return C.#x();\n }\n}\nreturn new C().x() === 42;\n ")(asyncTestPassed)&&"Strict"}}catch(e){return false;}}()); ? ? @@ -28382,7 +28529,7 @@ } } return new C().x() === 42 && y; - ">test(function(){try{var asyncTestPassed=global.__asyncPassedFn && __asyncPassedFn("187");try{return Function("asyncTestPassed","\nvar y = false;\nclass C {\n get #x() { return 42; }\n set #x(x) { y = x; }\n x() {\n this.#x = true;\n return this.#x;\n }\n}\nreturn new C().x() === 42 && y;\n ")(asyncTestPassed)}catch(e){asyncTestPassed=global.__strictAsyncPassedFn && __strictAsyncPassedFn("187");return Function("asyncTestPassed","'use strict';"+"\nvar y = false;\nclass C {\n get #x() { return 42; }\n set #x(x) { y = x; }\n x() {\n this.#x = true;\n return this.#x;\n }\n}\nreturn new C().x() === 42 && y;\n ")(asyncTestPassed)&&"Strict"}}catch(e){return false;}}()); + ">test(function(){try{var asyncTestPassed=global.__asyncPassedFn && __asyncPassedFn("188");try{return Function("asyncTestPassed","\nvar y = false;\nclass C {\n get #x() { return 42; }\n set #x(x) { y = x; }\n x() {\n this.#x = true;\n return this.#x;\n }\n}\nreturn new C().x() === 42 && y;\n ")(asyncTestPassed)}catch(e){asyncTestPassed=global.__strictAsyncPassedFn && __strictAsyncPassedFn("188");return Function("asyncTestPassed","'use strict';"+"\nvar y = false;\nclass C {\n get #x() { return 42; }\n set #x(x) { y = x; }\n x() {\n this.#x = true;\n return this.#x;\n }\n}\nreturn new C().x() === 42 && y;\n ")(asyncTestPassed)&&"Strict"}}catch(e){return false;}}()); ? ? @@ -28538,7 +28685,7 @@ } } return new C().x() === 42 && y; - ">test(function(){try{var asyncTestPassed=global.__asyncPassedFn && __asyncPassedFn("188");try{return Function("asyncTestPassed","\nvar y = false;\nclass C {\n static get #x() { return 42; }\n static set #x(x) { y = x; }\n x() {\n C.#x = true;\n return C.#x;\n }\n}\nreturn new C().x() === 42 && y;\n ")(asyncTestPassed)}catch(e){asyncTestPassed=global.__strictAsyncPassedFn && __strictAsyncPassedFn("188");return Function("asyncTestPassed","'use strict';"+"\nvar y = false;\nclass C {\n static get #x() { return 42; }\n static set #x(x) { y = x; }\n x() {\n C.#x = true;\n return C.#x;\n }\n}\nreturn new C().x() === 42 && y;\n ")(asyncTestPassed)&&"Strict"}}catch(e){return false;}}()); + ">test(function(){try{var asyncTestPassed=global.__asyncPassedFn && __asyncPassedFn("189");try{return Function("asyncTestPassed","\nvar y = false;\nclass C {\n static get #x() { return 42; }\n static set #x(x) { y = x; }\n x() {\n C.#x = true;\n return C.#x;\n }\n}\nreturn new C().x() === 42 && y;\n ")(asyncTestPassed)}catch(e){asyncTestPassed=global.__strictAsyncPassedFn && __strictAsyncPassedFn("189");return Function("asyncTestPassed","'use strict';"+"\nvar y = false;\nclass C {\n static get #x() { return 42; }\n static set #x(x) { y = x; }\n x() {\n C.#x = true;\n return C.#x;\n }\n}\nreturn new C().x() === 42 && y;\n ")(asyncTestPassed)&&"Strict"}}catch(e){return false;}}()); ? ? @@ -28691,7 +28838,7 @@ } } return A.check(new A) && !A.check({}); - ">test(function(){try{var asyncTestPassed=global.__asyncPassedFn && __asyncPassedFn("189");try{return Function("asyncTestPassed","\nclass A {\n #x;\n static check(obj) {\n return #x in obj;\n }\n}\nreturn A.check(new A) && !A.check({});\n ")(asyncTestPassed)}catch(e){asyncTestPassed=global.__strictAsyncPassedFn && __strictAsyncPassedFn("189");return Function("asyncTestPassed","'use strict';"+"\nclass A {\n #x;\n static check(obj) {\n return #x in obj;\n }\n}\nreturn A.check(new A) && !A.check({});\n ")(asyncTestPassed)&&"Strict"}}catch(e){return false;}}()); + ">test(function(){try{var asyncTestPassed=global.__asyncPassedFn && __asyncPassedFn("190");try{return Function("asyncTestPassed","\nclass A {\n #x;\n static check(obj) {\n return #x in obj;\n }\n}\nreturn A.check(new A) && !A.check({});\n ")(asyncTestPassed)}catch(e){asyncTestPassed=global.__strictAsyncPassedFn && __strictAsyncPassedFn("190");return Function("asyncTestPassed","'use strict';"+"\nclass A {\n #x;\n static check(obj) {\n return #x in obj;\n }\n}\nreturn A.check(new A) && !A.check({});\n ")(asyncTestPassed)&&"Strict"}}catch(e){return false;}}()); ? No @@ -28990,7 +29137,7 @@ && arr.at(-1) === 3 && arr.at(3) === undefined && arr.at(-4) === undefined; - ">test(function(){try{var asyncTestPassed=global.__asyncPassedFn && __asyncPassedFn("191");try{return Function("asyncTestPassed","\nvar arr = [1, 2, 3];\nreturn arr.at(0) === 1\n && arr.at(-3) === 1\n && arr.at(1) === 2\n && arr.at(-2) === 2\n && arr.at(2) === 3\n && arr.at(-1) === 3\n && arr.at(3) === undefined\n && arr.at(-4) === undefined;\n ")(asyncTestPassed)}catch(e){asyncTestPassed=global.__strictAsyncPassedFn && __strictAsyncPassedFn("191");return Function("asyncTestPassed","'use strict';"+"\nvar arr = [1, 2, 3];\nreturn arr.at(0) === 1\n && arr.at(-3) === 1\n && arr.at(1) === 2\n && arr.at(-2) === 2\n && arr.at(2) === 3\n && arr.at(-1) === 3\n && arr.at(3) === undefined\n && arr.at(-4) === undefined;\n ")(asyncTestPassed)&&"Strict"}}catch(e){return false;}}()); + ">test(function(){try{var asyncTestPassed=global.__asyncPassedFn && __asyncPassedFn("192");try{return Function("asyncTestPassed","\nvar arr = [1, 2, 3];\nreturn arr.at(0) === 1\n && arr.at(-3) === 1\n && arr.at(1) === 2\n && arr.at(-2) === 2\n && arr.at(2) === 3\n && arr.at(-1) === 3\n && arr.at(3) === undefined\n && arr.at(-4) === undefined;\n ")(asyncTestPassed)}catch(e){asyncTestPassed=global.__strictAsyncPassedFn && __strictAsyncPassedFn("192");return Function("asyncTestPassed","'use strict';"+"\nvar arr = [1, 2, 3];\nreturn arr.at(0) === 1\n && arr.at(-3) === 1\n && arr.at(1) === 2\n && arr.at(-2) === 2\n && arr.at(2) === 3\n && arr.at(-1) === 3\n && arr.at(3) === undefined\n && arr.at(-4) === undefined;\n ")(asyncTestPassed)&&"Strict"}}catch(e){return false;}}()); ? ? @@ -29145,7 +29292,7 @@ && str.at(-1) === 'c' && str.at(3) === undefined && str.at(-4) === undefined; - ">test(function(){try{var asyncTestPassed=global.__asyncPassedFn && __asyncPassedFn("192");try{return Function("asyncTestPassed","\nvar str = 'abc';\nreturn str.at(0) === 'a'\n && str.at(-3) === 'a'\n && str.at(1) === 'b'\n && str.at(-2) === 'b'\n && str.at(2) === 'c'\n && str.at(-1) === 'c'\n && str.at(3) === undefined\n && str.at(-4) === undefined;\n ")(asyncTestPassed)}catch(e){asyncTestPassed=global.__strictAsyncPassedFn && __strictAsyncPassedFn("192");return Function("asyncTestPassed","'use strict';"+"\nvar str = 'abc';\nreturn str.at(0) === 'a'\n && str.at(-3) === 'a'\n && str.at(1) === 'b'\n && str.at(-2) === 'b'\n && str.at(2) === 'c'\n && str.at(-1) === 'c'\n && str.at(3) === undefined\n && str.at(-4) === undefined;\n ")(asyncTestPassed)&&"Strict"}}catch(e){return false;}}()); + ">test(function(){try{var asyncTestPassed=global.__asyncPassedFn && __asyncPassedFn("193");try{return Function("asyncTestPassed","\nvar str = 'abc';\nreturn str.at(0) === 'a'\n && str.at(-3) === 'a'\n && str.at(1) === 'b'\n && str.at(-2) === 'b'\n && str.at(2) === 'c'\n && str.at(-1) === 'c'\n && str.at(3) === undefined\n && str.at(-4) === undefined;\n ")(asyncTestPassed)}catch(e){asyncTestPassed=global.__strictAsyncPassedFn && __strictAsyncPassedFn("193");return Function("asyncTestPassed","'use strict';"+"\nvar str = 'abc';\nreturn str.at(0) === 'a'\n && str.at(-3) === 'a'\n && str.at(1) === 'b'\n && str.at(-2) === 'b'\n && str.at(2) === 'c'\n && str.at(-1) === 'c'\n && str.at(3) === undefined\n && str.at(-4) === undefined;\n ")(asyncTestPassed)&&"Strict"}}catch(e){return false;}}()); ? ? @@ -29316,7 +29463,7 @@ && arr.at(3) === undefined && arr.at(-4) === undefined; }); - ">test(function(){try{var asyncTestPassed=global.__asyncPassedFn && __asyncPassedFn("193");try{return Function("asyncTestPassed","\nreturn [\n 'Int8Array',\n 'Uint8Array',\n 'Uint8ClampedArray',\n 'Int16Array',\n 'Uint16Array',\n 'Int32Array',\n 'Uint32Array',\n 'Float32Array',\n 'Float64Array'\n].every(function (TypedArray) {\n var Constructor = globalThis[TypedArray];\n if (typeof Constructor !== 'function') {\n return false;\n }\n var arr = new Constructor([1, 2, 3]);\n return arr.at(0) === 1\n && arr.at(-3) === 1\n && arr.at(1) === 2\n && arr.at(-2) === 2\n && arr.at(2) === 3\n && arr.at(-1) === 3\n && arr.at(3) === undefined\n && arr.at(-4) === undefined;\n});\n ")(asyncTestPassed)}catch(e){asyncTestPassed=global.__strictAsyncPassedFn && __strictAsyncPassedFn("193");return Function("asyncTestPassed","'use strict';"+"\nreturn [\n 'Int8Array',\n 'Uint8Array',\n 'Uint8ClampedArray',\n 'Int16Array',\n 'Uint16Array',\n 'Int32Array',\n 'Uint32Array',\n 'Float32Array',\n 'Float64Array'\n].every(function (TypedArray) {\n var Constructor = globalThis[TypedArray];\n if (typeof Constructor !== 'function') {\n return false;\n }\n var arr = new Constructor([1, 2, 3]);\n return arr.at(0) === 1\n && arr.at(-3) === 1\n && arr.at(1) === 2\n && arr.at(-2) === 2\n && arr.at(2) === 3\n && arr.at(-1) === 3\n && arr.at(3) === undefined\n && arr.at(-4) === undefined;\n});\n ")(asyncTestPassed)&&"Strict"}}catch(e){return false;}}()); + ">test(function(){try{var asyncTestPassed=global.__asyncPassedFn && __asyncPassedFn("194");try{return Function("asyncTestPassed","\nreturn [\n 'Int8Array',\n 'Uint8Array',\n 'Uint8ClampedArray',\n 'Int16Array',\n 'Uint16Array',\n 'Int32Array',\n 'Uint32Array',\n 'Float32Array',\n 'Float64Array'\n].every(function (TypedArray) {\n var Constructor = globalThis[TypedArray];\n if (typeof Constructor !== 'function') {\n return false;\n }\n var arr = new Constructor([1, 2, 3]);\n return arr.at(0) === 1\n && arr.at(-3) === 1\n && arr.at(1) === 2\n && arr.at(-2) === 2\n && arr.at(2) === 3\n && arr.at(-1) === 3\n && arr.at(3) === undefined\n && arr.at(-4) === undefined;\n});\n ")(asyncTestPassed)}catch(e){asyncTestPassed=global.__strictAsyncPassedFn && __strictAsyncPassedFn("194");return Function("asyncTestPassed","'use strict';"+"\nreturn [\n 'Int8Array',\n 'Uint8Array',\n 'Uint8ClampedArray',\n 'Int16Array',\n 'Uint16Array',\n 'Int32Array',\n 'Uint32Array',\n 'Float32Array',\n 'Float64Array'\n].every(function (TypedArray) {\n var Constructor = globalThis[TypedArray];\n if (typeof Constructor !== 'function') {\n return false;\n }\n var arr = new Constructor([1, 2, 3]);\n return arr.at(0) === 1\n && arr.at(-3) === 1\n && arr.at(1) === 2\n && arr.at(-2) === 2\n && arr.at(2) === 3\n && arr.at(-1) === 3\n && arr.at(3) === undefined\n && arr.at(-4) === undefined;\n});\n ")(asyncTestPassed)&&"Strict"}}catch(e){return false;}}()); ? ? @@ -29607,7 +29754,7 @@ §Basic functionality ? ? @@ -29760,7 +29907,7 @@ } catch (e) { return ok; } - ">test(function(){try{var asyncTestPassed=global.__asyncPassedFn && __asyncPassedFn("196");try{return Function("asyncTestPassed","\nvar ok = !!Object.hasOwn;\ntry {\n Object.hasOwn(null, { toString: function () { ok = false } });\n return false;\n} catch (e) {\n return ok;\n}\n ")(asyncTestPassed)}catch(e){asyncTestPassed=global.__strictAsyncPassedFn && __strictAsyncPassedFn("196");return Function("asyncTestPassed","'use strict';"+"\nvar ok = !!Object.hasOwn;\ntry {\n Object.hasOwn(null, { toString: function () { ok = false } });\n return false;\n} catch (e) {\n return ok;\n}\n ")(asyncTestPassed)&&"Strict"}}catch(e){return false;}}()); + ">test(function(){try{var asyncTestPassed=global.__asyncPassedFn && __asyncPassedFn("197");try{return Function("asyncTestPassed","\nvar ok = !!Object.hasOwn;\ntry {\n Object.hasOwn(null, { toString: function () { ok = false } });\n return false;\n} catch (e) {\n return ok;\n}\n ")(asyncTestPassed)}catch(e){asyncTestPassed=global.__strictAsyncPassedFn && __strictAsyncPassedFn("197");return Function("asyncTestPassed","'use strict';"+"\nvar ok = !!Object.hasOwn;\ntry {\n Object.hasOwn(null, { toString: function () { ok = false } });\n return false;\n} catch (e) {\n return ok;\n}\n ")(asyncTestPassed)&&"Strict"}}catch(e){return false;}}()); ? ? @@ -29911,7 +30058,7 @@ static { ok = true; } } return ok; - ">test(function(){try{var asyncTestPassed=global.__asyncPassedFn && __asyncPassedFn("197");try{return Function("asyncTestPassed","\nlet ok = false;\nclass A {\n static { ok = true; }\n}\nreturn ok;\n ")(asyncTestPassed)}catch(e){asyncTestPassed=global.__strictAsyncPassedFn && __strictAsyncPassedFn("197");return Function("asyncTestPassed","'use strict';"+"\nlet ok = false;\nclass A {\n static { ok = true; }\n}\nreturn ok;\n ")(asyncTestPassed)&&"Strict"}}catch(e){return false;}}()); + ">test(function(){try{var asyncTestPassed=global.__asyncPassedFn && __asyncPassedFn("198");try{return Function("asyncTestPassed","\nlet ok = false;\nclass A {\n static { ok = true; }\n}\nreturn ok;\n ")(asyncTestPassed)}catch(e){asyncTestPassed=global.__strictAsyncPassedFn && __strictAsyncPassedFn("198");return Function("asyncTestPassed","'use strict';"+"\nlet ok = false;\nclass A {\n static { ok = true; }\n}\nreturn ok;\n ")(asyncTestPassed)&&"Strict"}}catch(e){return false;}}()); ? No @@ -30203,7 +30350,7 @@ §Error has cause ? ? @@ -30350,7 +30497,7 @@ §Error.prototype lacks cause ? ? @@ -30498,7 +30645,7 @@ §EvalError has cause ? ? @@ -30645,7 +30792,7 @@ §EvalError.prototype lacks cause ? ? @@ -30793,7 +30940,7 @@ §RangeError has cause ? ? @@ -30940,7 +31087,7 @@ §RangeError.prototype lacks cause ? ? @@ -31088,7 +31235,7 @@ §ReferenceError has cause ? ? @@ -31235,7 +31382,7 @@ §ReferenceError.prototype lacks cause ? ? @@ -31383,7 +31530,7 @@ §SyntaxError has cause ? ? @@ -31530,7 +31677,7 @@ §SyntaxError.prototype lacks cause ? ? @@ -31678,7 +31825,7 @@ §TypeError has cause ? ? @@ -31825,7 +31972,7 @@ §TypeError.prototype lacks cause ? ? @@ -31973,7 +32120,7 @@ §URIError has cause ? ? @@ -32120,7 +32267,7 @@ §URIError.prototype lacks cause ? ? @@ -32268,7 +32415,7 @@ §AggregateError has cause ? ? @@ -32415,7 +32562,7 @@ §AggregateError.prototype lacks cause ? ?