Version 2.13.0-143.0.dev
Merge commit '88c24ef66acf74fda1ca77d54bdb00277430cabb' into 'dev'
diff --git a/DEPS b/DEPS
index 442c05e..09155e8 100644
--- a/DEPS
+++ b/DEPS
@@ -48,7 +48,7 @@
"co19_2_rev": "cf6eed0535e45413672bb5bb6e65df9f59846372",
# The internal benchmarks to use. See go/dart-benchmarks-internal
- "benchmarks_internal_rev": "354c978979c57e4a76f62e22cf644ed0804f4421",
+ "benchmarks_internal_rev": "076df10d9b77af337f2d8029725787155eb1cd52",
"checkout_benchmarks_internal": False,
# Checkout Android dependencies only on Mac and Linux.
diff --git a/sdk/lib/_internal/js_dev_runtime/private/js_number.dart b/sdk/lib/_internal/js_dev_runtime/private/js_number.dart
index c70de91..b90d786 100644
--- a/sdk/lib/_internal/js_dev_runtime/private/js_number.dart
+++ b/sdk/lib/_internal/js_dev_runtime/private/js_number.dart
@@ -335,13 +335,16 @@
return _shrOtherPositive(other);
}
- int operator >>>(@nullCheck num other) =>
- throw UnimplementedError('int.>>> is not implemented yet');
+ @notNull
+ int operator >>>(@nullCheck num other) {
+ if (JS<num>('!', '#', other) < 0) throwArgumentErrorValue(other);
+ return _shrUnsigned(other);
+ }
@notNull
int _shrOtherPositive(@notNull num other) {
return JS<num>('!', '#', this) > 0
- ? _shrBothPositive(other)
+ ? _shrUnsigned(other)
// For negative numbers we just clamp the shift-by amount.
// `this` could be negative but not have its 31st bit set.
// The ">>" would then shift in 0s instead of 1s. Therefore
@@ -350,7 +353,7 @@
}
@notNull
- int _shrBothPositive(@notNull num other) {
+ int _shrUnsigned(@notNull num other) {
return JS<bool>('!', r'# > 31', other)
// JavaScript only looks at the last 5 bits of the shift-amount. In JS
// shifting by 33 is hence equivalent to a shift by 1. Shortcut the
diff --git a/tools/VERSION b/tools/VERSION
index fce1429..b04191b 100644
--- a/tools/VERSION
+++ b/tools/VERSION
@@ -27,5 +27,5 @@
MAJOR 2
MINOR 13
PATCH 0
-PRERELEASE 142
+PRERELEASE 143
PRERELEASE_PATCH 0
\ No newline at end of file