Skip to content

Commit d1d2327

Browse files
askeksaCommit Queue
authored and
Commit Queue
committed
[dart2wasm] Rename the dart:wasm library to dart:_wasm.
This is an internal library not meant to be used in application code. CoreLibraryReviewExempt: Changes only Wasm specific libraries. Change-Id: I2f5b463382d35a442e782067ef7d9063183fe5e3 Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/292021 Reviewed-by: Ömer Ağacan <[email protected]> Reviewed-by: Joshua Litt <[email protected]> Commit-Queue: Aske Simon Christensen <[email protected]>
1 parent 2f72133 commit d1d2327

31 files changed

+80
-76
lines changed

pkg/analyzer/test/src/dart/sdk/sdk_utils_test.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -78,7 +78,7 @@ List<String> sdkPaths = [
7878
"sky_engine/lib/math/math.dart",
7979
"sky_engine/lib/typed_data/typed_data.dart",
8080
"sky_engine/lib/ui/ui.dart",
81-
"sky_engine/lib/wasm/wasm_types.dart",
81+
"sky_engine/lib/_wasm/wasm_types.dart",
8282
"sky_engine/lib/_http/http.dart",
8383
"sky_engine/lib/_interceptors/interceptors.dart",
8484
"sky_engine/lib/internal/internal.dart",

pkg/dart2wasm/README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -80,5 +80,5 @@ inst.exports.baz(2);
8080
In the signatures of imported and exported functions, use the following types:
8181

8282
- For numbers, use `double`.
83-
- For JS objects, use the `WasmExternRef?` type from the `dart:wasm` package, which translates to the Wasm `externref` type. These can be passed around and stored as opaque values on the Dart side.
84-
- For Dart objects, use the corresponding Dart type. This will be emitted as `externref` and automatically converted to and from the Dart type at the boundary.
83+
- For JS objects, use a JS interop type, e.g. `JSAny`, which translates to the Wasm `externref` type. These can be passed around and stored as opaque values on the Dart side.
84+
- For Dart objects, use the corresponding Dart type. This will be emitted as `anyref` and automatically converted to and from the Dart type at the boundary.

pkg/dart2wasm/lib/dispatch_table.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -324,7 +324,7 @@ class DispatchTable {
324324
final ClassInfo? superInfo = info.superInfo;
325325

326326
// Add the class to its inherited members' selectors. Skip `_WasmBase`:
327-
// it's defined as a Dart class (in `dart.wasm` library) but it's special
327+
// it's defined as a Dart class (in `dart._wasm` library) but it's special
328328
// and does not inherit from `Object`.
329329
if (superInfo != null && info.cls != translator.wasmTypesBaseClass) {
330330
int superId = superInfo.classId;

pkg/dart2wasm/lib/ffi_native_transformer.dart

Lines changed: 21 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,7 @@ void transformLibraries(
4444
'dart:_internal',
4545
'dart:typed_data',
4646
'dart:nativewrappers',
47-
'dart:wasm'
47+
'dart:_wasm'
4848
]);
4949
final transformer = WasmFfiNativeTransformer(
5050
index, coreTypes, hierarchy, diagnosticReporter, referenceFromIndex);
@@ -79,37 +79,37 @@ class WasmFfiNativeTransformer extends FfiNativeTransformer {
7979
ClassHierarchy hierarchy,
8080
DiagnosticReporter diagnosticReporter,
8181
ReferenceFromIndex? referenceFromIndex)
82-
: wasmI32Class = index.getClass('dart:wasm', 'WasmI32'),
83-
wasmI64Class = index.getClass('dart:wasm', 'WasmI64'),
84-
wasmF32Class = index.getClass('dart:wasm', 'WasmF32'),
85-
wasmF64Class = index.getClass('dart:wasm', 'WasmF64'),
86-
wasmEqRefClass = index.getClass('dart:wasm', 'WasmEqRef'),
87-
wasmI32FromInt = index.getProcedure('dart:wasm', 'WasmI32', 'fromInt'),
82+
: wasmI32Class = index.getClass('dart:_wasm', 'WasmI32'),
83+
wasmI64Class = index.getClass('dart:_wasm', 'WasmI64'),
84+
wasmF32Class = index.getClass('dart:_wasm', 'WasmF32'),
85+
wasmF64Class = index.getClass('dart:_wasm', 'WasmF64'),
86+
wasmEqRefClass = index.getClass('dart:_wasm', 'WasmEqRef'),
87+
wasmI32FromInt = index.getProcedure('dart:_wasm', 'WasmI32', 'fromInt'),
8888
wasmI32Int8FromInt =
89-
index.getProcedure('dart:wasm', 'WasmI32', 'int8FromInt'),
89+
index.getProcedure('dart:_wasm', 'WasmI32', 'int8FromInt'),
9090
wasmI32Uint8FromInt =
91-
index.getProcedure('dart:wasm', 'WasmI32', 'uint8FromInt'),
91+
index.getProcedure('dart:_wasm', 'WasmI32', 'uint8FromInt'),
9292
wasmI32Int16FromInt =
93-
index.getProcedure('dart:wasm', 'WasmI32', 'int16FromInt'),
93+
index.getProcedure('dart:_wasm', 'WasmI32', 'int16FromInt'),
9494
wasmI32Uint16FromInt =
95-
index.getProcedure('dart:wasm', 'WasmI32', 'uint16FromInt'),
95+
index.getProcedure('dart:_wasm', 'WasmI32', 'uint16FromInt'),
9696
wasmI32FromBool =
97-
index.getProcedure('dart:wasm', 'WasmI32', 'fromBool'),
97+
index.getProcedure('dart:_wasm', 'WasmI32', 'fromBool'),
9898
wasmI32ToIntSigned =
99-
index.getProcedure('dart:wasm', 'WasmI32', 'toIntSigned'),
99+
index.getProcedure('dart:_wasm', 'WasmI32', 'toIntSigned'),
100100
wasmI32ToIntUnsigned =
101-
index.getProcedure('dart:wasm', 'WasmI32', 'toIntUnsigned'),
102-
wasmI32ToBool = index.getProcedure('dart:wasm', 'WasmI32', 'toBool'),
103-
wasmI64ToInt = index.getProcedure('dart:wasm', 'WasmI64', 'toInt'),
104-
wasmI64FromInt = index.getProcedure('dart:wasm', 'WasmI64', 'fromInt'),
101+
index.getProcedure('dart:_wasm', 'WasmI32', 'toIntUnsigned'),
102+
wasmI32ToBool = index.getProcedure('dart:_wasm', 'WasmI32', 'toBool'),
103+
wasmI64ToInt = index.getProcedure('dart:_wasm', 'WasmI64', 'toInt'),
104+
wasmI64FromInt = index.getProcedure('dart:_wasm', 'WasmI64', 'fromInt'),
105105
wasmF32FromDouble =
106-
index.getProcedure('dart:wasm', 'WasmF32', 'fromDouble'),
106+
index.getProcedure('dart:_wasm', 'WasmF32', 'fromDouble'),
107107
wasmF32ToDouble =
108-
index.getProcedure('dart:wasm', 'WasmF32', 'toDouble'),
108+
index.getProcedure('dart:_wasm', 'WasmF32', 'toDouble'),
109109
wasmF64FromDouble =
110-
index.getProcedure('dart:wasm', 'WasmF64', 'fromDouble'),
110+
index.getProcedure('dart:_wasm', 'WasmF64', 'fromDouble'),
111111
wasmF64ToDouble =
112-
index.getProcedure('dart:wasm', 'WasmF64', 'toDouble'),
112+
index.getProcedure('dart:_wasm', 'WasmF64', 'toDouble'),
113113
super(index, coreTypes, hierarchy, diagnosticReporter,
114114
referenceFromIndex);
115115

pkg/dart2wasm/lib/intrinsics.dart

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1020,8 +1020,8 @@ class Intrinsifier {
10201020
}
10211021
}
10221022

1023-
// dart:wasm static functions
1024-
if (node.target.enclosingLibrary.name == "dart.wasm") {
1023+
// dart:_wasm static functions
1024+
if (node.target.enclosingLibrary.name == "dart._wasm") {
10251025
Expression value = node.arguments.positional.single;
10261026
switch (name) {
10271027
case "_externalizeNonNullable":

pkg/dart2wasm/lib/js_runtime_generator.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -94,7 +94,7 @@ class _JSLowerer extends Transformer {
9494
_inlineJSTarget =
9595
_coreTypes.index.getTopLevelProcedure('dart:_js_helper', 'JS'),
9696
_wasmExternRefClass =
97-
_coreTypes.index.getClass('dart:wasm', 'WasmExternRef'),
97+
_coreTypes.index.getClass('dart:_wasm', 'WasmExternRef'),
9898
_numToIntTarget = _coreTypes.index
9999
.getClass('dart:core', 'num')
100100
.procedures

pkg/dart2wasm/lib/kernel_nodes.dart

Lines changed: 21 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ mixin KernelNodes {
1717
"dart:core",
1818
"dart:ffi",
1919
"dart:typed_data",
20-
"dart:wasm"
20+
"dart:_wasm"
2121
]);
2222

2323
// dart:_internal classes
@@ -103,29 +103,29 @@ mixin KernelNodes {
103103
late final Class unmodifiableByteDataViewClass =
104104
index.getClass("dart:typed_data", "_UnmodifiableByteDataView");
105105

106-
// dart:wasm classes
106+
// dart:_wasm classes
107107
late final Class wasmTypesBaseClass =
108-
index.getClass("dart:wasm", "_WasmBase");
109-
late final wasmI8Class = index.getClass("dart:wasm", "WasmI8");
110-
late final wasmI16Class = index.getClass("dart:wasm", "WasmI16");
111-
late final wasmI32Class = index.getClass("dart:wasm", "WasmI32");
112-
late final wasmI64Class = index.getClass("dart:wasm", "WasmI64");
113-
late final wasmF32Class = index.getClass("dart:wasm", "WasmF32");
114-
late final wasmF64Class = index.getClass("dart:wasm", "WasmF64");
115-
late final Class wasmAnyRefClass = index.getClass("dart:wasm", "WasmAnyRef");
108+
index.getClass("dart:_wasm", "_WasmBase");
109+
late final wasmI8Class = index.getClass("dart:_wasm", "WasmI8");
110+
late final wasmI16Class = index.getClass("dart:_wasm", "WasmI16");
111+
late final wasmI32Class = index.getClass("dart:_wasm", "WasmI32");
112+
late final wasmI64Class = index.getClass("dart:_wasm", "WasmI64");
113+
late final wasmF32Class = index.getClass("dart:_wasm", "WasmF32");
114+
late final wasmF64Class = index.getClass("dart:_wasm", "WasmF64");
115+
late final Class wasmAnyRefClass = index.getClass("dart:_wasm", "WasmAnyRef");
116116
late final Class wasmExternRefClass =
117-
index.getClass("dart:wasm", "WasmExternRef");
117+
index.getClass("dart:_wasm", "WasmExternRef");
118118
late final Class wasmFuncRefClass =
119-
index.getClass("dart:wasm", "WasmFuncRef");
120-
late final Class wasmEqRefClass = index.getClass("dart:wasm", "WasmEqRef");
119+
index.getClass("dart:_wasm", "WasmFuncRef");
120+
late final Class wasmEqRefClass = index.getClass("dart:_wasm", "WasmEqRef");
121121
late final Class wasmStructRefClass =
122-
index.getClass("dart:wasm", "WasmStructRef");
122+
index.getClass("dart:_wasm", "WasmStructRef");
123123
late final Class wasmArrayRefClass =
124-
index.getClass("dart:wasm", "WasmArrayRef");
124+
index.getClass("dart:_wasm", "WasmArrayRef");
125125
late final Class wasmFunctionClass =
126-
index.getClass("dart:wasm", "WasmFunction");
127-
late final Class wasmVoidClass = index.getClass("dart:wasm", "WasmVoid");
128-
late final Class wasmTableClass = index.getClass("dart:wasm", "WasmTable");
126+
index.getClass("dart:_wasm", "WasmFunction");
127+
late final Class wasmVoidClass = index.getClass("dart:_wasm", "WasmVoid");
128+
late final Class wasmTableClass = index.getClass("dart:_wasm", "WasmTable");
129129

130130
// dart:_internal procedures
131131
late final Procedure loadLibrary =
@@ -242,9 +242,9 @@ mixin KernelNodes {
242242
index.getTopLevelProcedure("dart:core", "_namedParameterMapToList");
243243
late final Procedure listOf = index.getProcedure("dart:core", "_List", "of");
244244

245-
// dart:wasm procedures
245+
// dart:_wasm procedures
246246
late final Procedure wasmFunctionCall =
247-
index.getProcedure("dart:wasm", "WasmFunction", "get:call");
247+
index.getProcedure("dart:_wasm", "WasmFunction", "get:call");
248248
late final Procedure wasmTableCallIndirect =
249-
index.getProcedure("dart:wasm", "WasmTable", "callIndirect");
249+
index.getProcedure("dart:_wasm", "WasmTable", "callIndirect");
250250
}

pkg/dart2wasm/lib/target.dart

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -71,7 +71,7 @@ class WasmTarget extends Target {
7171
'dart:js_interop',
7272
'dart:js',
7373
'dart:js_util',
74-
'dart:wasm',
74+
'dart:_wasm',
7575
'dart:developer',
7676
];
7777

@@ -82,9 +82,13 @@ class WasmTarget extends Target {
8282
'dart:typed_data',
8383
'dart:js_interop',
8484
'dart:js_util',
85-
'dart:wasm',
85+
'dart:_wasm',
8686
];
8787

88+
bool allowPlatformPrivateLibraryAccess(Uri importer, Uri imported) =>
89+
super.allowPlatformPrivateLibraryAccess(importer, imported) ||
90+
importer.path.contains('tests/web/wasm');
91+
8892
void _patchHostEndian(CoreTypes coreTypes) {
8993
// Fix Endian.host to be a const field equal to Endian.little instead of
9094
// a final field. Wasm is a little-endian platform.

pkg/dart2wasm/lib/transformers.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@ class _WasmTransformer extends Transformer {
5353
_nonNullableTypeType = coreTypes.index
5454
.getClass('dart:core', '_Type')
5555
.getThisType(coreTypes, Nullability.nonNullable),
56-
_wasmBaseClass = coreTypes.index.getClass('dart:wasm', '_WasmBase'),
56+
_wasmBaseClass = coreTypes.index.getClass('dart:_wasm', '_WasmBase'),
5757
_coreLibrary = coreTypes.index.getLibrary('dart:core');
5858

5959
@override

sdk/BUILD.gn

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -165,7 +165,7 @@ _full_sdk_libraries = [
165165
"mirrors",
166166
"svg",
167167
"typed_data",
168-
"wasm",
168+
"_wasm",
169169
"web_audio",
170170
"web_gl",
171171
"web_sql",

sdk/lib/_internal/wasm/lib/async_patch.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,7 @@
5151
import 'dart:_internal' show patch, scheduleCallback, unsafeCastOpaque;
5252
import 'dart:_js_helper' show JS;
5353

54-
import 'dart:wasm';
54+
import 'dart:_wasm';
5555

5656
part 'timer_patch.dart';
5757

sdk/lib/_internal/wasm/lib/core_patch.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,7 @@ import 'dart:math' show Random;
5151

5252
import "dart:typed_data" show Uint8List, Uint16List;
5353

54-
import 'dart:wasm';
54+
import 'dart:_wasm';
5555

5656
part "bool.dart";
5757
part "closure.dart";

sdk/lib/_internal/wasm/lib/js_helper.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,10 +7,10 @@ library dart._js_helper;
77

88
import 'dart:_internal';
99
import 'dart:_js_annotations' as js;
10+
import 'dart:_wasm';
1011
import 'dart:collection';
1112
import 'dart:js_interop';
1213
import 'dart:typed_data';
13-
import 'dart:wasm';
1414

1515
part 'regexp_helper.dart';
1616

sdk/lib/_internal/wasm/lib/js_interop_patch.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,11 +4,11 @@
44

55
import 'dart:_internal' show patch;
66
import 'dart:_js_helper';
7+
import 'dart:_wasm';
78
import 'dart:async' show Completer;
89
import 'dart:js_interop';
910
import 'dart:js_util' show NullRejectionException;
1011
import 'dart:typed_data';
11-
import 'dart:wasm';
1212

1313
/// Some helpers for working with JS types internally. If we implement the JS
1414
/// types as inline classes then these should go away.

sdk/lib/_internal/wasm/lib/js_patch.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,8 +8,8 @@ library dart.js;
88

99
import 'dart:_internal' show patch;
1010
import 'dart:_js_helper';
11+
import 'dart:_wasm';
1112
import 'dart:collection' show ListMixin;
12-
import 'dart:wasm';
1313

1414
@patch
1515
JsObject get context => throw UnimplementedError();

sdk/lib/_internal/wasm/lib/js_util_patch.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,10 +7,10 @@ library dart.js_util;
77
import "dart:_internal";
88
import "dart:_js_helper";
99
import "dart:_js_types";
10+
import "dart:_wasm";
1011
import "dart:async" show Completer, FutureOr;
1112
import "dart:collection";
1213
import "dart:typed_data";
13-
import "dart:wasm";
1414

1515
@patch
1616
dynamic jsify(Object? object) {

sdk/lib/_internal/wasm/lib/sync_star_patch.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
// for details. All rights reserved. Use of this source code is governed by a
33
// BSD-style license that can be found in the LICENSE file.
44

5-
import 'dart:wasm';
5+
import 'dart:_wasm';
66

77
// Signature of the inner function of a `sync*` function. It takes the state
88
// object and a pending exception to be thrown (only for `yield*`).

sdk/lib/_internal/wasm/lib/weak_patch.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,8 @@
44

55
import 'dart:_internal' show patch, unsafeCast;
66
import 'dart:_js_helper' show isJSUndefined, JS;
7+
import 'dart:_wasm';
78
import 'dart:ffi' show Pointer, Struct, Union;
8-
import 'dart:wasm';
99

1010
void _checkValidWeakTarget(Object object) {
1111
if ((object is bool) ||
File renamed without changes.
File renamed without changes.

sdk/lib/wasm/wasm_types.dart renamed to sdk/lib/_wasm/wasm_types.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
// for details. All rights reserved. Use of this source code is governed by a
33
// BSD-style license that can be found in the LICENSE file.
44

5-
library dart.wasm;
5+
library dart._wasm;
66

77
// A collection a special Dart types that are mapped directly to Wasm types
88
// by the dart2wasm compiler. These types have a number of constraints:

sdk/lib/libraries.json

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -139,6 +139,9 @@
139139
"_js_types": {
140140
"uri": "_internal/wasm/lib/js_types.dart"
141141
},
142+
"_wasm": {
143+
"uri": "_wasm/wasm_types.dart"
144+
},
142145
"async": {
143146
"uri": "async/async.dart",
144147
"patches": [
@@ -231,9 +234,6 @@
231234
"_internal/wasm/lib/typed_data_patch.dart",
232235
"_internal/wasm/lib/simd_patch.dart"
233236
]
234-
},
235-
"wasm": {
236-
"uri": "wasm/wasm_types.dart"
237237
}
238238
}
239239
},

sdk/lib/libraries.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -126,6 +126,8 @@ wasm:
126126
uri: _internal/wasm/lib/js_helper.dart
127127
_js_types:
128128
uri: _internal/wasm/lib/js_types.dart
129+
_wasm:
130+
uri: _wasm/wasm_types.dart
129131
async:
130132
uri: async/async.dart
131133
patches:
@@ -197,8 +199,6 @@ wasm:
197199
- _internal/vm/lib/typed_data_patch.dart
198200
- _internal/wasm/lib/typed_data_patch.dart
199201
- _internal/wasm/lib/simd_patch.dart
200-
wasm:
201-
uri: wasm/wasm_types.dart
202202

203203
dart2js:
204204
include:

tests/lib/lib.status

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
# for details. All rights reserved. Use of this source code is governed by a
33
# BSD-style license that can be found in the LICENSE file.
44
html/cross_frame_test: Skip # Issue 32039, test reloads itself (not by design - investigate)
5-
wasm/*: Skip # dart:wasm is currently behind a Dart SDK build flag.
5+
wasm/*: Skip # dart:_wasm is currently behind a Dart SDK build flag.
66

77
[ $arch == simarm ]
88
convert/utf85_test: Skip # Pass, Slow Issue 12644.

tests/lib/lib_dart2js.status

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ isolate/*: SkipByDesign # No support for dart:isolate in dart4web (http://dartbu
2222
mirrors/*: SkipByDesign # Mirrors not supported on web in Dart 2.0.
2323
typed_data/int64_list_load_store_test: SkipByDesign # No support for Int64List
2424
typed_data/typed_data_hierarchy_int64_test: SkipByDesign # No support for Int64List
25-
wasm/*: SkipByDesign # dart:wasm not currently supported on web.
25+
wasm/*: SkipByDesign # dart:_wasm not currently supported on web.
2626

2727
[ $compiler != dart2js ]
2828
async/dart2js_uncaught_error_test: Skip # JS-integration only test

tests/lib_2/lib_2.status

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
# for details. All rights reserved. Use of this source code is governed by a
33
# BSD-style license that can be found in the LICENSE file.
44
html/cross_frame_test: Skip # Issue 32039, test reloads itself (not by design - investigate)
5-
wasm/*: Skip # dart:wasm is currently behind a Dart SDK build flag.
5+
wasm/*: Skip # dart:_wasm is currently behind a Dart SDK build flag.
66

77
[ $arch == simarm ]
88
convert/utf85_test: Skip # Pass, Slow Issue 12644.

tests/lib_2/lib_2_dart2js.status

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ html/wrapping_collections_test: SkipByDesign # Testing an issue that is only rel
2020
html/xhr_test: Slow, Pass
2121
isolate/*: SkipByDesign # No support for dart:isolate in dart4web (http://dartbug.com/30538)
2222
mirrors/*: SkipByDesign # Mirrors not supported on web in Dart 2.0.
23-
wasm/*: SkipByDesign # dart:wasm not currently supported on web.
23+
wasm/*: SkipByDesign # dart:_wasm not currently supported on web.
2424

2525
[ $compiler != dart2js ]
2626
async/dart2js_uncaught_error_test: Skip # JS-integration only test

0 commit comments

Comments
 (0)