Skip to content

Commit 243ae2e

Browse files
committed
[GR-72559] [GR-72561] [GR-72562] [GR-72563] Test262 update and recent normative changes.
PullRequest: js/3665
2 parents c7c11ab + 5200752 commit 243ae2e

File tree

9 files changed

+414
-137
lines changed

9 files changed

+414
-137
lines changed

graal-js/mx.graal-js/mx_graal_js.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
#
22
# ----------------------------------------------------------------------------------------------------
33
#
4-
# Copyright (c) 2007, 2025, Oracle and/or its affiliates. All rights reserved.
4+
# Copyright (c) 2007, 2026, Oracle and/or its affiliates. All rights reserved.
55
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
66
#
77
# This code is free software; you can redistribute it and/or modify it
@@ -53,7 +53,7 @@
5353
TEST262_REPO = "https://" + "github.com/tc39/test262.git"
5454

5555
# Git revision of Test262 to checkout
56-
TEST262_REV = "a6f910b8ab9b46e9fcb4432bcbdd34a85c4be64f"
56+
TEST262_REV = "f85c9511a380b9abb2877c42cc47e8fce06d56c5"
5757

5858
# Git repository of V8
5959
TESTV8_REPO = "https://" + "github.com/v8/v8.git"

graal-js/src/com.oracle.js.parser/src/com/oracle/js/parser/IdentUtils.java

Lines changed: 97 additions & 96 deletions
Large diffs are not rendered by default.

graal-js/src/com.oracle.js.parser/src/com/oracle/js/parser/ParserContextModuleNode.java

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* Copyright (c) 2015, 2024, Oracle and/or its affiliates. All rights reserved.
2+
* Copyright (c) 2015, 2026, Oracle and/or its affiliates. All rights reserved.
33
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
44
*
55
* The Universal Permissive License (UPL), Version 1.0
@@ -160,7 +160,11 @@ private void resolveExports() {
160160
addLocalExportEntry(exportToken, ee);
161161
} else if (ie.getImportName().equals(Module.STAR_NAME)) {
162162
// This is a re-export of an imported module namespace object.
163-
addLocalExportEntry(exportToken, ee);
163+
if (ie.getModuleRequest().phase() == Module.ImportPhase.Defer) {
164+
addLocalExportEntry(exportToken, ee);
165+
} else {
166+
addIndirectExportEntry(exportToken, ExportEntry.exportIndirect(ee.getExportName(), ie.getModuleRequest(), ie.getImportName()));
167+
}
164168
} else {
165169
// This is a re-export of a single name.
166170
addIndirectExportEntry(exportToken, ExportEntry.exportIndirect(ee.getExportName(), ie.getModuleRequest(), ie.getImportName()));

graal-js/src/com.oracle.truffle.js.test.external/src/com/oracle/truffle/js/test/external/test262/Test262Runnable.java

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* Copyright (c) 2018, 2025, Oracle and/or its affiliates. All rights reserved.
2+
* Copyright (c) 2018, 2026, Oracle and/or its affiliates. All rights reserved.
33
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
44
*
55
* The Universal Permissive License (UPL), Version 1.0
@@ -277,8 +277,10 @@ public class Test262Runnable extends TestRunnable {
277277
"well-formed-json-stringify",
278278
});
279279
private static final Set<String> UNSUPPORTED_FEATURES = featureSet(new String[]{
280+
"Intl.Era-monthcode",
280281
"IsHTMLDDA",
281282
"explicit-resource-management",
283+
"joint-iteration",
282284
"tail-call-optimization",
283285
});
284286
private static final Set<String> STAGING_FEATURES = featureSet(new String[]{

graal-js/src/com.oracle.truffle.js/src/com/oracle/truffle/js/builtins/intl/LocalePrototypeBuiltins.java

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* Copyright (c) 2020, 2025, Oracle and/or its affiliates. All rights reserved.
2+
* Copyright (c) 2020, 2026, Oracle and/or its affiliates. All rights reserved.
33
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
44
*
55
* The Universal Permissive License (UPL), Version 1.0
@@ -673,13 +673,11 @@ private static TruffleString direction(JSLocaleObject localeObject) {
673673
public abstract static class JSLocaleGetWeekInfoNode extends JSBuiltinNode {
674674
@Child CreateDataPropertyNode createFirstDayNode;
675675
@Child CreateDataPropertyNode createWeekendNode;
676-
@Child CreateDataPropertyNode createMinimalDaysNode;
677676

678677
public JSLocaleGetWeekInfoNode(JSContext context, JSBuiltin builtin) {
679678
super(context, builtin);
680679
this.createFirstDayNode = CreateDataPropertyNode.create(context, IntlUtil.KEY_FIRST_DAY);
681680
this.createWeekendNode = CreateDataPropertyNode.create(context, IntlUtil.KEY_WEEKEND);
682-
this.createMinimalDaysNode = CreateDataPropertyNode.create(context, IntlUtil.KEY_MINIMAL_DAYS);
683681
}
684682

685683
@Specialization
@@ -694,7 +692,6 @@ public Object doLocale(JSLocaleObject localeObject,
694692
} else {
695693
firstDay = fw;
696694
}
697-
int minimalDays = weekData.minimalDaysInFirstWeek;
698695

699696
SimpleArrayList<Integer> weekendList = new SimpleArrayList<>(7);
700697
int weekendCease = weekData.weekendCease;
@@ -717,7 +714,6 @@ public Object doLocale(JSLocaleObject localeObject,
717714
JSObject weekInfo = JSOrdinary.create(context, realm);
718715
createFirstDayNode.executeVoid(weekInfo, firstDay);
719716
createWeekendNode.executeVoid(weekInfo, weekend);
720-
createMinimalDaysNode.executeVoid(weekInfo, minimalDays);
721717
return weekInfo;
722718
}
723719

graal-js/src/com.oracle.truffle.js/src/com/oracle/truffle/js/nodes/ThrowTypeErrorRootNode.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* Copyright (c) 2022, 2022, Oracle and/or its affiliates. All rights reserved.
2+
* Copyright (c) 2022, 2026, Oracle and/or its affiliates. All rights reserved.
33
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
44
*
55
* The Universal Permissive License (UPL), Version 1.0
@@ -53,11 +53,11 @@
5353
import com.oracle.truffle.js.runtime.JSException;
5454
import com.oracle.truffle.js.runtime.JSRealm;
5555
import com.oracle.truffle.js.runtime.JSRuntime;
56-
import com.oracle.truffle.js.runtime.JavaScriptRootNode;
56+
import com.oracle.truffle.js.runtime.JavaScriptRealmBoundaryRootNode;
5757
import com.oracle.truffle.js.runtime.Strings;
5858
import com.oracle.truffle.js.runtime.builtins.JSErrorObject;
5959

60-
public final class ThrowTypeErrorRootNode extends JavaScriptRootNode {
60+
public final class ThrowTypeErrorRootNode extends JavaScriptRealmBoundaryRootNode {
6161
private final boolean restrictedProperty;
6262

6363
public ThrowTypeErrorRootNode(JavaScriptLanguage language, boolean restrictedProperty) {
@@ -66,7 +66,7 @@ public ThrowTypeErrorRootNode(JavaScriptLanguage language, boolean restrictedPro
6666
}
6767

6868
@Override
69-
public Object execute(VirtualFrame frame) {
69+
public Object executeInRealm(VirtualFrame frame) {
7070
if (restrictedProperty) {
7171
throw Errors.createTypeError("'caller', 'callee', and 'arguments' properties may not be accessed on strict mode functions or the arguments objects for calls to them");
7272
}

graal-js/src/com.oracle.truffle.js/src/com/oracle/truffle/js/runtime/util/IntlUtil.java

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* Copyright (c) 2018, 2025, Oracle and/or its affiliates. All rights reserved.
2+
* Copyright (c) 2018, 2026, Oracle and/or its affiliates. All rights reserved.
33
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
44
*
55
* The Universal Permissive License (UPL), Version 1.0
@@ -194,7 +194,6 @@ private IntlUtil() {
194194
public static final String MILLISECONDS = "milliseconds";
195195
public static final String MILLISECONDS_DISPLAY = "millisecondsDisplay";
196196
public static final String MIN2 = "min2";
197-
public static final String MINIMAL_DAYS = "minimalDays";
198197
public static final String MINIMUM_FRACTION_DIGITS = "minimumFractionDigits";
199198
public static final String MINIMUM_INTEGER_DIGITS = "minimumIntegerDigits";
200199
public static final String MINIMUM_SIGNIFICANT_DIGITS = "minimumSignificantDigits";
@@ -319,7 +318,6 @@ private IntlUtil() {
319318
public static final TruffleString KEY_MICROSECONDS_DISPLAY = Strings.constant(MICROSECONDS_DISPLAY);
320319
public static final TruffleString KEY_MILLISECONDS = Strings.constant(MILLISECONDS);
321320
public static final TruffleString KEY_MILLISECONDS_DISPLAY = Strings.constant(MILLISECONDS_DISPLAY);
322-
public static final TruffleString KEY_MINIMAL_DAYS = Strings.constant(MINIMAL_DAYS);
323321
public static final TruffleString KEY_MINIMUM_FRACTION_DIGITS = Strings.constant(MINIMUM_FRACTION_DIGITS);
324322
public static final TruffleString KEY_MINIMUM_INTEGER_DIGITS = Strings.constant(MINIMUM_INTEGER_DIGITS);
325323
public static final TruffleString KEY_MINIMUM_SIGNIFICANT_DIGITS = Strings.constant(MINIMUM_SIGNIFICANT_DIGITS);

0 commit comments

Comments
 (0)