From 20285bb6c254f7d548e3aefc29eb4201bab0a51f Mon Sep 17 00:00:00 2001 From: Aneryu Date: Tue, 18 Aug 2026 11:32:52 +0800 Subject: [PATCH] engines: add zjs --- engines/zjs/Dockerfile | 21 + engines/zjs/Makefile | 8 + engines/zjs/README.md | 17 + engines/zjs/conformance.txt | 1514 +++++++++++++++++++++++++++++++++++ harness/config.yml | 5 + 5 files changed, 1565 insertions(+) create mode 100644 engines/zjs/Dockerfile create mode 100644 engines/zjs/Makefile create mode 100644 engines/zjs/README.md create mode 100644 engines/zjs/conformance.txt diff --git a/engines/zjs/Dockerfile b/engines/zjs/Dockerfile new file mode 100644 index 00000000..bdb8966c --- /dev/null +++ b/engines/zjs/Dockerfile @@ -0,0 +1,21 @@ +# SPDX-FileCopyrightText: 2026 Aneryu +# SPDX-License-Identifier: MIT + +ARG BASE=jsz-zig +FROM $BASE + +WORKDIR /src +ARG REPO=https://github.com/aneryu/zjs.git +RUN git clone --depth=1 "$REPO" . + +ARG REV=main +RUN git fetch --depth=1 origin "$REV" && git checkout FETCH_HEAD && git rev-parse HEAD + +RUN case "$(dpkg --print-architecture 2>/dev/null || true)" in \ + arm64) zig build zjs -Dcpu=baseline --summary all;; \ + amd64) zig build zjs -Dcpu=x86_64_v3 --summary all;; \ + *) zig build zjs --summary all;; \ + esac + +COPY build/dist.py ./ +RUN ./dist.py /dist/zjs --binary=/src/zig-out/bin/zjs diff --git a/engines/zjs/Makefile b/engines/zjs/Makefile new file mode 100644 index 00000000..605c540a --- /dev/null +++ b/engines/zjs/Makefile @@ -0,0 +1,8 @@ +# SPDX-FileCopyrightText: 2026 Aneryu +# SPDX-License-Identifier: MIT + +include ../../build/build.mk + +SUPPORTED_ARCHS = amd64 arm64 + +$(eval $(call build_engine,zjs,Dockerfile)) diff --git a/engines/zjs/README.md b/engines/zjs/README.md new file mode 100644 index 00000000..1eb5b8ad --- /dev/null +++ b/engines/zjs/README.md @@ -0,0 +1,17 @@ +# zjs + +Zig-native JavaScript engine, source-aligned with QuickJS. + +* Repository: [aneryu/zjs](https://github.com/aneryu/zjs.git) StarsLast commit +* LOC: [235432](# "cloc src") +* Language: Zig +* License: MIT +* Standard: ES2023 (partial) +* Years: 2026- +* Ancestor: [QuickJS](../quickjs/README.md) +* Interpreter: stack-based VM +* GC: reference counting with cycle removal + +zjs is a Zig rewrite that uses QuickJS as its semantic reference. It provides +a Zig embedding API, a standalone command-line interpreter, and syntax-only +TypeScript erasure. It is not a drop-in replacement for QuickJS's C API. diff --git a/engines/zjs/conformance.txt b/engines/zjs/conformance.txt new file mode 100644 index 00000000..f82ac422 --- /dev/null +++ b/engines/zjs/conformance.txt @@ -0,0 +1,1514 @@ +es1/Array.js: PASS +es1/Array.length.assignment.js: PASS +es1/Array.length.js: PASS +es1/Array.prototype.constructor.js: PASS +es1/Array.prototype.join.generic.js: PASS +es1/Array.prototype.join.js: PASS +es1/Array.prototype.reverse.generic.js: PASS +es1/Array.prototype.reverse.js: PASS +es1/Array.prototype.sort.generic.js: PASS +es1/Array.prototype.sort.js: PASS +es1/Array.prototype.toString.js: PASS +es1/Boolean.js: PASS +es1/Boolean.prototype.constructor.js: PASS +es1/Boolean.prototype.toString.js: PASS +es1/Boolean.prototype.valueOf.js: PASS +es1/Date.diff.js: PASS +es1/Date.js: PASS +es1/Date.prototype.constructor.js: PASS +es1/Date.prototype.getDate.js: PASS +es1/Date.prototype.getDay.js: PASS +es1/Date.prototype.getFullYear.js: PASS +es1/Date.prototype.getHours.js: PASS +es1/Date.prototype.getMilliseconds.js: PASS +es1/Date.prototype.getMinutes.js: PASS +es1/Date.prototype.getMonth.js: PASS +es1/Date.prototype.getSeconds.js: PASS +es1/Date.prototype.getTimezoneOffset.js: PASS +es1/Date.prototype.getTime.js: PASS +es1/Date.prototype.getUTCDate.js: PASS +es1/Date.prototype.getUTCDay.js: PASS +es1/Date.prototype.getUTCFullYear.js: PASS +es1/Date.prototype.getUTCHours.js: PASS +es1/Date.prototype.getUTCMilliseconds.js: PASS +es1/Date.prototype.getUTCMinutes.js: PASS +es1/Date.prototype.getUTCMonth.js: PASS +es1/Date.prototype.getUTCSeconds.js: PASS +es1/Date.prototype.setDate.js: PASS +es1/Date.prototype.setFullYear.js: PASS +es1/Date.prototype.setHours.js: PASS +es1/Date.prototype.setMilliseconds.js: PASS +es1/Date.prototype.setMinutes.js: PASS +es1/Date.prototype.setMonth.js: PASS +es1/Date.prototype.setSeconds.js: PASS +es1/Date.prototype.setTime.js: PASS +es1/Date.prototype.setUTCDate.js: PASS +es1/Date.prototype.setUTCFullYear.js: PASS +es1/Date.prototype.setUTCHours.js: PASS +es1/Date.prototype.setUTCMilliseconds.js: PASS +es1/Date.prototype.setUTCMinutes.js: PASS +es1/Date.prototype.setUTCMonth.js: PASS +es1/Date.prototype.setUTCSeconds.js: PASS +es1/Date.prototype.toLocaleString.js: PASS +es1/Date.prototype.toString.js: PASS +es1/Date.prototype.toUTCString.js: PASS +es1/Date.prototype.valueOf.js: PASS +es1/Function.js: PASS +es1/Function.length.js: PASS +es1/Function.prototype.constructor.js: PASS +es1/Function.prototype.js: PASS +es1/Function.prototype.toString.js: PASS +es1/Math.E.js: PASS +es1/Math.LN2.js: PASS +es1/Math.LN10.js: PASS +es1/Math.LOG2E.js: PASS +es1/Math.LOG10E.js: PASS +es1/Math.PI.js: PASS +es1/Math.SQRT1_2.js: PASS +es1/Math.SQRT2.js: PASS +es1/Math.abs.js: PASS +es1/Math.acos.js: PASS +es1/Math.asin.js: PASS +es1/Math.atan2.js: PASS +es1/Math.atan.js: PASS +es1/Math.ceil.js: PASS +es1/Math.cos.js: PASS +es1/Math.exp.js: PASS +es1/Math.floor.js: PASS +es1/Math.log.js: PASS +es1/Math.max.js: PASS +es1/Math.min.js: PASS +es1/Math.pow.js: PASS +es1/Math.random.js: PASS +es1/Math.round.js: PASS +es1/Math.sin.js: PASS +es1/Math.sqrt.js: PASS +es1/Math.tan.js: PASS +es1/Number.MAX_VALUE.js: PASS +es1/Number.MIN_VALUE.js: PASS +es1/Number.NEGATIVE_INFINITY.js: PASS +es1/Number.NaN.js: PASS +es1/Number.POSITIVE_INFINITY.js: PASS +es1/Number.js: PASS +es1/Number.prototype.constructor.js: PASS +es1/Number.prototype.toString.js: PASS +es1/Number.prototype.valueOf.js: PASS +es1/Object.js: PASS +es1/Object.prototype.constructor.js: PASS +es1/Object.prototype.toString.js: PASS +es1/Object.prototype.valueOf.js: PASS +es1/String.fromCharCode.js: PASS +es1/String.generics.js: PASS +es1/String.js: PASS +es1/String.length.js: PASS +es1/String.prototype.charAt.js: PASS +es1/String.prototype.charCodeAt.js: PASS +es1/String.prototype.constructor.js: PASS +es1/String.prototype.indexOf.js: PASS +es1/String.prototype.lastIndexOf.js: PASS +es1/String.prototype.split.js: PASS +es1/String.prototype.substring.js: PASS +es1/String.prototype.toLowerCase.js: PASS +es1/String.prototype.toString.js: PASS +es1/String.prototype.toUpperCase.js: PASS +es1/String.prototype.valueOf.js: PASS +es1/annex-b.Date.prototype.getYear.js: PASS +es1/annex-b.Date.prototype.setYear.js: PASS +es1/annex-b.Date.prototype.toGMTString.js: PASS +es1/annex-b.global.escape.js: PASS +es1/annex-b.global.unescape.js: PASS +es1/annex-b.literals.octal.js: PASS +es1/annex-b.literals.string.octal.js: PASS +es1/arguments.callee.js: PASS +es1/arguments.js: PASS +es1/asi.eval.js: PASS +es1/asi.js: PASS +es1/assignment.bitwise.js: PASS +es1/assignment.js: PASS +es1/assignment.ltr.js: PASS +es1/assignment.unsigned-shift.js: PASS +es1/bitwise.binary.js: PASS +es1/bitwise.shifts.js: PASS +es1/bitwise.tilde.js: PASS +es1/bitwise.unsigned-shift.js: PASS +es1/break.js: PASS +es1/comma.js: PASS +es1/comments.js: PASS +es1/conditional.js: PASS +es1/continue.js: PASS +es1/conversions.ToBoolean.js: PASS +es1/conversions.ToInt32.js: PASS +es1/conversions.ToInteger.js: PASS +es1/conversions.ToNumber.js: PASS +es1/conversions.ToObject.js: PASS +es1/conversions.ToString.js: PASS +es1/conversions.ToUint32.js: PASS +es1/conversions.js: PASS +es1/equals.js: PASS +es1/eval.js: PASS +es1/for-in.js: PASS +es1/for.js: PASS +es1/functions.js: PASS +es1/global.Infinity.js: PASS +es1/global.NaN.js: PASS +es1/global.isFinite.js: PASS +es1/global.isNaN.js: PASS +es1/global.parseFloat.js: PASS +es1/global.parseInt.hex.js: PASS +es1/global.parseInt.js: PASS +es1/global.parseInt.radix.js: PASS +es1/literals.decimal.js: PASS +es1/literals.hex.js: PASS +es1/literals.string.escapes.js: PASS +es1/literals.string.hex.js: PASS +es1/literals.string.js: PASS +es1/literals.string.unicode.js: PASS +es1/logical.js: PASS +es1/new.typeof.js: PASS +es1/numbers.double.js: PASS +es1/numbers.fmod.js: PASS +es1/numbers.inf.js: PASS +es1/numbers.int.js: PASS +es1/numbers.nan.js: PASS +es1/postfix.decrement.js: PASS +es1/postfix.increment.js: PASS +es1/prefix.js: PASS +es1/relational.js: PASS +es1/return.js: PASS +es1/return.typeof.js: PASS +es1/this.js: PASS +es1/typeof.js: PASS +es1/typeof.null.js: PASS +es1/typeof.undeclared.js: PASS +es1/types.js: PASS +es1/unary.decrement.js: PASS +es1/unary.delete.js: PASS +es1/unary.delete.var.js: PASS +es1/unary.increment.js: PASS +es1/unary.minus.js: PASS +es1/unary.not.js: PASS +es1/unary.plus.js: PASS +es1/unary.plus.str.js: PASS +es1/unary.tilde.js: PASS +es1/var.js: PASS +es1/var.typeof.js: PASS +es1/void.js: PASS +es1/void.typeof.js: PASS +es1/while.js: PASS +es1/with.js: PASS +es3/Array.prototype.concat.js: PASS +es3/Array.prototype.pop.generic.js: PASS +es3/Array.prototype.pop.js: PASS +es3/Array.prototype.push.generic.js: PASS +es3/Array.prototype.push.js: PASS +es3/Array.prototype.shift.generic.js: PASS +es3/Array.prototype.shift.js: PASS +es3/Array.prototype.slice.generic.js: PASS +es3/Array.prototype.slice.js: PASS +es3/Array.prototype.splice.generic.js: PASS +es3/Array.prototype.splice.js: PASS +es3/Array.prototype.toLocaleString.js: PASS +es3/Array.prototype.unshift.generic.js: PASS +es3/Array.prototype.unshift.js: PASS +es3/Array.prototype.unshift.returns-new-length.js: PASS +es3/Date.prototype.toDateString.js: PASS +es3/Date.prototype.toLocaleDateString.js: PASS +es3/Date.prototype.toLocaleString.js: PASS +es3/Date.prototype.toLocaleTimeString.js: PASS +es3/Date.prototype.toTimeString.js: PASS +es3/Error.js: PASS +es3/Error.prototype.constructor.js: PASS +es3/Error.prototype.message.js: PASS +es3/Error.prototype.name.js: PASS +es3/Error.prototype.toString.js: PASS +es3/Function.prototype.apply.js: PASS +es3/Function.prototype.call.js: PASS +es3/Math.max.variadic.js: PASS +es3/Math.min.variadic.js: PASS +es3/Number.prototype.toExponential.edge-cases.js: PASS +es3/Number.prototype.toExponential.js: PASS +es3/Number.prototype.toExponential.rounding.js: PASS +es3/Number.prototype.toExponential.throws-infinity.js: PASS +es3/Number.prototype.toFixed.js: PASS +es3/Number.prototype.toLocaleString.js: PASS +es3/Number.prototype.toPrecision.js: PASS +es3/Object.prototype.hasOwnProperty.js: PASS +es3/Object.prototype.isPrototypeOf.js: PASS +es3/Object.prototype.propertyIsEnumerable.js: PASS +es3/Object.prototype.toLocaleString.js: PASS +es3/RegExp.global.js: PASS +es3/RegExp.ignoreCase.js: PASS +es3/RegExp.js: PASS +es3/RegExp.lastIndex.js: PASS +es3/RegExp.multiline.js: PASS +es3/RegExp.prototype.constructor.js: PASS +es3/RegExp.prototype.exec.js: PASS +es3/RegExp.prototype.test.js: PASS +es3/RegExp.prototype.toString.js: PASS +es3/RegExp.source.js: PASS +es3/String.prototype.concat.generic.js: PASS +es3/String.prototype.concat.js: PASS +es3/String.prototype.localeCompare.js: PASS +es3/String.prototype.match.generic.js: PASS +es3/String.prototype.match.js: PASS +es3/String.prototype.replace.capture.js: PASS +es3/String.prototype.replace.extra.js: PASS +es3/String.prototype.replace.generic.js: PASS +es3/String.prototype.replace.regex.js: PASS +es3/String.prototype.replace.str.js: PASS +es3/String.prototype.search.generic.js: PASS +es3/String.prototype.search.js: PASS +es3/String.prototype.search.str.js: PASS +es3/String.prototype.slice.generic.js: PASS +es3/String.prototype.slice.js: PASS +es3/String.prototype.split.bugs.js: PASS +es3/String.prototype.split.limit.js: PASS +es3/String.prototype.split.regex.js: PASS +es3/String.prototype.toLocaleLowerCase.js: PASS +es3/String.prototype.toLocaleUpperCase.js: PASS +es3/annex-b.String.prototype.substr.js: PASS +es3/do-while.js: PASS +es3/function-expressions.IIFE.js: PASS +es3/function-expressions.js: PASS +es3/global.EvalError.js: PASS +es3/global.RangeError.js: PASS +es3/global.RangeError.thrown.js: PASS +es3/global.ReferenceError.js: PASS +es3/global.ReferenceError.thrown.js: PASS +es3/global.SyntaxError.js: PASS +es3/global.SyntaxError.thrown.js: PASS +es3/global.TypeError.js: PASS +es3/global.TypeError.thrown.js: PASS +es3/global.URIError.js: PASS +es3/global.URIError.thrown.js: PASS +es3/global.decodeURIComponent.js: PASS +es3/global.decodeURI.js: PASS +es3/global.encodeURIComponent.js: PASS +es3/global.encodeURI.js: PASS +es3/global.undefined.js: PASS +es3/identifiers.unicode.js: PASS +es3/instanceof.js: PASS +es3/in.js: PASS +es3/labelled.break.js: PASS +es3/labelled.continue.js: PASS +es3/labelled.statements.js: PASS +es3/literals.array.elisions.js: PASS +es3/literals.array.js: PASS +es3/literals.array.trailing-comma.js: PASS +es3/literals.object.decimal.js: PASS +es3/literals.object.hex.js: PASS +es3/literals.object.int.js: PASS +es3/literals.object.js: PASS +es3/literals.object.str.js: PASS +es3/literals.object.unicode.js: PASS +es3/literals.regex.ambiguous.js: PASS +es3/literals.regex.empty.js: PASS +es3/literals.regex.js: PASS +es3/literals.string.esc-v.js: PASS +es3/nested-functions.eval.js: PASS +es3/nested-functions.js: PASS +es3/regex.backref.js: PASS +es3/regex.begin.js: PASS +es3/regex.bracket.esc-b.js: PASS +es3/regex.bracket.js: PASS +es3/regex.bracket.ranges.js: PASS +es3/regex.class.esc-d.js: PASS +es3/regex.class.esc-s.js: PASS +es3/regex.class.esc-w.js: PASS +es3/regex.disjunction.js: PASS +es3/regex.dot.js: PASS +es3/regex.end.js: PASS +es3/regex.escape.control.js: PASS +es3/regex.escape.hex.js: PASS +es3/regex.escape.js: PASS +es3/regex.escape.nul.js: PASS +es3/regex.escape.unicode.js: PASS +es3/regex.flag.global.js: PASS +es3/regex.flag.ignorecase.js: PASS +es3/regex.flag.multiline.js: PASS +es3/regex.group.js: PASS +es3/regex.lookahead.js: PASS +es3/regex.negative-lookahead.js: PASS +es3/regex.non-capturing-group.js: PASS +es3/regex.quantifier.exact.js: PASS +es3/regex.quantifier.maybe.js: PASS +es3/regex.quantifier.min.js: PASS +es3/regex.quantifier.plus.js: PASS +es3/regex.quantifier.range.js: PASS +es3/regex.quantifier.star.js: PASS +es3/regex.word-boundary.js: PASS +es3/source.line-terminators.js: PASS +es3/source.whitespace.js: PASS +es3/source.whitespace.unicode.js: PASS +es3/strict-equals.js: PASS +es3/switch.js: PASS +es3/try-catch-finally.js: PASS +es3/try-catch-throw.js: PASS +es5/Array.isArray.js: PASS +es5/Array.prototype.every.js: PASS +es5/Array.prototype.filter.js: PASS +es5/Array.prototype.forEach.js: PASS +es5/Array.prototype.indexOf.js: PASS +es5/Array.prototype.lastIndexOf.js: PASS +es5/Array.prototype.map.js: PASS +es5/Array.prototype.reduceRight.js: PASS +es5/Array.prototype.reduce.js: PASS +es5/Array.prototype.some.js: PASS +es5/Array.prototype.sort.TypeError.js: PASS +es5/Array.prototype.sort.undefined-comparefn.js: PASS +es5/Date.now.js: PASS +es5/Date.prototype.toISOString.js: PASS +es5/Date.prototype.toJSON.js: PASS +es5/Function.prototype-not-enumerable.js: PASS +es5/Function.prototype.apply.array-like.js: PASS +es5/Function.prototype.bind.js: PASS +es5/JSON.js: PASS +es5/JSON.parse.js: PASS +es5/JSON.parse.reviver.js: PASS +es5/JSON.stringify.js: PASS +es5/JSON.stringify.replacer.js: PASS +es5/JSON.stringify.space.js: PASS +es5/Object.create.js: PASS +es5/Object.defineProperties.js: PASS +es5/Object.defineProperty.js: PASS +es5/Object.freeze.js: PASS +es5/Object.getOwnPropertyDescriptor.js: PASS +es5/Object.getOwnPropertyNames.js: PASS +es5/Object.getPrototypeOf.js: PASS +es5/Object.isExtensible.js: PASS +es5/Object.isFrozen.js: PASS +es5/Object.isSealed.js: PASS +es5/Object.keys.js: PASS +es5/Object.preventExtensions.js: PASS +es5/Object.property-shadowing.js: PASS +es5/Object.seal.js: PASS +es5/String.indexing.js: PASS +es5/String.prototype.trim.js: PASS +es5/arguments.toStringTag.js: PASS +es5/debugger.js: PASS +es5/global.Infinity.immutable.js: PASS +es5/global.NaN.immutable.js: PASS +es5/global.parseInt.no-octal.js: PASS +es5/global.undefined.immutable.js: PASS +es5/literals.object.getters.js: PASS +es5/literals.object.setters.js: PASS +es5/literals.object.trailing-comma.js: PASS +es5/source.keyword-properties.js: PASS +es5/source.unreserved-words.js: PASS +es5/source.whitespace.bom.js: PASS +es5/source.zero-width-chars.js: PASS +es5/strict.eval-cannot-create-bindings.js: PASS +es5/strict.function-expr-with-matching-name.js: PASS +es5/strict.js: PASS +es5/strict.no-arguments-callee.js: PASS +es5/strict.no-arguments-caller.js: PASS +es5/strict.no-assignment-to-non-writable.js: PASS +es5/strict.no-assignment-to-unresolvable.js: PASS +es5/strict.no-delete-bindings.js: PASS +es5/strict.no-delete-non-configurable.js: PASS +es5/strict.no-duplicate-parameters.js: PASS +es5/strict.no-eval-or-arguments-assignment.js: PASS +es5/strict.no-eval-or-arguments-bindings.js: PASS +es5/strict.no-function-caller-or-arguments.js: PASS +es5/strict.no-octal-literals.js: PASS +es5/strict.no-with.js: PASS +es5/strict.reserved-words.js: PASS +es5/strict.this-primitive-not-coerced-in-accessors.js: PASS +es5/strict.this-primitive-not-coerced.js: PASS +es5/strict.this-undefined-in-function.js: PASS +es5/strict.unmapped-arguments.js: PASS +es5/this.thrown-function.js: PASS +compat-table/es5/Array.isArray.js: PASS +compat-table/es5/Array.prototype.every.js: PASS +compat-table/es5/Array.prototype.filter.js: PASS +compat-table/es5/Array.prototype.forEach.js: PASS +compat-table/es5/Array.prototype.indexOf.js: PASS +compat-table/es5/Array.prototype.lastIndexOf.js: PASS +compat-table/es5/Array.prototype.map.js: PASS +compat-table/es5/Array.prototype.reduceRight.js: PASS +compat-table/es5/Array.prototype.reduce.js: PASS +compat-table/es5/Array.prototype.some.js: PASS +compat-table/es5/Array.prototype.sort.compareFn-type.js: PASS +compat-table/es5/Array.prototype.sort.compareFn-undefined.js: PASS +compat-table/es5/Array.prototype.unshift.return-count.js: PASS +compat-table/es5/Date.now.js: PASS +compat-table/es5/Date.prototype.toISOString.js: PASS +compat-table/es5/Date.prototype.toJSON.js: PASS +compat-table/es5/Function.prototype.bind.js: PASS +compat-table/es5/JSON.js: PASS +compat-table/es5/Number.prototype.toExponential.no-throw-edge-cases.js: PASS +compat-table/es5/Number.prototype.toExponential.rounds-properly.js: PASS +compat-table/es5/Number.prototype.toExponential.throws-infinity.js: PASS +compat-table/es5/Object.create.js: PASS +compat-table/es5/Object.defineProperties.js: PASS +compat-table/es5/Object.defineProperty.js: PASS +compat-table/es5/Object.freeze.js: PASS +compat-table/es5/Object.getOwnPropertyDescriptor.js: PASS +compat-table/es5/Object.getOwnPropertyNames.js: PASS +compat-table/es5/Object.getPrototypeOf.js: PASS +compat-table/es5/Object.isExtensible.js: PASS +compat-table/es5/Object.isFrozen.js: PASS +compat-table/es5/Object.isSealed.js: PASS +compat-table/es5/Object.keys.js: PASS +compat-table/es5/Object.preventExtensions.js: PASS +compat-table/es5/Object.seal.js: PASS +compat-table/es5/String.property-access.js: PASS +compat-table/es5/String.prototype.split.js: PASS +compat-table/es5/String.prototype.trim.js: PASS +compat-table/es5/annex-b.String.prototype.substr.js: PASS +compat-table/es5/immutable-globals.Infinity.js: PASS +compat-table/es5/immutable-globals.NaN.js: PASS +compat-table/es5/immutable-globals.undefined.js: PASS +compat-table/es5/literals.getter-accessors.js: PASS +compat-table/es5/literals.reserved-words-properties.js: PASS +compat-table/es5/literals.setter-accessors.js: PASS +compat-table/es5/literals.trailing-comma-array.js: PASS +compat-table/es5/literals.trailing-comma-object.js: PASS +compat-table/es5/misc.Arguments.toStringTag.js: PASS +compat-table/es5/misc.Function.apply.array-likes.js: PASS +compat-table/es5/misc.Function.prototype.non-enumerable.js: PASS +compat-table/es5/misc.enumerable-shadow.js: PASS +compat-table/es5/misc.parseInt.ignores-leading-zeros.js: PASS +compat-table/es5/misc.thrown-functions-this.js: PASS +compat-table/es5/misc.unreserved-words.js: PASS +compat-table/es5/misc.zero-width-identifiers.js: PASS +compat-table/es5/strict.arguments-callee-error.js: PASS +compat-table/es5/strict.arguments-caller-error.js: PASS +compat-table/es5/strict.arguments-unmapped.js: PASS +compat-table/es5/strict.assignment-eval-arguments-error.js: PASS +compat-table/es5/strict.assignment-non-writable-error.js: PASS +compat-table/es5/strict.assignment-unresolvable-error.js: PASS +compat-table/es5/strict.delete-bindings-error.js: PASS +compat-table/es5/strict.delete-non-configurable-error.js: PASS +compat-table/es5/strict.eval-arguments-bindings-error.js: PASS +compat-table/es5/strict.eval-no-bindings.js: PASS +compat-table/es5/strict.function-caller-arguments-error.js: PASS +compat-table/es5/strict.function-expr-matching-name-arg.js: PASS +compat-table/es5/strict.legacy-octal-error.js: PASS +compat-table/es5/strict.repeated-params-error.js: PASS +compat-table/es5/strict.reserved-words.js: PASS +compat-table/es5/strict.this-not-coerced-accessors.js: PASS +compat-table/es5/strict.this-not-coerced-methods.js: PASS +compat-table/es5/strict.this-undefined.js: PASS +compat-table/es5/strict.with-error.js: PASS +compat-table/es6/Array.Symbol.species.js: PASS +compat-table/es6/Array.from.array-like.js: PASS +compat-table/es6/Array.from.generator.js: PASS +compat-table/es6/Array.from.iterable-instance.js: PASS +compat-table/es6/Array.from.iterable.js: PASS +compat-table/es6/Array.from.iterator-closing.js: PASS +compat-table/es6/Array.from.map.array-like.js: PASS +compat-table/es6/Array.from.map.generator.js: PASS +compat-table/es6/Array.from.map.iterable-instance.js: PASS +compat-table/es6/Array.from.map.iterable.js: PASS +compat-table/es6/Array.iterator-prototype-chain.js: FAIL +compat-table/es6/Array.of.js: PASS +compat-table/es6/Array.prototype.Symbol.iterator.js: PASS +compat-table/es6/Array.prototype.Symbol.unscopables.js: PASS +compat-table/es6/Array.prototype.copyWithin.js: PASS +compat-table/es6/Array.prototype.entries.js: PASS +compat-table/es6/Array.prototype.fill.js: PASS +compat-table/es6/Array.prototype.findIndex.js: PASS +compat-table/es6/Array.prototype.find.js: PASS +compat-table/es6/Array.prototype.keys.js: PASS +compat-table/es6/Array.prototype.splice.js: PASS +compat-table/es6/Array.prototype.values.js: PASS +compat-table/es6/Date.prototype.Symbol.toPrimitive.js: PASS +compat-table/es6/Function.name.accessor.js: PASS +compat-table/es6/Function.name.bound.js: PASS +compat-table/es6/Function.name.class-expression.js: PASS +compat-table/es6/Function.name.class-object-method.js: PASS +compat-table/es6/Function.name.class-prototype.js: PASS +compat-table/es6/Function.name.class-statement.js: PASS +compat-table/es6/Function.name.class-static.js: PASS +compat-table/es6/Function.name.class-variable.js: PASS +compat-table/es6/Function.name.configurable.js: PASS +compat-table/es6/Function.name.expression.js: PASS +compat-table/es6/Function.name.new-Function.js: PASS +compat-table/es6/Function.name.object-method.js: PASS +compat-table/es6/Function.name.shorthand.js: PASS +compat-table/es6/Function.name.shorthand.no-lexical.js: PASS +compat-table/es6/Function.name.statement.js: PASS +compat-table/es6/Function.name.symbol-keyed.js: PASS +compat-table/es6/Function.name.variable.js: PASS +compat-table/es6/Map.Symbol.species.js: PASS +compat-table/es6/Map.constructor-accepts-null.js: PASS +compat-table/es6/Map.constructor-arguments.js: PASS +compat-table/es6/Map.constructor-invokes-set.js: PASS +compat-table/es6/Map.constructor-requires-new.js: PASS +compat-table/es6/Map.iterator-closing.js: PASS +compat-table/es6/Map.iterator-prototype-chain.js: PASS +compat-table/es6/Map.js: PASS +compat-table/es6/Map.prototype-not-instance.js: PASS +compat-table/es6/Map.prototype.Symbol.iterator.js: PASS +compat-table/es6/Map.prototype.clear.js: PASS +compat-table/es6/Map.prototype.delete.js: PASS +compat-table/es6/Map.prototype.entries.js: PASS +compat-table/es6/Map.prototype.forEach.js: PASS +compat-table/es6/Map.prototype.keys.js: PASS +compat-table/es6/Map.prototype.set-returns-this.js: PASS +compat-table/es6/Map.prototype.size.js: PASS +compat-table/es6/Map.prototype.values.js: PASS +compat-table/es6/Map.zero-key.js: PASS +compat-table/es6/Math.acosh.js: PASS +compat-table/es6/Math.asinh.js: PASS +compat-table/es6/Math.atanh.js: PASS +compat-table/es6/Math.cbrt.js: PASS +compat-table/es6/Math.clz32.js: PASS +compat-table/es6/Math.cosh.js: PASS +compat-table/es6/Math.expm1.js: PASS +compat-table/es6/Math.fround.js: PASS +compat-table/es6/Math.hypot.js: PASS +compat-table/es6/Math.imul.js: PASS +compat-table/es6/Math.log1p.js: PASS +compat-table/es6/Math.log2.js: PASS +compat-table/es6/Math.log10.js: PASS +compat-table/es6/Math.sign.js: PASS +compat-table/es6/Math.sinh.js: PASS +compat-table/es6/Math.tanh.js: PASS +compat-table/es6/Math.trunc.js: PASS +compat-table/es6/Number.EPSILON.js: PASS +compat-table/es6/Number.MAX_SAFE_INTEGER.js: PASS +compat-table/es6/Number.MIN_SAFE_INTEGER.js: PASS +compat-table/es6/Number.isFinite.js: PASS +compat-table/es6/Number.isInteger.js: PASS +compat-table/es6/Number.isNaN.js: PASS +compat-table/es6/Number.isSafeInteger.js: PASS +compat-table/es6/Number.parseFloat.js: PASS +compat-table/es6/Number.parseInt.js: PASS +compat-table/es6/Object.assign.js: PASS +compat-table/es6/Object.getOwnPropertySymbols.js: PASS +compat-table/es6/Object.is.js: PASS +compat-table/es6/Object.setPrototypeOf.js: PASS +compat-table/es6/Promise.Symbol.species.js: PASS +compat-table/es6/Promise.all.iterable.js: PASS +compat-table/es6/Promise.all.js: PASS +compat-table/es6/Promise.constructor-requires-new.js: PASS +compat-table/es6/Promise.js: PASS +compat-table/es6/Promise.prototype-not-instance.js: PASS +compat-table/es6/Promise.race.iterable.js: PASS +compat-table/es6/Promise.race.js: PASS +compat-table/es6/Proxy.Array.isArray.js: PASS +compat-table/es6/Proxy.JSON.stringify.js: PASS +compat-table/es6/Proxy.constructor-requires-new.js: PASS +compat-table/es6/Proxy.handler.apply.invariants.js: PASS +compat-table/es6/Proxy.handler.apply.js: PASS +compat-table/es6/Proxy.handler.construct.invariants.js: PASS +compat-table/es6/Proxy.handler.construct.js: PASS +compat-table/es6/Proxy.handler.defineProperty.invariants.js: PASS +compat-table/es6/Proxy.handler.defineProperty.js: PASS +compat-table/es6/Proxy.handler.deleteProperty.invariants.js: PASS +compat-table/es6/Proxy.handler.deleteProperty.js: PASS +compat-table/es6/Proxy.handler.getOwnPropertyDescriptor.invariants.js: PASS +compat-table/es6/Proxy.handler.getOwnPropertyDescriptor.js: PASS +compat-table/es6/Proxy.handler.getPrototypeOf.invariants.js: PASS +compat-table/es6/Proxy.handler.getPrototypeOf.js: PASS +compat-table/es6/Proxy.handler.get.instances.js: PASS +compat-table/es6/Proxy.handler.get.invariants.js: PASS +compat-table/es6/Proxy.handler.get.js: PASS +compat-table/es6/Proxy.handler.has.instances.js: PASS +compat-table/es6/Proxy.handler.has.invariants.js: PASS +compat-table/es6/Proxy.handler.has.js: PASS +compat-table/es6/Proxy.handler.isExtensible.invariants.js: PASS +compat-table/es6/Proxy.handler.isExtensible.js: PASS +compat-table/es6/Proxy.handler.ownKeys.invariants.js: PASS +compat-table/es6/Proxy.handler.ownKeys.js: PASS +compat-table/es6/Proxy.handler.preventExtensions.invariants.js: PASS +compat-table/es6/Proxy.handler.preventExtensions.js: PASS +compat-table/es6/Proxy.handler.setPrototypeOf.invariants.js: PASS +compat-table/es6/Proxy.handler.setPrototypeOf.js: PASS +compat-table/es6/Proxy.handler.set.instances.js: PASS +compat-table/es6/Proxy.handler.set.invariants.js: PASS +compat-table/es6/Proxy.handler.set.js: PASS +compat-table/es6/Proxy.no-prototype.js: PASS +compat-table/es6/Proxy.revocable.js: PASS +compat-table/es6/Reflect.apply.js: PASS +compat-table/es6/Reflect.construct.Array-subclassing.js: PASS +compat-table/es6/Reflect.construct.Function-subclassing.js: PASS +compat-table/es6/Reflect.construct.Promise-subclassing.js: PASS +compat-table/es6/Reflect.construct.RegExp-subclassing.js: PASS +compat-table/es6/Reflect.construct.js: PASS +compat-table/es6/Reflect.construct.new-target.js: PASS +compat-table/es6/Reflect.construct.third-argument.js: PASS +compat-table/es6/Reflect.defineProperty.js: PASS +compat-table/es6/Reflect.deleteProperty.js: PASS +compat-table/es6/Reflect.getOwnPropertyDescriptor.js: PASS +compat-table/es6/Reflect.getPrototypeOf.js: PASS +compat-table/es6/Reflect.get.js: PASS +compat-table/es6/Reflect.has.js: PASS +compat-table/es6/Reflect.isExtensible.js: PASS +compat-table/es6/Reflect.ownKeys.string.js: PASS +compat-table/es6/Reflect.ownKeys.symbol.js: PASS +compat-table/es6/Reflect.preventExtensions.js: PASS +compat-table/es6/Reflect.setPrototypeOf.js: PASS +compat-table/es6/Reflect.set.js: PASS +compat-table/es6/RegExp.Symbol.species.js: PASS +compat-table/es6/RegExp.prototype.Symbol.match.js: PASS +compat-table/es6/RegExp.prototype.Symbol.replace.js: PASS +compat-table/es6/RegExp.prototype.Symbol.search.js: PASS +compat-table/es6/RegExp.prototype.Symbol.split.js: PASS +compat-table/es6/RegExp.prototype.flags.js: PASS +compat-table/es6/Set.Symbol.species.js: PASS +compat-table/es6/Set.constructor-accepts-null.js: PASS +compat-table/es6/Set.constructor-arguments.js: PASS +compat-table/es6/Set.constructor-invokes-add.js: PASS +compat-table/es6/Set.constructor-requires-new.js: PASS +compat-table/es6/Set.iterator-closing.js: PASS +compat-table/es6/Set.iterator-prototype-chain.js: PASS +compat-table/es6/Set.js: PASS +compat-table/es6/Set.prototype-not-instance.js: PASS +compat-table/es6/Set.prototype.Symbol.iterator.js: PASS +compat-table/es6/Set.prototype.add-returns-this.js: PASS +compat-table/es6/Set.prototype.clear.js: PASS +compat-table/es6/Set.prototype.delete.js: PASS +compat-table/es6/Set.prototype.entries.js: PASS +compat-table/es6/Set.prototype.forEach.js: PASS +compat-table/es6/Set.prototype.keys.js: PASS +compat-table/es6/Set.prototype.size.js: PASS +compat-table/es6/Set.prototype.values.js: PASS +compat-table/es6/Set.zero-key.js: PASS +compat-table/es6/String.fromCodePoint.js: PASS +compat-table/es6/String.iterator-prototype-chain.js: FAIL +compat-table/es6/String.prototype.Symbol.iterator.js: PASS +compat-table/es6/String.prototype.codePointAt.js: PASS +compat-table/es6/String.prototype.endsWith.js: PASS +compat-table/es6/String.prototype.endsWith.throws-regex.js: PASS +compat-table/es6/String.prototype.includes.js: PASS +compat-table/es6/String.prototype.normalize.js: PASS +compat-table/es6/String.prototype.repeat.js: PASS +compat-table/es6/String.prototype.startsWith.js: PASS +compat-table/es6/String.prototype.startsWith.throws-regex.js: PASS +compat-table/es6/String.raw.js: PASS +compat-table/es6/Symbol.JSON.stringify.object.js: PASS +compat-table/es6/Symbol.JSON.stringify.primitive.js: PASS +compat-table/es6/Symbol.Object.js: PASS +compat-table/es6/Symbol.String.js: PASS +compat-table/es6/Symbol.defineProperty.js: PASS +compat-table/es6/Symbol.global-registry.js: PASS +compat-table/es6/Symbol.hidden-keys.js: PASS +compat-table/es6/Symbol.js: PASS +compat-table/es6/Symbol.no-coerce.js: PASS +compat-table/es6/Symbol.no-new.js: PASS +compat-table/es6/Symbol.prototype.js: PASS +compat-table/es6/Symbol.typeof.js: PASS +compat-table/es6/WeakMap.accept-primitives.js: PASS +compat-table/es6/WeakMap.constructor-accepts-null.js: PASS +compat-table/es6/WeakMap.constructor-arguments.js: PASS +compat-table/es6/WeakMap.constructor-invokes-set.js: PASS +compat-table/es6/WeakMap.constructor-requires-new.js: PASS +compat-table/es6/WeakMap.frozen-keys.js: PASS +compat-table/es6/WeakMap.iterator-closing.js: PASS +compat-table/es6/WeakMap.js: PASS +compat-table/es6/WeakMap.no-clear.js: PASS +compat-table/es6/WeakMap.prototype-not-instance.js: PASS +compat-table/es6/WeakMap.prototype.delete.js: PASS +compat-table/es6/WeakMap.prototype.set-returns-this.js: PASS +compat-table/es6/WeakSet.accept-primitives.js: PASS +compat-table/es6/WeakSet.constructor-accepts-null.js: PASS +compat-table/es6/WeakSet.constructor-arguments.js: PASS +compat-table/es6/WeakSet.constructor-invokes-add.js: PASS +compat-table/es6/WeakSet.constructor-requires-new.js: PASS +compat-table/es6/WeakSet.iterator-closing.js: PASS +compat-table/es6/WeakSet.js: PASS +compat-table/es6/WeakSet.no-clear.js: PASS +compat-table/es6/WeakSet.prototype-not-instance.js: PASS +compat-table/es6/WeakSet.prototype.add-returns-this.js: PASS +compat-table/es6/WeakSet.prototype.delete.js: PASS +compat-table/es6/annex-b.RegExp.prototype.compile.js: PASS +compat-table/es6/annex-b.RegExp.prototype.compile.returns-this.js: PASS +compat-table/es6/annex-b.String.prototype.html.existence.js: PASS +compat-table/es6/annex-b.String.prototype.html.lowercase.js: PASS +compat-table/es6/annex-b.String.prototype.html.quotes-escaped.js: PASS +compat-table/es6/annex-b.function.hoisted-block-level.js: PASS +compat-table/es6/annex-b.function.if-statement.js: PASS +compat-table/es6/annex-b.function.labeled.js: PASS +compat-table/es6/annex-b.html-comments.js: PASS +compat-table/es6/annex-b.regex.backreferences-octal.js: PASS +compat-table/es6/annex-b.regex.hyphens.js: PASS +compat-table/es6/annex-b.regex.incomplete-patterns.js: PASS +compat-table/es6/annex-b.regex.invalid-char-escapes.js: PASS +compat-table/es6/annex-b.regex.invalid-control-escapes.js: PASS +compat-table/es6/annex-b.regex.invalid-hex-escapes.js: PASS +compat-table/es6/annex-b.regex.invalid-unicode-escapes.js: PASS +compat-table/es6/annex-b.regex.octal-escapes.js: PASS +compat-table/es6/annex-b.__proto__.Object.prototype.absent-from-null.js: PASS +compat-table/es6/annex-b.__proto__.Object.prototype.descriptor.js: PASS +compat-table/es6/annex-b.__proto__.Object.prototype.getOwnPropertyNames.js: PASS +compat-table/es6/annex-b.__proto__.Object.prototype.get.js: PASS +compat-table/es6/annex-b.__proto__.Object.prototype.hasOwnProperty.js: PASS +compat-table/es6/annex-b.__proto__.Object.prototype.set.js: PASS +compat-table/es6/annex-b.__proto__.literals.js: PASS +compat-table/es6/annex-b.__proto__.literals.multiple-error.js: PASS +compat-table/es6/annex-b.__proto__.literals.not-computed.js: PASS +compat-table/es6/annex-b.__proto__.literals.not-shorthand-method.js: PASS +compat-table/es6/annex-b.__proto__.literals.not-shorthand-property.js: PASS +compat-table/es6/arrow.0-params.js: PASS +compat-table/es6/arrow.1-param.js: PASS +compat-table/es6/arrow.5-param.js: PASS +compat-table/es6/arrow.bind.js: PASS +compat-table/es6/arrow.lexical-arguments.js: PASS +compat-table/es6/arrow.lexical-super.constructor.js: PASS +compat-table/es6/arrow.lexical-super.methods.js: PASS +compat-table/es6/arrow.lexical-this.js: PASS +compat-table/es6/arrow.new-target.js: PASS +compat-table/es6/arrow.no-line-break.js: PASS +compat-table/es6/arrow.no-prototype.js: PASS +compat-table/es6/arrow.precedence.js: PASS +compat-table/es6/arrow.this-call-apply.js: PASS +compat-table/es6/class.accessor-properties.js: PASS +compat-table/es6/class.anonymous.js: PASS +compat-table/es6/class.block-scoped.js: PASS +compat-table/es6/class.computed-accessor-properties.js: PASS +compat-table/es6/class.computed-names-tdz.js: FAIL +compat-table/es6/class.computed-prototype-methods.js: PASS +compat-table/es6/class.computed-static-accessor-properties.js: PASS +compat-table/es6/class.computed-static-methods.js: PASS +compat-table/es6/class.constructor-requires-new.js: PASS +compat-table/es6/class.constructor.js: PASS +compat-table/es6/class.expression.js: PASS +compat-table/es6/class.extends-expressions.js: PASS +compat-table/es6/class.extends-null.js: PASS +compat-table/es6/class.extends.js: PASS +compat-table/es6/class.implicit-strict.js: PASS +compat-table/es6/class.lexical-name.js: PASS +compat-table/es6/class.methods-not-enumerable.js: PASS +compat-table/es6/class.new-target.js: PASS +compat-table/es6/class.optional-semicolons.js: PASS +compat-table/es6/class.prototype-methods.js: PASS +compat-table/es6/class.statement.js: PASS +compat-table/es6/class.static-accessor-properties.js: PASS +compat-table/es6/class.static-methods.js: PASS +compat-table/es6/class.string-keyed-methods.js: PASS +compat-table/es6/const.basic.js: PASS +compat-table/es6/const.block-scoped.js: PASS +compat-table/es6/const.for-in.js: PASS +compat-table/es6/const.for-loop.js: PASS +compat-table/es6/const.for-of.js: PASS +compat-table/es6/const.no-redefine.js: PASS +compat-table/es6/const.no-statement.js: PASS +compat-table/es6/const.shadow.js: PASS +compat-table/es6/const.strict.basic.js: PASS +compat-table/es6/const.strict.block-scoped.js: PASS +compat-table/es6/const.strict.for-in.js: PASS +compat-table/es6/const.strict.for-loop.js: PASS +compat-table/es6/const.strict.for-of.js: PASS +compat-table/es6/const.strict.no-redefine.js: PASS +compat-table/es6/const.strict.no-statement.js: PASS +compat-table/es6/const.strict.shadow.js: PASS +compat-table/es6/const.strict.tdz.js: PASS +compat-table/es6/const.tdz.js: PASS +compat-table/es6/default-params.arguments.js: PASS +compat-table/es6/default-params.basic.js: PASS +compat-table/es6/default-params.explicit-undefined.js: PASS +compat-table/es6/default-params.new-function.js: PASS +compat-table/es6/default-params.refer-previous.js: PASS +compat-table/es6/default-params.separate-scope.js: PASS +compat-table/es6/default-params.tdz.js: PASS +compat-table/es6/destructuring-assign.array.js: PASS +compat-table/es6/destructuring-assign.astral-string.js: PASS +compat-table/es6/destructuring-assign.chained-iterable.js: PASS +compat-table/es6/destructuring-assign.chained-object.js: PASS +compat-table/es6/destructuring-assign.computed-properties.js: PASS +compat-table/es6/destructuring-assign.defaults.js: PASS +compat-table/es6/destructuring-assign.empty-patterns.js: PASS +compat-table/es6/destructuring-assign.generator.js: PASS +compat-table/es6/destructuring-assign.iterable-expression.js: PASS +compat-table/es6/destructuring-assign.iterable-instance.js: PASS +compat-table/es6/destructuring-assign.iterable.js: PASS +compat-table/es6/destructuring-assign.iterator-closing.js: PASS +compat-table/es6/destructuring-assign.nested-rest.js: PASS +compat-table/es6/destructuring-assign.nested.js: PASS +compat-table/es6/destructuring-assign.object-expression.js: PASS +compat-table/es6/destructuring-assign.object-primitives.js: PASS +compat-table/es6/destructuring-assign.object.js: PASS +compat-table/es6/destructuring-assign.parenthesised-error.js: PASS +compat-table/es6/destructuring-assign.rest.identical.js: PASS +compat-table/es6/destructuring-assign.rest.js: PASS +compat-table/es6/destructuring-assign.sparse-array.js: PASS +compat-table/es6/destructuring-assign.string.js: PASS +compat-table/es6/destructuring-assign.throws-null-undefined.js: PASS +compat-table/es6/destructuring-assign.trailing-comma-iterable.js: PASS +compat-table/es6/destructuring-assign.trailing-comma-object.js: PASS +compat-table/es6/destructuring-decl.array.js: PASS +compat-table/es6/destructuring-decl.astral-string.js: PASS +compat-table/es6/destructuring-decl.catch.js: PASS +compat-table/es6/destructuring-decl.computed-properties.js: PASS +compat-table/es6/destructuring-decl.defaults-tdz.js: PASS +compat-table/es6/destructuring-decl.defaults.js: PASS +compat-table/es6/destructuring-decl.for-in.js: PASS +compat-table/es6/destructuring-decl.for-of.js: PASS +compat-table/es6/destructuring-decl.generator.js: PASS +compat-table/es6/destructuring-decl.iterable-instance.js: PASS +compat-table/es6/destructuring-decl.iterable.js: PASS +compat-table/es6/destructuring-decl.iterator-closing.js: PASS +compat-table/es6/destructuring-decl.multiple-var.js: PASS +compat-table/es6/destructuring-decl.nested.js: PASS +compat-table/es6/destructuring-decl.object-primitives.js: PASS +compat-table/es6/destructuring-decl.object.js: PASS +compat-table/es6/destructuring-decl.rest.identical.js: PASS +compat-table/es6/destructuring-decl.rest.js: PASS +compat-table/es6/destructuring-decl.sparse-array.js: PASS +compat-table/es6/destructuring-decl.string.js: PASS +compat-table/es6/destructuring-decl.throws-null-undefined.js: PASS +compat-table/es6/destructuring-decl.trailing-comma-iterable.js: PASS +compat-table/es6/destructuring-decl.trailing-comma-object.js: PASS +compat-table/es6/destructuring-params.aliased-defaults-arrow.js: PASS +compat-table/es6/destructuring-params.arguments.js: PASS +compat-table/es6/destructuring-params.array.js: PASS +compat-table/es6/destructuring-params.astral-string.js: PASS +compat-table/es6/destructuring-params.computed-properties.js: PASS +compat-table/es6/destructuring-params.defaults-new-function.js: PASS +compat-table/es6/destructuring-params.defaults-separate-scope.js: PASS +compat-table/es6/destructuring-params.defaults.js: PASS +compat-table/es6/destructuring-params.duplicate-identifier.js: PASS +compat-table/es6/destructuring-params.empty-patterns.js: PASS +compat-table/es6/destructuring-params.generator.js: PASS +compat-table/es6/destructuring-params.iterable-instance.js: PASS +compat-table/es6/destructuring-params.iterable.js: PASS +compat-table/es6/destructuring-params.iterator-closing.js: PASS +compat-table/es6/destructuring-params.length.js: PASS +compat-table/es6/destructuring-params.nested.js: PASS +compat-table/es6/destructuring-params.new-function.js: PASS +compat-table/es6/destructuring-params.object-primitives.js: PASS +compat-table/es6/destructuring-params.object.js: PASS +compat-table/es6/destructuring-params.rest.js: PASS +compat-table/es6/destructuring-params.shorthand-defaults-arrow.js: PASS +compat-table/es6/destructuring-params.sparse-array.js: PASS +compat-table/es6/destructuring-params.string.js: PASS +compat-table/es6/destructuring-params.throws-null-undefined.js: PASS +compat-table/es6/destructuring-params.trailing-comma-iterable.js: PASS +compat-table/es6/destructuring-params.trailing-comma-object.js: PASS +compat-table/es6/for-of.array.js: PASS +compat-table/es6/for-of.astral-string.js: PASS +compat-table/es6/for-of.generator.js: PASS +compat-table/es6/for-of.iterable-instance.js: PASS +compat-table/es6/for-of.iterable.js: PASS +compat-table/es6/for-of.iterator-closing-break.js: PASS +compat-table/es6/for-of.iterator-closing-throw.js: PASS +compat-table/es6/for-of.sparse-array.js: PASS +compat-table/es6/for-of.string.js: PASS +compat-table/es6/function.block-level-decl.js: PASS +compat-table/es6/generators.basic.js: PASS +compat-table/es6/generators.constructor.js: PASS +compat-table/es6/generators.expression.js: PASS +compat-table/es6/generators.no-new-this.js: PASS +compat-table/es6/generators.prototype-chain.js: PASS +compat-table/es6/generators.prototype.js: PASS +compat-table/es6/generators.return.js: PASS +compat-table/es6/generators.sending.js: PASS +compat-table/es6/generators.shorthand.class.js: PASS +compat-table/es6/generators.shorthand.computed.class.js: PASS +compat-table/es6/generators.shorthand.computed.js: PASS +compat-table/es6/generators.shorthand.js: PASS +compat-table/es6/generators.shorthand.no-constructor.js: PASS +compat-table/es6/generators.shorthand.string-keyed.js: PASS +compat-table/es6/generators.this.js: PASS +compat-table/es6/generators.throw.js: PASS +compat-table/es6/generators.yield-precedence.js: PASS +compat-table/es6/generators.yield-star.array.js: PASS +compat-table/es6/generators.yield-star.astral-string.js: PASS +compat-table/es6/generators.yield-star.generator.js: PASS +compat-table/es6/generators.yield-star.iterable-instance.js: PASS +compat-table/es6/generators.yield-star.iterable.js: PASS +compat-table/es6/generators.yield-star.iterator-closing-throw.js: PASS +compat-table/es6/generators.yield-star.iterator-closing.js: PASS +compat-table/es6/generators.yield-star.non-iterable-error.js: PASS +compat-table/es6/generators.yield-star.sparse-array.js: PASS +compat-table/es6/generators.yield-star.string.js: PASS +compat-table/es6/let.basic.js: PASS +compat-table/es6/let.block-scoped.js: PASS +compat-table/es6/let.for-in-shadow.js: PASS +compat-table/es6/let.for-iteration.js: PASS +compat-table/es6/let.for-loop.js: PASS +compat-table/es6/let.no-statement.js: PASS +compat-table/es6/let.shadow.js: PASS +compat-table/es6/let.strict.basic.js: PASS +compat-table/es6/let.strict.block-scoped.js: PASS +compat-table/es6/let.strict.for-in-shadow.js: PASS +compat-table/es6/let.strict.for-iteration.js: PASS +compat-table/es6/let.strict.for-loop.js: PASS +compat-table/es6/let.strict.no-statement.js: PASS +compat-table/es6/let.strict.shadow.js: PASS +compat-table/es6/let.strict.tdz.js: PASS +compat-table/es6/let.tdz.js: PASS +compat-table/es6/literals.binary.Number.js: PASS +compat-table/es6/literals.binary.js: PASS +compat-table/es6/literals.object.computed-accessors.js: PASS +compat-table/es6/literals.object.computed-properties.js: PASS +compat-table/es6/literals.object.computed-shorthand-methods.js: PASS +compat-table/es6/literals.object.shorthand-methods.js: PASS +compat-table/es6/literals.object.shorthand-properties.js: PASS +compat-table/es6/literals.object.string-keyed-shorthand-methods.js: PASS +compat-table/es6/literals.octal.Number.js: PASS +compat-table/es6/literals.octal.js: PASS +compat-table/es6/misc.Invalid-Date.js: PASS +compat-table/es6/misc.Object.freeze.primitives.js: PASS +compat-table/es6/misc.Object.getOwnPropertyDescriptor.primitives.js: PASS +compat-table/es6/misc.Object.getOwnPropertyNames.primitives.js: PASS +compat-table/es6/misc.Object.getPrototypeOf.primitives.js: PASS +compat-table/es6/misc.Object.isExtensible.primitives.js: PASS +compat-table/es6/misc.Object.isFrozen.primitives.js: PASS +compat-table/es6/misc.Object.isSealed.primitives.js: PASS +compat-table/es6/misc.Object.keys.primitives.js: PASS +compat-table/es6/misc.Object.preventExtensions.primitives.js: PASS +compat-table/es6/misc.Object.seal.primitives.js: PASS +compat-table/es6/misc.Proxy.defineProperty.SetIntegrityLevel.js: PASS +compat-table/es6/misc.Proxy.defineProperty.Set.js: PASS +compat-table/es6/misc.Proxy.deleteProperty.Array.copyWithin.js: PASS +compat-table/es6/misc.Proxy.deleteProperty.Array.pop.js: PASS +compat-table/es6/misc.Proxy.deleteProperty.Array.reverse.js: PASS +compat-table/es6/misc.Proxy.deleteProperty.Array.shift.js: PASS +compat-table/es6/misc.Proxy.deleteProperty.Array.splice.js: PASS +compat-table/es6/misc.Proxy.deleteProperty.Array.unshift.js: PASS +compat-table/es6/misc.Proxy.getOwnPropertyDescriptor.Function.bind.js: PASS +compat-table/es6/misc.Proxy.getOwnPropertyDescriptor.Object.assign.js: PASS +compat-table/es6/misc.Proxy.getOwnPropertyDescriptor.Object.hasOwnProperty.js: PASS +compat-table/es6/misc.Proxy.getOwnPropertyDescriptor.Set.js: PASS +compat-table/es6/misc.Proxy.get.Array.concat.js: PASS +compat-table/es6/misc.Proxy.get.Array.from.js: PASS +compat-table/es6/misc.Proxy.get.Array.iteration.js: PASS +compat-table/es6/misc.Proxy.get.Array.pop.js: PASS +compat-table/es6/misc.Proxy.get.Array.reverse.js: PASS +compat-table/es6/misc.Proxy.get.Array.shift.js: PASS +compat-table/es6/misc.Proxy.get.Array.splice.js: PASS +compat-table/es6/misc.Proxy.get.Array.toString.js: PASS +compat-table/es6/misc.Proxy.get.ClassDefinitionEvaluation.js: PASS +compat-table/es6/misc.Proxy.get.CreateDynamicFunction.js: PASS +compat-table/es6/misc.Proxy.get.CreateListFromArrayLike.js: PASS +compat-table/es6/misc.Proxy.get.Date.toJSON.js: PASS +compat-table/es6/misc.Proxy.get.Error.toString.js: PASS +compat-table/es6/misc.Proxy.get.Function.bind.js: PASS +compat-table/es6/misc.Proxy.get.HasBinding.js: PASS +compat-table/es6/misc.Proxy.get.IteratorComplete.js: PASS +compat-table/es6/misc.Proxy.get.JSON.stringify.js: PASS +compat-table/es6/misc.Proxy.get.Object.assign.js: PASS +compat-table/es6/misc.Proxy.get.Object.defineProperties.js: PASS +compat-table/es6/misc.Proxy.get.Promise.resolve.js: PASS +compat-table/es6/misc.Proxy.get.RegExp-constructor.js: PASS +compat-table/es6/misc.Proxy.get.RegExp.Symbol.match.js: PASS +compat-table/es6/misc.Proxy.get.RegExp.Symbol.replace.js: PASS +compat-table/es6/misc.Proxy.get.RegExp.Symbol.search.js: PASS +compat-table/es6/misc.Proxy.get.RegExp.Symbol.split.js: PASS +compat-table/es6/misc.Proxy.get.RegExp.flags.js: PASS +compat-table/es6/misc.Proxy.get.RegExp.test.js: PASS +compat-table/es6/misc.Proxy.get.RegExp.toString.js: PASS +compat-table/es6/misc.Proxy.get.String.match.js: FAIL +compat-table/es6/misc.Proxy.get.String.raw.js: PASS +compat-table/es6/misc.Proxy.get.String.replace.js: PASS +compat-table/es6/misc.Proxy.get.String.search.js: FAIL +compat-table/es6/misc.Proxy.get.String.split.js: PASS +compat-table/es6/misc.Proxy.get.ToPrimitive.js: PASS +compat-table/es6/misc.Proxy.get.ToPropertyDescriptor.js: PASS +compat-table/es6/misc.Proxy.get.instanceof.js: PASS +compat-table/es6/misc.Proxy.ownKeys.SerializeJSONObject.js: PASS +compat-table/es6/misc.Proxy.ownKeys.SetIntegrityLevel.js: PASS +compat-table/es6/misc.Proxy.ownKeys.TestIntegrityLevel.js: PASS +compat-table/es6/misc.Proxy.set.Array.copyWithin.js: PASS +compat-table/es6/misc.Proxy.set.Array.fill.js: PASS +compat-table/es6/misc.Proxy.set.Array.from.js: PASS +compat-table/es6/misc.Proxy.set.Array.of.js: PASS +compat-table/es6/misc.Proxy.set.Array.pop.js: PASS +compat-table/es6/misc.Proxy.set.Array.push.js: PASS +compat-table/es6/misc.Proxy.set.Array.reverse.js: PASS +compat-table/es6/misc.Proxy.set.Array.shift.js: PASS +compat-table/es6/misc.Proxy.set.Array.splice.js: PASS +compat-table/es6/misc.Proxy.set.Array.unshift.js: PASS +compat-table/es6/misc.Proxy.set.Object.assign.js: FAIL +compat-table/es6/misc.RegExp-alter-flags.js: PASS +compat-table/es6/misc.RegExp-prototype-toString-generic.js: PASS +compat-table/es6/misc.accessors-no-constructor.js: PASS +compat-table/es6/misc.bound-function-prototype.arrow.js: PASS +compat-table/es6/misc.bound-function-prototype.class.js: PASS +compat-table/es6/misc.bound-function-prototype.function.js: PASS +compat-table/es6/misc.bound-function-prototype.generator.js: PASS +compat-table/es6/misc.bound-function-prototype.subclass.js: PASS +compat-table/es6/misc.do-while-no-semicolon.js: PASS +compat-table/es6/misc.duplicate-properties-strict.js: PASS +compat-table/es6/misc.for-in-no-assignment-strict.js: PASS +compat-table/es6/misc.function-length-configurable.js: PASS +compat-table/es6/misc.identifier-syntax.no-escaped-reserved.js: PASS +compat-table/es6/misc.identifier-syntax.var-1.js: PASS +compat-table/es6/misc.identifier-syntax.var-2.js: PASS +compat-table/es6/misc.property-order.JSON.parse.js: PASS +compat-table/es6/misc.property-order.JSON.stringify.js: PASS +compat-table/es6/misc.property-order.Object.assign.js: PASS +compat-table/es6/misc.property-order.Object.getOwnPropertyNames.js: PASS +compat-table/es6/misc.property-order.Object.keys.js: PASS +compat-table/es6/misc.property-order.Reflect.ownKeys.string.js: PASS +compat-table/es6/misc.property-order.Reflect.ownKeys.symbol.js: PASS +compat-table/es6/misc.prototypes-not-instances.js: PASS +compat-table/es6/new-target.assignment-error.js: PASS +compat-table/es6/new-target.constructor.js: PASS +compat-table/es6/regex.flags.u.case-folding.js: PASS +compat-table/es6/regex.flags.u.codepoint.js: PASS +compat-table/es6/regex.flags.u.js: PASS +compat-table/es6/regex.flags.u.non-bmp.js: PASS +compat-table/es6/regex.flags.y.js: PASS +compat-table/es6/regex.flags.y.lastIndex.js: PASS +compat-table/es6/rest-params.arguments.js: PASS +compat-table/es6/rest-params.basic.js: PASS +compat-table/es6/rest-params.length.js: PASS +compat-table/es6/rest-params.new-function.js: PASS +compat-table/es6/rest-params.no-setter.js: PASS +compat-table/es6/spread.array-call.js: PASS +compat-table/es6/spread.array-literal.js: PASS +compat-table/es6/spread.astral-call.js: PASS +compat-table/es6/spread.astral-literal.js: PASS +compat-table/es6/spread.generator-call.js: PASS +compat-table/es6/spread.generator-literal.js: PASS +compat-table/es6/spread.iterable-call.js: PASS +compat-table/es6/spread.iterable-instance-call.js: PASS +compat-table/es6/spread.iterable-instance-literal.js: PASS +compat-table/es6/spread.iterable-literal.js: PASS +compat-table/es6/spread.non-iterable-error.js: PASS +compat-table/es6/spread.sparse-call.js: PASS +compat-table/es6/spread.sparse-literal.js: PASS +compat-table/es6/spread.string-call.js: PASS +compat-table/es6/spread.string-literal.js: PASS +compat-table/es6/subclassing.Array.concat.js: PASS +compat-table/es6/subclassing.Array.filter.js: PASS +compat-table/es6/subclassing.Array.from.js: PASS +compat-table/es6/subclassing.Array.isArray.js: PASS +compat-table/es6/subclassing.Array.length-access.js: PASS +compat-table/es6/subclassing.Array.length-set.js: PASS +compat-table/es6/subclassing.Array.map.js: PASS +compat-table/es6/subclassing.Array.of.js: PASS +compat-table/es6/subclassing.Array.prototype-chain.js: PASS +compat-table/es6/subclassing.Array.slice.js: PASS +compat-table/es6/subclassing.Array.splice.js: PASS +compat-table/es6/subclassing.Function.call.js: PASS +compat-table/es6/subclassing.Function.new.js: PASS +compat-table/es6/subclassing.Function.prototype-chain.js: PASS +compat-table/es6/subclassing.Function.prototype.apply.js: PASS +compat-table/es6/subclassing.Function.prototype.bind.js: PASS +compat-table/es6/subclassing.Function.prototype.call.js: PASS +compat-table/es6/subclassing.Promise.all.js: PASS +compat-table/es6/subclassing.Promise.js: PASS +compat-table/es6/subclassing.Promise.prototype-chain.js: PASS +compat-table/es6/subclassing.Promise.race.js: PASS +compat-table/es6/subclassing.RegExp.exec.js: PASS +compat-table/es6/subclassing.RegExp.js: PASS +compat-table/es6/subclassing.RegExp.prototype-chain.js: PASS +compat-table/es6/subclassing.RegExp.test.js: PASS +compat-table/es6/subclassing.misc.Boolean.js: PASS +compat-table/es6/subclassing.misc.Error.js: PASS +compat-table/es6/subclassing.misc.Map.js: PASS +compat-table/es6/subclassing.misc.Number.js: PASS +compat-table/es6/subclassing.misc.Set.js: PASS +compat-table/es6/subclassing.misc.String.js: PASS +compat-table/es6/super.correct-constructor.js: PASS +compat-table/es6/super.expression.js: PASS +compat-table/es6/super.method-calls.js: PASS +compat-table/es6/super.new-target-binding.js: PASS +compat-table/es6/super.property-access.js: PASS +compat-table/es6/super.statement.js: PASS +compat-table/es6/super.static-binding.js: PASS +compat-table/es6/super.this-binding.js: PASS +compat-table/es6/tail-calls.direct.js: InternalError: stack overflow +compat-table/es6/tail-calls.mutual.js: InternalError: stack overflow +compat-table/es6/template.basic.js: PASS +compat-table/es6/template.caching.js: PASS +compat-table/es6/template.escape-sequences.js: PASS +compat-table/es6/template.frozen-array.js: PASS +compat-table/es6/template.line-break.js: PASS +compat-table/es6/template.permanent-caching.js: PASS +compat-table/es6/template.tagged.js: PASS +compat-table/es6/template.toString.js: PASS +compat-table/es6/typed-arrays.ArrayBuffer.Symbol.species.js: PASS +compat-table/es6/typed-arrays.DataView.Float32.js: PASS +compat-table/es6/typed-arrays.DataView.Float64.js: PASS +compat-table/es6/typed-arrays.DataView.Int8.js: PASS +compat-table/es6/typed-arrays.DataView.Int16.js: PASS +compat-table/es6/typed-arrays.DataView.Int32.js: PASS +compat-table/es6/typed-arrays.DataView.Uint8.js: PASS +compat-table/es6/typed-arrays.DataView.Uint16.js: PASS +compat-table/es6/typed-arrays.DataView.Uint32.js: PASS +compat-table/es6/typed-arrays.Float32Array.js: PASS +compat-table/es6/typed-arrays.Float64Array.js: PASS +compat-table/es6/typed-arrays.Int8Array.js: PASS +compat-table/es6/typed-arrays.Int16Array.js: PASS +compat-table/es6/typed-arrays.Int32Array.js: PASS +compat-table/es6/typed-arrays.Symbol.species.js: PASS +compat-table/es6/typed-arrays.Uint8Array.js: PASS +compat-table/es6/typed-arrays.Uint8ClampedArray.js: PASS +compat-table/es6/typed-arrays.Uint16Array.js: PASS +compat-table/es6/typed-arrays.Uint32Array.js: PASS +compat-table/es6/typed-arrays.constructor-iterables.js: PASS +compat-table/es6/typed-arrays.constructor-requires-new.js: PASS +compat-table/es6/typed-arrays.correct-prototype-chains.js: PASS +compat-table/es6/typed-arrays.from.js: PASS +compat-table/es6/typed-arrays.of.js: PASS +compat-table/es6/typed-arrays.prototype.Symbol.iterator.js: PASS +compat-table/es6/typed-arrays.prototype.copyWithin.js: PASS +compat-table/es6/typed-arrays.prototype.entries.js: PASS +compat-table/es6/typed-arrays.prototype.every.js: PASS +compat-table/es6/typed-arrays.prototype.fill.js: PASS +compat-table/es6/typed-arrays.prototype.filter.js: PASS +compat-table/es6/typed-arrays.prototype.findIndex.js: PASS +compat-table/es6/typed-arrays.prototype.find.js: PASS +compat-table/es6/typed-arrays.prototype.forEach.js: PASS +compat-table/es6/typed-arrays.prototype.indexOf.js: PASS +compat-table/es6/typed-arrays.prototype.join.js: PASS +compat-table/es6/typed-arrays.prototype.keys.js: PASS +compat-table/es6/typed-arrays.prototype.lastIndexOf.js: PASS +compat-table/es6/typed-arrays.prototype.map.js: PASS +compat-table/es6/typed-arrays.prototype.reduceRight.js: PASS +compat-table/es6/typed-arrays.prototype.reduce.js: PASS +compat-table/es6/typed-arrays.prototype.reverse.js: PASS +compat-table/es6/typed-arrays.prototype.slice.js: PASS +compat-table/es6/typed-arrays.prototype.some.js: PASS +compat-table/es6/typed-arrays.prototype.sort.js: PASS +compat-table/es6/typed-arrays.prototype.subarray.js: PASS +compat-table/es6/typed-arrays.prototype.values.js: PASS +compat-table/es6/unicode-escapes.identifier.js: PASS +compat-table/es6/unicode-escapes.property-access.js: PASS +compat-table/es6/unicode-escapes.property-key.js: PASS +compat-table/es6/unicode-escapes.string.js: PASS +compat-table/es6/well-known.hasInstance.js: PASS +compat-table/es6/well-known.isConcatSpreadable.non-spreadable.js: PASS +compat-table/es6/well-known.isConcatSpreadable.poisoned-getter.js: PASS +compat-table/es6/well-known.iterator.arguments.js: PASS +compat-table/es6/well-known.iterator.js: PASS +compat-table/es6/well-known.match.RegExp-constructor.js: PASS +compat-table/es6/well-known.match.String.endsWith.js: PASS +compat-table/es6/well-known.match.String.includes.js: PASS +compat-table/es6/well-known.match.String.startsWith.js: PASS +compat-table/es6/well-known.match.js: PASS +compat-table/es6/well-known.replace.js: PASS +compat-table/es6/well-known.search.js: PASS +compat-table/es6/well-known.species.Array.concat.js: PASS +compat-table/es6/well-known.species.Array.filter.js: PASS +compat-table/es6/well-known.species.Array.map.js: PASS +compat-table/es6/well-known.species.Array.slice.js: PASS +compat-table/es6/well-known.species.Array.splice.js: PASS +compat-table/es6/well-known.species.Promise.then.js: PASS +compat-table/es6/well-known.species.RegExp.split.js: PASS +compat-table/es6/well-known.species.js: PASS +compat-table/es6/well-known.split.js: PASS +compat-table/es6/well-known.toPrimitive.js: PASS +compat-table/es6/well-known.toStringTag.existing-builtins.js: PASS +compat-table/es6/well-known.toStringTag.js: PASS +compat-table/es6/well-known.toStringTag.misc-builtins.js: PASS +compat-table/es6/well-known.toStringTag.new-builtins.js: PASS +compat-table/es6/well-known.unscopables.js: PASS +compat-table/es2016/Array.prototype.includes.generic.js: PASS +compat-table/es2016/Array.prototype.includes.js: PASS +compat-table/es2016/Array.prototype.includes.sparse.js: PASS +compat-table/es2016/Array.prototype.includes.typed-array.js: PASS +compat-table/es2016/exponentiation.assignment.js: PASS +compat-table/es2016/exponentiation.basic.js: PASS +compat-table/es2016/exponentiation.unary-negation-error.js: PASS +compat-table/es2016/misc.Proxy-Array-includes.js: PASS +compat-table/es2016/misc.Proxy-enumerate-removed.js: PASS +compat-table/es2016/misc.generator-no-new.js: PASS +compat-table/es2016/misc.generator-throw-inner.js: PASS +compat-table/es2016/misc.nested-rest-destructuring-decl.js: PASS +compat-table/es2016/misc.nested-rest-destructuring-params.js: PASS +compat-table/es2016/misc.strict-fn-non-simple-params-error.js: PASS +compat-table/es2017/Atomics.add.js: PASS +compat-table/es2017/Atomics.and.js: PASS +compat-table/es2017/Atomics.compareExchange.js: PASS +compat-table/es2017/Atomics.exchange.js: PASS +compat-table/es2017/Atomics.isLockFree.js: PASS +compat-table/es2017/Atomics.load.js: PASS +compat-table/es2017/Atomics.notify.js: PASS +compat-table/es2017/Atomics.or.js: PASS +compat-table/es2017/Atomics.store.js: PASS +compat-table/es2017/Atomics.sub.js: PASS +compat-table/es2017/Atomics.wait.js: PASS +compat-table/es2017/Atomics.xor.js: PASS +compat-table/es2017/Object.entries.js: PASS +compat-table/es2017/Object.getOwnPropertyDescriptors.js: PASS +compat-table/es2017/Object.getOwnPropertyDescriptors.no-undefined.js: PASS +compat-table/es2017/Object.values.js: PASS +compat-table/es2017/SharedArrayBuffer.Symbol.species.js: PASS +compat-table/es2017/SharedArrayBuffer.js: PASS +compat-table/es2017/SharedArrayBuffer.prototype.Symbol.toStringTag.js: PASS +compat-table/es2017/SharedArrayBuffer.prototype.byteLength.js: PASS +compat-table/es2017/SharedArrayBuffer.prototype.slice.js: PASS +compat-table/es2017/String.prototype.padEnd.js: PASS +compat-table/es2017/String.prototype.padStart.js: PASS +compat-table/es2017/annex-b.Object.prototype.__defineGetter__.ToObject.js: PASS +compat-table/es2017/annex-b.Object.prototype.__defineGetter__.js: PASS +compat-table/es2017/annex-b.Object.prototype.__defineGetter__.symbols.js: PASS +compat-table/es2017/annex-b.Object.prototype.__defineSetter__.ToObject.js: PASS +compat-table/es2017/annex-b.Object.prototype.__defineSetter__.js: PASS +compat-table/es2017/annex-b.Object.prototype.__defineSetter__.symbols.js: PASS +compat-table/es2017/annex-b.Object.prototype.__lookupGetter__.ToObject.js: PASS +compat-table/es2017/annex-b.Object.prototype.__lookupGetter__.js: PASS +compat-table/es2017/annex-b.Object.prototype.__lookupGetter__.prototype-chain.js: PASS +compat-table/es2017/annex-b.Object.prototype.__lookupGetter__.shadow-accessors.js: PASS +compat-table/es2017/annex-b.Object.prototype.__lookupGetter__.symbols.js: PASS +compat-table/es2017/annex-b.Object.prototype.__lookupSetter__.ToObject.js: PASS +compat-table/es2017/annex-b.Object.prototype.__lookupSetter__.js: PASS +compat-table/es2017/annex-b.Object.prototype.__lookupSetter__.prototype-chain.js: PASS +compat-table/es2017/annex-b.Object.prototype.__lookupSetter__.shadow-accessors.js: PASS +compat-table/es2017/annex-b.Object.prototype.__lookupSetter__.symbols.js: PASS +compat-table/es2017/annex-b.Proxy.__defineGetter__.js: PASS +compat-table/es2017/annex-b.Proxy.__defineSetter__.js: PASS +compat-table/es2017/annex-b.Proxy.__lookupGetter__.js: PASS +compat-table/es2017/annex-b.Proxy.__lookupSetter__.js: PASS +compat-table/es2017/annex-b.for-in-assignment-non-strict.js: PASS +compat-table/es2017/async.Symbol.toStringTag.js: PASS +compat-table/es2017/async.arrow-in-class.js: PASS +compat-table/es2017/async.arrow.js: PASS +compat-table/es2017/async.await-non-promise.js: PASS +compat-table/es2017/async.await-rejection.js: PASS +compat-table/es2017/async.await.js: PASS +compat-table/es2017/async.constructor.js: PASS +compat-table/es2017/async.methods-class.js: PASS +compat-table/es2017/async.methods-object.js: PASS +compat-table/es2017/async.must-await-value.js: PASS +compat-table/es2017/async.no-await-in-params.js: PASS +compat-table/es2017/async.no-line-break.js: PASS +compat-table/es2017/async.no-prototype.js: PASS +compat-table/es2017/async.prototype-chain.js: PASS +compat-table/es2017/async.return.js: PASS +compat-table/es2017/async.throw.js: PASS +compat-table/es2017/misc.arguments-caller-removed.js: PASS +compat-table/es2017/regex.flags.u.case-folding.js: PASS +compat-table/es2017/trailing-comma.arguments.js: PASS +compat-table/es2017/trailing-comma.params.js: PASS +compat-table/es2018/Promise.prototype.finally.change-rejection.js: PASS +compat-table/es2018/Promise.prototype.finally.js: PASS +compat-table/es2018/Promise.prototype.finally.no-change-resolution.js: PASS +compat-table/es2018/async-iterators.for-await-of.js: PASS +compat-table/es2018/async-iterators.generators.js: PASS +compat-table/es2018/misc.Proxy-ownKeys-duplicate-keys.js: PASS +compat-table/es2018/misc.template-literal-revision.js: PASS +compat-table/es2018/object-rest.js: PASS +compat-table/es2018/object-spread.js: PASS +compat-table/es2018/regex.flags.s.js: PASS +compat-table/es2018/regex.lookbehind.js: PASS +compat-table/es2018/regex.named-capture-groups.js: PASS +compat-table/es2018/regex.unicode-property-escapes.js: PASS +compat-table/es2018/regex.unicode-property-escapes.unicode-11.js: PASS +compat-table/es2018/regex.unicode-property-escapes.unicode-12.1.js: PASS +compat-table/es2018/regex.unicode-property-escapes.unicode-12.js: PASS +compat-table/es2018/regex.unicode-property-escapes.unicode-13.js: PASS +compat-table/es2018/regex.unicode-property-escapes.unicode-14.js: PASS +compat-table/es2018/regex.unicode-property-escapes.unicode-15.1.js: PASS +compat-table/es2018/regex.unicode-property-escapes.unicode-15.js: PASS +compat-table/es2018/regex.unicode-property-escapes.unicode-16.0.js: PASS +compat-table/es2018/regex.unicode-property-escapes.unicode-17.0.js: PASS +compat-table/es2019/Array.prototype.flatMap.js: PASS +compat-table/es2019/Array.prototype.flat-flatMap.unscopables.js: PASS +compat-table/es2019/Array.prototype.flat.js: PASS +compat-table/es2019/Object.fromEntries.js: PASS +compat-table/es2019/String.prototype.trimEnd.js: PASS +compat-table/es2019/String.prototype.trimStart.js: PASS +compat-table/es2019/Symbol.prototype.description.empty.js: PASS +compat-table/es2019/Symbol.prototype.description.js: PASS +compat-table/es2019/Symbol.prototype.description.undefined.js: PASS +compat-table/es2019/annex-b.String.prototype.trimLeft.js: PASS +compat-table/es2019/annex-b.String.prototype.trimRight.js: PASS +compat-table/es2019/misc.Function-toString.Function-constructor.js: PASS +compat-table/es2019/misc.Function-toString.arrows.js: PASS +compat-table/es2019/misc.Function-toString.class-explicit-constructor.js: PASS +compat-table/es2019/misc.Function-toString.class-implicit-constructor.js: PASS +compat-table/es2019/misc.Function-toString.computed-names.js: PASS +compat-table/es2019/misc.Function-toString.native-code.js: PASS +compat-table/es2019/misc.Function-toString.unicode-escapes.js: PASS +compat-table/es2019/misc.JSON-stringify-well-formed.js: PASS +compat-table/es2019/misc.JSON-superset.line-separator.js: PASS +compat-table/es2019/misc.JSON-superset.paragraph-separator.js: PASS +compat-table/es2019/misc.optional-catch-binding.await.js: PASS +compat-table/es2019/misc.optional-catch-binding.js: PASS +compat-table/es2019/misc.optional-catch-binding.yield.js: PASS +compat-table/es2020/BigInt64Array.js: PASS +compat-table/es2020/BigInt.asIntN.js: PASS +compat-table/es2020/BigInt.asUintN.js: PASS +compat-table/es2020/BigInt.constructor.js: PASS +compat-table/es2020/BigInt.js: PASS +compat-table/es2020/BigUint64Array.js: PASS +compat-table/es2020/DataView.prototype.getBigInt64.js: PASS +compat-table/es2020/DataView.prototype.getBigUint64.js: PASS +compat-table/es2020/Promise.allSettled.js: PASS +compat-table/es2020/String.prototype.matchAll.js: PASS +compat-table/es2020/String.prototype.matchAll.throws-non-global.js: PASS +compat-table/es2020/globalThis.descriptor.js: PASS +compat-table/es2020/globalThis.js: PASS +compat-table/es2020/nullish-coalescing.js: PASS +compat-table/es2020/optional-chaining.bracket.js: PASS +compat-table/es2020/optional-chaining.function-call.js: PASS +compat-table/es2020/optional-chaining.method-call.js: PASS +compat-table/es2020/optional-chaining.property.js: PASS +compat-table/es2020/optional-chaining.spread-params.js: PASS +compat-table/es2021/FinalizationRegistry.js: PASS +compat-table/es2021/Promise.any.AggregateError.js: PASS +compat-table/es2021/Promise.any.fulfillment.js: PASS +compat-table/es2021/String.prototype.replaceAll.js: PASS +compat-table/es2021/WeakRef.js: PASS +compat-table/es2021/logical-assignment.and.js: PASS +compat-table/es2021/logical-assignment.and.setter-not-invoked.js: PASS +compat-table/es2021/logical-assignment.and.short-circuit.js: PASS +compat-table/es2021/logical-assignment.nullish.js: PASS +compat-table/es2021/logical-assignment.nullish.setter-not-invoked.js: PASS +compat-table/es2021/logical-assignment.nullish.short-circuit.js: PASS +compat-table/es2021/logical-assignment.or.js: PASS +compat-table/es2021/logical-assignment.or.setter-not-invoked.js: PASS +compat-table/es2021/logical-assignment.or.short-circuit.js: PASS +compat-table/es2021/numeric-separators.js: PASS +compat-table/es2022/Error.cause.AggregateError-prototype-lacks.js: PASS +compat-table/es2022/Error.cause.AggregateError.js: PASS +compat-table/es2022/Error.cause.Error-prototype-lacks.js: PASS +compat-table/es2022/Error.cause.Error.js: PASS +compat-table/es2022/Error.cause.EvalError-prototype-lacks.js: PASS +compat-table/es2022/Error.cause.EvalError.js: PASS +compat-table/es2022/Error.cause.RangeError-prototype-lacks.js: PASS +compat-table/es2022/Error.cause.RangeError.js: PASS +compat-table/es2022/Error.cause.ReferenceError-prototype-lacks.js: PASS +compat-table/es2022/Error.cause.ReferenceError.js: PASS +compat-table/es2022/Error.cause.SyntaxError-prototype-lacks.js: PASS +compat-table/es2022/Error.cause.SyntaxError.js: PASS +compat-table/es2022/Error.cause.TypeError-prototype-lacks.js: PASS +compat-table/es2022/Error.cause.TypeError.js: PASS +compat-table/es2022/Error.cause.URIError-prototype-lacks.js: PASS +compat-table/es2022/Error.cause.URIError.js: PASS +compat-table/es2022/Object.hasOwn.ToObject-first.js: PASS +compat-table/es2022/Object.hasOwn.js: PASS +compat-table/es2022/at-method.Array.js: PASS +compat-table/es2022/at-method.String.js: PASS +compat-table/es2022/at-method.TypedArray.js: PASS +compat-table/es2022/class-fields.computed-instance.js: PASS +compat-table/es2022/class-fields.computed-static.js: PASS +compat-table/es2022/class-fields.instance.parent-scope.js: PASS +compat-table/es2022/class-fields.private-instance.initializers.js: PASS +compat-table/es2022/class-fields.private-instance.js: PASS +compat-table/es2022/class-fields.private-instance.optional-access.js: PASS +compat-table/es2022/class-fields.private-instance.optional-deep-access.js: PASS +compat-table/es2022/class-fields.private-static.js: PASS +compat-table/es2022/class-fields.public-instance.js: PASS +compat-table/es2022/class-fields.public-static.js: PASS +compat-table/es2022/class-fields.static.define.js: PASS +compat-table/es2022/class-methods.private-accessor.js: PASS +compat-table/es2022/class-methods.private-instance.js: PASS +compat-table/es2022/class-methods.private-static-accessor.js: PASS +compat-table/es2022/class-methods.private-static.js: PASS +compat-table/es2022/class-static-init-blocks.js: PASS +compat-table/es2022/ergonomic-brand-checks.js: PASS +compat-table/es2022/regex.flags.d.constructor.js: PASS +compat-table/es2022/regex.flags.d.shows-in-flags.js: PASS +compat-table/es2023/Array.prototype.findLastIndex.js: PASS +compat-table/es2023/Array.prototype.findLast.js: PASS +compat-table/es2023/Array.prototype.toReversed.js: PASS +compat-table/es2023/Array.prototype.toSorted.js: PASS +compat-table/es2023/Array.prototype.toSpliced.js: PASS +compat-table/es2023/Array.prototype.with.js: PASS +compat-table/es2023/TypedArray.prototype.toReversed.js: PASS +compat-table/es2023/TypedArray.prototype.toSorted.js: PASS +compat-table/es2023/TypedArray.prototype.with.js: PASS +compat-table/es2023/hashbang.js: PASS +compat-table/es2024/ArrayBuffer.prototype.detached.js: PASS +compat-table/es2024/ArrayBuffer.prototype.transferToFixedLength.js: PASS +compat-table/es2024/ArrayBuffer.prototype.transfer.js: PASS +compat-table/es2024/Map.groupBy.js: PASS +compat-table/es2024/Object.groupBy.js: PASS +compat-table/es2024/Promise.withResolvers.js: PASS +compat-table/es2024/regex.flags.v.constructor.js: PASS +compat-table/es2024/regex.flags.v.properties-of-strings.js: PASS +compat-table/es2024/regex.flags.v.set-notations.js: PASS +compat-table/es2024/regex.flags.v.shows-in-flags.js: PASS +compat-table/es2024/regex.flags.v.unicode-15.1.js: PASS +compat-table/es2024/regex.flags.v.unicode-16.0.js: PASS +compat-table/es2024/regex.flags.v.unicode-17.0.js: PASS +compat-table/es2025/Iterator.extends.js: PASS +compat-table/es2025/Iterator.from.iterable.js: PASS +compat-table/es2025/Iterator.from.iterator.js: PASS +compat-table/es2025/Iterator.instanceof.js: PASS +compat-table/es2025/Iterator.prototype.Symbol.toStringTag.js: PASS +compat-table/es2025/Iterator.prototype.drop.js: PASS +compat-table/es2025/Iterator.prototype.every.js: PASS +compat-table/es2025/Iterator.prototype.filter.js: PASS +compat-table/es2025/Iterator.prototype.find.js: PASS +compat-table/es2025/Iterator.prototype.flatMap.js: PASS +compat-table/es2025/Iterator.prototype.forEach.js: PASS +compat-table/es2025/Iterator.prototype.map.js: PASS +compat-table/es2025/Iterator.prototype.reduce.js: PASS +compat-table/es2025/Iterator.prototype.some.js: PASS +compat-table/es2025/Iterator.prototype.take.js: PASS +compat-table/es2025/Iterator.prototype.toArray.js: PASS +compat-table/es2025/Promise.try.js: PASS +compat-table/es2025/RegExp.escape.js: PASS +compat-table/es2025/Set.prototype.difference.js: PASS +compat-table/es2025/Set.prototype.intersection.js: PASS +compat-table/es2025/Set.prototype.isDisjointFrom.js: PASS +compat-table/es2025/Set.prototype.isSubsetOf.js: PASS +compat-table/es2025/Set.prototype.isSupersetOf.js: PASS +compat-table/es2025/Set.prototype.symmetricDifference.js: PASS +compat-table/es2025/Set.prototype.union.js: PASS +compat-table/es2025/regex.duplicate-named-groups.js: PASS +compat-table/es2025/regex.pattern-modifiers.i.js: PASS +compat-table/es2025/regex.pattern-modifiers.m.js: PASS +compat-table/es2025/regex.pattern-modifiers.s.js: PASS +compat-table/intl/Array.prototype.toLocaleString.js: PASS +compat-table/intl/Date.prototype.toLocaleDateString.js: PASS +compat-table/intl/Date.prototype.toLocaleString.js: PASS +compat-table/intl/Date.prototype.toLocaleTimeString.js: PASS +compat-table/intl/Intl.Collator.js: ReferenceError: not defined +compat-table/intl/Intl.Collator.new-instances.js: ReferenceError: not defined +compat-table/intl/Intl.Collator.prototype.compare.js: ReferenceError: not defined +compat-table/intl/Intl.Collator.prototype.resolvedOptions.js: ReferenceError: not defined +compat-table/intl/Intl.Collator.rejects-invalid-tags.js: ReferenceError: not defined +compat-table/intl/Intl.Collator.valid-tags.js: FAIL +compat-table/intl/Intl.Collator.without-new.js: ReferenceError: not defined +compat-table/intl/Intl.DateTimeFormat.iana-timezones.js: FAIL +compat-table/intl/Intl.DateTimeFormat.js: ReferenceError: not defined +compat-table/intl/Intl.DateTimeFormat.new-instances.js: ReferenceError: not defined +compat-table/intl/Intl.DateTimeFormat.rejects-invalid-tags.js: ReferenceError: not defined +compat-table/intl/Intl.DateTimeFormat.resolvedOptions.timeZone-default.js: ReferenceError: not defined +compat-table/intl/Intl.DateTimeFormat.valid-tags.js: FAIL +compat-table/intl/Intl.DateTimeFormat.without-new.js: ReferenceError: not defined +compat-table/intl/Intl.NumberFormat.js: ReferenceError: not defined +compat-table/intl/Intl.NumberFormat.new-instances.js: ReferenceError: not defined +compat-table/intl/Intl.NumberFormat.rejects-invalid-tags.js: ReferenceError: not defined +compat-table/intl/Intl.NumberFormat.valid-tags.js: FAIL +compat-table/intl/Intl.NumberFormat.without-new.js: ReferenceError: not defined +compat-table/intl/Intl.js: FAIL +compat-table/intl/Intl.prototype.js: ReferenceError: not defined +compat-table/intl/Number.prototype.toLocaleString.js: PASS +compat-table/intl/Object.prototype.toLocaleString.js: PASS +compat-table/intl/String.prototype.localeCompare.js: PASS +compat-table/next/Array.isTemplateObject.js: TypeError: not a function +compat-table/next/AsyncDisposableStack.js: PASS +compat-table/next/AsyncIterator.extends.js: ReferenceError: not defined +compat-table/next/AsyncIterator.from.async-iterable.js: ReferenceError: not defined +compat-table/next/AsyncIterator.from.iterable.js: ReferenceError: not defined +compat-table/next/AsyncIterator.from.iterator.js: ReferenceError: not defined +compat-table/next/AsyncIterator.instanceof.js: ReferenceError: not defined +compat-table/next/AsyncIterator.prototype.Symbol.toStringTag.js: ReferenceError: not defined +compat-table/next/AsyncIterator.prototype.drop.js: TypeError: not a function +compat-table/next/AsyncIterator.prototype.every.js: TypeError: not a function +compat-table/next/AsyncIterator.prototype.filter.js: TypeError: not a function +compat-table/next/AsyncIterator.prototype.find.js: TypeError: not a function +compat-table/next/AsyncIterator.prototype.flatMap.js: TypeError: not a function +compat-table/next/AsyncIterator.prototype.forEach.js: TypeError: not a function +compat-table/next/AsyncIterator.prototype.map.js: TypeError: not a function +compat-table/next/AsyncIterator.prototype.reduce.js: TypeError: not a function +compat-table/next/AsyncIterator.prototype.some.js: TypeError: not a function +compat-table/next/AsyncIterator.prototype.take.js: TypeError: not a function +compat-table/next/AsyncIterator.prototype.toArray.js: TypeError: not a function +compat-table/next/DisposableStack.js: PASS +compat-table/next/Map.prototype.upsert.js: TypeError: not a function +compat-table/next/RegExp.1-9.js: PASS +compat-table/next/RegExp.lastMatch.js: PASS +compat-table/next/ShadowRealm.js: FAIL +compat-table/next/SuppressedError.js: PASS +compat-table/next/Symbol.dispose.bound.js: PASS +compat-table/next/Uint8Array.fromBase64.js: PASS +compat-table/next/Uint8Array.fromHex.js: PASS +compat-table/next/Uint8Array.setFromBase64.js: PASS +compat-table/next/Uint8Array.setFromHex.js: PASS +compat-table/next/Uint8Array.toBase64.js: PASS +compat-table/next/Uint8Array.toHex.js: PASS +compat-table/next/WeakMap.prototype.upsert.js: TypeError: not a function +compat-table/next/await-using.for-of.js: PASS +compat-table/next/await-using.js: PASS +compat-table/next/class-decorators.js: SyntaxError: InvalidIdentifier +compat-table/next/function.sent.js: SyntaxError: UnexpectedToken +compat-table/next/throw-expr.arrow.js: SyntaxError: UnexpectedToken +compat-table/next/throw-expr.conditional.js: SyntaxError: UnexpectedToken +compat-table/next/throw-expr.logical.js: SyntaxError: UnexpectedToken +compat-table/next/throw-expr.param-init.js: SyntaxError: UnexpectedToken +compat-table/next/using.for-of.js: PASS +compat-table/next/using.js: PASS diff --git a/harness/config.yml b/harness/config.yml index 8ba29bd1..65b74ff2 100644 --- a/harness/config.yml +++ b/harness/config.yml @@ -1460,6 +1460,11 @@ zhuzilin: - '^(?:Uncaught )?(?P[A-Za-z0-9]*Error): (?P.+?)$' timeout_sec: 10 +zjs: + console_log: console.log + flags: + - { if: 'flags:module', then: '-m' } + zuqe: console_log: ['console.log', 'print'] flags: