From cb2858e279f80ad1d9c94a5cf866a494ef613c80 Mon Sep 17 00:00:00 2001 From: Satish Srinivasan Date: Mon, 2 Sep 2024 11:56:56 +0530 Subject: [PATCH] FIX: Arrow functions obj destructuring --- .../java/org/mozilla/javascript/Parser.java | 14 +- .../tests/DefaultParametersTest.java | 27 +- tests/testsrc/test262.properties | 1740 +++++++++++------ 3 files changed, 1164 insertions(+), 617 deletions(-) diff --git a/rhino/src/main/java/org/mozilla/javascript/Parser.java b/rhino/src/main/java/org/mozilla/javascript/Parser.java index 3eb474cbe8..f5e96f8883 100644 --- a/rhino/src/main/java/org/mozilla/javascript/Parser.java +++ b/rhino/src/main/java/org/mozilla/javascript/Parser.java @@ -3588,6 +3588,7 @@ private ObjectLiteral objectLiteral() throws IOException { setterNames = new HashSet<>(); } Comment objJsdocNode = getAndResetJsDoc(); + boolean processedDestructuringDefault = false; commaLoop: for (; ; ) { @@ -3621,12 +3622,10 @@ private ObjectLiteral objectLiteral() throws IOException { // many tokens.) int peeked = peekToken(); if (peeked != Token.COMMA && peeked != Token.COLON && peeked != Token.RC) { - if (peeked == Token.ASSIGN - && inDestructuringAssignment) { // we have an object literal with - // destructuring assignment and a - // default + if (peeked == Token.ASSIGN) { // we have an object literal with destructuring assignment if (compilerEnv.getLanguageVersion() >= Context.VERSION_ES6) { elems.add(plainProperty(pname, tt)); + processedDestructuringDefault = true; if (matchToken(Token.COMMA, true)) { continue; } else { @@ -3704,6 +3703,11 @@ private ObjectLiteral objectLiteral() throws IOException { } mustMatchToken(Token.RC, "msg.no.brace.prop", true); + if (processedDestructuringDefault && !inDestructuringAssignment) { + if (peekToken() == Token.RP) { + reportError("msg.syntax"); + } + } ObjectLiteral pn = new ObjectLiteral(pos, ts.tokenEnd - pos); if (objJsdocNode != null) { pn.setJsDocNode(objJsdocNode); @@ -3782,7 +3786,7 @@ private ObjectProperty plainProperty(AstNode property, int ptt) throws IOExcepti pn.setIsShorthand(true); pn.setLeftAndRight(property, nn); return pn; - } else if (tt == Token.ASSIGN && inDestructuringAssignment) { + } else if (tt == Token.ASSIGN) { /* we're in destructuring with defaults in a object literal; treat defaults as values */ ObjectProperty pn = new ObjectProperty(); consumeToken(); // consume the `=` diff --git a/tests/src/test/java/org/mozilla/javascript/tests/DefaultParametersTest.java b/tests/src/test/java/org/mozilla/javascript/tests/DefaultParametersTest.java index b5a8a042e8..00dedb5ef1 100644 --- a/tests/src/test/java/org/mozilla/javascript/tests/DefaultParametersTest.java +++ b/tests/src/test/java/org/mozilla/javascript/tests/DefaultParametersTest.java @@ -6,10 +6,7 @@ import org.junit.Ignore; import org.junit.Test; -import org.mozilla.javascript.Context; -import org.mozilla.javascript.EcmaError; -import org.mozilla.javascript.Scriptable; -import org.mozilla.javascript.Undefined; +import org.mozilla.javascript.*; /* Many of these are taken from examples at developer.mozilla.org @@ -40,7 +37,6 @@ public void functionDefaultArgsArrayArrow() throws Exception { } @Test - @Ignore("wip") public void functionDefaultArgsObjectArrow() throws Exception { final String script = "(({x = 1} = {x: 2}) => {\n" + " return x;\n" + "})"; @@ -66,6 +62,24 @@ public void functionDefaultArgsUsage() throws Exception { assertIntEvaluates(34, script + "\nfoo(32, 2)"); } + @Test + public void ObjIdInitSimpleStrictExpr() throws Exception { + final String script = "var e = (0, { eval = 0 } = {}); Object.keys(e).length == 0 && Object.values(e).length == 0"; + assertEvaluates(true, script); + } + + @Test + public void ObjIdInitSimpleStrictForOf() throws Exception { + final String script = "for ({ eval = 0 } of [{}]) ;"; + assertEvaluates(Undefined.instance, script); + } + + @Test + public void CoverInitName() throws Exception { + final String script = "({ a = 1 });"; + assertThrows("syntax error", script); + } + @Test @Ignore("wip") // TODO: generates bad tree public void letExprDestructuring() throws Exception { @@ -345,6 +359,9 @@ private static void assertThrowsWithLanguageLevel( assertTrue(((EcmaError) e).getMessage().startsWith(expected)); return true; } + } catch (EvaluatorException e) { + assertTrue(((EvaluatorException) e).getMessage().startsWith(expected)); + return true; } fail("expected EcmaError but got " + rep); return null; diff --git a/tests/testsrc/test262.properties b/tests/testsrc/test262.properties index 8b9e74625a..61c058fe64 100644 --- a/tests/testsrc/test262.properties +++ b/tests/testsrc/test262.properties @@ -26,7 +26,7 @@ harness 22/115 (19.13%) isConstructor.js {unsupported: [Reflect.construct]} nativeFunctionMatcher.js -built-ins/Array 362/3055 (11.85%) +built-ins/Array 471/3055 (15.42%) fromAsync 94/94 (100.0%) from/calling-from-valid-1-noStrict.js non-strict Spec pretty clearly says this should be undefined from/elements-deleted-after.js Checking to see if length changed, but spec says it should not @@ -116,18 +116,48 @@ built-ins/Array 362/3055 (11.85%) prototype/findIndex/resizable-buffer.js prototype/findIndex/resizable-buffer-grow-mid-iteration.js prototype/findIndex/resizable-buffer-shrink-mid-iteration.js + prototype/findLastIndex/array-altered-during-loop.js + prototype/findLastIndex/call-with-boolean.js prototype/findLastIndex/callbackfn-resize-arraybuffer.js + prototype/findLastIndex/length.js + prototype/findLastIndex/maximum-index.js + prototype/findLastIndex/name.js prototype/findLastIndex/not-a-constructor.js {unsupported: [Reflect.construct]} + prototype/findLastIndex/predicate-call-parameters.js + prototype/findLastIndex/predicate-call-this-non-strict.js non-strict prototype/findLastIndex/predicate-call-this-strict.js strict + prototype/findLastIndex/predicate-called-for-each-array-property.js + prototype/findLastIndex/predicate-not-called-on-empty-array.js + prototype/findLastIndex/prop-desc.js prototype/findLastIndex/resizable-buffer.js prototype/findLastIndex/resizable-buffer-grow-mid-iteration.js prototype/findLastIndex/resizable-buffer-shrink-mid-iteration.js + prototype/findLastIndex/return-abrupt-from-predicate-call.js + prototype/findLastIndex/return-abrupt-from-property.js + prototype/findLastIndex/return-abrupt-from-this-length.js + prototype/findLastIndex/return-index-predicate-result-is-true.js + prototype/findLastIndex/return-negative-one-if-predicate-returns-false-value.js + prototype/findLast/array-altered-during-loop.js + prototype/findLast/call-with-boolean.js prototype/findLast/callbackfn-resize-arraybuffer.js + prototype/findLast/length.js + prototype/findLast/maximum-index.js + prototype/findLast/name.js prototype/findLast/not-a-constructor.js {unsupported: [Reflect.construct]} + prototype/findLast/predicate-call-parameters.js + prototype/findLast/predicate-call-this-non-strict.js non-strict prototype/findLast/predicate-call-this-strict.js strict + prototype/findLast/predicate-called-for-each-array-property.js + prototype/findLast/predicate-not-called-on-empty-array.js + prototype/findLast/prop-desc.js prototype/findLast/resizable-buffer.js prototype/findLast/resizable-buffer-grow-mid-iteration.js prototype/findLast/resizable-buffer-shrink-mid-iteration.js + prototype/findLast/return-abrupt-from-predicate-call.js + prototype/findLast/return-abrupt-from-property.js + prototype/findLast/return-abrupt-from-this-length.js + prototype/findLast/return-found-value-predicate-result-is-true.js + prototype/findLast/return-undefined-if-predicate-returns-false-value.js prototype/find/callbackfn-resize-arraybuffer.js prototype/find/not-a-constructor.js {unsupported: [Reflect.construct]} prototype/find/predicate-call-this-strict.js strict @@ -272,14 +302,67 @@ built-ins/Array 362/3055 (11.85%) prototype/splice/target-array-non-extensible.js prototype/splice/target-array-with-non-configurable-property.js prototype/Symbol.iterator/not-a-constructor.js {unsupported: [Reflect.construct]} - prototype/Symbol.unscopables/change-array-by-copy.js + prototype/Symbol.unscopables 4/4 (100.0%) prototype/toLocaleString/invoke-element-tolocalestring.js prototype/toLocaleString/not-a-constructor.js {unsupported: [Reflect.construct]} prototype/toLocaleString/primitive_this_value.js strict prototype/toLocaleString/primitive_this_value_getter.js strict + prototype/toReversed/metadata 3/3 (100.0%) + prototype/toReversed/frozen-this-value.js + prototype/toReversed/get-descending-order.js + prototype/toReversed/holes-not-preserved.js + prototype/toReversed/ignores-species.js + prototype/toReversed/immutable.js + prototype/toReversed/length-casted-to-zero.js + prototype/toReversed/length-decreased-while-iterating.js + prototype/toReversed/length-exceeding-array-length-limit.js + prototype/toReversed/length-increased-while-iterating.js + prototype/toReversed/length-tolength.js prototype/toReversed/not-a-constructor.js {unsupported: [Reflect.construct]} + prototype/toReversed/this-value-boolean.js + prototype/toReversed/zero-or-one-element.js + prototype/toSorted/metadata 3/3 (100.0%) + prototype/toSorted/comparefn-called-after-get-elements.js + prototype/toSorted/comparefn-stop-after-error.js + prototype/toSorted/frozen-this-value.js + prototype/toSorted/holes-not-preserved.js + prototype/toSorted/ignores-species.js + prototype/toSorted/immutable.js + prototype/toSorted/length-casted-to-zero.js + prototype/toSorted/length-decreased-while-iterating.js + prototype/toSorted/length-exceeding-array-length-limit.js + prototype/toSorted/length-increased-while-iterating.js + prototype/toSorted/length-tolength.js prototype/toSorted/not-a-constructor.js {unsupported: [Reflect.construct]} + prototype/toSorted/this-value-boolean.js + prototype/toSorted/zero-or-one-element.js + prototype/toSpliced/metadata 3/3 (100.0%) + prototype/toSpliced/deleteCount-clamped-between-zero-and-remaining-count.js + prototype/toSpliced/deleteCount-missing.js + prototype/toSpliced/deleteCount-undefined.js + prototype/toSpliced/discarded-element-not-read.js + prototype/toSpliced/elements-read-in-order.js + prototype/toSpliced/frozen-this-value.js + prototype/toSpliced/holes-not-preserved.js + prototype/toSpliced/ignores-species.js + prototype/toSpliced/immutable.js + prototype/toSpliced/length-casted-to-zero.js + prototype/toSpliced/length-clamped-to-2pow53minus1.js + prototype/toSpliced/length-decreased-while-iterating.js + prototype/toSpliced/length-exceeding-array-length-limit.js + prototype/toSpliced/length-increased-while-iterating.js + prototype/toSpliced/length-tolength.js + prototype/toSpliced/mutate-while-iterating.js prototype/toSpliced/not-a-constructor.js {unsupported: [Reflect.construct]} + prototype/toSpliced/start-and-deleteCount-missing.js + prototype/toSpliced/start-and-deleteCount-undefineds.js + prototype/toSpliced/start-bigger-than-length.js + prototype/toSpliced/start-neg-infinity-is-zero.js + prototype/toSpliced/start-neg-less-than-minus-length-is-zero.js + prototype/toSpliced/start-neg-subtracted-from-length.js + prototype/toSpliced/start-undefined-and-deleteCount-missing.js + prototype/toSpliced/this-value-boolean.js + prototype/toSpliced/unmodified.js prototype/toString/call-with-boolean.js prototype/toString/non-callable-join-string-tag.js {unsupported: [Proxy, Reflect]} prototype/toString/not-a-constructor.js {unsupported: [Reflect.construct]} @@ -290,7 +373,22 @@ built-ins/Array 362/3055 (11.85%) prototype/unshift/set-length-zero-array-length-is-non-writable.js prototype/unshift/throws-with-string-receiver.js prototype/values/not-a-constructor.js {unsupported: [Reflect.construct]} + prototype/with/metadata 3/3 (100.0%) + prototype/with/frozen-this-value.js + prototype/with/holes-not-preserved.js + prototype/with/ignores-species.js + prototype/with/immutable.js + prototype/with/index-bigger-or-eq-than-length.js + prototype/with/index-casted-to-number.js + prototype/with/index-negative.js + prototype/with/index-smaller-than-minus-length.js + prototype/with/length-decreased-while-iterating.js + prototype/with/length-exceeding-array-length-limit.js + prototype/with/length-increased-while-iterating.js + prototype/with/length-tolength.js + prototype/with/no-get-replaced-index.js prototype/with/not-a-constructor.js {unsupported: [Reflect.construct]} + prototype/with/this-value-boolean.js prototype/methods-called-as-functions.js is-a-constructor.js {unsupported: [Reflect.construct]} proto-from-ctor-realm-one.js {unsupported: [Reflect]} @@ -737,17 +835,21 @@ built-ins/Date 90/770 (11.69%) value-to-primitive-result-string.js year-zero.js -built-ins/Error 6/41 (14.63%) +built-ins/Error 10/41 (24.39%) + prototype/toString/called-as-function.js + prototype/toString/invalid-receiver.js prototype/toString/not-a-constructor.js {unsupported: [Reflect.construct]} prototype/no-error-data.js prototype/S15.11.4_A2.js cause_abrupt.js + cause_property.js + constructor.js is-a-constructor.js {unsupported: [Reflect.construct]} proto-from-ctor-realm.js {unsupported: [Reflect]} ~built-ins/FinalizationRegistry -built-ins/Function 185/507 (36.49%) +built-ins/Function 186/507 (36.69%) internals/Call 2/2 (100.0%) internals/Construct 6/6 (100.0%) length/S15.3.5.1_A1_T3.js strict @@ -840,6 +942,7 @@ built-ins/Function 185/507 (36.49%) prototype/toString/class-expression-explicit-ctor.js prototype/toString/class-expression-implicit-ctor.js prototype/toString/Function.js + prototype/toString/function-declaration-non-simple-parameter-list.js prototype/toString/generator-function-declaration.js prototype/toString/generator-function-expression.js prototype/toString/generator-method.js @@ -990,7 +1093,19 @@ built-ins/JSON 37/144 (25.69%) stringify/value-object-proxy-revoked.js {unsupported: [Proxy]} stringify/value-string-escape-unicode.js -built-ins/Map 13/171 (7.6%) +built-ins/Map 25/171 (14.62%) + groupBy/callback-arg.js + groupBy/callback-throws.js + groupBy/emptyList.js + groupBy/evenOdd.js + groupBy/groupLength.js + groupBy/iterator-next-throws.js + groupBy/length.js + groupBy/map-instance.js + groupBy/name.js + groupBy/negativeZero.js + groupBy/string.js + groupBy/toPropertyKey.js prototype/clear/not-a-constructor.js {unsupported: [Reflect.construct]} prototype/delete/not-a-constructor.js {unsupported: [Reflect.construct]} prototype/entries/not-a-constructor.js {unsupported: [Reflect.construct]} @@ -1049,7 +1164,7 @@ built-ins/Math 51/326 (15.64%) built-ins/NaN 0/6 (0.0%) -built-ins/NativeErrors 43/117 (36.75%) +built-ins/NativeErrors 44/117 (37.61%) AggregateError/prototype 6/6 (100.0%) AggregateError 19/19 (100.0%) EvalError/prototype/not-error-object.js @@ -1070,6 +1185,7 @@ built-ins/NativeErrors 43/117 (36.75%) URIError/prototype/not-error-object.js URIError/is-a-constructor.js {unsupported: [Reflect.construct]} URIError/proto-from-ctor-realm.js {unsupported: [Reflect]} + cause_property_native_error.js built-ins/Number 24/335 (7.16%) isFinite/not-a-constructor.js {unsupported: [Reflect.construct]} @@ -1097,7 +1213,7 @@ built-ins/Number 24/335 (7.16%) S9.3.1_A3_T1_U180E.js {unsupported: [u180e]} S9.3.1_A3_T2_U180E.js {unsupported: [u180e]} -built-ins/Object 218/3403 (6.41%) +built-ins/Object 230/3403 (6.76%) assign/assignment-to-readonly-property-of-target-must-throw-a-typeerror-exception.js assign/not-a-constructor.js {unsupported: [Reflect.construct]} assign/source-own-prop-desc-missing.js {unsupported: [Proxy]} @@ -1187,6 +1303,18 @@ built-ins/Object 218/3403 (6.41%) getOwnPropertySymbols/proxy-invariant-not-extensible-absent-string-key.js {unsupported: [Proxy]} getOwnPropertySymbols/proxy-invariant-not-extensible-extra-string-key.js {unsupported: [Proxy]} getPrototypeOf/not-a-constructor.js {unsupported: [Reflect.construct]} + groupBy/callback-arg.js + groupBy/callback-throws.js + groupBy/emptyList.js + groupBy/evenOdd.js + groupBy/groupLength.js + groupBy/invalid-property-key.js + groupBy/iterator-next-throws.js + groupBy/length.js + groupBy/name.js + groupBy/null-prototype.js + groupBy/string.js + groupBy/toPropertyKey.js hasOwn/length.js hasOwn/not-a-constructor.js {unsupported: [Reflect.construct]} hasOwn/symbol_property_toPrimitive.js @@ -2343,7 +2471,7 @@ built-ins/ThrowTypeError 8/14 (57.14%) unique-per-realm-non-simple.js unique-per-realm-unmapped-args.js -built-ins/TypedArray 1053/1386 (75.97%) +built-ins/TypedArray 1078/1386 (77.78%) from/arylk-get-length-error.js from/arylk-to-length-error.js from/from-array-mapper-detaches-result.js @@ -2521,13 +2649,20 @@ built-ins/TypedArray 1053/1386 (75.97%) prototype/findLastIndex/length.js prototype/findLastIndex/name.js prototype/findLastIndex/not-a-constructor.js {unsupported: [Reflect.construct]} + prototype/findLastIndex/predicate-call-changes-value.js + prototype/findLastIndex/predicate-call-parameters.js + prototype/findLastIndex/predicate-call-this-non-strict.js non-strict prototype/findLastIndex/predicate-call-this-strict.js strict prototype/findLastIndex/predicate-may-detach-buffer.js + prototype/findLastIndex/predicate-not-called-on-empty-array.js prototype/findLastIndex/prop-desc.js prototype/findLastIndex/resizable-buffer.js prototype/findLastIndex/resizable-buffer-grow-mid-iteration.js prototype/findLastIndex/resizable-buffer-shrink-mid-iteration.js + prototype/findLastIndex/return-abrupt-from-predicate-call.js prototype/findLastIndex/return-abrupt-from-this-out-of-bounds.js + prototype/findLastIndex/return-index-predicate-result-is-true.js + prototype/findLastIndex/return-negative-one-if-predicate-returns-false-value.js prototype/findLastIndex/this-is-not-object.js prototype/findLastIndex/this-is-not-typedarray-instance.js prototype/findLast/callbackfn-resize.js @@ -2538,13 +2673,20 @@ built-ins/TypedArray 1053/1386 (75.97%) prototype/findLast/length.js prototype/findLast/name.js prototype/findLast/not-a-constructor.js {unsupported: [Reflect.construct]} + prototype/findLast/predicate-call-changes-value.js + prototype/findLast/predicate-call-parameters.js + prototype/findLast/predicate-call-this-non-strict.js non-strict prototype/findLast/predicate-call-this-strict.js strict prototype/findLast/predicate-may-detach-buffer.js + prototype/findLast/predicate-not-called-on-empty-array.js prototype/findLast/prop-desc.js prototype/findLast/resizable-buffer.js prototype/findLast/resizable-buffer-grow-mid-iteration.js prototype/findLast/resizable-buffer-shrink-mid-iteration.js + prototype/findLast/return-abrupt-from-predicate-call.js prototype/findLast/return-abrupt-from-this-out-of-bounds.js + prototype/findLast/return-found-value-predicate-result-is-true.js + prototype/findLast/return-undefined-if-predicate-returns-false-value.js prototype/findLast/this-is-not-object.js prototype/findLast/this-is-not-typedarray-instance.js prototype/find/callbackfn-resize.js @@ -2891,10 +3033,10 @@ built-ins/TypedArray 1053/1386 (75.97%) prototype/toLocaleString/this-is-not-object.js prototype/toLocaleString/this-is-not-typedarray-instance.js prototype/toReversed/metadata 3/3 (100.0%) - prototype/toReversed/length-property-ignored.js - prototype/toReversed/not-a-constructor.js {unsupported: [Reflect.construct]} - prototype/toReversed/this-value-invalid.js + prototype/toReversed 5/5 (100.0%) prototype/toSorted/metadata 3/3 (100.0%) + prototype/toSorted/ignores-species.js + prototype/toSorted/immutable.js prototype/toSorted/length-property-ignored.js prototype/toSorted/not-a-constructor.js {unsupported: [Reflect.construct]} prototype/toSorted/this-value-invalid.js @@ -2915,6 +3057,13 @@ built-ins/TypedArray 1053/1386 (75.97%) prototype/values/this-is-not-typedarray-instance.js prototype/with/BigInt/early-type-coercion-bigint.js prototype/with/metadata 3/3 (100.0%) + prototype/with/early-type-coercion.js + prototype/with/ignores-species.js + prototype/with/immutable.js + prototype/with/index-bigger-or-eq-than-length.js + prototype/with/index-casted-to-number.js + prototype/with/index-negative.js + prototype/with/index-smaller-than-minus-length.js prototype/with/index-validated-against-current-length.js prototype/with/length-property-ignored.js prototype/with/not-a-constructor.js {unsupported: [Reflect.construct]} @@ -3278,7 +3427,7 @@ built-ins/undefined 0/8 (0.0%) ~intl402 -language/arguments-object 189/263 (71.86%) +language/arguments-object 190/263 (72.24%) mapped/mapped-arguments-nonconfigurable-3.js non-strict mapped/mapped-arguments-nonconfigurable-delete-1.js non-strict mapped/mapped-arguments-nonconfigurable-delete-2.js non-strict @@ -3314,6 +3463,7 @@ language/arguments-object 189/263 (71.86%) mapped/nonwritable-nonenumerable-nonconfigurable-descriptors-basic.js non-strict mapped/nonwritable-nonenumerable-nonconfigurable-descriptors-set-by-arguments.js non-strict mapped/nonwritable-nonenumerable-nonconfigurable-descriptors-set-by-param.js non-strict + unmapped/via-params-dflt.js unmapped/via-params-dstr.js non-strict unmapped/via-params-rest.js non-strict 10.6-11-b-1.js @@ -3563,10 +3713,14 @@ language/computed-property-names 35/48 (72.92%) to-name-side-effects/class.js to-name-side-effects/numbers-class.js -language/destructuring 7/17 (41.18%) +language/destructuring 11/17 (64.71%) + binding/syntax/array-elements-with-initializer.js + binding/syntax/array-elements-with-object-patterns.js binding/syntax/array-rest-elements.js binding/syntax/destructuring-array-parameters-function-arguments-length.js binding/syntax/destructuring-object-parameters-function-arguments-length.js + binding/syntax/property-list-bindings-elements.js + binding/syntax/property-list-single-name-bindings.js binding/syntax/property-list-with-property-list.js binding/syntax/recursive-array-and-object-patterns.js binding/initialization-requires-object-coercible-null.js @@ -3592,15 +3746,19 @@ language/directive-prologue 18/62 (29.03%) 14.1-9-s.js {non-strict: [-1]} func-decl-inside-func-decl-parse.js non-strict -language/eval-code 253/347 (72.91%) +language/eval-code 257/347 (74.06%) direct/arrow-fn-a-following-parameter-is-named-arguments-arrow-func-declare-arguments-assign.js non-strict direct/arrow-fn-a-following-parameter-is-named-arguments-arrow-func-declare-arguments-assign-incl-def-param-arrow-arguments.js non-strict direct/arrow-fn-a-preceding-parameter-is-named-arguments-arrow-func-declare-arguments-assign.js non-strict direct/arrow-fn-a-preceding-parameter-is-named-arguments-arrow-func-declare-arguments-assign-incl-def-param-arrow-arguments.js non-strict direct/arrow-fn-body-cntns-arguments-func-decl-arrow-func-declare-arguments-assign.js non-strict direct/arrow-fn-body-cntns-arguments-func-decl-arrow-func-declare-arguments-assign-incl-def-param-arrow-arguments.js non-strict + direct/arrow-fn-body-cntns-arguments-lex-bind-arrow-func-declare-arguments-assign.js non-strict direct/arrow-fn-body-cntns-arguments-lex-bind-arrow-func-declare-arguments-assign-incl-def-param-arrow-arguments.js non-strict + direct/arrow-fn-body-cntns-arguments-var-bind-arrow-func-declare-arguments-assign.js non-strict direct/arrow-fn-body-cntns-arguments-var-bind-arrow-func-declare-arguments-assign-incl-def-param-arrow-arguments.js non-strict + direct/arrow-fn-no-pre-existing-arguments-bindings-are-present-arrow-func-declare-arguments-assign.js non-strict + direct/arrow-fn-no-pre-existing-arguments-bindings-are-present-arrow-func-declare-arguments-assign-incl-def-param-arrow-arguments.js non-strict direct/async-func-decl-a-following-parameter-is-named-arguments-declare-arguments.js {unsupported: [async]} direct/async-func-decl-a-following-parameter-is-named-arguments-declare-arguments-and-assign.js {unsupported: [async]} direct/async-func-decl-a-preceding-parameter-is-named-arguments-declare-arguments.js {unsupported: [async]} @@ -3903,23 +4061,29 @@ language/expressions/array 41/52 (78.85%) spread-sngl-literal.js spread-sngl-obj-ident.js -language/expressions/arrow-function 168/343 (48.98%) +language/expressions/arrow-function 213/343 (62.1%) dstr/ary-init-iter-close.js dstr/ary-init-iter-get-err.js dstr/ary-init-iter-get-err-array-prototype.js dstr/ary-ptrn-elem-ary-elem-init.js dstr/ary-ptrn-elem-ary-elem-iter.js dstr/ary-ptrn-elem-ary-elision-init.js + dstr/ary-ptrn-elem-ary-elision-iter.js dstr/ary-ptrn-elem-ary-empty-init.js + dstr/ary-ptrn-elem-ary-empty-iter.js dstr/ary-ptrn-elem-ary-rest-init.js dstr/ary-ptrn-elem-ary-rest-iter.js + dstr/ary-ptrn-elem-id-init-exhausted.js dstr/ary-ptrn-elem-id-init-fn-name-arrow.js dstr/ary-ptrn-elem-id-init-fn-name-class.js dstr/ary-ptrn-elem-id-init-fn-name-cover.js dstr/ary-ptrn-elem-id-init-fn-name-fn.js dstr/ary-ptrn-elem-id-init-fn-name-gen.js + dstr/ary-ptrn-elem-id-init-hole.js dstr/ary-ptrn-elem-id-init-skipped.js dstr/ary-ptrn-elem-id-init-throws.js + dstr/ary-ptrn-elem-id-init-undef.js + dstr/ary-ptrn-elem-id-init-unresolvable.js dstr/ary-ptrn-elem-id-iter-step-err.js dstr/ary-ptrn-elem-id-iter-val-array-prototype.js dstr/ary-ptrn-elem-id-iter-val-err.js @@ -3942,73 +4106,99 @@ language/expressions/arrow-function 168/343 (48.98%) dstr/ary-ptrn-rest-id-iter-val-err.js dstr/ary-ptrn-rest-obj-id.js dstr/ary-ptrn-rest-obj-prop-id.js - dstr/dflt-ary-init-iter-close.js - dstr/dflt-ary-init-iter-get-err.js - dstr/dflt-ary-init-iter-get-err-array-prototype.js - dstr/dflt-ary-init-iter-no-close.js - dstr/dflt-ary-ptrn-elem-ary-elem-init.js - dstr/dflt-ary-ptrn-elem-ary-elem-iter.js - dstr/dflt-ary-ptrn-elem-ary-elision-init.js - dstr/dflt-ary-ptrn-elem-ary-empty-init.js - dstr/dflt-ary-ptrn-elem-ary-rest-init.js - dstr/dflt-ary-ptrn-elem-ary-rest-iter.js - dstr/dflt-ary-ptrn-elem-id-init-fn-name-arrow.js - dstr/dflt-ary-ptrn-elem-id-init-fn-name-class.js - dstr/dflt-ary-ptrn-elem-id-init-fn-name-cover.js - dstr/dflt-ary-ptrn-elem-id-init-fn-name-fn.js - dstr/dflt-ary-ptrn-elem-id-init-fn-name-gen.js - dstr/dflt-ary-ptrn-elem-id-init-hole.js - dstr/dflt-ary-ptrn-elem-id-init-skipped.js - dstr/dflt-ary-ptrn-elem-id-init-throws.js - dstr/dflt-ary-ptrn-elem-id-iter-step-err.js - dstr/dflt-ary-ptrn-elem-id-iter-val-array-prototype.js - dstr/dflt-ary-ptrn-elem-id-iter-val-err.js - dstr/dflt-ary-ptrn-elem-obj-id.js - dstr/dflt-ary-ptrn-elem-obj-id-init.js - dstr/dflt-ary-ptrn-elem-obj-prop-id.js - dstr/dflt-ary-ptrn-elem-obj-prop-id-init.js - dstr/dflt-ary-ptrn-elision.js - dstr/dflt-ary-ptrn-elision-step-err.js - dstr/dflt-ary-ptrn-rest-ary-elem.js - dstr/dflt-ary-ptrn-rest-ary-elision.js - dstr/dflt-ary-ptrn-rest-ary-empty.js - dstr/dflt-ary-ptrn-rest-ary-rest.js - dstr/dflt-ary-ptrn-rest-id.js - dstr/dflt-ary-ptrn-rest-id-direct.js - dstr/dflt-ary-ptrn-rest-id-elision.js - dstr/dflt-ary-ptrn-rest-id-elision-next-err.js - dstr/dflt-ary-ptrn-rest-id-exhausted.js - dstr/dflt-ary-ptrn-rest-id-iter-step-err.js - dstr/dflt-ary-ptrn-rest-id-iter-val-err.js - dstr/dflt-ary-ptrn-rest-obj-id.js - dstr/dflt-ary-ptrn-rest-obj-prop-id.js - dstr/dflt-obj-init-null.js - dstr/dflt-obj-init-undefined.js - dstr/dflt-obj-ptrn-id-get-value-err.js - dstr/dflt-obj-ptrn-id-init-fn-name-arrow.js - dstr/dflt-obj-ptrn-id-init-fn-name-class.js - dstr/dflt-obj-ptrn-id-init-fn-name-cover.js - dstr/dflt-obj-ptrn-id-init-fn-name-fn.js - dstr/dflt-obj-ptrn-id-init-fn-name-gen.js - dstr/dflt-obj-ptrn-id-init-skipped.js - dstr/dflt-obj-ptrn-id-init-throws.js - dstr/dflt-obj-ptrn-id-init-unresolvable.js - dstr/dflt-obj-ptrn-list-err.js - dstr/dflt-obj-ptrn-prop-ary.js - dstr/dflt-obj-ptrn-prop-ary-init.js - dstr/dflt-obj-ptrn-prop-ary-trailing-comma.js - dstr/dflt-obj-ptrn-prop-ary-value-null.js - dstr/dflt-obj-ptrn-prop-eval-err.js - dstr/dflt-obj-ptrn-prop-id-get-value-err.js - dstr/dflt-obj-ptrn-prop-id-init-skipped.js - dstr/dflt-obj-ptrn-prop-id-init-throws.js - dstr/dflt-obj-ptrn-prop-obj.js - dstr/dflt-obj-ptrn-prop-obj-init.js - dstr/dflt-obj-ptrn-prop-obj-value-null.js - dstr/dflt-obj-ptrn-prop-obj-value-undef.js - dstr/dflt-obj-ptrn-rest-getter.js {unsupported: [object-rest]} - dstr/dflt-obj-ptrn-rest-skip-non-enumerable.js {unsupported: [object-rest]} - dstr/dflt-obj-ptrn-rest-val-obj.js {unsupported: [object-rest]} + dstr/dflt-ary-init-iter-close.js {unsupported: [default-parameters]} + dstr/dflt-ary-init-iter-get-err.js {unsupported: [default-parameters]} + dstr/dflt-ary-init-iter-get-err-array-prototype.js {unsupported: [default-parameters]} + dstr/dflt-ary-init-iter-no-close.js {unsupported: [default-parameters]} + dstr/dflt-ary-name-iter-val.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-ary-elem-init.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-ary-elem-iter.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-ary-elision-init.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-ary-elision-iter.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-ary-empty-init.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-ary-empty-iter.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-ary-rest-init.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-ary-rest-iter.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-ary-val-null.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-id-init-exhausted.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-id-init-fn-name-arrow.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-id-init-fn-name-class.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-id-init-fn-name-cover.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-id-init-fn-name-fn.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-id-init-fn-name-gen.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-id-init-hole.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-id-init-skipped.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-id-init-throws.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-id-init-undef.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-id-init-unresolvable.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-id-iter-complete.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-id-iter-done.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-id-iter-step-err.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-id-iter-val.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-id-iter-val-array-prototype.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-id-iter-val-err.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-obj-id.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-obj-id-init.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-obj-prop-id.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-obj-prop-id-init.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-obj-val-null.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-obj-val-undef.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elision.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elision-exhausted.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elision-step-err.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-empty.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-rest-ary-elem.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-rest-ary-elision.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-rest-ary-empty.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-rest-ary-rest.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-rest-id.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-rest-id-direct.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-rest-id-elision.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-rest-id-elision-next-err.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-rest-id-exhausted.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-rest-id-iter-step-err.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-rest-id-iter-val-err.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-rest-init-ary.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-rest-init-id.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-rest-init-obj.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-rest-not-final-ary.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-rest-not-final-id.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-rest-not-final-obj.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-rest-obj-id.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-rest-obj-prop-id.js {unsupported: [default-parameters]} + dstr/dflt-obj-init-null.js {unsupported: [default-parameters]} + dstr/dflt-obj-init-undefined.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-empty.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-id-get-value-err.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-id-init-fn-name-arrow.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-id-init-fn-name-class.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-id-init-fn-name-cover.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-id-init-fn-name-fn.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-id-init-fn-name-gen.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-id-init-skipped.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-id-init-throws.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-id-init-unresolvable.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-id-trailing-comma.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-list-err.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-prop-ary.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-prop-ary-init.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-prop-ary-trailing-comma.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-prop-ary-value-null.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-prop-eval-err.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-prop-id.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-prop-id-get-value-err.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-prop-id-init.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-prop-id-init-skipped.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-prop-id-init-throws.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-prop-id-init-unresolvable.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-prop-id-trailing-comma.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-prop-obj.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-prop-obj-init.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-prop-obj-value-null.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-prop-obj-value-undef.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-rest-getter.js {unsupported: [default-parameters, object-rest]} + dstr/dflt-obj-ptrn-rest-skip-non-enumerable.js {unsupported: [default-parameters, object-rest]} + dstr/dflt-obj-ptrn-rest-val-obj.js {unsupported: [default-parameters, object-rest]} dstr/obj-init-null.js dstr/obj-init-undefined.js dstr/obj-ptrn-id-init-fn-name-arrow.js @@ -4024,8 +4214,11 @@ language/expressions/arrow-function 168/343 (48.98%) dstr/obj-ptrn-prop-ary-init.js dstr/obj-ptrn-prop-ary-value-null.js dstr/obj-ptrn-prop-eval-err.js + dstr/obj-ptrn-prop-id-get-value-err.js + dstr/obj-ptrn-prop-id-init.js dstr/obj-ptrn-prop-id-init-skipped.js dstr/obj-ptrn-prop-id-init-throws.js + dstr/obj-ptrn-prop-id-init-unresolvable.js dstr/obj-ptrn-prop-obj.js dstr/obj-ptrn-prop-obj-init.js dstr/obj-ptrn-prop-obj-value-null.js @@ -4044,17 +4237,23 @@ language/expressions/arrow-function 168/343 (48.98%) syntax/arrowparameters-bindingidentifier-yield.js non-strict syntax/arrowparameters-cover-formalparameters-yield.js non-strict syntax/arrowparameters-cover-includes-rest-concisebody-functionbody.js + syntax/arrowparameters-cover-initialize-1.js syntax/arrowparameters-cover-initialize-2.js syntax/arrowparameters-cover-rest-concisebody-functionbody.js syntax/arrowparameters-cover-rest-lineterminator-concisebody-functionbody.js array-destructuring-param-strict-body.js ArrowFunction_restricted-properties.js - dflt-params-duplicates.js non-strict - dflt-params-ref-later.js - dflt-params-ref-self.js + dflt-params-abrupt.js {unsupported: [default-parameters]} + dflt-params-arg-val-not-undefined.js {unsupported: [default-parameters]} + dflt-params-arg-val-undefined.js {unsupported: [default-parameters]} + dflt-params-duplicates.js {unsupported: [default-parameters]} + dflt-params-ref-later.js {unsupported: [default-parameters]} + dflt-params-ref-prior.js {unsupported: [default-parameters]} + dflt-params-ref-self.js {unsupported: [default-parameters]} + dflt-params-rest.js {unsupported: [default-parameters]} dflt-params-trailing-comma.js - eval-var-scope-syntax-err.js non-strict - length-dflt.js + eval-var-scope-syntax-err.js {unsupported: [default-parameters]} + length-dflt.js {unsupported: [default-parameters]} lexical-new.target.js {unsupported: [new.target]} lexical-new.target-closure-returned.js {unsupported: [new.target]} lexical-super-call-from-within-constructor.js @@ -4062,18 +4261,23 @@ language/expressions/arrow-function 168/343 (48.98%) lexical-super-property-from-within-constructor.js lexical-supercall-from-immediately-invoked-arrow.js object-destructuring-param-strict-body.js - param-dflt-yield-expr.js - param-dflt-yield-id-non-strict.js non-strict + param-dflt-yield-expr.js {unsupported: [default-parameters]} + param-dflt-yield-id-non-strict.js {unsupported: [default-parameters]} + param-dflt-yield-id-strict.js {unsupported: [default-parameters]} params-duplicate.js non-strict scope-body-lex-distinct.js non-strict + scope-param-elem-var-close.js non-strict + scope-param-elem-var-open.js non-strict scope-param-rest-elem-var-close.js non-strict scope-param-rest-elem-var-open.js non-strict + scope-paramsbody-var-close.js scope-paramsbody-var-open.js unscopables-with.js non-strict unscopables-with-in-nested-fn.js non-strict -language/expressions/assignment 199/480 (41.46%) +language/expressions/assignment 207/480 (43.13%) destructuring 3/3 (100.0%) + dstr/array-elem-init-assignment.js dstr/array-elem-init-evaluation.js dstr/array-elem-init-fn-name-arrow.js dstr/array-elem-init-fn-name-class.js {unsupported: [class]} @@ -4084,6 +4288,7 @@ language/expressions/assignment 199/480 (41.46%) dstr/array-elem-init-let.js dstr/array-elem-init-order.js dstr/array-elem-init-simple-no-strict.js non-strict + dstr/array-elem-init-yield-expr.js dstr/array-elem-init-yield-ident-valid.js non-strict dstr/array-elem-iter-get-err.js dstr/array-elem-iter-nrml-close.js @@ -4211,6 +4416,10 @@ language/expressions/assignment 199/480 (41.46%) dstr/obj-id-put-const.js non-strict dstr/obj-id-put-let.js dstr/obj-id-simple-strict.js strict + dstr/obj-prop-elem-init-assignment-missing.js + dstr/obj-prop-elem-init-assignment-null.js + dstr/obj-prop-elem-init-assignment-truthy.js + dstr/obj-prop-elem-init-assignment-undef.js dstr/obj-prop-elem-init-evaluation.js dstr/obj-prop-elem-init-fn-name-arrow.js dstr/obj-prop-elem-init-fn-name-class.js {unsupported: [class]} @@ -4219,12 +4428,14 @@ language/expressions/assignment 199/480 (41.46%) dstr/obj-prop-elem-init-fn-name-gen.js dstr/obj-prop-elem-init-in.js dstr/obj-prop-elem-init-let.js + dstr/obj-prop-elem-init-yield-expr.js dstr/obj-prop-elem-init-yield-ident-valid.js non-strict dstr/obj-prop-elem-target-obj-literal-prop-ref-init.js dstr/obj-prop-elem-target-obj-literal-prop-ref-init-active.js dstr/obj-prop-elem-target-yield-ident-valid.js non-strict dstr/obj-prop-name-evaluation.js dstr/obj-prop-name-evaluation-error.js + dstr/obj-prop-nested-array-yield-expr.js dstr/obj-prop-nested-array-yield-ident-valid.js non-strict dstr/obj-prop-nested-obj-yield-expr.js dstr/obj-prop-nested-obj-yield-ident-valid.js non-strict @@ -4271,7 +4482,7 @@ language/expressions/assignment 199/480 (41.46%) target-super-computed-reference-null.js target-super-identifier-reference-null.js -language/expressions/async-arrow-function 42/60 (70.0%) +language/expressions/async-arrow-function 44/60 (73.33%) forbidden-ext/b1 2/2 (100.0%) forbidden-ext/b2 3/3 (100.0%) arrow-returns-promise.js {unsupported: [async]} @@ -4285,17 +4496,19 @@ language/expressions/async-arrow-function 42/60 (70.0%) await-as-param-nested-arrow-body-position.js {unsupported: [async-functions]} await-as-param-nested-arrow-parameter-position.js {unsupported: [async-functions]} await-as-param-rest-nested-arrow-parameter-position.js {unsupported: [async-functions]} - dflt-params-abrupt.js {unsupported: [async-functions, async]} - dflt-params-arg-val-not-undefined.js {unsupported: [async-functions, async]} - dflt-params-arg-val-undefined.js {unsupported: [async-functions, async]} - dflt-params-ref-later.js {unsupported: [async-functions, async]} - dflt-params-ref-prior.js {unsupported: [async-functions, async]} - dflt-params-ref-self.js {unsupported: [async-functions, async]} + dflt-params-abrupt.js {unsupported: [default-parameters, async-functions, async]} + dflt-params-arg-val-not-undefined.js {unsupported: [default-parameters, async-functions, async]} + dflt-params-arg-val-undefined.js {unsupported: [default-parameters, async-functions, async]} + dflt-params-duplicates.js {unsupported: [default-parameters]} + dflt-params-ref-later.js {unsupported: [default-parameters, async-functions, async]} + dflt-params-ref-prior.js {unsupported: [default-parameters, async-functions, async]} + dflt-params-ref-self.js {unsupported: [default-parameters, async-functions, async]} + dflt-params-rest.js {unsupported: [default-parameters]} dflt-params-trailing-comma.js {unsupported: [async-functions, async]} early-errors-arrow-duplicate-parameters.js {unsupported: [async-functions]} escaped-async.js {unsupported: [async-functions]} escaped-async-line-terminator.js {unsupported: [async-functions]} - eval-var-scope-syntax-err.js {unsupported: [async-functions, async]} + eval-var-scope-syntax-err.js {unsupported: [default-parameters, async-functions, async]} name.js params-trailing-comma-multiple.js {unsupported: [async-functions, async]} params-trailing-comma-single.js {unsupported: [async-functions, async]} @@ -4585,23 +4798,29 @@ language/expressions/exponentiation 3/44 (6.82%) bigint-wrapped-values.js order-of-evaluation.js -language/expressions/function 169/264 (64.02%) +language/expressions/function 214/264 (81.06%) dstr/ary-init-iter-close.js dstr/ary-init-iter-get-err.js dstr/ary-init-iter-get-err-array-prototype.js dstr/ary-ptrn-elem-ary-elem-init.js dstr/ary-ptrn-elem-ary-elem-iter.js dstr/ary-ptrn-elem-ary-elision-init.js + dstr/ary-ptrn-elem-ary-elision-iter.js dstr/ary-ptrn-elem-ary-empty-init.js + dstr/ary-ptrn-elem-ary-empty-iter.js dstr/ary-ptrn-elem-ary-rest-init.js dstr/ary-ptrn-elem-ary-rest-iter.js + dstr/ary-ptrn-elem-id-init-exhausted.js dstr/ary-ptrn-elem-id-init-fn-name-arrow.js dstr/ary-ptrn-elem-id-init-fn-name-class.js dstr/ary-ptrn-elem-id-init-fn-name-cover.js dstr/ary-ptrn-elem-id-init-fn-name-fn.js dstr/ary-ptrn-elem-id-init-fn-name-gen.js + dstr/ary-ptrn-elem-id-init-hole.js dstr/ary-ptrn-elem-id-init-skipped.js dstr/ary-ptrn-elem-id-init-throws.js + dstr/ary-ptrn-elem-id-init-undef.js + dstr/ary-ptrn-elem-id-init-unresolvable.js dstr/ary-ptrn-elem-id-iter-step-err.js dstr/ary-ptrn-elem-id-iter-val-array-prototype.js dstr/ary-ptrn-elem-id-iter-val-err.js @@ -4624,72 +4843,99 @@ language/expressions/function 169/264 (64.02%) dstr/ary-ptrn-rest-id-iter-val-err.js dstr/ary-ptrn-rest-obj-id.js dstr/ary-ptrn-rest-obj-prop-id.js - dstr/dflt-ary-init-iter-close.js - dstr/dflt-ary-init-iter-get-err.js - dstr/dflt-ary-init-iter-get-err-array-prototype.js - dstr/dflt-ary-init-iter-no-close.js - dstr/dflt-ary-ptrn-elem-ary-elem-init.js - dstr/dflt-ary-ptrn-elem-ary-elem-iter.js - dstr/dflt-ary-ptrn-elem-ary-elision-init.js - dstr/dflt-ary-ptrn-elem-ary-empty-init.js - dstr/dflt-ary-ptrn-elem-ary-rest-init.js - dstr/dflt-ary-ptrn-elem-ary-rest-iter.js - dstr/dflt-ary-ptrn-elem-id-init-fn-name-arrow.js - dstr/dflt-ary-ptrn-elem-id-init-fn-name-class.js - dstr/dflt-ary-ptrn-elem-id-init-fn-name-cover.js - dstr/dflt-ary-ptrn-elem-id-init-fn-name-fn.js - dstr/dflt-ary-ptrn-elem-id-init-fn-name-gen.js - dstr/dflt-ary-ptrn-elem-id-init-hole.js - dstr/dflt-ary-ptrn-elem-id-init-skipped.js - dstr/dflt-ary-ptrn-elem-id-init-throws.js - dstr/dflt-ary-ptrn-elem-id-iter-step-err.js - dstr/dflt-ary-ptrn-elem-id-iter-val-array-prototype.js - dstr/dflt-ary-ptrn-elem-id-iter-val-err.js - dstr/dflt-ary-ptrn-elem-obj-id.js - dstr/dflt-ary-ptrn-elem-obj-id-init.js - dstr/dflt-ary-ptrn-elem-obj-prop-id.js - dstr/dflt-ary-ptrn-elem-obj-prop-id-init.js - dstr/dflt-ary-ptrn-elision.js - dstr/dflt-ary-ptrn-elision-step-err.js - dstr/dflt-ary-ptrn-rest-ary-elem.js - dstr/dflt-ary-ptrn-rest-ary-elision.js - dstr/dflt-ary-ptrn-rest-ary-empty.js - dstr/dflt-ary-ptrn-rest-ary-rest.js - dstr/dflt-ary-ptrn-rest-id.js - dstr/dflt-ary-ptrn-rest-id-direct.js - dstr/dflt-ary-ptrn-rest-id-elision.js - dstr/dflt-ary-ptrn-rest-id-elision-next-err.js - dstr/dflt-ary-ptrn-rest-id-exhausted.js - dstr/dflt-ary-ptrn-rest-id-iter-step-err.js - dstr/dflt-ary-ptrn-rest-id-iter-val-err.js - dstr/dflt-ary-ptrn-rest-obj-id.js - dstr/dflt-ary-ptrn-rest-obj-prop-id.js - dstr/dflt-obj-init-null.js - dstr/dflt-obj-init-undefined.js - dstr/dflt-obj-ptrn-id-get-value-err.js - dstr/dflt-obj-ptrn-id-init-fn-name-arrow.js - dstr/dflt-obj-ptrn-id-init-fn-name-class.js - dstr/dflt-obj-ptrn-id-init-fn-name-cover.js - dstr/dflt-obj-ptrn-id-init-fn-name-fn.js - dstr/dflt-obj-ptrn-id-init-fn-name-gen.js - dstr/dflt-obj-ptrn-id-init-skipped.js - dstr/dflt-obj-ptrn-id-init-throws.js - dstr/dflt-obj-ptrn-list-err.js - dstr/dflt-obj-ptrn-prop-ary.js - dstr/dflt-obj-ptrn-prop-ary-init.js - dstr/dflt-obj-ptrn-prop-ary-trailing-comma.js - dstr/dflt-obj-ptrn-prop-ary-value-null.js - dstr/dflt-obj-ptrn-prop-eval-err.js - dstr/dflt-obj-ptrn-prop-id-get-value-err.js - dstr/dflt-obj-ptrn-prop-id-init-skipped.js - dstr/dflt-obj-ptrn-prop-id-init-throws.js - dstr/dflt-obj-ptrn-prop-obj.js - dstr/dflt-obj-ptrn-prop-obj-init.js - dstr/dflt-obj-ptrn-prop-obj-value-null.js - dstr/dflt-obj-ptrn-prop-obj-value-undef.js - dstr/dflt-obj-ptrn-rest-getter.js {unsupported: [object-rest]} - dstr/dflt-obj-ptrn-rest-skip-non-enumerable.js {unsupported: [object-rest]} - dstr/dflt-obj-ptrn-rest-val-obj.js {unsupported: [object-rest]} + dstr/dflt-ary-init-iter-close.js {unsupported: [default-parameters]} + dstr/dflt-ary-init-iter-get-err.js {unsupported: [default-parameters]} + dstr/dflt-ary-init-iter-get-err-array-prototype.js {unsupported: [default-parameters]} + dstr/dflt-ary-init-iter-no-close.js {unsupported: [default-parameters]} + dstr/dflt-ary-name-iter-val.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-ary-elem-init.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-ary-elem-iter.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-ary-elision-init.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-ary-elision-iter.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-ary-empty-init.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-ary-empty-iter.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-ary-rest-init.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-ary-rest-iter.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-ary-val-null.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-id-init-exhausted.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-id-init-fn-name-arrow.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-id-init-fn-name-class.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-id-init-fn-name-cover.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-id-init-fn-name-fn.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-id-init-fn-name-gen.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-id-init-hole.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-id-init-skipped.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-id-init-throws.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-id-init-undef.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-id-init-unresolvable.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-id-iter-complete.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-id-iter-done.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-id-iter-step-err.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-id-iter-val.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-id-iter-val-array-prototype.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-id-iter-val-err.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-obj-id.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-obj-id-init.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-obj-prop-id.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-obj-prop-id-init.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-obj-val-null.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-obj-val-undef.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elision.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elision-exhausted.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elision-step-err.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-empty.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-rest-ary-elem.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-rest-ary-elision.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-rest-ary-empty.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-rest-ary-rest.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-rest-id.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-rest-id-direct.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-rest-id-elision.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-rest-id-elision-next-err.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-rest-id-exhausted.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-rest-id-iter-step-err.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-rest-id-iter-val-err.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-rest-init-ary.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-rest-init-id.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-rest-init-obj.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-rest-not-final-ary.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-rest-not-final-id.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-rest-not-final-obj.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-rest-obj-id.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-rest-obj-prop-id.js {unsupported: [default-parameters]} + dstr/dflt-obj-init-null.js {unsupported: [default-parameters]} + dstr/dflt-obj-init-undefined.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-empty.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-id-get-value-err.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-id-init-fn-name-arrow.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-id-init-fn-name-class.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-id-init-fn-name-cover.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-id-init-fn-name-fn.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-id-init-fn-name-gen.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-id-init-skipped.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-id-init-throws.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-id-init-unresolvable.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-id-trailing-comma.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-list-err.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-prop-ary.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-prop-ary-init.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-prop-ary-trailing-comma.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-prop-ary-value-null.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-prop-eval-err.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-prop-id.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-prop-id-get-value-err.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-prop-id-init.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-prop-id-init-skipped.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-prop-id-init-throws.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-prop-id-init-unresolvable.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-prop-id-trailing-comma.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-prop-obj.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-prop-obj-init.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-prop-obj-value-null.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-prop-obj-value-undef.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-rest-getter.js {unsupported: [default-parameters, object-rest]} + dstr/dflt-obj-ptrn-rest-skip-non-enumerable.js {unsupported: [default-parameters, object-rest]} + dstr/dflt-obj-ptrn-rest-val-obj.js {unsupported: [default-parameters, object-rest]} dstr/obj-init-null.js dstr/obj-init-undefined.js dstr/obj-ptrn-id-init-fn-name-arrow.js @@ -4699,13 +4945,17 @@ language/expressions/function 169/264 (64.02%) dstr/obj-ptrn-id-init-fn-name-gen.js dstr/obj-ptrn-id-init-skipped.js dstr/obj-ptrn-id-init-throws.js + dstr/obj-ptrn-id-init-unresolvable.js dstr/obj-ptrn-list-err.js dstr/obj-ptrn-prop-ary.js dstr/obj-ptrn-prop-ary-init.js dstr/obj-ptrn-prop-ary-value-null.js dstr/obj-ptrn-prop-eval-err.js + dstr/obj-ptrn-prop-id-get-value-err.js + dstr/obj-ptrn-prop-id-init.js dstr/obj-ptrn-prop-id-init-skipped.js dstr/obj-ptrn-prop-id-init-throws.js + dstr/obj-ptrn-prop-id-init-unresolvable.js dstr/obj-ptrn-prop-obj.js dstr/obj-ptrn-prop-obj-init.js dstr/obj-ptrn-prop-obj-value-null.js @@ -4718,13 +4968,17 @@ language/expressions/function 169/264 (64.02%) arguments-with-arguments-fn.js non-strict arguments-with-arguments-lex.js non-strict array-destructuring-param-strict-body.js - dflt-params-duplicates.js non-strict - dflt-params-ref-later.js - dflt-params-ref-self.js - dflt-params-rest.js + dflt-params-abrupt.js {unsupported: [default-parameters]} + dflt-params-arg-val-not-undefined.js {unsupported: [default-parameters]} + dflt-params-arg-val-undefined.js {unsupported: [default-parameters]} + dflt-params-duplicates.js {unsupported: [default-parameters]} + dflt-params-ref-later.js {unsupported: [default-parameters]} + dflt-params-ref-prior.js {unsupported: [default-parameters]} + dflt-params-ref-self.js {unsupported: [default-parameters]} + dflt-params-rest.js {unsupported: [default-parameters]} dflt-params-trailing-comma.js - eval-var-scope-syntax-err.js non-strict - length-dflt.js + eval-var-scope-syntax-err.js {unsupported: [default-parameters]} + length-dflt.js {unsupported: [default-parameters]} name-arguments-strict-body.js non-strict name-eval-strict-body.js non-strict named-no-strict-reassign-fn-name-in-body.js non-strict @@ -4734,45 +4988,57 @@ language/expressions/function 169/264 (64.02%) named-strict-error-reassign-fn-name-in-body-in-arrow.js strict named-strict-error-reassign-fn-name-in-body-in-eval.js strict object-destructuring-param-strict-body.js - param-dflt-yield-non-strict.js non-strict - param-dflt-yield-strict.js strict + param-dflt-yield-non-strict.js {unsupported: [default-parameters]} + param-dflt-yield-strict.js {unsupported: [default-parameters]} param-duplicated-strict-body-1.js non-strict param-duplicated-strict-body-2.js non-strict param-duplicated-strict-body-3.js non-strict param-eval-strict-body.js non-strict - params-dflt-ref-arguments.js + params-dflt-args-unmapped.js {unsupported: [default-parameters]} + params-dflt-ref-arguments.js {unsupported: [default-parameters]} rest-param-strict-body.js scope-body-lex-distinct.js non-strict scope-name-var-open-non-strict.js non-strict scope-name-var-open-strict.js strict + scope-param-elem-var-close.js non-strict + scope-param-elem-var-open.js non-strict scope-param-rest-elem-var-close.js non-strict scope-param-rest-elem-var-open.js non-strict + scope-paramsbody-var-close.js scope-paramsbody-var-open.js static-init-await-binding.js static-init-await-reference.js unscopables-with.js non-strict unscopables-with-in-nested-fn.js non-strict -language/expressions/generators 194/290 (66.9%) +language/expressions/generators 239/290 (82.41%) dstr/ary-init-iter-close.js dstr/ary-init-iter-get-err.js dstr/ary-init-iter-get-err-array-prototype.js + dstr/ary-name-iter-val.js non-interpreted dstr/ary-ptrn-elem-ary-elem-init.js dstr/ary-ptrn-elem-ary-elem-iter.js dstr/ary-ptrn-elem-ary-elision-init.js + dstr/ary-ptrn-elem-ary-elision-iter.js dstr/ary-ptrn-elem-ary-empty-init.js + dstr/ary-ptrn-elem-ary-empty-iter.js dstr/ary-ptrn-elem-ary-rest-init.js dstr/ary-ptrn-elem-ary-rest-iter.js dstr/ary-ptrn-elem-ary-val-null.js + dstr/ary-ptrn-elem-id-init-exhausted.js dstr/ary-ptrn-elem-id-init-fn-name-arrow.js dstr/ary-ptrn-elem-id-init-fn-name-class.js dstr/ary-ptrn-elem-id-init-fn-name-cover.js dstr/ary-ptrn-elem-id-init-fn-name-fn.js dstr/ary-ptrn-elem-id-init-fn-name-gen.js + dstr/ary-ptrn-elem-id-init-hole.js dstr/ary-ptrn-elem-id-init-skipped.js dstr/ary-ptrn-elem-id-init-throws.js + dstr/ary-ptrn-elem-id-init-undef.js dstr/ary-ptrn-elem-id-init-unresolvable.js + dstr/ary-ptrn-elem-id-iter-done.js non-interpreted dstr/ary-ptrn-elem-id-iter-step-err.js + dstr/ary-ptrn-elem-id-iter-val.js non-interpreted dstr/ary-ptrn-elem-id-iter-val-array-prototype.js dstr/ary-ptrn-elem-id-iter-val-err.js dstr/ary-ptrn-elem-obj-id.js @@ -4796,78 +5062,99 @@ language/expressions/generators 194/290 (66.9%) dstr/ary-ptrn-rest-id-iter-val-err.js dstr/ary-ptrn-rest-obj-id.js dstr/ary-ptrn-rest-obj-prop-id.js - dstr/dflt-ary-init-iter-close.js - dstr/dflt-ary-init-iter-get-err.js - dstr/dflt-ary-init-iter-get-err-array-prototype.js - dstr/dflt-ary-init-iter-no-close.js - dstr/dflt-ary-ptrn-elem-ary-elem-init.js - dstr/dflt-ary-ptrn-elem-ary-elem-iter.js - dstr/dflt-ary-ptrn-elem-ary-elision-init.js - dstr/dflt-ary-ptrn-elem-ary-empty-init.js - dstr/dflt-ary-ptrn-elem-ary-rest-init.js - dstr/dflt-ary-ptrn-elem-ary-rest-iter.js - dstr/dflt-ary-ptrn-elem-ary-val-null.js - dstr/dflt-ary-ptrn-elem-id-init-fn-name-arrow.js - dstr/dflt-ary-ptrn-elem-id-init-fn-name-class.js - dstr/dflt-ary-ptrn-elem-id-init-fn-name-cover.js - dstr/dflt-ary-ptrn-elem-id-init-fn-name-fn.js - dstr/dflt-ary-ptrn-elem-id-init-fn-name-gen.js - dstr/dflt-ary-ptrn-elem-id-init-hole.js - dstr/dflt-ary-ptrn-elem-id-init-skipped.js - dstr/dflt-ary-ptrn-elem-id-init-throws.js - dstr/dflt-ary-ptrn-elem-id-init-unresolvable.js - dstr/dflt-ary-ptrn-elem-id-iter-step-err.js - dstr/dflt-ary-ptrn-elem-id-iter-val-array-prototype.js - dstr/dflt-ary-ptrn-elem-id-iter-val-err.js - dstr/dflt-ary-ptrn-elem-obj-id.js - dstr/dflt-ary-ptrn-elem-obj-id-init.js - dstr/dflt-ary-ptrn-elem-obj-prop-id.js - dstr/dflt-ary-ptrn-elem-obj-prop-id-init.js - dstr/dflt-ary-ptrn-elem-obj-val-null.js - dstr/dflt-ary-ptrn-elem-obj-val-undef.js - dstr/dflt-ary-ptrn-elision.js - dstr/dflt-ary-ptrn-elision-step-err.js - dstr/dflt-ary-ptrn-rest-ary-elem.js - dstr/dflt-ary-ptrn-rest-ary-elision.js - dstr/dflt-ary-ptrn-rest-ary-empty.js - dstr/dflt-ary-ptrn-rest-ary-rest.js - dstr/dflt-ary-ptrn-rest-id.js - dstr/dflt-ary-ptrn-rest-id-direct.js - dstr/dflt-ary-ptrn-rest-id-elision.js - dstr/dflt-ary-ptrn-rest-id-elision-next-err.js - dstr/dflt-ary-ptrn-rest-id-exhausted.js - dstr/dflt-ary-ptrn-rest-id-iter-step-err.js - dstr/dflt-ary-ptrn-rest-id-iter-val-err.js - dstr/dflt-ary-ptrn-rest-obj-id.js - dstr/dflt-ary-ptrn-rest-obj-prop-id.js - dstr/dflt-obj-init-null.js - dstr/dflt-obj-init-undefined.js - dstr/dflt-obj-ptrn-id-get-value-err.js - dstr/dflt-obj-ptrn-id-init-fn-name-arrow.js - dstr/dflt-obj-ptrn-id-init-fn-name-class.js - dstr/dflt-obj-ptrn-id-init-fn-name-cover.js - dstr/dflt-obj-ptrn-id-init-fn-name-fn.js - dstr/dflt-obj-ptrn-id-init-fn-name-gen.js - dstr/dflt-obj-ptrn-id-init-skipped.js - dstr/dflt-obj-ptrn-id-init-throws.js - dstr/dflt-obj-ptrn-id-init-unresolvable.js - dstr/dflt-obj-ptrn-list-err.js - dstr/dflt-obj-ptrn-prop-ary.js - dstr/dflt-obj-ptrn-prop-ary-init.js - dstr/dflt-obj-ptrn-prop-ary-trailing-comma.js - dstr/dflt-obj-ptrn-prop-ary-value-null.js - dstr/dflt-obj-ptrn-prop-eval-err.js - dstr/dflt-obj-ptrn-prop-id-get-value-err.js - dstr/dflt-obj-ptrn-prop-id-init-skipped.js - dstr/dflt-obj-ptrn-prop-id-init-throws.js - dstr/dflt-obj-ptrn-prop-id-init-unresolvable.js - dstr/dflt-obj-ptrn-prop-obj.js - dstr/dflt-obj-ptrn-prop-obj-init.js - dstr/dflt-obj-ptrn-prop-obj-value-null.js - dstr/dflt-obj-ptrn-prop-obj-value-undef.js - dstr/dflt-obj-ptrn-rest-getter.js {unsupported: [object-rest]} - dstr/dflt-obj-ptrn-rest-skip-non-enumerable.js {unsupported: [object-rest]} - dstr/dflt-obj-ptrn-rest-val-obj.js {unsupported: [object-rest]} + dstr/dflt-ary-init-iter-close.js {unsupported: [default-parameters]} + dstr/dflt-ary-init-iter-get-err.js {unsupported: [default-parameters]} + dstr/dflt-ary-init-iter-get-err-array-prototype.js {unsupported: [default-parameters]} + dstr/dflt-ary-init-iter-no-close.js {unsupported: [default-parameters]} + dstr/dflt-ary-name-iter-val.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-ary-elem-init.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-ary-elem-iter.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-ary-elision-init.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-ary-elision-iter.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-ary-empty-init.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-ary-empty-iter.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-ary-rest-init.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-ary-rest-iter.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-ary-val-null.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-id-init-exhausted.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-id-init-fn-name-arrow.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-id-init-fn-name-class.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-id-init-fn-name-cover.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-id-init-fn-name-fn.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-id-init-fn-name-gen.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-id-init-hole.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-id-init-skipped.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-id-init-throws.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-id-init-undef.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-id-init-unresolvable.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-id-iter-complete.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-id-iter-done.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-id-iter-step-err.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-id-iter-val.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-id-iter-val-array-prototype.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-id-iter-val-err.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-obj-id.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-obj-id-init.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-obj-prop-id.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-obj-prop-id-init.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-obj-val-null.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-obj-val-undef.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elision.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elision-exhausted.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elision-step-err.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-empty.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-rest-ary-elem.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-rest-ary-elision.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-rest-ary-empty.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-rest-ary-rest.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-rest-id.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-rest-id-direct.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-rest-id-elision.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-rest-id-elision-next-err.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-rest-id-exhausted.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-rest-id-iter-step-err.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-rest-id-iter-val-err.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-rest-init-ary.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-rest-init-id.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-rest-init-obj.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-rest-not-final-ary.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-rest-not-final-id.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-rest-not-final-obj.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-rest-obj-id.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-rest-obj-prop-id.js {unsupported: [default-parameters]} + dstr/dflt-obj-init-null.js {unsupported: [default-parameters]} + dstr/dflt-obj-init-undefined.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-empty.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-id-get-value-err.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-id-init-fn-name-arrow.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-id-init-fn-name-class.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-id-init-fn-name-cover.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-id-init-fn-name-fn.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-id-init-fn-name-gen.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-id-init-skipped.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-id-init-throws.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-id-init-unresolvable.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-id-trailing-comma.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-list-err.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-prop-ary.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-prop-ary-init.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-prop-ary-trailing-comma.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-prop-ary-value-null.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-prop-eval-err.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-prop-id.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-prop-id-get-value-err.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-prop-id-init.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-prop-id-init-skipped.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-prop-id-init-throws.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-prop-id-init-unresolvable.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-prop-id-trailing-comma.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-prop-obj.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-prop-obj-init.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-prop-obj-value-null.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-prop-obj-value-undef.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-rest-getter.js {unsupported: [default-parameters, object-rest]} + dstr/dflt-obj-ptrn-rest-skip-non-enumerable.js {unsupported: [default-parameters, object-rest]} + dstr/dflt-obj-ptrn-rest-val-obj.js {unsupported: [default-parameters, object-rest]} dstr/obj-init-null.js dstr/obj-init-undefined.js dstr/obj-ptrn-id-get-value-err.js @@ -4879,12 +5166,15 @@ language/expressions/generators 194/290 (66.9%) dstr/obj-ptrn-id-init-skipped.js dstr/obj-ptrn-id-init-throws.js dstr/obj-ptrn-id-init-unresolvable.js + dstr/obj-ptrn-id-trailing-comma.js non-interpreted dstr/obj-ptrn-list-err.js dstr/obj-ptrn-prop-ary.js dstr/obj-ptrn-prop-ary-init.js + dstr/obj-ptrn-prop-ary-trailing-comma.js non-interpreted dstr/obj-ptrn-prop-ary-value-null.js dstr/obj-ptrn-prop-eval-err.js dstr/obj-ptrn-prop-id-get-value-err.js + dstr/obj-ptrn-prop-id-init.js dstr/obj-ptrn-prop-id-init-skipped.js dstr/obj-ptrn-prop-id-init-throws.js dstr/obj-ptrn-prop-id-init-unresolvable.js @@ -4897,20 +5187,25 @@ language/expressions/generators 194/290 (66.9%) dstr/obj-ptrn-rest-val-obj.js {unsupported: [object-rest]} forbidden-ext/b1 2/2 (100.0%) arguments-with-arguments-fn.js non-strict + arguments-with-arguments-lex.js non-strict array-destructuring-param-strict-body.js default-proto.js - dflt-params-abrupt.js - dflt-params-duplicates.js non-strict - dflt-params-ref-later.js - dflt-params-ref-self.js - dflt-params-rest.js + dflt-params-abrupt.js {unsupported: [default-parameters]} + dflt-params-arg-val-not-undefined.js {unsupported: [default-parameters]} + dflt-params-arg-val-undefined.js {unsupported: [default-parameters]} + dflt-params-duplicates.js {unsupported: [default-parameters]} + dflt-params-ref-later.js {unsupported: [default-parameters]} + dflt-params-ref-prior.js {unsupported: [default-parameters]} + dflt-params-ref-self.js {unsupported: [default-parameters]} + dflt-params-rest.js {unsupported: [default-parameters]} dflt-params-trailing-comma.js eval-body-proto-realm.js - eval-var-scope-syntax-err.js non-strict + eval-var-scope-syntax-err.js {unsupported: [default-parameters]} + generator-created-after-decl-inst.js has-instance.js implicit-name.js invoke-as-constructor.js - length-dflt.js + length-dflt.js {unsupported: [default-parameters]} named-no-strict-reassign-fn-name-in-body.js non-strict named-no-strict-reassign-fn-name-in-body-in-arrow.js non-strict named-no-strict-reassign-fn-name-in-body-in-eval.js non-strict @@ -4923,6 +5218,11 @@ language/expressions/generators 194/290 (66.9%) named-yield-spread-arr-single.js named-yield-spread-obj.js object-destructuring-param-strict-body.js + param-dflt-yield.js {unsupported: [default-parameters]} + params-dflt-args-unmapped.js {unsupported: [default-parameters]} + params-dflt-ref-arguments.js {unsupported: [default-parameters]} + params-trailing-comma-multiple.js non-interpreted + params-trailing-comma-single.js non-interpreted prototype-own-properties.js prototype-relation-to-function.js prototype-value.js @@ -4931,8 +5231,11 @@ language/expressions/generators 194/290 (66.9%) scope-name-var-close.js non-interpreted scope-name-var-open-non-strict.js non-strict scope-name-var-open-strict.js strict + scope-param-elem-var-close.js non-strict + scope-param-elem-var-open.js non-strict scope-param-rest-elem-var-close.js non-strict scope-param-rest-elem-var-open.js non-strict + scope-paramsbody-var-close.js scope-paramsbody-var-open.js static-init-await-binding.js static-init-await-reference.js @@ -5134,7 +5437,7 @@ language/expressions/new 41/59 (69.49%) ~language/expressions/new.target -language/expressions/object 812/1169 (69.46%) +language/expressions/object 867/1169 (74.17%) dstr/async-gen-meth-ary-init-iter-close.js {unsupported: [async-iteration, async]} dstr/async-gen-meth-ary-init-iter-get-err.js {unsupported: [async-iteration]} dstr/async-gen-meth-ary-init-iter-get-err-array-prototype.js {unsupported: [async-iteration]} @@ -5375,93 +5678,99 @@ language/expressions/object 812/1169 (69.46%) dstr/gen-meth-ary-ptrn-rest-id-iter-val-err.js dstr/gen-meth-ary-ptrn-rest-obj-id.js dstr/gen-meth-ary-ptrn-rest-obj-prop-id.js - dstr/gen-meth-dflt-ary-init-iter-close.js - dstr/gen-meth-dflt-ary-init-iter-get-err.js - dstr/gen-meth-dflt-ary-init-iter-get-err-array-prototype.js - dstr/gen-meth-dflt-ary-init-iter-no-close.js - dstr/gen-meth-dflt-ary-name-iter-val.js - dstr/gen-meth-dflt-ary-ptrn-elem-ary-elem-init.js - dstr/gen-meth-dflt-ary-ptrn-elem-ary-elem-iter.js - dstr/gen-meth-dflt-ary-ptrn-elem-ary-elision-init.js - dstr/gen-meth-dflt-ary-ptrn-elem-ary-elision-iter.js - dstr/gen-meth-dflt-ary-ptrn-elem-ary-empty-init.js - dstr/gen-meth-dflt-ary-ptrn-elem-ary-empty-iter.js - dstr/gen-meth-dflt-ary-ptrn-elem-ary-rest-init.js - dstr/gen-meth-dflt-ary-ptrn-elem-ary-rest-iter.js - dstr/gen-meth-dflt-ary-ptrn-elem-ary-val-null.js - dstr/gen-meth-dflt-ary-ptrn-elem-id-init-exhausted.js - dstr/gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js - dstr/gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-class.js - dstr/gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-cover.js - dstr/gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-fn.js - dstr/gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-gen.js - dstr/gen-meth-dflt-ary-ptrn-elem-id-init-hole.js - dstr/gen-meth-dflt-ary-ptrn-elem-id-init-skipped.js - dstr/gen-meth-dflt-ary-ptrn-elem-id-init-throws.js - dstr/gen-meth-dflt-ary-ptrn-elem-id-init-undef.js - dstr/gen-meth-dflt-ary-ptrn-elem-id-init-unresolvable.js - dstr/gen-meth-dflt-ary-ptrn-elem-id-iter-complete.js - dstr/gen-meth-dflt-ary-ptrn-elem-id-iter-done.js - dstr/gen-meth-dflt-ary-ptrn-elem-id-iter-step-err.js - dstr/gen-meth-dflt-ary-ptrn-elem-id-iter-val.js - dstr/gen-meth-dflt-ary-ptrn-elem-id-iter-val-array-prototype.js - dstr/gen-meth-dflt-ary-ptrn-elem-id-iter-val-err.js - dstr/gen-meth-dflt-ary-ptrn-elem-obj-id.js - dstr/gen-meth-dflt-ary-ptrn-elem-obj-id-init.js - dstr/gen-meth-dflt-ary-ptrn-elem-obj-prop-id.js - dstr/gen-meth-dflt-ary-ptrn-elem-obj-prop-id-init.js - dstr/gen-meth-dflt-ary-ptrn-elem-obj-val-null.js - dstr/gen-meth-dflt-ary-ptrn-elem-obj-val-undef.js - dstr/gen-meth-dflt-ary-ptrn-elision.js - dstr/gen-meth-dflt-ary-ptrn-elision-exhausted.js - dstr/gen-meth-dflt-ary-ptrn-elision-step-err.js - dstr/gen-meth-dflt-ary-ptrn-empty.js - dstr/gen-meth-dflt-ary-ptrn-rest-ary-elem.js - dstr/gen-meth-dflt-ary-ptrn-rest-ary-elision.js - dstr/gen-meth-dflt-ary-ptrn-rest-ary-empty.js - dstr/gen-meth-dflt-ary-ptrn-rest-ary-rest.js - dstr/gen-meth-dflt-ary-ptrn-rest-id.js - dstr/gen-meth-dflt-ary-ptrn-rest-id-direct.js - dstr/gen-meth-dflt-ary-ptrn-rest-id-elision.js - dstr/gen-meth-dflt-ary-ptrn-rest-id-elision-next-err.js - dstr/gen-meth-dflt-ary-ptrn-rest-id-exhausted.js - dstr/gen-meth-dflt-ary-ptrn-rest-id-iter-step-err.js - dstr/gen-meth-dflt-ary-ptrn-rest-id-iter-val-err.js - dstr/gen-meth-dflt-ary-ptrn-rest-obj-id.js - dstr/gen-meth-dflt-ary-ptrn-rest-obj-prop-id.js - dstr/gen-meth-dflt-obj-init-null.js - dstr/gen-meth-dflt-obj-init-undefined.js - dstr/gen-meth-dflt-obj-ptrn-empty.js - dstr/gen-meth-dflt-obj-ptrn-id-get-value-err.js - dstr/gen-meth-dflt-obj-ptrn-id-init-fn-name-arrow.js - dstr/gen-meth-dflt-obj-ptrn-id-init-fn-name-class.js - dstr/gen-meth-dflt-obj-ptrn-id-init-fn-name-cover.js - dstr/gen-meth-dflt-obj-ptrn-id-init-fn-name-fn.js - dstr/gen-meth-dflt-obj-ptrn-id-init-fn-name-gen.js - dstr/gen-meth-dflt-obj-ptrn-id-init-skipped.js - dstr/gen-meth-dflt-obj-ptrn-id-init-throws.js - dstr/gen-meth-dflt-obj-ptrn-id-init-unresolvable.js - dstr/gen-meth-dflt-obj-ptrn-id-trailing-comma.js - dstr/gen-meth-dflt-obj-ptrn-list-err.js - dstr/gen-meth-dflt-obj-ptrn-prop-ary.js - dstr/gen-meth-dflt-obj-ptrn-prop-ary-init.js - dstr/gen-meth-dflt-obj-ptrn-prop-ary-trailing-comma.js - dstr/gen-meth-dflt-obj-ptrn-prop-ary-value-null.js - dstr/gen-meth-dflt-obj-ptrn-prop-eval-err.js - dstr/gen-meth-dflt-obj-ptrn-prop-id.js - dstr/gen-meth-dflt-obj-ptrn-prop-id-get-value-err.js - dstr/gen-meth-dflt-obj-ptrn-prop-id-init.js - dstr/gen-meth-dflt-obj-ptrn-prop-id-init-skipped.js - dstr/gen-meth-dflt-obj-ptrn-prop-id-init-throws.js - dstr/gen-meth-dflt-obj-ptrn-prop-id-init-unresolvable.js - dstr/gen-meth-dflt-obj-ptrn-prop-id-trailing-comma.js - dstr/gen-meth-dflt-obj-ptrn-prop-obj.js - dstr/gen-meth-dflt-obj-ptrn-prop-obj-init.js - dstr/gen-meth-dflt-obj-ptrn-prop-obj-value-null.js - dstr/gen-meth-dflt-obj-ptrn-prop-obj-value-undef.js - dstr/gen-meth-dflt-obj-ptrn-rest-getter.js {unsupported: [object-rest]} - dstr/gen-meth-dflt-obj-ptrn-rest-skip-non-enumerable.js {unsupported: [object-rest]} - dstr/gen-meth-dflt-obj-ptrn-rest-val-obj.js {unsupported: [object-rest]} + dstr/gen-meth-dflt-ary-init-iter-close.js {unsupported: [default-parameters]} + dstr/gen-meth-dflt-ary-init-iter-get-err.js {unsupported: [default-parameters]} + dstr/gen-meth-dflt-ary-init-iter-get-err-array-prototype.js {unsupported: [default-parameters]} + dstr/gen-meth-dflt-ary-init-iter-no-close.js {unsupported: [default-parameters]} + dstr/gen-meth-dflt-ary-name-iter-val.js {unsupported: [default-parameters]} + dstr/gen-meth-dflt-ary-ptrn-elem-ary-elem-init.js {unsupported: [default-parameters]} + dstr/gen-meth-dflt-ary-ptrn-elem-ary-elem-iter.js {unsupported: [default-parameters]} + dstr/gen-meth-dflt-ary-ptrn-elem-ary-elision-init.js {unsupported: [default-parameters]} + dstr/gen-meth-dflt-ary-ptrn-elem-ary-elision-iter.js {unsupported: [default-parameters]} + dstr/gen-meth-dflt-ary-ptrn-elem-ary-empty-init.js {unsupported: [default-parameters]} + dstr/gen-meth-dflt-ary-ptrn-elem-ary-empty-iter.js {unsupported: [default-parameters]} + dstr/gen-meth-dflt-ary-ptrn-elem-ary-rest-init.js {unsupported: [default-parameters]} + dstr/gen-meth-dflt-ary-ptrn-elem-ary-rest-iter.js {unsupported: [default-parameters]} + dstr/gen-meth-dflt-ary-ptrn-elem-ary-val-null.js {unsupported: [default-parameters]} + dstr/gen-meth-dflt-ary-ptrn-elem-id-init-exhausted.js {unsupported: [default-parameters]} + dstr/gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js {unsupported: [default-parameters]} + dstr/gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-class.js {unsupported: [default-parameters]} + dstr/gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-cover.js {unsupported: [default-parameters]} + dstr/gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-fn.js {unsupported: [default-parameters]} + dstr/gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-gen.js {unsupported: [default-parameters]} + dstr/gen-meth-dflt-ary-ptrn-elem-id-init-hole.js {unsupported: [default-parameters]} + dstr/gen-meth-dflt-ary-ptrn-elem-id-init-skipped.js {unsupported: [default-parameters]} + dstr/gen-meth-dflt-ary-ptrn-elem-id-init-throws.js {unsupported: [default-parameters]} + dstr/gen-meth-dflt-ary-ptrn-elem-id-init-undef.js {unsupported: [default-parameters]} + dstr/gen-meth-dflt-ary-ptrn-elem-id-init-unresolvable.js {unsupported: [default-parameters]} + dstr/gen-meth-dflt-ary-ptrn-elem-id-iter-complete.js {unsupported: [default-parameters]} + dstr/gen-meth-dflt-ary-ptrn-elem-id-iter-done.js {unsupported: [default-parameters]} + dstr/gen-meth-dflt-ary-ptrn-elem-id-iter-step-err.js {unsupported: [default-parameters]} + dstr/gen-meth-dflt-ary-ptrn-elem-id-iter-val.js {unsupported: [default-parameters]} + dstr/gen-meth-dflt-ary-ptrn-elem-id-iter-val-array-prototype.js {unsupported: [default-parameters]} + dstr/gen-meth-dflt-ary-ptrn-elem-id-iter-val-err.js {unsupported: [default-parameters]} + dstr/gen-meth-dflt-ary-ptrn-elem-obj-id.js {unsupported: [default-parameters]} + dstr/gen-meth-dflt-ary-ptrn-elem-obj-id-init.js {unsupported: [default-parameters]} + dstr/gen-meth-dflt-ary-ptrn-elem-obj-prop-id.js {unsupported: [default-parameters]} + dstr/gen-meth-dflt-ary-ptrn-elem-obj-prop-id-init.js {unsupported: [default-parameters]} + dstr/gen-meth-dflt-ary-ptrn-elem-obj-val-null.js {unsupported: [default-parameters]} + dstr/gen-meth-dflt-ary-ptrn-elem-obj-val-undef.js {unsupported: [default-parameters]} + dstr/gen-meth-dflt-ary-ptrn-elision.js {unsupported: [default-parameters]} + dstr/gen-meth-dflt-ary-ptrn-elision-exhausted.js {unsupported: [default-parameters]} + dstr/gen-meth-dflt-ary-ptrn-elision-step-err.js {unsupported: [default-parameters]} + dstr/gen-meth-dflt-ary-ptrn-empty.js {unsupported: [default-parameters]} + dstr/gen-meth-dflt-ary-ptrn-rest-ary-elem.js {unsupported: [default-parameters]} + dstr/gen-meth-dflt-ary-ptrn-rest-ary-elision.js {unsupported: [default-parameters]} + dstr/gen-meth-dflt-ary-ptrn-rest-ary-empty.js {unsupported: [default-parameters]} + dstr/gen-meth-dflt-ary-ptrn-rest-ary-rest.js {unsupported: [default-parameters]} + dstr/gen-meth-dflt-ary-ptrn-rest-id.js {unsupported: [default-parameters]} + dstr/gen-meth-dflt-ary-ptrn-rest-id-direct.js {unsupported: [default-parameters]} + dstr/gen-meth-dflt-ary-ptrn-rest-id-elision.js {unsupported: [default-parameters]} + dstr/gen-meth-dflt-ary-ptrn-rest-id-elision-next-err.js {unsupported: [default-parameters]} + dstr/gen-meth-dflt-ary-ptrn-rest-id-exhausted.js {unsupported: [default-parameters]} + dstr/gen-meth-dflt-ary-ptrn-rest-id-iter-step-err.js {unsupported: [default-parameters]} + dstr/gen-meth-dflt-ary-ptrn-rest-id-iter-val-err.js {unsupported: [default-parameters]} + dstr/gen-meth-dflt-ary-ptrn-rest-init-ary.js {unsupported: [default-parameters]} + dstr/gen-meth-dflt-ary-ptrn-rest-init-id.js {unsupported: [default-parameters]} + dstr/gen-meth-dflt-ary-ptrn-rest-init-obj.js {unsupported: [default-parameters]} + dstr/gen-meth-dflt-ary-ptrn-rest-not-final-ary.js {unsupported: [default-parameters]} + dstr/gen-meth-dflt-ary-ptrn-rest-not-final-id.js {unsupported: [default-parameters]} + dstr/gen-meth-dflt-ary-ptrn-rest-not-final-obj.js {unsupported: [default-parameters]} + dstr/gen-meth-dflt-ary-ptrn-rest-obj-id.js {unsupported: [default-parameters]} + dstr/gen-meth-dflt-ary-ptrn-rest-obj-prop-id.js {unsupported: [default-parameters]} + dstr/gen-meth-dflt-obj-init-null.js {unsupported: [default-parameters]} + dstr/gen-meth-dflt-obj-init-undefined.js {unsupported: [default-parameters]} + dstr/gen-meth-dflt-obj-ptrn-empty.js {unsupported: [default-parameters]} + dstr/gen-meth-dflt-obj-ptrn-id-get-value-err.js {unsupported: [default-parameters]} + dstr/gen-meth-dflt-obj-ptrn-id-init-fn-name-arrow.js {unsupported: [default-parameters]} + dstr/gen-meth-dflt-obj-ptrn-id-init-fn-name-class.js {unsupported: [default-parameters]} + dstr/gen-meth-dflt-obj-ptrn-id-init-fn-name-cover.js {unsupported: [default-parameters]} + dstr/gen-meth-dflt-obj-ptrn-id-init-fn-name-fn.js {unsupported: [default-parameters]} + dstr/gen-meth-dflt-obj-ptrn-id-init-fn-name-gen.js {unsupported: [default-parameters]} + dstr/gen-meth-dflt-obj-ptrn-id-init-skipped.js {unsupported: [default-parameters]} + dstr/gen-meth-dflt-obj-ptrn-id-init-throws.js {unsupported: [default-parameters]} + dstr/gen-meth-dflt-obj-ptrn-id-init-unresolvable.js {unsupported: [default-parameters]} + dstr/gen-meth-dflt-obj-ptrn-id-trailing-comma.js {unsupported: [default-parameters]} + dstr/gen-meth-dflt-obj-ptrn-list-err.js {unsupported: [default-parameters]} + dstr/gen-meth-dflt-obj-ptrn-prop-ary.js {unsupported: [default-parameters]} + dstr/gen-meth-dflt-obj-ptrn-prop-ary-init.js {unsupported: [default-parameters]} + dstr/gen-meth-dflt-obj-ptrn-prop-ary-trailing-comma.js {unsupported: [default-parameters]} + dstr/gen-meth-dflt-obj-ptrn-prop-ary-value-null.js {unsupported: [default-parameters]} + dstr/gen-meth-dflt-obj-ptrn-prop-eval-err.js {unsupported: [default-parameters]} + dstr/gen-meth-dflt-obj-ptrn-prop-id.js {unsupported: [default-parameters]} + dstr/gen-meth-dflt-obj-ptrn-prop-id-get-value-err.js {unsupported: [default-parameters]} + dstr/gen-meth-dflt-obj-ptrn-prop-id-init.js {unsupported: [default-parameters]} + dstr/gen-meth-dflt-obj-ptrn-prop-id-init-skipped.js {unsupported: [default-parameters]} + dstr/gen-meth-dflt-obj-ptrn-prop-id-init-throws.js {unsupported: [default-parameters]} + dstr/gen-meth-dflt-obj-ptrn-prop-id-init-unresolvable.js {unsupported: [default-parameters]} + dstr/gen-meth-dflt-obj-ptrn-prop-id-trailing-comma.js {unsupported: [default-parameters]} + dstr/gen-meth-dflt-obj-ptrn-prop-obj.js {unsupported: [default-parameters]} + dstr/gen-meth-dflt-obj-ptrn-prop-obj-init.js {unsupported: [default-parameters]} + dstr/gen-meth-dflt-obj-ptrn-prop-obj-value-null.js {unsupported: [default-parameters]} + dstr/gen-meth-dflt-obj-ptrn-prop-obj-value-undef.js {unsupported: [default-parameters]} + dstr/gen-meth-dflt-obj-ptrn-rest-getter.js {unsupported: [default-parameters, object-rest]} + dstr/gen-meth-dflt-obj-ptrn-rest-skip-non-enumerable.js {unsupported: [default-parameters, object-rest]} + dstr/gen-meth-dflt-obj-ptrn-rest-val-obj.js {unsupported: [default-parameters, object-rest]} dstr/gen-meth-obj-init-null.js dstr/gen-meth-obj-init-undefined.js dstr/gen-meth-obj-ptrn-empty.js @@ -5501,16 +5810,22 @@ language/expressions/object 812/1169 (69.46%) dstr/meth-ary-ptrn-elem-ary-elem-init.js dstr/meth-ary-ptrn-elem-ary-elem-iter.js dstr/meth-ary-ptrn-elem-ary-elision-init.js + dstr/meth-ary-ptrn-elem-ary-elision-iter.js dstr/meth-ary-ptrn-elem-ary-empty-init.js + dstr/meth-ary-ptrn-elem-ary-empty-iter.js dstr/meth-ary-ptrn-elem-ary-rest-init.js dstr/meth-ary-ptrn-elem-ary-rest-iter.js + dstr/meth-ary-ptrn-elem-id-init-exhausted.js dstr/meth-ary-ptrn-elem-id-init-fn-name-arrow.js dstr/meth-ary-ptrn-elem-id-init-fn-name-class.js dstr/meth-ary-ptrn-elem-id-init-fn-name-cover.js dstr/meth-ary-ptrn-elem-id-init-fn-name-fn.js dstr/meth-ary-ptrn-elem-id-init-fn-name-gen.js + dstr/meth-ary-ptrn-elem-id-init-hole.js dstr/meth-ary-ptrn-elem-id-init-skipped.js dstr/meth-ary-ptrn-elem-id-init-throws.js + dstr/meth-ary-ptrn-elem-id-init-undef.js + dstr/meth-ary-ptrn-elem-id-init-unresolvable.js dstr/meth-ary-ptrn-elem-id-iter-step-err.js dstr/meth-ary-ptrn-elem-id-iter-val-array-prototype.js dstr/meth-ary-ptrn-elem-id-iter-val-err.js @@ -5533,72 +5848,99 @@ language/expressions/object 812/1169 (69.46%) dstr/meth-ary-ptrn-rest-id-iter-val-err.js dstr/meth-ary-ptrn-rest-obj-id.js dstr/meth-ary-ptrn-rest-obj-prop-id.js - dstr/meth-dflt-ary-init-iter-close.js - dstr/meth-dflt-ary-init-iter-get-err.js - dstr/meth-dflt-ary-init-iter-get-err-array-prototype.js - dstr/meth-dflt-ary-init-iter-no-close.js - dstr/meth-dflt-ary-ptrn-elem-ary-elem-init.js - dstr/meth-dflt-ary-ptrn-elem-ary-elem-iter.js - dstr/meth-dflt-ary-ptrn-elem-ary-elision-init.js - dstr/meth-dflt-ary-ptrn-elem-ary-empty-init.js - dstr/meth-dflt-ary-ptrn-elem-ary-rest-init.js - dstr/meth-dflt-ary-ptrn-elem-ary-rest-iter.js - dstr/meth-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js - dstr/meth-dflt-ary-ptrn-elem-id-init-fn-name-class.js - dstr/meth-dflt-ary-ptrn-elem-id-init-fn-name-cover.js - dstr/meth-dflt-ary-ptrn-elem-id-init-fn-name-fn.js - dstr/meth-dflt-ary-ptrn-elem-id-init-fn-name-gen.js - dstr/meth-dflt-ary-ptrn-elem-id-init-hole.js - dstr/meth-dflt-ary-ptrn-elem-id-init-skipped.js - dstr/meth-dflt-ary-ptrn-elem-id-init-throws.js - dstr/meth-dflt-ary-ptrn-elem-id-iter-step-err.js - dstr/meth-dflt-ary-ptrn-elem-id-iter-val-array-prototype.js - dstr/meth-dflt-ary-ptrn-elem-id-iter-val-err.js - dstr/meth-dflt-ary-ptrn-elem-obj-id.js - dstr/meth-dflt-ary-ptrn-elem-obj-id-init.js - dstr/meth-dflt-ary-ptrn-elem-obj-prop-id.js - dstr/meth-dflt-ary-ptrn-elem-obj-prop-id-init.js - dstr/meth-dflt-ary-ptrn-elision.js - dstr/meth-dflt-ary-ptrn-elision-step-err.js - dstr/meth-dflt-ary-ptrn-rest-ary-elem.js - dstr/meth-dflt-ary-ptrn-rest-ary-elision.js - dstr/meth-dflt-ary-ptrn-rest-ary-empty.js - dstr/meth-dflt-ary-ptrn-rest-ary-rest.js - dstr/meth-dflt-ary-ptrn-rest-id.js - dstr/meth-dflt-ary-ptrn-rest-id-direct.js - dstr/meth-dflt-ary-ptrn-rest-id-elision.js - dstr/meth-dflt-ary-ptrn-rest-id-elision-next-err.js - dstr/meth-dflt-ary-ptrn-rest-id-exhausted.js - dstr/meth-dflt-ary-ptrn-rest-id-iter-step-err.js - dstr/meth-dflt-ary-ptrn-rest-id-iter-val-err.js - dstr/meth-dflt-ary-ptrn-rest-obj-id.js - dstr/meth-dflt-ary-ptrn-rest-obj-prop-id.js - dstr/meth-dflt-obj-init-null.js - dstr/meth-dflt-obj-init-undefined.js - dstr/meth-dflt-obj-ptrn-id-get-value-err.js - dstr/meth-dflt-obj-ptrn-id-init-fn-name-arrow.js - dstr/meth-dflt-obj-ptrn-id-init-fn-name-class.js - dstr/meth-dflt-obj-ptrn-id-init-fn-name-cover.js - dstr/meth-dflt-obj-ptrn-id-init-fn-name-fn.js - dstr/meth-dflt-obj-ptrn-id-init-fn-name-gen.js - dstr/meth-dflt-obj-ptrn-id-init-skipped.js - dstr/meth-dflt-obj-ptrn-id-init-throws.js - dstr/meth-dflt-obj-ptrn-list-err.js - dstr/meth-dflt-obj-ptrn-prop-ary.js - dstr/meth-dflt-obj-ptrn-prop-ary-init.js - dstr/meth-dflt-obj-ptrn-prop-ary-trailing-comma.js - dstr/meth-dflt-obj-ptrn-prop-ary-value-null.js - dstr/meth-dflt-obj-ptrn-prop-eval-err.js - dstr/meth-dflt-obj-ptrn-prop-id-get-value-err.js - dstr/meth-dflt-obj-ptrn-prop-id-init-skipped.js - dstr/meth-dflt-obj-ptrn-prop-id-init-throws.js - dstr/meth-dflt-obj-ptrn-prop-obj.js - dstr/meth-dflt-obj-ptrn-prop-obj-init.js - dstr/meth-dflt-obj-ptrn-prop-obj-value-null.js - dstr/meth-dflt-obj-ptrn-prop-obj-value-undef.js - dstr/meth-dflt-obj-ptrn-rest-getter.js {unsupported: [object-rest]} - dstr/meth-dflt-obj-ptrn-rest-skip-non-enumerable.js {unsupported: [object-rest]} - dstr/meth-dflt-obj-ptrn-rest-val-obj.js {unsupported: [object-rest]} + dstr/meth-dflt-ary-init-iter-close.js {unsupported: [default-parameters]} + dstr/meth-dflt-ary-init-iter-get-err.js {unsupported: [default-parameters]} + dstr/meth-dflt-ary-init-iter-get-err-array-prototype.js {unsupported: [default-parameters]} + dstr/meth-dflt-ary-init-iter-no-close.js {unsupported: [default-parameters]} + dstr/meth-dflt-ary-name-iter-val.js {unsupported: [default-parameters]} + dstr/meth-dflt-ary-ptrn-elem-ary-elem-init.js {unsupported: [default-parameters]} + dstr/meth-dflt-ary-ptrn-elem-ary-elem-iter.js {unsupported: [default-parameters]} + dstr/meth-dflt-ary-ptrn-elem-ary-elision-init.js {unsupported: [default-parameters]} + dstr/meth-dflt-ary-ptrn-elem-ary-elision-iter.js {unsupported: [default-parameters]} + dstr/meth-dflt-ary-ptrn-elem-ary-empty-init.js {unsupported: [default-parameters]} + dstr/meth-dflt-ary-ptrn-elem-ary-empty-iter.js {unsupported: [default-parameters]} + dstr/meth-dflt-ary-ptrn-elem-ary-rest-init.js {unsupported: [default-parameters]} + dstr/meth-dflt-ary-ptrn-elem-ary-rest-iter.js {unsupported: [default-parameters]} + dstr/meth-dflt-ary-ptrn-elem-ary-val-null.js {unsupported: [default-parameters]} + dstr/meth-dflt-ary-ptrn-elem-id-init-exhausted.js {unsupported: [default-parameters]} + dstr/meth-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js {unsupported: [default-parameters]} + dstr/meth-dflt-ary-ptrn-elem-id-init-fn-name-class.js {unsupported: [default-parameters]} + dstr/meth-dflt-ary-ptrn-elem-id-init-fn-name-cover.js {unsupported: [default-parameters]} + dstr/meth-dflt-ary-ptrn-elem-id-init-fn-name-fn.js {unsupported: [default-parameters]} + dstr/meth-dflt-ary-ptrn-elem-id-init-fn-name-gen.js {unsupported: [default-parameters]} + dstr/meth-dflt-ary-ptrn-elem-id-init-hole.js {unsupported: [default-parameters]} + dstr/meth-dflt-ary-ptrn-elem-id-init-skipped.js {unsupported: [default-parameters]} + dstr/meth-dflt-ary-ptrn-elem-id-init-throws.js {unsupported: [default-parameters]} + dstr/meth-dflt-ary-ptrn-elem-id-init-undef.js {unsupported: [default-parameters]} + dstr/meth-dflt-ary-ptrn-elem-id-init-unresolvable.js {unsupported: [default-parameters]} + dstr/meth-dflt-ary-ptrn-elem-id-iter-complete.js {unsupported: [default-parameters]} + dstr/meth-dflt-ary-ptrn-elem-id-iter-done.js {unsupported: [default-parameters]} + dstr/meth-dflt-ary-ptrn-elem-id-iter-step-err.js {unsupported: [default-parameters]} + dstr/meth-dflt-ary-ptrn-elem-id-iter-val.js {unsupported: [default-parameters]} + dstr/meth-dflt-ary-ptrn-elem-id-iter-val-array-prototype.js {unsupported: [default-parameters]} + dstr/meth-dflt-ary-ptrn-elem-id-iter-val-err.js {unsupported: [default-parameters]} + dstr/meth-dflt-ary-ptrn-elem-obj-id.js {unsupported: [default-parameters]} + dstr/meth-dflt-ary-ptrn-elem-obj-id-init.js {unsupported: [default-parameters]} + dstr/meth-dflt-ary-ptrn-elem-obj-prop-id.js {unsupported: [default-parameters]} + dstr/meth-dflt-ary-ptrn-elem-obj-prop-id-init.js {unsupported: [default-parameters]} + dstr/meth-dflt-ary-ptrn-elem-obj-val-null.js {unsupported: [default-parameters]} + dstr/meth-dflt-ary-ptrn-elem-obj-val-undef.js {unsupported: [default-parameters]} + dstr/meth-dflt-ary-ptrn-elision.js {unsupported: [default-parameters]} + dstr/meth-dflt-ary-ptrn-elision-exhausted.js {unsupported: [default-parameters]} + dstr/meth-dflt-ary-ptrn-elision-step-err.js {unsupported: [default-parameters]} + dstr/meth-dflt-ary-ptrn-empty.js {unsupported: [default-parameters]} + dstr/meth-dflt-ary-ptrn-rest-ary-elem.js {unsupported: [default-parameters]} + dstr/meth-dflt-ary-ptrn-rest-ary-elision.js {unsupported: [default-parameters]} + dstr/meth-dflt-ary-ptrn-rest-ary-empty.js {unsupported: [default-parameters]} + dstr/meth-dflt-ary-ptrn-rest-ary-rest.js {unsupported: [default-parameters]} + dstr/meth-dflt-ary-ptrn-rest-id.js {unsupported: [default-parameters]} + dstr/meth-dflt-ary-ptrn-rest-id-direct.js {unsupported: [default-parameters]} + dstr/meth-dflt-ary-ptrn-rest-id-elision.js {unsupported: [default-parameters]} + dstr/meth-dflt-ary-ptrn-rest-id-elision-next-err.js {unsupported: [default-parameters]} + dstr/meth-dflt-ary-ptrn-rest-id-exhausted.js {unsupported: [default-parameters]} + dstr/meth-dflt-ary-ptrn-rest-id-iter-step-err.js {unsupported: [default-parameters]} + dstr/meth-dflt-ary-ptrn-rest-id-iter-val-err.js {unsupported: [default-parameters]} + dstr/meth-dflt-ary-ptrn-rest-init-ary.js {unsupported: [default-parameters]} + dstr/meth-dflt-ary-ptrn-rest-init-id.js {unsupported: [default-parameters]} + dstr/meth-dflt-ary-ptrn-rest-init-obj.js {unsupported: [default-parameters]} + dstr/meth-dflt-ary-ptrn-rest-not-final-ary.js {unsupported: [default-parameters]} + dstr/meth-dflt-ary-ptrn-rest-not-final-id.js {unsupported: [default-parameters]} + dstr/meth-dflt-ary-ptrn-rest-not-final-obj.js {unsupported: [default-parameters]} + dstr/meth-dflt-ary-ptrn-rest-obj-id.js {unsupported: [default-parameters]} + dstr/meth-dflt-ary-ptrn-rest-obj-prop-id.js {unsupported: [default-parameters]} + dstr/meth-dflt-obj-init-null.js {unsupported: [default-parameters]} + dstr/meth-dflt-obj-init-undefined.js {unsupported: [default-parameters]} + dstr/meth-dflt-obj-ptrn-empty.js {unsupported: [default-parameters]} + dstr/meth-dflt-obj-ptrn-id-get-value-err.js {unsupported: [default-parameters]} + dstr/meth-dflt-obj-ptrn-id-init-fn-name-arrow.js {unsupported: [default-parameters]} + dstr/meth-dflt-obj-ptrn-id-init-fn-name-class.js {unsupported: [default-parameters]} + dstr/meth-dflt-obj-ptrn-id-init-fn-name-cover.js {unsupported: [default-parameters]} + dstr/meth-dflt-obj-ptrn-id-init-fn-name-fn.js {unsupported: [default-parameters]} + dstr/meth-dflt-obj-ptrn-id-init-fn-name-gen.js {unsupported: [default-parameters]} + dstr/meth-dflt-obj-ptrn-id-init-skipped.js {unsupported: [default-parameters]} + dstr/meth-dflt-obj-ptrn-id-init-throws.js {unsupported: [default-parameters]} + dstr/meth-dflt-obj-ptrn-id-init-unresolvable.js {unsupported: [default-parameters]} + dstr/meth-dflt-obj-ptrn-id-trailing-comma.js {unsupported: [default-parameters]} + dstr/meth-dflt-obj-ptrn-list-err.js {unsupported: [default-parameters]} + dstr/meth-dflt-obj-ptrn-prop-ary.js {unsupported: [default-parameters]} + dstr/meth-dflt-obj-ptrn-prop-ary-init.js {unsupported: [default-parameters]} + dstr/meth-dflt-obj-ptrn-prop-ary-trailing-comma.js {unsupported: [default-parameters]} + dstr/meth-dflt-obj-ptrn-prop-ary-value-null.js {unsupported: [default-parameters]} + dstr/meth-dflt-obj-ptrn-prop-eval-err.js {unsupported: [default-parameters]} + dstr/meth-dflt-obj-ptrn-prop-id.js {unsupported: [default-parameters]} + dstr/meth-dflt-obj-ptrn-prop-id-get-value-err.js {unsupported: [default-parameters]} + dstr/meth-dflt-obj-ptrn-prop-id-init.js {unsupported: [default-parameters]} + dstr/meth-dflt-obj-ptrn-prop-id-init-skipped.js {unsupported: [default-parameters]} + dstr/meth-dflt-obj-ptrn-prop-id-init-throws.js {unsupported: [default-parameters]} + dstr/meth-dflt-obj-ptrn-prop-id-init-unresolvable.js {unsupported: [default-parameters]} + dstr/meth-dflt-obj-ptrn-prop-id-trailing-comma.js {unsupported: [default-parameters]} + dstr/meth-dflt-obj-ptrn-prop-obj.js {unsupported: [default-parameters]} + dstr/meth-dflt-obj-ptrn-prop-obj-init.js {unsupported: [default-parameters]} + dstr/meth-dflt-obj-ptrn-prop-obj-value-null.js {unsupported: [default-parameters]} + dstr/meth-dflt-obj-ptrn-prop-obj-value-undef.js {unsupported: [default-parameters]} + dstr/meth-dflt-obj-ptrn-rest-getter.js {unsupported: [default-parameters, object-rest]} + dstr/meth-dflt-obj-ptrn-rest-skip-non-enumerable.js {unsupported: [default-parameters, object-rest]} + dstr/meth-dflt-obj-ptrn-rest-val-obj.js {unsupported: [default-parameters, object-rest]} dstr/meth-obj-init-null.js dstr/meth-obj-init-undefined.js dstr/meth-obj-ptrn-id-init-fn-name-arrow.js @@ -5608,13 +5950,17 @@ language/expressions/object 812/1169 (69.46%) dstr/meth-obj-ptrn-id-init-fn-name-gen.js dstr/meth-obj-ptrn-id-init-skipped.js dstr/meth-obj-ptrn-id-init-throws.js + dstr/meth-obj-ptrn-id-init-unresolvable.js dstr/meth-obj-ptrn-list-err.js dstr/meth-obj-ptrn-prop-ary.js dstr/meth-obj-ptrn-prop-ary-init.js dstr/meth-obj-ptrn-prop-ary-value-null.js dstr/meth-obj-ptrn-prop-eval-err.js + dstr/meth-obj-ptrn-prop-id-get-value-err.js + dstr/meth-obj-ptrn-prop-id-init.js dstr/meth-obj-ptrn-prop-id-init-skipped.js dstr/meth-obj-ptrn-prop-id-init-throws.js + dstr/meth-obj-ptrn-prop-id-init-unresolvable.js dstr/meth-obj-ptrn-prop-obj.js dstr/meth-obj-ptrn-prop-obj-init.js dstr/meth-obj-ptrn-prop-obj-value-null.js @@ -5654,17 +6000,17 @@ language/expressions/object 812/1169 (69.46%) method-definition/async-gen-await-as-label-identifier.js {unsupported: [async-iteration]} method-definition/async-gen-await-as-label-identifier-escaped.js {unsupported: [async-iteration]} method-definition/async-gen-meth-array-destructuring-param-strict-body.js {unsupported: [async-iteration]} - method-definition/async-gen-meth-dflt-params-abrupt.js {unsupported: [async-iteration]} - method-definition/async-gen-meth-dflt-params-arg-val-not-undefined.js {unsupported: [async-iteration, async]} - method-definition/async-gen-meth-dflt-params-arg-val-undefined.js {unsupported: [async-iteration, async]} - method-definition/async-gen-meth-dflt-params-duplicates.js {unsupported: [async-iteration]} - method-definition/async-gen-meth-dflt-params-ref-later.js {unsupported: [async-iteration]} - method-definition/async-gen-meth-dflt-params-ref-prior.js {unsupported: [async-iteration, async]} - method-definition/async-gen-meth-dflt-params-ref-self.js {unsupported: [async-iteration]} - method-definition/async-gen-meth-dflt-params-rest.js {unsupported: [async-iteration]} + method-definition/async-gen-meth-dflt-params-abrupt.js {unsupported: [default-parameters, async-iteration]} + method-definition/async-gen-meth-dflt-params-arg-val-not-undefined.js {unsupported: [default-parameters, async-iteration, async]} + method-definition/async-gen-meth-dflt-params-arg-val-undefined.js {unsupported: [default-parameters, async-iteration, async]} + method-definition/async-gen-meth-dflt-params-duplicates.js {unsupported: [default-parameters, async-iteration]} + method-definition/async-gen-meth-dflt-params-ref-later.js {unsupported: [default-parameters, async-iteration]} + method-definition/async-gen-meth-dflt-params-ref-prior.js {unsupported: [default-parameters, async-iteration, async]} + method-definition/async-gen-meth-dflt-params-ref-self.js {unsupported: [default-parameters, async-iteration]} + method-definition/async-gen-meth-dflt-params-rest.js {unsupported: [default-parameters, async-iteration]} method-definition/async-gen-meth-dflt-params-trailing-comma.js {unsupported: [async-iteration, async]} method-definition/async-gen-meth-escaped-async.js {unsupported: [async-iteration]} - method-definition/async-gen-meth-eval-var-scope-syntax-err.js {unsupported: [async-iteration]} + method-definition/async-gen-meth-eval-var-scope-syntax-err.js {unsupported: [default-parameters, async-iteration]} method-definition/async-gen-meth-object-destructuring-param-strict-body.js {unsupported: [async-iteration]} method-definition/async-gen-meth-params-trailing-comma-multiple.js {unsupported: [async-iteration, async]} method-definition/async-gen-meth-params-trailing-comma-single.js {unsupported: [async-iteration, async]} @@ -5746,17 +6092,17 @@ language/expressions/object 812/1169 (69.46%) method-definition/async-gen-yield-star-sync-return.js {unsupported: [async-iteration, async]} method-definition/async-gen-yield-star-sync-throw.js {unsupported: [async-iteration, async]} method-definition/async-meth-array-destructuring-param-strict-body.js {unsupported: [async-iteration]} - method-definition/async-meth-dflt-params-abrupt.js {unsupported: [async-functions, async]} - method-definition/async-meth-dflt-params-arg-val-not-undefined.js {unsupported: [async-functions, async]} - method-definition/async-meth-dflt-params-arg-val-undefined.js {unsupported: [async-functions, async]} - method-definition/async-meth-dflt-params-duplicates.js {unsupported: [async-iteration]} - method-definition/async-meth-dflt-params-ref-later.js {unsupported: [async-functions, async]} - method-definition/async-meth-dflt-params-ref-prior.js {unsupported: [async-functions, async]} - method-definition/async-meth-dflt-params-ref-self.js {unsupported: [async-functions, async]} - method-definition/async-meth-dflt-params-rest.js {unsupported: [async-iteration]} + method-definition/async-meth-dflt-params-abrupt.js {unsupported: [default-parameters, async-functions, async]} + method-definition/async-meth-dflt-params-arg-val-not-undefined.js {unsupported: [default-parameters, async-functions, async]} + method-definition/async-meth-dflt-params-arg-val-undefined.js {unsupported: [default-parameters, async-functions, async]} + method-definition/async-meth-dflt-params-duplicates.js {unsupported: [default-parameters, async-iteration]} + method-definition/async-meth-dflt-params-ref-later.js {unsupported: [default-parameters, async-functions, async]} + method-definition/async-meth-dflt-params-ref-prior.js {unsupported: [default-parameters, async-functions, async]} + method-definition/async-meth-dflt-params-ref-self.js {unsupported: [default-parameters, async-functions, async]} + method-definition/async-meth-dflt-params-rest.js {unsupported: [default-parameters, async-iteration]} method-definition/async-meth-dflt-params-trailing-comma.js {unsupported: [async-functions, async]} method-definition/async-meth-escaped-async.js {unsupported: [async-functions]} - method-definition/async-meth-eval-var-scope-syntax-err.js {unsupported: [async-functions, async]} + method-definition/async-meth-eval-var-scope-syntax-err.js {unsupported: [default-parameters, async-functions, async]} method-definition/async-meth-object-destructuring-param-strict-body.js {unsupported: [async-iteration]} method-definition/async-meth-params-trailing-comma-multiple.js {unsupported: [async-functions, async]} method-definition/async-meth-params-trailing-comma-single.js {unsupported: [async-functions, async]} @@ -5787,14 +6133,16 @@ language/expressions/object 812/1169 (69.46%) method-definition/escaped-set-t.js method-definition/fn-name-fn.js method-definition/fn-name-gen.js - method-definition/gen-meth-dflt-params-abrupt.js - method-definition/gen-meth-dflt-params-arg-val-not-undefined.js - method-definition/gen-meth-dflt-params-arg-val-undefined.js - method-definition/gen-meth-dflt-params-ref-later.js - method-definition/gen-meth-dflt-params-ref-prior.js - method-definition/gen-meth-dflt-params-ref-self.js + method-definition/gen-meth-dflt-params-abrupt.js {unsupported: [default-parameters]} + method-definition/gen-meth-dflt-params-arg-val-not-undefined.js {unsupported: [default-parameters]} + method-definition/gen-meth-dflt-params-arg-val-undefined.js {unsupported: [default-parameters]} + method-definition/gen-meth-dflt-params-duplicates.js {unsupported: [default-parameters]} + method-definition/gen-meth-dflt-params-ref-later.js {unsupported: [default-parameters]} + method-definition/gen-meth-dflt-params-ref-prior.js {unsupported: [default-parameters]} + method-definition/gen-meth-dflt-params-ref-self.js {unsupported: [default-parameters]} + method-definition/gen-meth-dflt-params-rest.js {unsupported: [default-parameters]} method-definition/gen-meth-dflt-params-trailing-comma.js - method-definition/gen-meth-eval-var-scope-syntax-err.js non-strict + method-definition/gen-meth-eval-var-scope-syntax-err.js {unsupported: [default-parameters]} method-definition/gen-meth-params-trailing-comma-multiple.js method-definition/gen-meth-params-trailing-comma-single.js method-definition/gen-yield-identifier-non-strict.js non-strict @@ -5806,7 +6154,7 @@ language/expressions/object 812/1169 (69.46%) method-definition/generator-invoke-fn-no-strict.js non-strict method-definition/generator-invoke-fn-strict.js non-strict method-definition/generator-length.js - method-definition/generator-length-dflt.js + method-definition/generator-length-dflt.js {unsupported: [default-parameters]} method-definition/generator-name-prop-string.js method-definition/generator-name-prop-symbol.js method-definition/generator-no-yield.js @@ -5819,19 +6167,23 @@ language/expressions/object 812/1169 (69.46%) method-definition/generator-prototype-prop.js method-definition/generator-return.js method-definition/generator-super-prop-body.js - method-definition/generator-super-prop-param.js {unsupported: [super]} + method-definition/generator-super-prop-param.js {unsupported: [super, default-parameters]} method-definition/meth-array-destructuring-param-strict-body.js - method-definition/meth-dflt-params-duplicates.js non-strict - method-definition/meth-dflt-params-ref-later.js - method-definition/meth-dflt-params-ref-self.js - method-definition/meth-dflt-params-rest.js + method-definition/meth-dflt-params-abrupt.js {unsupported: [default-parameters]} + method-definition/meth-dflt-params-arg-val-not-undefined.js {unsupported: [default-parameters]} + method-definition/meth-dflt-params-arg-val-undefined.js {unsupported: [default-parameters]} + method-definition/meth-dflt-params-duplicates.js {unsupported: [default-parameters]} + method-definition/meth-dflt-params-ref-later.js {unsupported: [default-parameters]} + method-definition/meth-dflt-params-ref-prior.js {unsupported: [default-parameters]} + method-definition/meth-dflt-params-ref-self.js {unsupported: [default-parameters]} + method-definition/meth-dflt-params-rest.js {unsupported: [default-parameters]} method-definition/meth-dflt-params-trailing-comma.js - method-definition/meth-eval-var-scope-syntax-err.js non-strict + method-definition/meth-eval-var-scope-syntax-err.js {unsupported: [default-parameters]} method-definition/meth-object-destructuring-param-strict-body.js method-definition/meth-rest-param-strict-body.js method-definition/name-invoke-ctor.js method-definition/name-invoke-fn-strict.js non-strict - method-definition/name-length-dflt.js + method-definition/name-length-dflt.js {unsupported: [default-parameters]} method-definition/name-name-prop-string.js method-definition/name-name-prop-symbol.js method-definition/name-param-id-yield.js non-strict @@ -5843,9 +6195,10 @@ language/expressions/object 812/1169 (69.46%) method-definition/name-super-prop-body.js {unsupported: [super]} method-definition/name-super-prop-param.js {unsupported: [super]} method-definition/object-method-returns-promise.js {unsupported: [async-functions]} - method-definition/params-dflt-gen-meth-args-unmapped.js - method-definition/params-dflt-gen-meth-ref-arguments.js - method-definition/params-dflt-meth-ref-arguments.js + method-definition/params-dflt-gen-meth-args-unmapped.js {unsupported: [default-parameters]} + method-definition/params-dflt-gen-meth-ref-arguments.js {unsupported: [default-parameters]} + method-definition/params-dflt-meth-args-unmapped.js {unsupported: [default-parameters]} + method-definition/params-dflt-meth-ref-arguments.js {unsupported: [default-parameters]} method-definition/private-name-early-error-async-fn.js {unsupported: [async-functions]} method-definition/private-name-early-error-async-fn-inside-class.js {unsupported: [class-fields-public, async-functions, class]} method-definition/private-name-early-error-async-gen.js {unsupported: [async-iteration]} @@ -5885,6 +6238,7 @@ language/expressions/object 812/1169 (69.46%) accessor-name-literal-numeric-exponent.js {strict: [-1], non-strict: [-1]} accessor-name-literal-numeric-hex.js {strict: [-1], non-strict: [-1]} accessor-name-literal-numeric-octal.js {strict: [-1], non-strict: [-1]} + accessor-name-literal-numeric-zero.js computed-__proto__.js concise-generator.js cpn-obj-lit-computed-property-name-from-assignment-expression-coalesce.js @@ -5903,7 +6257,7 @@ language/expressions/object 812/1169 (69.46%) fn-name-gen.js getter-body-strict-inside.js non-strict getter-body-strict-outside.js strict - getter-param-dflt.js + getter-param-dflt.js {unsupported: [default-parameters]} getter-super-prop.js ident-name-prop-name-literal-await-static-init.js identifier-shorthand-await-strict-mode.js non-strict @@ -5934,14 +6288,18 @@ language/expressions/object 812/1169 (69.46%) scope-gen-meth-paramsbody-var-open.js scope-getter-body-lex-distinc.js non-strict scope-meth-body-lex-distinct.js non-strict + scope-meth-param-elem-var-close.js non-strict + scope-meth-param-elem-var-open.js non-strict scope-meth-param-rest-elem-var-close.js non-strict scope-meth-param-rest-elem-var-open.js non-strict + scope-meth-paramsbody-var-close.js scope-meth-paramsbody-var-open.js scope-setter-body-lex-distinc.js non-strict + scope-setter-paramsbody-var-close.js scope-setter-paramsbody-var-open.js setter-body-strict-inside.js non-strict setter-body-strict-outside.js strict - setter-length-dflt.js + setter-length-dflt.js {unsupported: [default-parameters]} setter-param-arguments-strict-inside.js non-strict setter-param-eval-strict-inside.js non-strict setter-super-prop.js @@ -6421,23 +6779,29 @@ language/statements/break 0/20 (0.0%) ~language/statements/class -language/statements/const 98/136 (72.06%) +language/statements/const 108/136 (79.41%) dstr/ary-init-iter-close.js dstr/ary-init-iter-get-err.js dstr/ary-init-iter-get-err-array-prototype.js dstr/ary-ptrn-elem-ary-elem-init.js dstr/ary-ptrn-elem-ary-elem-iter.js dstr/ary-ptrn-elem-ary-elision-init.js + dstr/ary-ptrn-elem-ary-elision-iter.js dstr/ary-ptrn-elem-ary-empty-init.js + dstr/ary-ptrn-elem-ary-empty-iter.js dstr/ary-ptrn-elem-ary-rest-init.js dstr/ary-ptrn-elem-ary-rest-iter.js + dstr/ary-ptrn-elem-id-init-exhausted.js dstr/ary-ptrn-elem-id-init-fn-name-arrow.js dstr/ary-ptrn-elem-id-init-fn-name-class.js dstr/ary-ptrn-elem-id-init-fn-name-cover.js dstr/ary-ptrn-elem-id-init-fn-name-fn.js dstr/ary-ptrn-elem-id-init-fn-name-gen.js + dstr/ary-ptrn-elem-id-init-hole.js dstr/ary-ptrn-elem-id-init-skipped.js dstr/ary-ptrn-elem-id-init-throws.js + dstr/ary-ptrn-elem-id-init-undef.js + dstr/ary-ptrn-elem-id-init-unresolvable.js dstr/ary-ptrn-elem-id-iter-step-err.js dstr/ary-ptrn-elem-id-iter-val-array-prototype.js dstr/ary-ptrn-elem-id-iter-val-err.js @@ -6469,13 +6833,17 @@ language/statements/const 98/136 (72.06%) dstr/obj-ptrn-id-init-fn-name-gen.js dstr/obj-ptrn-id-init-skipped.js dstr/obj-ptrn-id-init-throws.js + dstr/obj-ptrn-id-init-unresolvable.js dstr/obj-ptrn-list-err.js dstr/obj-ptrn-prop-ary.js dstr/obj-ptrn-prop-ary-init.js dstr/obj-ptrn-prop-ary-value-null.js dstr/obj-ptrn-prop-eval-err.js + dstr/obj-ptrn-prop-id-get-value-err.js + dstr/obj-ptrn-prop-id-init.js dstr/obj-ptrn-prop-id-init-skipped.js dstr/obj-ptrn-prop-id-init-throws.js + dstr/obj-ptrn-prop-id-init-unresolvable.js dstr/obj-ptrn-prop-obj.js dstr/obj-ptrn-prop-obj-init.js dstr/obj-ptrn-prop-obj-value-null.js @@ -6541,7 +6909,7 @@ language/statements/empty 0/2 (0.0%) language/statements/expression 0/3 (0.0%) -language/statements/for 244/385 (63.38%) +language/statements/for 264/385 (68.57%) dstr/const-ary-init-iter-close.js dstr/const-ary-init-iter-get-err.js dstr/const-ary-init-iter-get-err-array-prototype.js @@ -6637,16 +7005,22 @@ language/statements/for 244/385 (63.38%) dstr/let-ary-ptrn-elem-ary-elem-init.js dstr/let-ary-ptrn-elem-ary-elem-iter.js dstr/let-ary-ptrn-elem-ary-elision-init.js + dstr/let-ary-ptrn-elem-ary-elision-iter.js dstr/let-ary-ptrn-elem-ary-empty-init.js + dstr/let-ary-ptrn-elem-ary-empty-iter.js dstr/let-ary-ptrn-elem-ary-rest-init.js dstr/let-ary-ptrn-elem-ary-rest-iter.js + dstr/let-ary-ptrn-elem-id-init-exhausted.js dstr/let-ary-ptrn-elem-id-init-fn-name-arrow.js dstr/let-ary-ptrn-elem-id-init-fn-name-class.js dstr/let-ary-ptrn-elem-id-init-fn-name-cover.js dstr/let-ary-ptrn-elem-id-init-fn-name-fn.js dstr/let-ary-ptrn-elem-id-init-fn-name-gen.js + dstr/let-ary-ptrn-elem-id-init-hole.js dstr/let-ary-ptrn-elem-id-init-skipped.js dstr/let-ary-ptrn-elem-id-init-throws.js + dstr/let-ary-ptrn-elem-id-init-undef.js + dstr/let-ary-ptrn-elem-id-init-unresolvable.js dstr/let-ary-ptrn-elem-id-iter-step-err.js dstr/let-ary-ptrn-elem-id-iter-val-array-prototype.js dstr/let-ary-ptrn-elem-id-iter-val-err.js @@ -6680,14 +7054,18 @@ language/statements/for 244/385 (63.38%) dstr/let-obj-ptrn-id-init-fn-name-gen.js dstr/let-obj-ptrn-id-init-skipped.js dstr/let-obj-ptrn-id-init-throws.js + dstr/let-obj-ptrn-id-init-unresolvable.js dstr/let-obj-ptrn-list-err.js dstr/let-obj-ptrn-prop-ary.js dstr/let-obj-ptrn-prop-ary-init.js dstr/let-obj-ptrn-prop-ary-trailing-comma.js strict dstr/let-obj-ptrn-prop-ary-value-null.js dstr/let-obj-ptrn-prop-eval-err.js + dstr/let-obj-ptrn-prop-id-get-value-err.js + dstr/let-obj-ptrn-prop-id-init.js dstr/let-obj-ptrn-prop-id-init-skipped.js dstr/let-obj-ptrn-prop-id-init-throws.js + dstr/let-obj-ptrn-prop-id-init-unresolvable.js dstr/let-obj-ptrn-prop-obj.js dstr/let-obj-ptrn-prop-obj-init.js dstr/let-obj-ptrn-prop-obj-value-null.js @@ -6701,16 +7079,22 @@ language/statements/for 244/385 (63.38%) dstr/var-ary-ptrn-elem-ary-elem-init.js dstr/var-ary-ptrn-elem-ary-elem-iter.js dstr/var-ary-ptrn-elem-ary-elision-init.js + dstr/var-ary-ptrn-elem-ary-elision-iter.js dstr/var-ary-ptrn-elem-ary-empty-init.js + dstr/var-ary-ptrn-elem-ary-empty-iter.js dstr/var-ary-ptrn-elem-ary-rest-init.js dstr/var-ary-ptrn-elem-ary-rest-iter.js + dstr/var-ary-ptrn-elem-id-init-exhausted.js dstr/var-ary-ptrn-elem-id-init-fn-name-arrow.js dstr/var-ary-ptrn-elem-id-init-fn-name-class.js dstr/var-ary-ptrn-elem-id-init-fn-name-cover.js dstr/var-ary-ptrn-elem-id-init-fn-name-fn.js dstr/var-ary-ptrn-elem-id-init-fn-name-gen.js + dstr/var-ary-ptrn-elem-id-init-hole.js dstr/var-ary-ptrn-elem-id-init-skipped.js dstr/var-ary-ptrn-elem-id-init-throws.js + dstr/var-ary-ptrn-elem-id-init-undef.js + dstr/var-ary-ptrn-elem-id-init-unresolvable.js dstr/var-ary-ptrn-elem-id-iter-step-err.js dstr/var-ary-ptrn-elem-id-iter-val-array-prototype.js dstr/var-ary-ptrn-elem-id-iter-val-err.js @@ -6744,13 +7128,17 @@ language/statements/for 244/385 (63.38%) dstr/var-obj-ptrn-id-init-fn-name-gen.js dstr/var-obj-ptrn-id-init-skipped.js dstr/var-obj-ptrn-id-init-throws.js + dstr/var-obj-ptrn-id-init-unresolvable.js dstr/var-obj-ptrn-list-err.js dstr/var-obj-ptrn-prop-ary.js dstr/var-obj-ptrn-prop-ary-init.js dstr/var-obj-ptrn-prop-ary-value-null.js dstr/var-obj-ptrn-prop-eval-err.js + dstr/var-obj-ptrn-prop-id-get-value-err.js + dstr/var-obj-ptrn-prop-id-init.js dstr/var-obj-ptrn-prop-id-init-skipped.js dstr/var-obj-ptrn-prop-id-init-throws.js + dstr/var-obj-ptrn-prop-id-init-unresolvable.js dstr/var-obj-ptrn-prop-obj.js dstr/var-obj-ptrn-prop-obj-init.js dstr/var-obj-ptrn-prop-obj-value-null.js @@ -6830,7 +7218,8 @@ language/statements/for-in 39/114 (34.21%) scope-head-lex-open.js scope-head-var-none.js non-strict -language/statements/for-of 449/736 (61.01%) +language/statements/for-of 477/736 (64.81%) + dstr/array-elem-init-assignment.js dstr/array-elem-init-evaluation.js dstr/array-elem-init-fn-name-arrow.js dstr/array-elem-init-fn-name-class.js {unsupported: [class]} @@ -6841,6 +7230,7 @@ language/statements/for-of 449/736 (61.01%) dstr/array-elem-init-let.js dstr/array-elem-init-order.js dstr/array-elem-init-simple-no-strict.js non-strict + dstr/array-elem-init-yield-expr.js dstr/array-elem-init-yield-ident-valid.js non-strict dstr/array-elem-iter-get-err.js dstr/array-elem-iter-nrml-close.js @@ -7040,16 +7430,22 @@ language/statements/for-of 449/736 (61.01%) dstr/let-ary-ptrn-elem-ary-elem-init.js dstr/let-ary-ptrn-elem-ary-elem-iter.js dstr/let-ary-ptrn-elem-ary-elision-init.js + dstr/let-ary-ptrn-elem-ary-elision-iter.js dstr/let-ary-ptrn-elem-ary-empty-init.js + dstr/let-ary-ptrn-elem-ary-empty-iter.js dstr/let-ary-ptrn-elem-ary-rest-init.js dstr/let-ary-ptrn-elem-ary-rest-iter.js + dstr/let-ary-ptrn-elem-id-init-exhausted.js dstr/let-ary-ptrn-elem-id-init-fn-name-arrow.js dstr/let-ary-ptrn-elem-id-init-fn-name-class.js dstr/let-ary-ptrn-elem-id-init-fn-name-cover.js dstr/let-ary-ptrn-elem-id-init-fn-name-fn.js dstr/let-ary-ptrn-elem-id-init-fn-name-gen.js + dstr/let-ary-ptrn-elem-id-init-hole.js dstr/let-ary-ptrn-elem-id-init-skipped.js dstr/let-ary-ptrn-elem-id-init-throws.js + dstr/let-ary-ptrn-elem-id-init-undef.js + dstr/let-ary-ptrn-elem-id-init-unresolvable.js dstr/let-ary-ptrn-elem-id-iter-step-err.js dstr/let-ary-ptrn-elem-id-iter-val-array-prototype.js dstr/let-ary-ptrn-elem-id-iter-val-err.js @@ -7083,13 +7479,17 @@ language/statements/for-of 449/736 (61.01%) dstr/let-obj-ptrn-id-init-fn-name-gen.js dstr/let-obj-ptrn-id-init-skipped.js dstr/let-obj-ptrn-id-init-throws.js + dstr/let-obj-ptrn-id-init-unresolvable.js dstr/let-obj-ptrn-list-err.js dstr/let-obj-ptrn-prop-ary.js dstr/let-obj-ptrn-prop-ary-init.js dstr/let-obj-ptrn-prop-ary-value-null.js dstr/let-obj-ptrn-prop-eval-err.js + dstr/let-obj-ptrn-prop-id-get-value-err.js + dstr/let-obj-ptrn-prop-id-init.js dstr/let-obj-ptrn-prop-id-init-skipped.js dstr/let-obj-ptrn-prop-id-init-throws.js + dstr/let-obj-ptrn-prop-id-init-unresolvable.js dstr/let-obj-ptrn-prop-obj.js dstr/let-obj-ptrn-prop-obj-init.js dstr/let-obj-ptrn-prop-obj-value-null.js @@ -7119,6 +7519,10 @@ language/statements/for-of 449/736 (61.01%) dstr/obj-id-put-const.js non-strict dstr/obj-id-put-let.js dstr/obj-id-simple-strict.js strict + dstr/obj-prop-elem-init-assignment-missing.js + dstr/obj-prop-elem-init-assignment-null.js + dstr/obj-prop-elem-init-assignment-truthy.js + dstr/obj-prop-elem-init-assignment-undef.js dstr/obj-prop-elem-init-evaluation.js dstr/obj-prop-elem-init-fn-name-arrow.js dstr/obj-prop-elem-init-fn-name-class.js {unsupported: [class]} @@ -7127,12 +7531,14 @@ language/statements/for-of 449/736 (61.01%) dstr/obj-prop-elem-init-fn-name-gen.js dstr/obj-prop-elem-init-in.js dstr/obj-prop-elem-init-let.js + dstr/obj-prop-elem-init-yield-expr.js dstr/obj-prop-elem-init-yield-ident-valid.js non-strict dstr/obj-prop-elem-target-obj-literal-prop-ref-init.js dstr/obj-prop-elem-target-obj-literal-prop-ref-init-active.js dstr/obj-prop-elem-target-yield-ident-valid.js non-strict dstr/obj-prop-name-evaluation.js dstr/obj-prop-name-evaluation-error.js + dstr/obj-prop-nested-array-yield-expr.js dstr/obj-prop-nested-array-yield-ident-valid.js non-strict dstr/obj-prop-nested-obj-yield-expr.js dstr/obj-prop-nested-obj-yield-ident-valid.js non-strict @@ -7169,16 +7575,22 @@ language/statements/for-of 449/736 (61.01%) dstr/var-ary-ptrn-elem-ary-elem-init.js dstr/var-ary-ptrn-elem-ary-elem-iter.js dstr/var-ary-ptrn-elem-ary-elision-init.js + dstr/var-ary-ptrn-elem-ary-elision-iter.js dstr/var-ary-ptrn-elem-ary-empty-init.js + dstr/var-ary-ptrn-elem-ary-empty-iter.js dstr/var-ary-ptrn-elem-ary-rest-init.js dstr/var-ary-ptrn-elem-ary-rest-iter.js + dstr/var-ary-ptrn-elem-id-init-exhausted.js dstr/var-ary-ptrn-elem-id-init-fn-name-arrow.js dstr/var-ary-ptrn-elem-id-init-fn-name-class.js dstr/var-ary-ptrn-elem-id-init-fn-name-cover.js dstr/var-ary-ptrn-elem-id-init-fn-name-fn.js dstr/var-ary-ptrn-elem-id-init-fn-name-gen.js + dstr/var-ary-ptrn-elem-id-init-hole.js dstr/var-ary-ptrn-elem-id-init-skipped.js dstr/var-ary-ptrn-elem-id-init-throws.js + dstr/var-ary-ptrn-elem-id-init-undef.js + dstr/var-ary-ptrn-elem-id-init-unresolvable.js dstr/var-ary-ptrn-elem-id-iter-step-err.js dstr/var-ary-ptrn-elem-id-iter-val-array-prototype.js dstr/var-ary-ptrn-elem-id-iter-val-err.js @@ -7212,13 +7624,17 @@ language/statements/for-of 449/736 (61.01%) dstr/var-obj-ptrn-id-init-fn-name-gen.js dstr/var-obj-ptrn-id-init-skipped.js dstr/var-obj-ptrn-id-init-throws.js + dstr/var-obj-ptrn-id-init-unresolvable.js dstr/var-obj-ptrn-list-err.js dstr/var-obj-ptrn-prop-ary.js dstr/var-obj-ptrn-prop-ary-init.js dstr/var-obj-ptrn-prop-ary-value-null.js dstr/var-obj-ptrn-prop-eval-err.js + dstr/var-obj-ptrn-prop-id-get-value-err.js + dstr/var-obj-ptrn-prop-id-init.js dstr/var-obj-ptrn-prop-id-init-skipped.js dstr/var-obj-ptrn-prop-id-init-throws.js + dstr/var-obj-ptrn-prop-id-init-unresolvable.js dstr/var-obj-ptrn-prop-obj.js dstr/var-obj-ptrn-prop-obj-init.js dstr/var-obj-ptrn-prop-obj-value-null.js @@ -7281,23 +7697,29 @@ language/statements/for-of 449/736 (61.01%) scope-head-lex-open.js scope-head-var-none.js non-strict -language/statements/function 185/451 (41.02%) +language/statements/function 230/451 (51.0%) dstr/ary-init-iter-close.js dstr/ary-init-iter-get-err.js dstr/ary-init-iter-get-err-array-prototype.js dstr/ary-ptrn-elem-ary-elem-init.js dstr/ary-ptrn-elem-ary-elem-iter.js dstr/ary-ptrn-elem-ary-elision-init.js + dstr/ary-ptrn-elem-ary-elision-iter.js dstr/ary-ptrn-elem-ary-empty-init.js + dstr/ary-ptrn-elem-ary-empty-iter.js dstr/ary-ptrn-elem-ary-rest-init.js dstr/ary-ptrn-elem-ary-rest-iter.js + dstr/ary-ptrn-elem-id-init-exhausted.js dstr/ary-ptrn-elem-id-init-fn-name-arrow.js dstr/ary-ptrn-elem-id-init-fn-name-class.js dstr/ary-ptrn-elem-id-init-fn-name-cover.js dstr/ary-ptrn-elem-id-init-fn-name-fn.js dstr/ary-ptrn-elem-id-init-fn-name-gen.js + dstr/ary-ptrn-elem-id-init-hole.js dstr/ary-ptrn-elem-id-init-skipped.js dstr/ary-ptrn-elem-id-init-throws.js + dstr/ary-ptrn-elem-id-init-undef.js + dstr/ary-ptrn-elem-id-init-unresolvable.js dstr/ary-ptrn-elem-id-iter-step-err.js dstr/ary-ptrn-elem-id-iter-val-array-prototype.js dstr/ary-ptrn-elem-id-iter-val-err.js @@ -7320,72 +7742,99 @@ language/statements/function 185/451 (41.02%) dstr/ary-ptrn-rest-id-iter-val-err.js dstr/ary-ptrn-rest-obj-id.js dstr/ary-ptrn-rest-obj-prop-id.js - dstr/dflt-ary-init-iter-close.js - dstr/dflt-ary-init-iter-get-err.js - dstr/dflt-ary-init-iter-get-err-array-prototype.js - dstr/dflt-ary-init-iter-no-close.js - dstr/dflt-ary-ptrn-elem-ary-elem-init.js - dstr/dflt-ary-ptrn-elem-ary-elem-iter.js - dstr/dflt-ary-ptrn-elem-ary-elision-init.js - dstr/dflt-ary-ptrn-elem-ary-empty-init.js - dstr/dflt-ary-ptrn-elem-ary-rest-init.js - dstr/dflt-ary-ptrn-elem-ary-rest-iter.js - dstr/dflt-ary-ptrn-elem-id-init-fn-name-arrow.js - dstr/dflt-ary-ptrn-elem-id-init-fn-name-class.js - dstr/dflt-ary-ptrn-elem-id-init-fn-name-cover.js - dstr/dflt-ary-ptrn-elem-id-init-fn-name-fn.js - dstr/dflt-ary-ptrn-elem-id-init-fn-name-gen.js - dstr/dflt-ary-ptrn-elem-id-init-hole.js - dstr/dflt-ary-ptrn-elem-id-init-skipped.js - dstr/dflt-ary-ptrn-elem-id-init-throws.js - dstr/dflt-ary-ptrn-elem-id-iter-step-err.js - dstr/dflt-ary-ptrn-elem-id-iter-val-array-prototype.js - dstr/dflt-ary-ptrn-elem-id-iter-val-err.js - dstr/dflt-ary-ptrn-elem-obj-id.js - dstr/dflt-ary-ptrn-elem-obj-id-init.js - dstr/dflt-ary-ptrn-elem-obj-prop-id.js - dstr/dflt-ary-ptrn-elem-obj-prop-id-init.js - dstr/dflt-ary-ptrn-elision.js - dstr/dflt-ary-ptrn-elision-step-err.js - dstr/dflt-ary-ptrn-rest-ary-elem.js - dstr/dflt-ary-ptrn-rest-ary-elision.js - dstr/dflt-ary-ptrn-rest-ary-empty.js - dstr/dflt-ary-ptrn-rest-ary-rest.js - dstr/dflt-ary-ptrn-rest-id.js - dstr/dflt-ary-ptrn-rest-id-direct.js - dstr/dflt-ary-ptrn-rest-id-elision.js - dstr/dflt-ary-ptrn-rest-id-elision-next-err.js - dstr/dflt-ary-ptrn-rest-id-exhausted.js - dstr/dflt-ary-ptrn-rest-id-iter-step-err.js - dstr/dflt-ary-ptrn-rest-id-iter-val-err.js - dstr/dflt-ary-ptrn-rest-obj-id.js - dstr/dflt-ary-ptrn-rest-obj-prop-id.js - dstr/dflt-obj-init-null.js - dstr/dflt-obj-init-undefined.js - dstr/dflt-obj-ptrn-id-get-value-err.js - dstr/dflt-obj-ptrn-id-init-fn-name-arrow.js - dstr/dflt-obj-ptrn-id-init-fn-name-class.js - dstr/dflt-obj-ptrn-id-init-fn-name-cover.js - dstr/dflt-obj-ptrn-id-init-fn-name-fn.js - dstr/dflt-obj-ptrn-id-init-fn-name-gen.js - dstr/dflt-obj-ptrn-id-init-skipped.js - dstr/dflt-obj-ptrn-id-init-throws.js - dstr/dflt-obj-ptrn-list-err.js - dstr/dflt-obj-ptrn-prop-ary.js - dstr/dflt-obj-ptrn-prop-ary-init.js - dstr/dflt-obj-ptrn-prop-ary-trailing-comma.js - dstr/dflt-obj-ptrn-prop-ary-value-null.js - dstr/dflt-obj-ptrn-prop-eval-err.js - dstr/dflt-obj-ptrn-prop-id-get-value-err.js - dstr/dflt-obj-ptrn-prop-id-init-skipped.js - dstr/dflt-obj-ptrn-prop-id-init-throws.js - dstr/dflt-obj-ptrn-prop-obj.js - dstr/dflt-obj-ptrn-prop-obj-init.js - dstr/dflt-obj-ptrn-prop-obj-value-null.js - dstr/dflt-obj-ptrn-prop-obj-value-undef.js - dstr/dflt-obj-ptrn-rest-getter.js {unsupported: [object-rest]} - dstr/dflt-obj-ptrn-rest-skip-non-enumerable.js {unsupported: [object-rest]} - dstr/dflt-obj-ptrn-rest-val-obj.js {unsupported: [object-rest]} + dstr/dflt-ary-init-iter-close.js {unsupported: [default-parameters]} + dstr/dflt-ary-init-iter-get-err.js {unsupported: [default-parameters]} + dstr/dflt-ary-init-iter-get-err-array-prototype.js {unsupported: [default-parameters]} + dstr/dflt-ary-init-iter-no-close.js {unsupported: [default-parameters]} + dstr/dflt-ary-name-iter-val.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-ary-elem-init.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-ary-elem-iter.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-ary-elision-init.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-ary-elision-iter.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-ary-empty-init.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-ary-empty-iter.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-ary-rest-init.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-ary-rest-iter.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-ary-val-null.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-id-init-exhausted.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-id-init-fn-name-arrow.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-id-init-fn-name-class.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-id-init-fn-name-cover.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-id-init-fn-name-fn.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-id-init-fn-name-gen.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-id-init-hole.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-id-init-skipped.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-id-init-throws.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-id-init-undef.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-id-init-unresolvable.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-id-iter-complete.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-id-iter-done.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-id-iter-step-err.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-id-iter-val.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-id-iter-val-array-prototype.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-id-iter-val-err.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-obj-id.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-obj-id-init.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-obj-prop-id.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-obj-prop-id-init.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-obj-val-null.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-obj-val-undef.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elision.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elision-exhausted.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elision-step-err.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-empty.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-rest-ary-elem.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-rest-ary-elision.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-rest-ary-empty.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-rest-ary-rest.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-rest-id.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-rest-id-direct.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-rest-id-elision.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-rest-id-elision-next-err.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-rest-id-exhausted.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-rest-id-iter-step-err.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-rest-id-iter-val-err.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-rest-init-ary.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-rest-init-id.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-rest-init-obj.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-rest-not-final-ary.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-rest-not-final-id.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-rest-not-final-obj.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-rest-obj-id.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-rest-obj-prop-id.js {unsupported: [default-parameters]} + dstr/dflt-obj-init-null.js {unsupported: [default-parameters]} + dstr/dflt-obj-init-undefined.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-empty.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-id-get-value-err.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-id-init-fn-name-arrow.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-id-init-fn-name-class.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-id-init-fn-name-cover.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-id-init-fn-name-fn.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-id-init-fn-name-gen.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-id-init-skipped.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-id-init-throws.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-id-init-unresolvable.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-id-trailing-comma.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-list-err.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-prop-ary.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-prop-ary-init.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-prop-ary-trailing-comma.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-prop-ary-value-null.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-prop-eval-err.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-prop-id.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-prop-id-get-value-err.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-prop-id-init.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-prop-id-init-skipped.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-prop-id-init-throws.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-prop-id-init-unresolvable.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-prop-id-trailing-comma.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-prop-obj.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-prop-obj-init.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-prop-obj-value-null.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-prop-obj-value-undef.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-rest-getter.js {unsupported: [default-parameters, object-rest]} + dstr/dflt-obj-ptrn-rest-skip-non-enumerable.js {unsupported: [default-parameters, object-rest]} + dstr/dflt-obj-ptrn-rest-val-obj.js {unsupported: [default-parameters, object-rest]} dstr/obj-init-null.js dstr/obj-init-undefined.js dstr/obj-ptrn-id-init-fn-name-arrow.js @@ -7395,13 +7844,17 @@ language/statements/function 185/451 (41.02%) dstr/obj-ptrn-id-init-fn-name-gen.js dstr/obj-ptrn-id-init-skipped.js dstr/obj-ptrn-id-init-throws.js + dstr/obj-ptrn-id-init-unresolvable.js dstr/obj-ptrn-list-err.js dstr/obj-ptrn-prop-ary.js dstr/obj-ptrn-prop-ary-init.js dstr/obj-ptrn-prop-ary-value-null.js dstr/obj-ptrn-prop-eval-err.js + dstr/obj-ptrn-prop-id-get-value-err.js + dstr/obj-ptrn-prop-id-init.js dstr/obj-ptrn-prop-id-init-skipped.js dstr/obj-ptrn-prop-id-init-throws.js + dstr/obj-ptrn-prop-id-init-unresolvable.js dstr/obj-ptrn-prop-obj.js dstr/obj-ptrn-prop-obj-init.js dstr/obj-ptrn-prop-obj-value-null.js @@ -7436,55 +7889,71 @@ language/statements/function 185/451 (41.02%) arguments-with-arguments-lex.js non-strict array-destructuring-param-strict-body.js cptn-decl.js - dflt-params-duplicates.js non-strict - dflt-params-ref-later.js - dflt-params-ref-self.js - dflt-params-rest.js + dflt-params-abrupt.js {unsupported: [default-parameters]} + dflt-params-arg-val-not-undefined.js {unsupported: [default-parameters]} + dflt-params-arg-val-undefined.js {unsupported: [default-parameters]} + dflt-params-duplicates.js {unsupported: [default-parameters]} + dflt-params-ref-later.js {unsupported: [default-parameters]} + dflt-params-ref-prior.js {unsupported: [default-parameters]} + dflt-params-ref-self.js {unsupported: [default-parameters]} + dflt-params-rest.js {unsupported: [default-parameters]} dflt-params-trailing-comma.js enable-strict-via-body.js non-strict enable-strict-via-outer-body.js non-strict - eval-var-scope-syntax-err.js non-strict - length-dflt.js + eval-var-scope-syntax-err.js {unsupported: [default-parameters]} + length-dflt.js {unsupported: [default-parameters]} name-arguments-strict-body.js non-strict name-eval-strict-body.js non-strict object-destructuring-param-strict-body.js param-arguments-strict-body.js non-strict - param-dflt-yield-non-strict.js non-strict - param-dflt-yield-strict.js strict + param-dflt-yield-non-strict.js {unsupported: [default-parameters]} + param-dflt-yield-strict.js {unsupported: [default-parameters]} param-duplicated-strict-body-1.js non-strict param-duplicated-strict-body-2.js non-strict param-duplicated-strict-body-3.js non-strict param-eval-strict-body.js non-strict - params-dflt-ref-arguments.js + params-dflt-args-unmapped.js {unsupported: [default-parameters]} + params-dflt-ref-arguments.js {unsupported: [default-parameters]} rest-param-strict-body.js scope-body-lex-distinct.js non-strict + scope-param-elem-var-close.js non-strict + scope-param-elem-var-open.js non-strict scope-param-rest-elem-var-close.js non-strict scope-param-rest-elem-var-open.js non-strict + scope-paramsbody-var-close.js scope-paramsbody-var-open.js static-init-await-binding-valid.js unscopables-with.js non-strict unscopables-with-in-nested-fn.js non-strict -language/statements/generators 179/266 (67.29%) +language/statements/generators 224/266 (84.21%) dstr/ary-init-iter-close.js dstr/ary-init-iter-get-err.js dstr/ary-init-iter-get-err-array-prototype.js + dstr/ary-name-iter-val.js non-interpreted dstr/ary-ptrn-elem-ary-elem-init.js dstr/ary-ptrn-elem-ary-elem-iter.js dstr/ary-ptrn-elem-ary-elision-init.js + dstr/ary-ptrn-elem-ary-elision-iter.js dstr/ary-ptrn-elem-ary-empty-init.js + dstr/ary-ptrn-elem-ary-empty-iter.js dstr/ary-ptrn-elem-ary-rest-init.js dstr/ary-ptrn-elem-ary-rest-iter.js dstr/ary-ptrn-elem-ary-val-null.js + dstr/ary-ptrn-elem-id-init-exhausted.js dstr/ary-ptrn-elem-id-init-fn-name-arrow.js dstr/ary-ptrn-elem-id-init-fn-name-class.js dstr/ary-ptrn-elem-id-init-fn-name-cover.js dstr/ary-ptrn-elem-id-init-fn-name-fn.js dstr/ary-ptrn-elem-id-init-fn-name-gen.js + dstr/ary-ptrn-elem-id-init-hole.js dstr/ary-ptrn-elem-id-init-skipped.js dstr/ary-ptrn-elem-id-init-throws.js + dstr/ary-ptrn-elem-id-init-undef.js dstr/ary-ptrn-elem-id-init-unresolvable.js + dstr/ary-ptrn-elem-id-iter-done.js non-interpreted dstr/ary-ptrn-elem-id-iter-step-err.js + dstr/ary-ptrn-elem-id-iter-val.js non-interpreted dstr/ary-ptrn-elem-id-iter-val-array-prototype.js dstr/ary-ptrn-elem-id-iter-val-err.js dstr/ary-ptrn-elem-obj-id.js @@ -7508,78 +7977,99 @@ language/statements/generators 179/266 (67.29%) dstr/ary-ptrn-rest-id-iter-val-err.js dstr/ary-ptrn-rest-obj-id.js dstr/ary-ptrn-rest-obj-prop-id.js - dstr/dflt-ary-init-iter-close.js - dstr/dflt-ary-init-iter-get-err.js - dstr/dflt-ary-init-iter-get-err-array-prototype.js - dstr/dflt-ary-init-iter-no-close.js - dstr/dflt-ary-ptrn-elem-ary-elem-init.js - dstr/dflt-ary-ptrn-elem-ary-elem-iter.js - dstr/dflt-ary-ptrn-elem-ary-elision-init.js - dstr/dflt-ary-ptrn-elem-ary-empty-init.js - dstr/dflt-ary-ptrn-elem-ary-rest-init.js - dstr/dflt-ary-ptrn-elem-ary-rest-iter.js - dstr/dflt-ary-ptrn-elem-ary-val-null.js - dstr/dflt-ary-ptrn-elem-id-init-fn-name-arrow.js - dstr/dflt-ary-ptrn-elem-id-init-fn-name-class.js - dstr/dflt-ary-ptrn-elem-id-init-fn-name-cover.js - dstr/dflt-ary-ptrn-elem-id-init-fn-name-fn.js - dstr/dflt-ary-ptrn-elem-id-init-fn-name-gen.js - dstr/dflt-ary-ptrn-elem-id-init-hole.js - dstr/dflt-ary-ptrn-elem-id-init-skipped.js - dstr/dflt-ary-ptrn-elem-id-init-throws.js - dstr/dflt-ary-ptrn-elem-id-init-unresolvable.js - dstr/dflt-ary-ptrn-elem-id-iter-step-err.js - dstr/dflt-ary-ptrn-elem-id-iter-val-array-prototype.js - dstr/dflt-ary-ptrn-elem-id-iter-val-err.js - dstr/dflt-ary-ptrn-elem-obj-id.js - dstr/dflt-ary-ptrn-elem-obj-id-init.js - dstr/dflt-ary-ptrn-elem-obj-prop-id.js - dstr/dflt-ary-ptrn-elem-obj-prop-id-init.js - dstr/dflt-ary-ptrn-elem-obj-val-null.js - dstr/dflt-ary-ptrn-elem-obj-val-undef.js - dstr/dflt-ary-ptrn-elision.js - dstr/dflt-ary-ptrn-elision-step-err.js - dstr/dflt-ary-ptrn-rest-ary-elem.js - dstr/dflt-ary-ptrn-rest-ary-elision.js - dstr/dflt-ary-ptrn-rest-ary-empty.js - dstr/dflt-ary-ptrn-rest-ary-rest.js - dstr/dflt-ary-ptrn-rest-id.js - dstr/dflt-ary-ptrn-rest-id-direct.js - dstr/dflt-ary-ptrn-rest-id-elision.js - dstr/dflt-ary-ptrn-rest-id-elision-next-err.js - dstr/dflt-ary-ptrn-rest-id-exhausted.js - dstr/dflt-ary-ptrn-rest-id-iter-step-err.js - dstr/dflt-ary-ptrn-rest-id-iter-val-err.js - dstr/dflt-ary-ptrn-rest-obj-id.js - dstr/dflt-ary-ptrn-rest-obj-prop-id.js - dstr/dflt-obj-init-null.js - dstr/dflt-obj-init-undefined.js - dstr/dflt-obj-ptrn-id-get-value-err.js - dstr/dflt-obj-ptrn-id-init-fn-name-arrow.js - dstr/dflt-obj-ptrn-id-init-fn-name-class.js - dstr/dflt-obj-ptrn-id-init-fn-name-cover.js - dstr/dflt-obj-ptrn-id-init-fn-name-fn.js - dstr/dflt-obj-ptrn-id-init-fn-name-gen.js - dstr/dflt-obj-ptrn-id-init-skipped.js - dstr/dflt-obj-ptrn-id-init-throws.js - dstr/dflt-obj-ptrn-id-init-unresolvable.js - dstr/dflt-obj-ptrn-list-err.js - dstr/dflt-obj-ptrn-prop-ary.js - dstr/dflt-obj-ptrn-prop-ary-init.js - dstr/dflt-obj-ptrn-prop-ary-trailing-comma.js - dstr/dflt-obj-ptrn-prop-ary-value-null.js - dstr/dflt-obj-ptrn-prop-eval-err.js - dstr/dflt-obj-ptrn-prop-id-get-value-err.js - dstr/dflt-obj-ptrn-prop-id-init-skipped.js - dstr/dflt-obj-ptrn-prop-id-init-throws.js - dstr/dflt-obj-ptrn-prop-id-init-unresolvable.js - dstr/dflt-obj-ptrn-prop-obj.js - dstr/dflt-obj-ptrn-prop-obj-init.js - dstr/dflt-obj-ptrn-prop-obj-value-null.js - dstr/dflt-obj-ptrn-prop-obj-value-undef.js - dstr/dflt-obj-ptrn-rest-getter.js {unsupported: [object-rest]} - dstr/dflt-obj-ptrn-rest-skip-non-enumerable.js {unsupported: [object-rest]} - dstr/dflt-obj-ptrn-rest-val-obj.js {unsupported: [object-rest]} + dstr/dflt-ary-init-iter-close.js {unsupported: [default-parameters]} + dstr/dflt-ary-init-iter-get-err.js {unsupported: [default-parameters]} + dstr/dflt-ary-init-iter-get-err-array-prototype.js {unsupported: [default-parameters]} + dstr/dflt-ary-init-iter-no-close.js {unsupported: [default-parameters]} + dstr/dflt-ary-name-iter-val.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-ary-elem-init.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-ary-elem-iter.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-ary-elision-init.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-ary-elision-iter.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-ary-empty-init.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-ary-empty-iter.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-ary-rest-init.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-ary-rest-iter.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-ary-val-null.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-id-init-exhausted.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-id-init-fn-name-arrow.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-id-init-fn-name-class.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-id-init-fn-name-cover.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-id-init-fn-name-fn.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-id-init-fn-name-gen.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-id-init-hole.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-id-init-skipped.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-id-init-throws.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-id-init-undef.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-id-init-unresolvable.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-id-iter-complete.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-id-iter-done.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-id-iter-step-err.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-id-iter-val.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-id-iter-val-array-prototype.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-id-iter-val-err.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-obj-id.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-obj-id-init.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-obj-prop-id.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-obj-prop-id-init.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-obj-val-null.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elem-obj-val-undef.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elision.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elision-exhausted.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-elision-step-err.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-empty.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-rest-ary-elem.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-rest-ary-elision.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-rest-ary-empty.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-rest-ary-rest.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-rest-id.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-rest-id-direct.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-rest-id-elision.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-rest-id-elision-next-err.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-rest-id-exhausted.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-rest-id-iter-step-err.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-rest-id-iter-val-err.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-rest-init-ary.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-rest-init-id.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-rest-init-obj.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-rest-not-final-ary.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-rest-not-final-id.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-rest-not-final-obj.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-rest-obj-id.js {unsupported: [default-parameters]} + dstr/dflt-ary-ptrn-rest-obj-prop-id.js {unsupported: [default-parameters]} + dstr/dflt-obj-init-null.js {unsupported: [default-parameters]} + dstr/dflt-obj-init-undefined.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-empty.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-id-get-value-err.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-id-init-fn-name-arrow.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-id-init-fn-name-class.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-id-init-fn-name-cover.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-id-init-fn-name-fn.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-id-init-fn-name-gen.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-id-init-skipped.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-id-init-throws.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-id-init-unresolvable.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-id-trailing-comma.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-list-err.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-prop-ary.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-prop-ary-init.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-prop-ary-trailing-comma.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-prop-ary-value-null.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-prop-eval-err.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-prop-id.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-prop-id-get-value-err.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-prop-id-init.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-prop-id-init-skipped.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-prop-id-init-throws.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-prop-id-init-unresolvable.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-prop-id-trailing-comma.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-prop-obj.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-prop-obj-init.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-prop-obj-value-null.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-prop-obj-value-undef.js {unsupported: [default-parameters]} + dstr/dflt-obj-ptrn-rest-getter.js {unsupported: [default-parameters, object-rest]} + dstr/dflt-obj-ptrn-rest-skip-non-enumerable.js {unsupported: [default-parameters, object-rest]} + dstr/dflt-obj-ptrn-rest-val-obj.js {unsupported: [default-parameters, object-rest]} dstr/obj-init-null.js dstr/obj-init-undefined.js dstr/obj-ptrn-id-get-value-err.js @@ -7591,12 +8081,15 @@ language/statements/generators 179/266 (67.29%) dstr/obj-ptrn-id-init-skipped.js dstr/obj-ptrn-id-init-throws.js dstr/obj-ptrn-id-init-unresolvable.js + dstr/obj-ptrn-id-trailing-comma.js non-interpreted dstr/obj-ptrn-list-err.js dstr/obj-ptrn-prop-ary.js dstr/obj-ptrn-prop-ary-init.js + dstr/obj-ptrn-prop-ary-trailing-comma.js non-interpreted dstr/obj-ptrn-prop-ary-value-null.js dstr/obj-ptrn-prop-eval-err.js dstr/obj-ptrn-prop-id-get-value-err.js + dstr/obj-ptrn-prop-id-init.js dstr/obj-ptrn-prop-id-init-skipped.js dstr/obj-ptrn-prop-id-init-throws.js dstr/obj-ptrn-prop-id-init-unresolvable.js @@ -7609,28 +8102,41 @@ language/statements/generators 179/266 (67.29%) dstr/obj-ptrn-rest-val-obj.js {unsupported: [object-rest]} forbidden-ext/b1 2/2 (100.0%) arguments-with-arguments-fn.js non-strict + arguments-with-arguments-lex.js non-strict array-destructuring-param-strict-body.js cptn-decl.js default-proto.js - dflt-params-abrupt.js - dflt-params-duplicates.js non-strict - dflt-params-ref-later.js - dflt-params-ref-self.js - dflt-params-rest.js + dflt-params-abrupt.js {unsupported: [default-parameters]} + dflt-params-arg-val-not-undefined.js {unsupported: [default-parameters]} + dflt-params-arg-val-undefined.js {unsupported: [default-parameters]} + dflt-params-duplicates.js {unsupported: [default-parameters]} + dflt-params-ref-later.js {unsupported: [default-parameters]} + dflt-params-ref-prior.js {unsupported: [default-parameters]} + dflt-params-ref-self.js {unsupported: [default-parameters]} + dflt-params-rest.js {unsupported: [default-parameters]} dflt-params-trailing-comma.js - eval-var-scope-syntax-err.js non-strict + eval-var-scope-syntax-err.js {unsupported: [default-parameters]} + generator-created-after-decl-inst.js has-instance.js invoke-as-constructor.js - length-dflt.js + length-dflt.js {unsupported: [default-parameters]} object-destructuring-param-strict-body.js + param-dflt-yield.js {unsupported: [default-parameters]} + params-dflt-args-unmapped.js {unsupported: [default-parameters]} + params-dflt-ref-arguments.js {unsupported: [default-parameters]} + params-trailing-comma-multiple.js non-interpreted + params-trailing-comma-single.js non-interpreted prototype-own-properties.js prototype-relation-to-function.js prototype-value.js rest-param-strict-body.js restricted-properties.js scope-body-lex-distinct.js non-strict + scope-param-elem-var-close.js non-strict + scope-param-elem-var-open.js non-strict scope-param-rest-elem-var-close.js non-strict scope-param-rest-elem-var-open.js non-strict + scope-paramsbody-var-close.js scope-paramsbody-var-open.js unscopables-with.js non-strict unscopables-with-in-nested-fn.js non-strict @@ -7706,23 +8212,29 @@ language/statements/labeled 15/24 (62.5%) value-yield-non-strict.js non-strict value-yield-non-strict-escaped.js non-strict -language/statements/let 91/145 (62.76%) +language/statements/let 101/145 (69.66%) dstr/ary-init-iter-close.js dstr/ary-init-iter-get-err.js dstr/ary-init-iter-get-err-array-prototype.js dstr/ary-ptrn-elem-ary-elem-init.js dstr/ary-ptrn-elem-ary-elem-iter.js dstr/ary-ptrn-elem-ary-elision-init.js + dstr/ary-ptrn-elem-ary-elision-iter.js dstr/ary-ptrn-elem-ary-empty-init.js + dstr/ary-ptrn-elem-ary-empty-iter.js dstr/ary-ptrn-elem-ary-rest-init.js dstr/ary-ptrn-elem-ary-rest-iter.js + dstr/ary-ptrn-elem-id-init-exhausted.js dstr/ary-ptrn-elem-id-init-fn-name-arrow.js dstr/ary-ptrn-elem-id-init-fn-name-class.js dstr/ary-ptrn-elem-id-init-fn-name-cover.js dstr/ary-ptrn-elem-id-init-fn-name-fn.js dstr/ary-ptrn-elem-id-init-fn-name-gen.js + dstr/ary-ptrn-elem-id-init-hole.js dstr/ary-ptrn-elem-id-init-skipped.js dstr/ary-ptrn-elem-id-init-throws.js + dstr/ary-ptrn-elem-id-init-undef.js + dstr/ary-ptrn-elem-id-init-unresolvable.js dstr/ary-ptrn-elem-id-iter-step-err.js dstr/ary-ptrn-elem-id-iter-val-array-prototype.js dstr/ary-ptrn-elem-id-iter-val-err.js @@ -7754,13 +8266,17 @@ language/statements/let 91/145 (62.76%) dstr/obj-ptrn-id-init-fn-name-gen.js dstr/obj-ptrn-id-init-skipped.js dstr/obj-ptrn-id-init-throws.js + dstr/obj-ptrn-id-init-unresolvable.js dstr/obj-ptrn-list-err.js dstr/obj-ptrn-prop-ary.js dstr/obj-ptrn-prop-ary-init.js dstr/obj-ptrn-prop-ary-value-null.js dstr/obj-ptrn-prop-eval-err.js + dstr/obj-ptrn-prop-id-get-value-err.js + dstr/obj-ptrn-prop-id-init.js dstr/obj-ptrn-prop-id-init-skipped.js dstr/obj-ptrn-prop-id-init-throws.js + dstr/obj-ptrn-prop-id-init-unresolvable.js dstr/obj-ptrn-prop-obj.js dstr/obj-ptrn-prop-obj-init.js dstr/obj-ptrn-prop-obj-value-null.js @@ -7983,23 +8499,29 @@ language/statements/try 113/201 (56.22%) tco-catch-finally.js {unsupported: [tail-call-optimization]} tco-finally.js {unsupported: [tail-call-optimization]} -language/statements/variable 85/178 (47.75%) +language/statements/variable 95/178 (53.37%) dstr/ary-init-iter-close.js dstr/ary-init-iter-get-err.js dstr/ary-init-iter-get-err-array-prototype.js dstr/ary-ptrn-elem-ary-elem-init.js dstr/ary-ptrn-elem-ary-elem-iter.js dstr/ary-ptrn-elem-ary-elision-init.js + dstr/ary-ptrn-elem-ary-elision-iter.js dstr/ary-ptrn-elem-ary-empty-init.js + dstr/ary-ptrn-elem-ary-empty-iter.js dstr/ary-ptrn-elem-ary-rest-init.js dstr/ary-ptrn-elem-ary-rest-iter.js + dstr/ary-ptrn-elem-id-init-exhausted.js dstr/ary-ptrn-elem-id-init-fn-name-arrow.js dstr/ary-ptrn-elem-id-init-fn-name-class.js dstr/ary-ptrn-elem-id-init-fn-name-cover.js dstr/ary-ptrn-elem-id-init-fn-name-fn.js dstr/ary-ptrn-elem-id-init-fn-name-gen.js + dstr/ary-ptrn-elem-id-init-hole.js dstr/ary-ptrn-elem-id-init-skipped.js dstr/ary-ptrn-elem-id-init-throws.js + dstr/ary-ptrn-elem-id-init-undef.js + dstr/ary-ptrn-elem-id-init-unresolvable.js dstr/ary-ptrn-elem-id-iter-step-err.js dstr/ary-ptrn-elem-id-iter-val-array-prototype.js dstr/ary-ptrn-elem-id-iter-val-err.js @@ -8033,13 +8555,17 @@ language/statements/variable 85/178 (47.75%) dstr/obj-ptrn-id-init-fn-name-gen.js dstr/obj-ptrn-id-init-skipped.js dstr/obj-ptrn-id-init-throws.js + dstr/obj-ptrn-id-init-unresolvable.js dstr/obj-ptrn-list-err.js dstr/obj-ptrn-prop-ary.js dstr/obj-ptrn-prop-ary-init.js dstr/obj-ptrn-prop-ary-value-null.js dstr/obj-ptrn-prop-eval-err.js + dstr/obj-ptrn-prop-id-get-value-err.js + dstr/obj-ptrn-prop-id-init.js dstr/obj-ptrn-prop-id-init-skipped.js dstr/obj-ptrn-prop-id-init-throws.js + dstr/obj-ptrn-prop-id-init-unresolvable.js dstr/obj-ptrn-prop-obj.js dstr/obj-ptrn-prop-obj-init.js dstr/obj-ptrn-prop-obj-value-null.js