From 196f6c90c21de93cdd4e97e8c409d75b8153b7be Mon Sep 17 00:00:00 2001 From: Vyacheslav Egorov Date: Tue, 13 Aug 2024 09:20:05 +0000 Subject: [PATCH] [vm] Create dart:_compact_hash library. This opens possibility for other core libraries to access implementation details of compact hash maps/sets and call special "core-library-only" methods. TEST=ci CoreLibraryReviewExempt: VM only library change Change-Id: I1d7524932c34e6fbe2428853dd547d58bef2d061 Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/379840 Reviewed-by: Martin Kustermann Commit-Queue: Slava Egorov Reviewed-by: Lasse Nielsen --- .../testcases/literals.dart.expect | 4 +- pkg/dart2wasm/lib/kernel_nodes.dart | 12 +- pkg/dart2wasm/lib/target.dart | 8 +- .../lib/src/source/source_loader.dart | 19 +- ...iteral_test.dart.strong.transformed.expect | 6 +- .../set_literal.expression.yaml.expect | 2 +- .../spread.dart.strong.transformed.expect | 3 +- ...ds_literals.dart.strong.transformed.expect | 34 +- ...collections.dart.strong.transformed.expect | 4 +- ...nstant_type.dart.strong.transformed.expect | 8 +- ..._collection.dart.strong.transformed.expect | 4 +- ...n_inference.dart.strong.transformed.expect | 176 ++-- ...set_literal.dart.strong.transformed.expect | 4 +- ...pe_argument.dart.strong.transformed.expect | 4 +- .../issue37027.dart.strong.transformed.expect | 4 +- ...ware_spread.dart.strong.transformed.expect | 4 +- ...riable_type.dart.strong.transformed.expect | 4 +- ..._collection.dart.strong.transformed.expect | 4 +- ...n_inference.dart.strong.transformed.expect | 15 +- ...teral_error.dart.strong.transformed.expect | 4 +- ..._and_bounds.dart.strong.transformed.expect | 4 +- .../await_in_non_async.yaml.world.1.expect | 3 +- .../await_in_non_async.yaml.world.2.expect | 3 +- .../bad_sdk_uri.yaml.world.3.expect | 3 +- .../issue_55357.yaml.world.1.expect | 3 +- .../issue_55357.yaml.world.3.expect | 3 +- ...citly_import_dart_core.yaml.world.1.expect | 3 +- ...citly_import_dart_core.yaml.world.2.expect | 3 +- .../no_outline_change_22.yaml.world.1.expect | 2 +- .../no_outline_change_22.yaml.world.2.expect | 2 +- .../omit_platform_works_3.yaml.world.1.expect | 3 +- .../omit_platform_works_3.yaml.world.4.expect | 3 +- .../omit_platform_works_3.yaml.world.5.expect | 3 +- .../incremental/patterns.yaml.world.1.expect | 3 +- .../incremental/patterns.yaml.world.2.expect | 3 +- .../incremental/patterns.yaml.world.3.expect | 3 +- ..._is_precise.dart.strong.transformed.expect | 6 +- ...l_inference.dart.strong.transformed.expect | 6 +- ...sion_method.dart.strong.transformed.expect | 6 +- .../issue42758.dart.strong.transformed.expect | 21 +- .../issue43256.dart.strong.transformed.expect | 6 +- .../issue43455.dart.strong.transformed.expect | 16 +- .../issue43495.dart.strong.transformed.expect | 89 +- ...ead_if_null.dart.strong.transformed.expect | 12 +- ...le_warnings.dart.strong.transformed.expect | 6 +- ...le_positive.dart.strong.transformed.expect | 28 +- .../spreads.dart.strong.transformed.expect | 9 +- ...ccess_order.dart.strong.transformed.expect | 3 +- ...che_lookups.dart.strong.transformed.expect | 3 +- ...ase_element.dart.strong.transformed.expect | 4 +- ...n_inference.dart.strong.transformed.expect | 28 +- ..._conversion.dart.strong.transformed.expect | 4 +- ...n_inference.dart.strong.transformed.expect | 4 +- ...ions_errors.dart.strong.transformed.expect | 4 +- ...ssue51971_2.dart.strong.transformed.expect | 4 +- .../issue53092.dart.strong.transformed.expect | 3 +- .../issue54230.dart.strong.transformed.expect | 4 +- ...lement_once.dart.strong.transformed.expect | 3 +- ...tive_length.dart.strong.transformed.expect | 3 +- ...zer_element.dart.strong.transformed.expect | 4 +- ...issue_42423.dart.strong.transformed.expect | 4 +- ...uation_rule.dart.strong.transformed.expect | 19 +- ...old_initial.dart.strong.transformed.expect | 7 +- .../invariance.dart.strong.transformed.expect | 10 +- ...set_add_all.dart.strong.transformed.expect | 39 +- .../specializer/map_factory_specializer.dart | 2 +- .../specializer/set_factory_specializer.dart | 2 +- pkg/vm/lib/modular/target/vm.dart | 16 +- .../deferred_loading/main.dart.expect | 1 + .../class_generics_case1.dart.expect | 4 +- .../transformer/const_map.dart.expect | 2 +- .../transformer/const_set.dart.expect | 2 +- .../set_map_constructor_concrete.dart.expect | 55 +- runtime/vm/compiler/recognized_methods_list.h | 470 +++++------ .../vm/compiler/runtime_offsets_extracted.h | 780 +++++++++--------- runtime/vm/dart_entry.cc | 8 +- runtime/vm/dart_entry.h | 4 +- runtime/vm/message_snapshot.cc | 6 +- runtime/vm/object.cc | 25 +- runtime/vm/object.h | 9 +- runtime/vm/object_store.cc | 5 +- runtime/vm/object_store.h | 2 + runtime/vm/object_test.cc | 13 +- runtime/vm/symbols.h | 1 + sdk/lib/_internal/vm/lib/hash_factories.dart | 25 +- .../vm_shared/lib/collection_patch.dart | 10 +- .../_internal/vm_shared/lib/compact_hash.dart | 163 ++-- sdk/lib/_internal/wasm/lib/compact_hash.dart | 364 ++++---- .../_internal/wasm/lib/hash_factories.dart | 19 +- sdk/lib/internal/internal.dart | 8 + sdk/lib/libraries.json | 10 +- sdk/lib/libraries.yaml | 8 +- 92 files changed, 1404 insertions(+), 1335 deletions(-) diff --git a/pkg/dart2bytecode/testcases/literals.dart.expect b/pkg/dart2bytecode/testcases/literals.dart.expect index 94fcfc9173a..49bff5e1299 100644 --- a/pkg/dart2bytecode/testcases/literals.dart.expect +++ b/pkg/dart2bytecode/testcases/literals.dart.expect @@ -337,9 +337,9 @@ Bytecode { ReturnTOS } ConstantPool { - [0] = Class dart:collection::_Set + [0] = Class dart:_compact_hash::_Set [1] = ObjectRef < dart:core::int > - [2] = DirectCall 'dart:collection::_Set:: (constructor)', ArgDesc num-args 1, num-type-args 0, names [] + [2] = DirectCall 'dart:_compact_hash::_Set:: (constructor)', ArgDesc num-args 1, num-type-args 0, names [] [3] = Reserved [4] = InterfaceCall 'dart:core::Set::add', ArgDesc num-args 2, num-type-args 0, names [] [5] = Reserved diff --git a/pkg/dart2wasm/lib/kernel_nodes.dart b/pkg/dart2wasm/lib/kernel_nodes.dart index f50027f827c..91d52bb61ab 100644 --- a/pkg/dart2wasm/lib/kernel_nodes.dart +++ b/pkg/dart2wasm/lib/kernel_nodes.dart @@ -23,9 +23,9 @@ mixin KernelNodes { late final Class hashFieldBaseClass = index.getClass("dart:_compact_hash", "_HashFieldBase"); late final Class immutableMapClass = - index.getClass("dart:_compact_hash", "WasmImmutableMap"); + index.getClass("dart:_compact_hash", "_ConstMap"); late final Class immutableSetClass = - index.getClass("dart:_compact_hash", "WasmImmutableSet"); + index.getClass("dart:_compact_hash", "_ConstSet"); // dart:core various classes late final Class boxedBoolClass = index.getClass("dart:core", "_BoxedBool"); @@ -204,12 +204,12 @@ mixin KernelNodes { // dart:collection procedures and fields late final Procedure mapFactory = index.getProcedure("dart:collection", "LinkedHashMap", "_default"); - late final Procedure mapFromWasmArray = index.getProcedure( - "dart:_compact_hash", "WasmDefaultMap", "fromWasmArray"); + late final Procedure mapFromWasmArray = + index.getProcedure("dart:_compact_hash", "DefaultMap", "fromWasmArray"); late final Procedure setFactory = index.getProcedure("dart:collection", "LinkedHashSet", "_default"); - late final Procedure setFromWasmArray = index.getProcedure( - "dart:_compact_hash", "WasmDefaultSet", "fromWasmArray"); + late final Procedure setFromWasmArray = + index.getProcedure("dart:_compact_hash", "DefaultSet", "fromWasmArray"); late final Procedure growableListEmpty = index.getProcedure("dart:_list", "GrowableList", "empty"); late final Constructor growableListFromWasmArray = diff --git a/pkg/dart2wasm/lib/target.dart b/pkg/dart2wasm/lib/target.dart index 48ad0684aeb..bfb0e5421ef 100644 --- a/pkg/dart2wasm/lib/target.dart +++ b/pkg/dart2wasm/lib/target.dart @@ -473,25 +473,25 @@ class WasmTarget extends Target { @override Class concreteMapLiteralClass(CoreTypes coreTypes) { return _wasmDefaultMap ??= - coreTypes.index.getClass('dart:_compact_hash', 'WasmDefaultMap'); + coreTypes.index.getClass('dart:_compact_hash', 'DefaultMap'); } @override Class concreteConstMapLiteralClass(CoreTypes coreTypes) { return _wasmImmutableMap ??= - coreTypes.index.getClass('dart:_compact_hash', 'WasmImmutableMap'); + coreTypes.index.getClass('dart:_compact_hash', '_ConstMap'); } @override Class concreteSetLiteralClass(CoreTypes coreTypes) { return _wasmDefaultSet ??= - coreTypes.index.getClass('dart:_compact_hash', 'WasmDefaultSet'); + coreTypes.index.getClass('dart:_compact_hash', 'DefaultSet'); } @override Class concreteConstSetLiteralClass(CoreTypes coreTypes) { return _wasmImmutableSet ??= - coreTypes.index.getClass('dart:_compact_hash', 'WasmImmutableSet'); + coreTypes.index.getClass('dart:_compact_hash', '_ConstSet'); } @override diff --git a/pkg/front_end/lib/src/source/source_loader.dart b/pkg/front_end/lib/src/source/source_loader.dart index 89d9f3d0e5e..f07121a61c1 100644 --- a/pkg/front_end/lib/src/source/source_loader.dart +++ b/pkg/front_end/lib/src/source/source_loader.dart @@ -1111,6 +1111,7 @@ severity: $severity "dart:core" => defaultDartCoreSource, "dart:async" => defaultDartAsyncSource, "dart:collection" => defaultDartCollectionSource, + "dart:_compact_hash" => defaultDartCompactHashSource, "dart:_internal" => defaultDartInternalSource, "dart:typed_data" => defaultDartTypedDataSource, _ => message == null ? "" : "/* ${message.problemMessage} */", @@ -3357,10 +3358,6 @@ abstract class LinkedHashMap implements Map { bool Function(dynamic)? isValidKey}) => null; } -class _Map { - _Map(); -} - abstract class LinkedHashSet implements Set { factory LinkedHashSet( {bool Function(E, E)? equals, @@ -3368,16 +3365,22 @@ abstract class LinkedHashSet implements Set { bool Function(dynamic)? isValidKey}) => null; } -class _Set { - _Set(); -} - class _UnmodifiableSet { final Map _map; const _UnmodifiableSet(this._map); } """; +/// A minimal implementation of dart:collection that is sufficient to create an +/// instance of [CoreTypes] and compile program. +const String defaultDartCompactHashSource = """ +class _Map { +} + +class _Set { +} +"""; + /// A minimal implementation of dart:_internal that is sufficient to create an /// instance of [CoreTypes] and compile program. const String defaultDartInternalSource = """ diff --git a/pkg/front_end/testcases/coverage/set_literal_test.dart.strong.transformed.expect b/pkg/front_end/testcases/coverage/set_literal_test.dart.strong.transformed.expect index 3a74cd51f4b..8aa1f84435d 100644 --- a/pkg/front_end/testcases/coverage/set_literal_test.dart.strong.transformed.expect +++ b/pkg/front_end/testcases/coverage/set_literal_test.dart.strong.transformed.expect @@ -8,14 +8,14 @@ library; // import self as self; import "dart:core" as core; -import "dart:collection" as col; +import "dart:_compact_hash" as _co; static method foo() → void { core::Set x = block { - final core::Set #t1 = new col::_Set::•(); + final core::Set #t1 = new _co::_Set::•(); #t1.{core::Set::add}{Invariant}(1){(core::int) → core::bool}; } =>#t1; core::Set y = block { - final core::Set #t2 = new col::_Set::•(); + final core::Set #t2 = new _co::_Set::•(); } =>#t2; } diff --git a/pkg/front_end/testcases/expression/set_literal.expression.yaml.expect b/pkg/front_end/testcases/expression/set_literal.expression.yaml.expect index 7d7b48891b3..edf6d150728 100644 --- a/pkg/front_end/testcases/expression/set_literal.expression.yaml.expect +++ b/pkg/front_end/testcases/expression/set_literal.expression.yaml.expect @@ -2,6 +2,6 @@ Errors: { } method /* from org-dartlang-debug:synthetic_debug_expression */ debugExpr() → dynamic return block { - final dart.core::Set #t1 = new dart.collection::_Set::•(); + final dart.core::Set #t1 = new dart._compact_hash::_Set::•(); #t1.{dart.core::Set::add}{Invariant}("a"){(dart.core::String) → dart.core::bool}; } =>#t1; diff --git a/pkg/front_end/testcases/extension_types/spread.dart.strong.transformed.expect b/pkg/front_end/testcases/extension_types/spread.dart.strong.transformed.expect index 1093a63c11e..abd6a01ca03 100644 --- a/pkg/front_end/testcases/extension_types/spread.dart.strong.transformed.expect +++ b/pkg/front_end/testcases/extension_types/spread.dart.strong.transformed.expect @@ -20,6 +20,7 @@ library; import self as self; import "dart:core" as core; import "dart:collection" as col; +import "dart:_compact_hash" as _co; extension type MyList(core::List it) implements core::List { abstract extension-type-member representation-field get it() → core::List; @@ -74,7 +75,7 @@ static method test() → dynamic { - 'Set' is from 'dart:core'. MySet set = {}; // Error ^" in ( block { - final core::Set #t4 = new col::_Set::•(); + final core::Set #t4 = new _co::_Set::•(); } =>#t4) as{TypeError} self::MySet /* erasure=core::Set */; self::MyMap /* erasure=core::Map */ map = invalid-expression "pkg/front_end/testcases/extension_types/spread.dart:20:29: Error: A value of type 'Map' can't be assigned to a variable of type 'MyMap'. - 'Map' is from 'dart:core'. diff --git a/pkg/front_end/testcases/general/bounds_literals.dart.strong.transformed.expect b/pkg/front_end/testcases/general/bounds_literals.dart.strong.transformed.expect index d7309ebf284..1e016d17cfc 100644 --- a/pkg/front_end/testcases/general/bounds_literals.dart.strong.transformed.expect +++ b/pkg/front_end/testcases/general/bounds_literals.dart.strong.transformed.expect @@ -118,7 +118,7 @@ library; // import self as self; import "dart:core" as core; -import "dart:collection" as col; +import "dart:_compact_hash" as _co; typedef F = self::Class> = X; class Class extends core::Object { @@ -146,52 +146,52 @@ static method test() → dynamic { , self::G>>{}; , self::G>{}; { - final core::Set> #t1 = new col::_Set::•>(); + final core::Set> #t1 = new _co::_Set::•>(); } { - final core::Set #t2 = new col::_Set::•(); + final core::Set #t2 = new _co::_Set::•(); } { - final core::Set> #t3 = new col::_Set::•>(); + final core::Set> #t3 = new _co::_Set::•>(); } { - final core::Set> #t4 = new col::_Set::•>(); + final core::Set> #t4 = new _co::_Set::•>(); } { - final core::Set #t5 = new col::_Set::•(); + final core::Set #t5 = new _co::_Set::•(); } { - final core::Set #t6 = new col::_Set::•(); + final core::Set #t6 = new _co::_Set::•(); } { - final core::Set #t7 = new col::_Set::•(); + final core::Set #t7 = new _co::_Set::•(); } { - final core::Set> #t8 = new col::_Set::•>(); + final core::Set> #t8 = new _co::_Set::•>(); } { - final core::Set>> #t9 = new col::_Set::•>>(); + final core::Set>> #t9 = new _co::_Set::•>>(); } { - final core::Set>> #t10 = new col::_Set::•>>(); + final core::Set>> #t10 = new _co::_Set::•>>(); } { - final core::Set>> #t11 = new col::_Set::•>>(); + final core::Set>> #t11 = new _co::_Set::•>>(); } { - final core::Set>> #t12 = new col::_Set::•>>(); + final core::Set>> #t12 = new _co::_Set::•>>(); } { - final core::Set> #t13 = new col::_Set::•>(); + final core::Set> #t13 = new _co::_Set::•>(); } { - final core::Set>> #t14 = new col::_Set::•>>(); + final core::Set>> #t14 = new _co::_Set::•>>(); } { - final core::Set> #t15 = new col::_Set::•>(); + final core::Set> #t15 = new _co::_Set::•>(); } { - final core::Set> #t16 = new col::_Set::•>(); + final core::Set> #t16 = new _co::_Set::•>(); } core::_GrowableList::•>(0); core::_GrowableList::•(0); diff --git a/pkg/front_end/testcases/general/constants/const_collections.dart.strong.transformed.expect b/pkg/front_end/testcases/general/constants/const_collections.dart.strong.transformed.expect index 2222fc17a1f..630babccc7e 100644 --- a/pkg/front_end/testcases/general/constants/const_collections.dart.strong.transformed.expect +++ b/pkg/front_end/testcases/general/constants/const_collections.dart.strong.transformed.expect @@ -181,7 +181,7 @@ library; // import self as self; import "dart:core" as core; -import "dart:collection" as col; +import "dart:_compact_hash" as _co; import "dart:collection"; @@ -354,7 +354,7 @@ static method main() → dynamic { core::print(#C11); core::print(#C14); core::print( block { - final core::Set #t2 = new col::_Set::•(); + final core::Set #t2 = new _co::_Set::•(); #t2.{core::Set::add}{Invariant}("hello"){(core::String) → core::bool}; } =>#t2); core::print(#C16); diff --git a/pkg/front_end/testcases/general/constants/potentially_constant_type.dart.strong.transformed.expect b/pkg/front_end/testcases/general/constants/potentially_constant_type.dart.strong.transformed.expect index 8e8472250fe..dd66de0b597 100644 --- a/pkg/front_end/testcases/general/constants/potentially_constant_type.dart.strong.transformed.expect +++ b/pkg/front_end/testcases/general/constants/potentially_constant_type.dart.strong.transformed.expect @@ -207,7 +207,7 @@ library; // import self as self; import "dart:core" as core; -import "dart:collection" as col; +import "dart:_compact_hash" as _co; import "org-dartlang-testcase:///potentially_constant_type_lib1.dart"; @@ -232,7 +232,7 @@ class Class extends core::Object /*hasConstCo final field dynamic field16; const constructor •(dynamic o) → self::Class : self::Class::field1 = self::Class::T%, self::Class::field2 = self::Class, self::Class::field3 = #C1, self::Class::field4 = #C1, self::Class::field5 = core::_GrowableList::•(0), self::Class::field6 = block { - final core::Set #t1 = new col::_Set::•(); + final core::Set #t1 = new _co::_Set::•(); } =>#t1, self::Class::field7 = {}, self::Class::field8 = o is self::Class::T%, self::Class::field9 = o is self::Class, self::Class::field10 = o as self::Class::T%, self::Class::field11 = o{self::Class::T%} as self::Class, self::Class::field12 = #C2, self::Class::field13 = #C2, self::Class::field14 = #C1>, self::Class::field15 = core::_GrowableList::•>(0), self::Class::field16 = #C3, super core::Object::•() ; method method() → void { @@ -432,7 +432,7 @@ library; // import self as self2; import "dart:core" as core; -import "dart:collection" as col; +import "dart:_compact_hash" as _co; class Class extends core::Object /*hasConstConstructor*/ { final field dynamic field1; @@ -446,7 +446,7 @@ class Class extends core::Object /*hasConstCo final field dynamic field15; const constructor •(dynamic o) → self2::Class : self2::Class::field1 = #C4, self2::Class::field5 = core::_GrowableList::•(0), self2::Class::field6 = block { - final core::Set #t2 = new col::_Set::•(); + final core::Set #t2 = new _co::_Set::•(); } =>#t2, self2::Class::field7 = {}, self2::Class::field8 = o is self2::Class::T%, self2::Class::field9 = o is self2::Class, self2::Class::field10 = o as self2::Class::T%, self2::Class::field11 = o{self2::Class::T%} as self2::Class, self2::Class::field15 = core::_GrowableList::•>(0), super core::Object::•() ; method method() → void { diff --git a/pkg/front_end/testcases/general/control_flow_collection.dart.strong.transformed.expect b/pkg/front_end/testcases/general/control_flow_collection.dart.strong.transformed.expect index f517a811414..9155fdd5242 100644 --- a/pkg/front_end/testcases/general/control_flow_collection.dart.strong.transformed.expect +++ b/pkg/front_end/testcases/general/control_flow_collection.dart.strong.transformed.expect @@ -1,7 +1,7 @@ library; import self as self; import "dart:core" as core; -import "dart:collection" as col; +import "dart:_compact_hash" as _co; static method main() → dynamic { final core::List aList = block { @@ -34,7 +34,7 @@ static method main() → dynamic { #t1.{core::List::add}{Invariant}(i){(core::int) → void}; } =>#t1; final core::Set aSet = block { - final core::Set #t2 = new col::_Set::•(); + final core::Set #t2 = new _co::_Set::•(); #t2.{core::Set::add}{Invariant}(1){(core::int) → core::bool}; if(self::oracle() as{TypeError,ForDynamic} core::bool) #t2.{core::Set::add}{Invariant}(2){(core::int) → core::bool}; diff --git a/pkg/front_end/testcases/general/control_flow_collection_inference.dart.strong.transformed.expect b/pkg/front_end/testcases/general/control_flow_collection_inference.dart.strong.transformed.expect index ccc492b8f65..850e6fc771f 100644 --- a/pkg/front_end/testcases/general/control_flow_collection_inference.dart.strong.transformed.expect +++ b/pkg/front_end/testcases/general/control_flow_collection_inference.dart.strong.transformed.expect @@ -423,7 +423,7 @@ library; // import self as self; import "dart:core" as core; -import "dart:collection" as col; +import "dart:_compact_hash" as _co; import "dart:async" as asy; class A extends core::Object { @@ -447,7 +447,7 @@ static method testIfElement(dynamic dynVar, core::List listInt, core: #t1.{core::List::add}{Invariant}(42){(core::int) → void}; } =>#t1; core::Set set10 = block { - final core::Set #t2 = new col::_Set::•(); + final core::Set #t2 = new _co::_Set::•(); if(self::oracle("foo") as{TypeError,ForDynamic} core::bool) #t2.{core::Set::add}{Invariant}(42){(core::int?) → core::bool}; #t2.{core::Set::add}{Invariant}(null){(core::int?) → core::bool}; @@ -464,7 +464,7 @@ static method testIfElement(dynamic dynVar, core::List listInt, core: #t4.{core::List::add}{Invariant}(dynVar){(dynamic) → void}; } =>#t4; core::Set set11 = block { - final core::Set #t5 = new col::_Set::•(); + final core::Set #t5 = new _co::_Set::•(); if(self::oracle("foo") as{TypeError,ForDynamic} core::bool) #t5.{core::Set::add}{Invariant}(dynVar){(dynamic) → core::bool}; #t5.{core::Set::add}{Invariant}(null){(dynamic) → core::bool}; @@ -481,7 +481,7 @@ static method testIfElement(dynamic dynVar, core::List listInt, core: #t7.{core::List::add}{Invariant}(core::_GrowableList::_literal1(42)){(core::List) → void}; } =>#t7; core::Set?> set12 = block { - final core::Set?> #t8 = new col::_Set::•?>(); + final core::Set?> #t8 = new _co::_Set::•?>(); if(self::oracle("foo") as{TypeError,ForDynamic} core::bool) #t8.{core::Set::add}{Invariant}(core::_GrowableList::_literal1(42)){(core::List?) → core::bool}; #t8.{core::Set::add}{Invariant}(null){(core::List?) → core::bool}; @@ -498,7 +498,7 @@ static method testIfElement(dynamic dynVar, core::List listInt, core: #t10.{core::List::addAll}{Invariant}(core::_GrowableList::_literal1(42)){(core::Iterable) → void}; } =>#t10; core::Set set20 = block { - final core::Set #t11 = new col::_Set::•(); + final core::Set #t11 = new _co::_Set::•(); if(self::oracle("foo") as{TypeError,ForDynamic} core::bool) #t11.{core::Set::addAll}{Invariant}(core::_GrowableList::_literal1(42)){(core::Iterable) → void}; #t11.{core::Set::add}{Invariant}(null){(core::int?) → core::bool}; @@ -515,7 +515,7 @@ static method testIfElement(dynamic dynVar, core::List listInt, core: #t13.{core::List::addAll}{Invariant}(core::_GrowableList::_literal1(dynVar)){(core::Iterable) → void}; } =>#t13; core::Set set21 = block { - final core::Set #t14 = new col::_Set::•(); + final core::Set #t14 = new _co::_Set::•(); if(self::oracle("foo") as{TypeError,ForDynamic} core::bool) #t14.{core::Set::addAll}{Invariant}(core::_GrowableList::_literal1(dynVar)){(core::Iterable) → void}; #t14.{core::Set::add}{Invariant}(null){(dynamic) → core::bool}; @@ -532,7 +532,7 @@ static method testIfElement(dynamic dynVar, core::List listInt, core: #t16.{core::List::addAll}{Invariant}(core::_GrowableList::_literal1>(core::_GrowableList::_literal1(42))){(core::Iterable>) → void}; } =>#t16; core::Set?> set22 = block { - final core::Set?> #t17 = new col::_Set::•?>(); + final core::Set?> #t17 = new _co::_Set::•?>(); if(self::oracle("foo") as{TypeError,ForDynamic} core::bool) #t17.{core::Set::addAll}{Invariant}(core::_GrowableList::_literal1>(core::_GrowableList::_literal1(42))){(core::Iterable?>) → void}; #t17.{core::Set::add}{Invariant}(null){(core::List?) → core::bool}; @@ -550,7 +550,7 @@ static method testIfElement(dynamic dynVar, core::List listInt, core: #t19.{core::List::addAll}{Invariant}(core::_GrowableList::_literal1(42)){(core::Iterable) → void}; } =>#t19; core::Set set30 = block { - final core::Set #t20 = new col::_Set::•(); + final core::Set #t20 = new _co::_Set::•(); if(self::oracle("foo") as{TypeError,ForDynamic} core::bool) if(self::oracle() as{TypeError,ForDynamic} core::bool) #t20.{core::Set::addAll}{Invariant}(core::_GrowableList::_literal1(42)){(core::Iterable) → void}; @@ -570,7 +570,7 @@ static method testIfElement(dynamic dynVar, core::List listInt, core: #t22.{core::List::addAll}{Invariant}(core::_GrowableList::_literal1(dynVar)){(core::Iterable) → void}; } =>#t22; core::Set set31 = block { - final core::Set #t23 = new col::_Set::•(); + final core::Set #t23 = new _co::_Set::•(); if(self::oracle("foo") as{TypeError,ForDynamic} core::bool) if(self::oracle() as{TypeError,ForDynamic} core::bool) #t23.{core::Set::addAll}{Invariant}(core::_GrowableList::_literal1(dynVar)){(core::Iterable) → void}; @@ -590,7 +590,7 @@ static method testIfElement(dynamic dynVar, core::List listInt, core: #t25.{core::List::addAll}{Invariant}(core::_GrowableList::_literal1>(core::_GrowableList::_literal1(42))){(core::Iterable>) → void}; } =>#t25; core::Set?> set33 = block { - final core::Set?> #t26 = new col::_Set::•?>(); + final core::Set?> #t26 = new _co::_Set::•?>(); if(self::oracle("foo") as{TypeError,ForDynamic} core::bool) if(self::oracle() as{TypeError,ForDynamic} core::bool) #t26.{core::Set::addAll}{Invariant}(core::_GrowableList::_literal1>(core::_GrowableList::_literal1(42))){(core::Iterable?>) → void}; @@ -609,7 +609,7 @@ static method testIfElement(dynamic dynVar, core::List listInt, core: #t28.{core::List::addAll}{Invariant}(core::_GrowableList::_literal1>(core::_GrowableList::•(0))){(core::Iterable>) → void}; } =>#t28; core::Set?> set40 = block { - final core::Set?> #t29 = new col::_Set::•?>(); + final core::Set?> #t29 = new _co::_Set::•?>(); if(self::oracle("foo") as{TypeError,ForDynamic} core::bool) #t29.{core::Set::addAll}{Invariant}(core::_GrowableList::_literal1?>(core::_GrowableList::•(0))){(core::Iterable?>) → void}; #t29.{core::Set::add}{Invariant}(null){(core::List?) → core::bool}; @@ -621,15 +621,15 @@ static method testIfElement(dynamic dynVar, core::List listInt, core: final core::List> #t30 = core::_GrowableList::•>(0); if(self::oracle("foo") as{TypeError,ForDynamic} core::bool) #t30.{core::List::addAll}{Invariant}( block { - final core::Set> #t31 = new col::_Set::•>(); + final core::Set> #t31 = new _co::_Set::•>(); #t31.{core::Set::add}{Invariant}(core::_GrowableList::•(0)){(core::List) → core::bool}; } =>#t31){(core::Iterable>) → void}; } =>#t30; core::Set?> set41 = block { - final core::Set?> #t32 = new col::_Set::•?>(); + final core::Set?> #t32 = new _co::_Set::•?>(); if(self::oracle("foo") as{TypeError,ForDynamic} core::bool) #t32.{core::Set::addAll}{Invariant}( block { - final core::Set?> #t33 = new col::_Set::•?>(); + final core::Set?> #t33 = new _co::_Set::•?>(); #t33.{core::Set::add}{Invariant}(core::_GrowableList::•(0)){(core::List?) → core::bool}; } =>#t33){(core::Iterable?>) → void}; #t32.{core::Set::add}{Invariant}(null){(core::List?) → core::bool}; @@ -641,7 +641,7 @@ static method testIfElement(dynamic dynVar, core::List listInt, core: #t34.{core::List::addAll}{Invariant}(core::_GrowableList::_literal1>(core::_GrowableList::•(0))){(core::Iterable>) → void}; } =>#t34; core::Set?> set42 = block { - final core::Set?> #t35 = new col::_Set::•?>(); + final core::Set?> #t35 = new _co::_Set::•?>(); if(self::oracle("foo") as{TypeError,ForDynamic} core::bool) if(self::oracle() as{TypeError,ForDynamic} core::bool) #t35.{core::Set::addAll}{Invariant}(core::_GrowableList::_literal1?>(core::_GrowableList::•(0))){(core::Iterable?>) → void}; @@ -660,7 +660,7 @@ static method testIfElement(dynamic dynVar, core::List listInt, core: #t37.{core::List::addAll}{Invariant}(core::_GrowableList::•(0)){(core::Iterable) → void}; } =>#t37; core::Set set50 = block { - final core::Set #t38 = new col::_Set::•(); + final core::Set #t38 = new _co::_Set::•(); if(self::oracle("foo") as{TypeError,ForDynamic} core::bool) #t38.{core::Set::addAll}{Invariant}(core::_GrowableList::•(0)){(core::Iterable) → void}; #t38.{core::Set::add}{Invariant}(null){(core::int?) → core::bool}; @@ -675,14 +675,14 @@ static method testIfElement(dynamic dynVar, core::List listInt, core: final core::List #t40 = core::_GrowableList::•(0); if(self::oracle("foo") as{TypeError,ForDynamic} core::bool) #t40.{core::List::addAll}{Invariant}( block { - final core::Set #t41 = new col::_Set::•(); + final core::Set #t41 = new _co::_Set::•(); } =>#t41){(core::Iterable) → void}; } =>#t40; core::Set set51 = block { - final core::Set #t42 = new col::_Set::•(); + final core::Set #t42 = new _co::_Set::•(); if(self::oracle("foo") as{TypeError,ForDynamic} core::bool) #t42.{core::Set::addAll}{Invariant}( block { - final core::Set #t43 = new col::_Set::•(); + final core::Set #t43 = new _co::_Set::•(); } =>#t43){(core::Iterable) → void}; #t42.{core::Set::add}{Invariant}(null){(core::int?) → core::bool}; } =>#t42; @@ -693,7 +693,7 @@ static method testIfElement(dynamic dynVar, core::List listInt, core: #t44.{core::List::addAll}{Invariant}(core::_GrowableList::•(0)){(core::Iterable) → void}; } =>#t44; core::Set set52 = block { - final core::Set #t45 = new col::_Set::•(); + final core::Set #t45 = new _co::_Set::•(); if(self::oracle("foo") as{TypeError,ForDynamic} core::bool) if(self::oracle() as{TypeError,ForDynamic} core::bool) #t45.{core::Set::addAll}{Invariant}(core::_GrowableList::•(0)){(core::Iterable) → void}; @@ -712,7 +712,7 @@ static method testIfElement(dynamic dynVar, core::List listInt, core: #t47.{core::List::addAll}{Invariant}(core::_GrowableList::_literal1>(core::_GrowableList::•(0))){(core::Iterable>) → void}; } =>#t47; core::Set?> set60 = block { - final core::Set?> #t48 = new col::_Set::•?>(); + final core::Set?> #t48 = new _co::_Set::•?>(); if(self::oracle("foo") as{TypeError,ForDynamic} core::bool) #t48.{core::Set::addAll}{Invariant}(core::_GrowableList::_literal1?>(core::_GrowableList::•(0))){(core::Iterable?>) → void}; #t48.{core::Set::add}{Invariant}(null){(core::List?) → core::bool}; @@ -730,7 +730,7 @@ static method testIfElement(dynamic dynVar, core::List listInt, core: #t50.{core::List::addAll}{Invariant}(core::_GrowableList::_literal1>(core::_GrowableList::•(0))){(core::Iterable>) → void}; } =>#t50; core::Set?> set61 = block { - final core::Set?> #t51 = new col::_Set::•?>(); + final core::Set?> #t51 = new _co::_Set::•?>(); if(self::oracle("foo") as{TypeError,ForDynamic} core::bool) if(self::oracle() as{TypeError,ForDynamic} core::bool) #t51.{core::Set::addAll}{Invariant}(core::_GrowableList::_literal1?>(core::_GrowableList::•(0))){(core::Iterable?>) → void}; @@ -749,7 +749,7 @@ static method testIfElement(dynamic dynVar, core::List listInt, core: #t53.{core::List::add}{Invariant}(core::_GrowableList::•(0)){(core::List) → void}; } =>#t53; core::Set?> set70 = block { - final core::Set?> #t54 = new col::_Set::•?>(); + final core::Set?> #t54 = new _co::_Set::•?>(); if(self::oracle("foo") as{TypeError,ForDynamic} core::bool) #t54.{core::Set::add}{Invariant}(core::_GrowableList::•(0)){(core::List?) → core::bool}; #t54.{core::Set::add}{Invariant}(null){(core::List?) → core::bool}; @@ -761,7 +761,7 @@ static method testIfElement(dynamic dynVar, core::List listInt, core: #t55.{core::List::add}{Invariant}(core::_GrowableList::•(0)){(core::List) → void}; } =>#t55; core::Set?> set71 = block { - final core::Set?> #t56 = new col::_Set::•?>(); + final core::Set?> #t56 = new _co::_Set::•?>(); if(self::oracle("foo") as{TypeError,ForDynamic} core::bool) if(self::oracle() as{TypeError,ForDynamic} core::bool) #t56.{core::Set::add}{Invariant}(core::_GrowableList::•(0)){(core::List?) → core::bool}; @@ -775,7 +775,7 @@ static method testIfElement(dynamic dynVar, core::List listInt, core: #t57.{core::List::add}{Invariant}(3.14){(core::num) → void}; } =>#t57; core::Set set80 = block { - final core::Set #t58 = new col::_Set::•(); + final core::Set #t58 = new _co::_Set::•(); if(self::oracle("foo") as{TypeError,ForDynamic} core::bool) #t58.{core::Set::add}{Invariant}(42){(core::num?) → core::bool}; else @@ -798,7 +798,7 @@ static method testIfElement(dynamic dynVar, core::List listInt, core: #t60.{core::List::addAll}{Invariant}(listDouble){(core::Iterable) → void}; } =>#t60; core::Set set81 = block { - final core::Set #t61 = new col::_Set::•(); + final core::Set #t61 = new _co::_Set::•(); if(self::oracle("foo") as{TypeError,ForDynamic} core::bool) #t61.{core::Set::addAll}{Invariant}(listInt){(core::Iterable) → void}; else @@ -821,7 +821,7 @@ static method testIfElement(dynamic dynVar, core::List listInt, core: #t63.{core::List::addAll}{Invariant}(dynVar as{TypeError,ForDynamic} core::Iterable){(core::Iterable) → void}; } =>#t63; core::Set set82 = block { - final core::Set #t64 = new col::_Set::•(); + final core::Set #t64 = new _co::_Set::•(); if(self::oracle("foo") as{TypeError,ForDynamic} core::bool) #t64.{core::Set::addAll}{Invariant}(listInt){(core::Iterable) → void}; else @@ -829,7 +829,7 @@ static method testIfElement(dynamic dynVar, core::List listInt, core: #t64.{core::Set::add}{Invariant}(null){(dynamic) → core::bool}; } =>#t64; core::Set map82 = block { - final core::Set #t65 = new col::_Set::•(); + final core::Set #t65 = new _co::_Set::•(); if(self::oracle("foo") as{TypeError,ForDynamic} core::bool) #t65.{core::Set::add}{Invariant}(invalid-expression "pkg/front_end/testcases/general/control_flow_collection_inference.dart:71:38: Error: Unexpected type 'Map' of a spread. Expected 'dynamic' or an Iterable. - 'Map' is from 'dart:core'. @@ -847,7 +847,7 @@ static method testIfElement(dynamic dynVar, core::List listInt, core: #t66.{core::List::addAll}{Invariant}(listDouble){(core::Iterable) → void}; } =>#t66; core::Set set83 = block { - final core::Set #t67 = new col::_Set::•(); + final core::Set #t67 = new _co::_Set::•(); if(self::oracle("foo") as{TypeError,ForDynamic} core::bool) #t67.{core::Set::addAll}{Invariant}(listInt){(core::Iterable) → void}; else @@ -868,7 +868,7 @@ static method testIfElement(dynamic dynVar, core::List listInt, core: #t69.{core::List::add}{Invariant}(dynVar as{TypeError,ForDynamic} core::int){(core::int) → void}; } =>#t69; core::Set set90 = block { - final core::Set #t70 = new col::_Set::•(); + final core::Set #t70 = new _co::_Set::•(); if(self::oracle("foo") as{TypeError,ForDynamic} core::bool) #t70.{core::Set::add}{Invariant}(dynVar as{TypeError,ForDynamic} core::int?){(core::int?) → core::bool}; #t70.{core::Set::add}{Invariant}(null){(core::int?) → core::bool}; @@ -893,7 +893,7 @@ static method testIfElement(dynamic dynVar, core::List listInt, core: } } =>#t72; core::Set set91 = block { - final core::Set #t75 = new col::_Set::•(); + final core::Set #t75 = new _co::_Set::•(); if(self::oracle("foo") as{TypeError,ForDynamic} core::bool) { synthesized core::Iterator :sync-for-iterator = (dynVar as{TypeError,ForDynamic} core::Iterable).{core::Iterable::iterator}{core::Iterator}; for (; :sync-for-iterator.{core::Iterator::moveNext}(){() → core::bool}; ) { @@ -927,7 +927,7 @@ static method testIfElement(dynamic dynVar, core::List listInt, core: #t82.{core::List::add}{Invariant}(42){(core::int) → void}; } =>#t82; core::Set set100 = block { - final core::Set #t83 = new col::_Set::•(); + final core::Set #t83 = new _co::_Set::•(); if(dynVar as{TypeError,ForDynamic} core::bool) #t83.{core::Set::add}{Invariant}(42){(core::int) → core::bool}; } =>#t83; @@ -946,7 +946,7 @@ static method testIfElementErrors(core::Map map) → dynam ^" in "bar" as{TypeError} core::int){(core::int) → void}; } { - final core::Set #t86 = new col::_Set::•(); + final core::Set #t86 = new _co::_Set::•(); if(self::oracle("foo") as{TypeError,ForDynamic} core::bool) #t86.{core::Set::add}{Invariant}(invalid-expression "pkg/front_end/testcases/general/control_flow_collection_inference.dart:88:29: Error: A value of type 'String' can't be assigned to a variable of type 'int?'. {if (oracle(\"foo\")) \"bar\", null}; @@ -969,7 +969,7 @@ static method testIfElementErrors(core::Map map) → dynam ^" in "bar" as{TypeError} core::int)){(core::Iterable) → void}; } { - final core::Set #t89 = new col::_Set::•(); + final core::Set #t89 = new _co::_Set::•(); if(self::oracle("foo") as{TypeError,ForDynamic} core::bool) #t89.{core::Set::addAll}{Invariant}(core::_GrowableList::_literal1(invalid-expression "pkg/front_end/testcases/general/control_flow_collection_inference.dart:91:33: Error: A value of type 'String' can't be assigned to a variable of type 'int?'. {if (oracle(\"foo\")) ...[\"bar\"], null}; @@ -993,7 +993,7 @@ static method testIfElementErrors(core::Map map) → dynam ^"){(core::int) → void}; } { - final core::Set #t92 = new col::_Set::•(); + final core::Set #t92 = new _co::_Set::•(); if(self::oracle("foo") as{TypeError,ForDynamic} core::bool) #t92.{core::Set::add}{Invariant}(invalid-expression "pkg/front_end/testcases/general/control_flow_collection_inference.dart:94:32: Error: Unexpected type 'Map' of a spread. Expected 'dynamic' or an Iterable. - 'Map' is from 'dart:core'. @@ -1020,7 +1020,7 @@ static method testIfElementErrors(core::Map map) → dynam ^" in 3.14 as{TypeError} core::String){(core::String) → void}; } { - final core::Set #t94 = new col::_Set::•(); + final core::Set #t94 = new _co::_Set::•(); if(self::oracle("foo") as{TypeError,ForDynamic} core::bool) #t94.{core::Set::add}{Invariant}(invalid-expression "pkg/front_end/testcases/general/control_flow_collection_inference.dart:97:32: Error: A value of type 'int' can't be assigned to a variable of type 'String?'. {if (oracle(\"foo\")) 42 else 3.14, null}; @@ -1054,7 +1054,7 @@ static method testIfElementErrors(core::Map map) → dynam #t96.{core::List::add}{Invariant}(42){(core::int) → void}; } { - final core::Set #t97 = new col::_Set::•(); + final core::Set #t97 = new _co::_Set::•(); if(self::oracle("foo") as{TypeError,ForDynamic} core::bool) #t97.{core::Set::add}{Invariant}(invalid-expression "pkg/front_end/testcases/general/control_flow_collection_inference.dart:100:32: Error: Unexpected type 'Map' of a spread. Expected 'dynamic' or an Iterable. - 'Map' is from 'dart:core'. @@ -1082,7 +1082,7 @@ static method testIfElementErrors(core::Map map) → dynam ^"){(core::int) → void}; } { - final core::Set #t99 = new col::_Set::•(); + final core::Set #t99 = new _co::_Set::•(); if(self::oracle("foo") as{TypeError,ForDynamic} core::bool) #t99.{core::Set::add}{Invariant}(invalid-expression "pkg/front_end/testcases/general/control_flow_collection_inference.dart:103:32: Error: Unexpected type 'Map' of a spread. Expected 'dynamic' or an Iterable. - 'Map' is from 'dart:core'. @@ -1125,7 +1125,7 @@ static method testIfElementErrors(core::Map map) → dynam #t100.{core::List::add}{Invariant}(42){(core::int) → void}; } =>#t100; core::Set set20 = block { - final core::Set #t101 = new col::_Set::•(); + final core::Set #t101 = new _co::_Set::•(); if(invalid-expression "pkg/front_end/testcases/general/control_flow_collection_inference.dart:113:25: Error: A value of type 'int' can't be assigned to a variable of type 'bool'. Set set20 = {if (42) 42}; ^" in 42 as{TypeError} core::bool) @@ -1150,7 +1150,7 @@ static method testIfElementErrors(core::Map map) → dynam ^" in 42 as{TypeError} core::String){(core::String) → void}; } =>#t103; core::Set set40 = block { - final core::Set #t104 = new col::_Set::•(); + final core::Set #t104 = new _co::_Set::•(); if(self::oracle("foo") as{TypeError,ForDynamic} core::bool) #t104.{core::Set::add}{Invariant}(invalid-expression "pkg/front_end/testcases/general/control_flow_collection_inference.dart:116:51: Error: A value of type 'bool' can't be assigned to a variable of type 'String'. Set set40 = {if (oracle(\"foo\")) true else 42}; @@ -1190,7 +1190,7 @@ static method testForElement(dynamic dynVar, core::List listInt, core #t107.{core::List::add}{Invariant}(42){(core::int) → void}; } =>#t107; core::Set set10 = block { - final core::Set #t108 = new col::_Set::•(); + final core::Set #t108 = new _co::_Set::•(); for (core::int i = 0; self::oracle("foo") as{TypeError,ForDynamic} core::bool; i = i.{core::num::+}(1){(core::num) → core::int}) #t108.{core::Set::add}{Invariant}(42){(core::int?) → core::bool}; #t108.{core::Set::add}{Invariant}(null){(core::int?) → core::bool}; @@ -1207,7 +1207,7 @@ static method testForElement(dynamic dynVar, core::List listInt, core #t110.{core::List::add}{Invariant}(dynVar){(dynamic) → void}; } =>#t110; core::Set set11 = block { - final core::Set #t111 = new col::_Set::•(); + final core::Set #t111 = new _co::_Set::•(); for (core::int i = 0; self::oracle("foo") as{TypeError,ForDynamic} core::bool; i = i.{core::num::+}(1){(core::num) → core::int}) #t111.{core::Set::add}{Invariant}(dynVar){(dynamic) → core::bool}; #t111.{core::Set::add}{Invariant}(null){(dynamic) → core::bool}; @@ -1224,7 +1224,7 @@ static method testForElement(dynamic dynVar, core::List listInt, core #t113.{core::List::add}{Invariant}(core::_GrowableList::_literal1(42)){(core::List) → void}; } =>#t113; core::Set?> set12 = block { - final core::Set?> #t114 = new col::_Set::•?>(); + final core::Set?> #t114 = new _co::_Set::•?>(); for (core::int i = 0; self::oracle("foo") as{TypeError,ForDynamic} core::bool; i = i.{core::num::+}(1){(core::num) → core::int}) #t114.{core::Set::add}{Invariant}(core::_GrowableList::_literal1(42)){(core::List?) → core::bool}; #t114.{core::Set::add}{Invariant}(null){(core::List?) → core::bool}; @@ -1241,7 +1241,7 @@ static method testForElement(dynamic dynVar, core::List listInt, core #t116.{core::List::addAll}{Invariant}(core::_GrowableList::_literal1(42)){(core::Iterable) → void}; } =>#t116; core::Set set20 = block { - final core::Set #t117 = new col::_Set::•(); + final core::Set #t117 = new _co::_Set::•(); for (core::int i = 0; self::oracle("foo") as{TypeError,ForDynamic} core::bool; i = i.{core::num::+}(1){(core::num) → core::int}) #t117.{core::Set::addAll}{Invariant}(core::_GrowableList::_literal1(42)){(core::Iterable) → void}; #t117.{core::Set::add}{Invariant}(null){(core::int?) → core::bool}; @@ -1258,7 +1258,7 @@ static method testForElement(dynamic dynVar, core::List listInt, core #t119.{core::List::addAll}{Invariant}(core::_GrowableList::_literal1(dynVar)){(core::Iterable) → void}; } =>#t119; core::Set set21 = block { - final core::Set #t120 = new col::_Set::•(); + final core::Set #t120 = new _co::_Set::•(); for (core::int i = 0; self::oracle("foo") as{TypeError,ForDynamic} core::bool; i = i.{core::num::+}(1){(core::num) → core::int}) #t120.{core::Set::addAll}{Invariant}(core::_GrowableList::_literal1(dynVar)){(core::Iterable) → void}; #t120.{core::Set::add}{Invariant}(null){(dynamic) → core::bool}; @@ -1275,7 +1275,7 @@ static method testForElement(dynamic dynVar, core::List listInt, core #t122.{core::List::addAll}{Invariant}(core::_GrowableList::_literal1>(core::_GrowableList::_literal1(42))){(core::Iterable>) → void}; } =>#t122; core::Set?> set22 = block { - final core::Set?> #t123 = new col::_Set::•?>(); + final core::Set?> #t123 = new _co::_Set::•?>(); for (core::int i = 0; self::oracle("foo") as{TypeError,ForDynamic} core::bool; i = i.{core::num::+}(1){(core::num) → core::int}) #t123.{core::Set::addAll}{Invariant}(core::_GrowableList::_literal1>(core::_GrowableList::_literal1(42))){(core::Iterable?>) → void}; #t123.{core::Set::add}{Invariant}(null){(core::List?) → core::bool}; @@ -1293,7 +1293,7 @@ static method testForElement(dynamic dynVar, core::List listInt, core #t125.{core::List::addAll}{Invariant}(core::_GrowableList::_literal1(42)){(core::Iterable) → void}; } =>#t125; core::Set set30 = block { - final core::Set #t126 = new col::_Set::•(); + final core::Set #t126 = new _co::_Set::•(); for (core::int i = 0; self::oracle("foo") as{TypeError,ForDynamic} core::bool; i = i.{core::num::+}(1){(core::num) → core::int}) if(self::oracle() as{TypeError,ForDynamic} core::bool) #t126.{core::Set::addAll}{Invariant}(core::_GrowableList::_literal1(42)){(core::Iterable) → void}; @@ -1313,7 +1313,7 @@ static method testForElement(dynamic dynVar, core::List listInt, core #t128.{core::List::addAll}{Invariant}(core::_GrowableList::_literal1(dynVar)){(core::Iterable) → void}; } =>#t128; core::Set set31 = block { - final core::Set #t129 = new col::_Set::•(); + final core::Set #t129 = new _co::_Set::•(); for (core::int i = 0; self::oracle("foo") as{TypeError,ForDynamic} core::bool; i = i.{core::num::+}(1){(core::num) → core::int}) if(self::oracle() as{TypeError,ForDynamic} core::bool) #t129.{core::Set::addAll}{Invariant}(core::_GrowableList::_literal1(dynVar)){(core::Iterable) → void}; @@ -1333,7 +1333,7 @@ static method testForElement(dynamic dynVar, core::List listInt, core #t131.{core::List::addAll}{Invariant}(core::_GrowableList::_literal1>(core::_GrowableList::_literal1(42))){(core::Iterable>) → void}; } =>#t131; core::Set?> set33 = block { - final core::Set?> #t132 = new col::_Set::•?>(); + final core::Set?> #t132 = new _co::_Set::•?>(); for (core::int i = 0; self::oracle("foo") as{TypeError,ForDynamic} core::bool; i = i.{core::num::+}(1){(core::num) → core::int}) if(self::oracle() as{TypeError,ForDynamic} core::bool) #t132.{core::Set::addAll}{Invariant}(core::_GrowableList::_literal1>(core::_GrowableList::_literal1(42))){(core::Iterable?>) → void}; @@ -1352,7 +1352,7 @@ static method testForElement(dynamic dynVar, core::List listInt, core #t134.{core::List::addAll}{Invariant}(core::_GrowableList::_literal1>(core::_GrowableList::•(0))){(core::Iterable>) → void}; } =>#t134; core::Set?> set40 = block { - final core::Set?> #t135 = new col::_Set::•?>(); + final core::Set?> #t135 = new _co::_Set::•?>(); for (core::int i = 0; self::oracle("foo") as{TypeError,ForDynamic} core::bool; i = i.{core::num::+}(1){(core::num) → core::int}) #t135.{core::Set::addAll}{Invariant}(core::_GrowableList::_literal1?>(core::_GrowableList::•(0))){(core::Iterable?>) → void}; #t135.{core::Set::add}{Invariant}(null){(core::List?) → core::bool}; @@ -1367,15 +1367,15 @@ static method testForElement(dynamic dynVar, core::List listInt, core final core::List> #t137 = core::_GrowableList::•>(0); for (core::int i = 0; self::oracle("foo") as{TypeError,ForDynamic} core::bool; i = i.{core::num::+}(1){(core::num) → core::int}) #t137.{core::List::addAll}{Invariant}( block { - final core::Set> #t138 = new col::_Set::•>(); + final core::Set> #t138 = new _co::_Set::•>(); #t138.{core::Set::add}{Invariant}(core::_GrowableList::•(0)){(core::List) → core::bool}; } =>#t138){(core::Iterable>) → void}; } =>#t137; core::Set?> set41 = block { - final core::Set?> #t139 = new col::_Set::•?>(); + final core::Set?> #t139 = new _co::_Set::•?>(); for (core::int i = 0; self::oracle("foo") as{TypeError,ForDynamic} core::bool; i = i.{core::num::+}(1){(core::num) → core::int}) #t139.{core::Set::addAll}{Invariant}( block { - final core::Set?> #t140 = new col::_Set::•?>(); + final core::Set?> #t140 = new _co::_Set::•?>(); #t140.{core::Set::add}{Invariant}(core::_GrowableList::•(0)){(core::List?) → core::bool}; } =>#t140){(core::Iterable?>) → void}; #t139.{core::Set::add}{Invariant}(null){(core::List?) → core::bool}; @@ -1387,7 +1387,7 @@ static method testForElement(dynamic dynVar, core::List listInt, core #t141.{core::List::addAll}{Invariant}(core::_GrowableList::_literal1>(core::_GrowableList::•(0))){(core::Iterable>) → void}; } =>#t141; core::Set?> set42 = block { - final core::Set?> #t142 = new col::_Set::•?>(); + final core::Set?> #t142 = new _co::_Set::•?>(); for (core::int i = 0; self::oracle("foo") as{TypeError,ForDynamic} core::bool; i = i.{core::num::+}(1){(core::num) → core::int}) if(self::oracle() as{TypeError,ForDynamic} core::bool) #t142.{core::Set::addAll}{Invariant}(core::_GrowableList::_literal1?>(core::_GrowableList::•(0))){(core::Iterable?>) → void}; @@ -1406,7 +1406,7 @@ static method testForElement(dynamic dynVar, core::List listInt, core #t144.{core::List::addAll}{Invariant}(core::_GrowableList::•(0)){(core::Iterable) → void}; } =>#t144; core::Set set50 = block { - final core::Set #t145 = new col::_Set::•(); + final core::Set #t145 = new _co::_Set::•(); for (core::int i = 0; self::oracle("foo") as{TypeError,ForDynamic} core::bool; i = i.{core::num::+}(1){(core::num) → core::int}) #t145.{core::Set::addAll}{Invariant}(core::_GrowableList::•(0)){(core::Iterable) → void}; #t145.{core::Set::add}{Invariant}(null){(core::int?) → core::bool}; @@ -1421,14 +1421,14 @@ static method testForElement(dynamic dynVar, core::List listInt, core final core::List #t147 = core::_GrowableList::•(0); for (core::int i = 0; self::oracle("foo") as{TypeError,ForDynamic} core::bool; i = i.{core::num::+}(1){(core::num) → core::int}) #t147.{core::List::addAll}{Invariant}( block { - final core::Set #t148 = new col::_Set::•(); + final core::Set #t148 = new _co::_Set::•(); } =>#t148){(core::Iterable) → void}; } =>#t147; core::Set set51 = block { - final core::Set #t149 = new col::_Set::•(); + final core::Set #t149 = new _co::_Set::•(); for (core::int i = 0; self::oracle("foo") as{TypeError,ForDynamic} core::bool; i = i.{core::num::+}(1){(core::num) → core::int}) #t149.{core::Set::addAll}{Invariant}( block { - final core::Set #t150 = new col::_Set::•(); + final core::Set #t150 = new _co::_Set::•(); } =>#t150){(core::Iterable) → void}; #t149.{core::Set::add}{Invariant}(null){(core::int?) → core::bool}; } =>#t149; @@ -1439,7 +1439,7 @@ static method testForElement(dynamic dynVar, core::List listInt, core #t151.{core::List::addAll}{Invariant}(core::_GrowableList::•(0)){(core::Iterable) → void}; } =>#t151; core::Set set52 = block { - final core::Set #t152 = new col::_Set::•(); + final core::Set #t152 = new _co::_Set::•(); for (core::int i = 0; self::oracle("foo") as{TypeError,ForDynamic} core::bool; i = i.{core::num::+}(1){(core::num) → core::int}) if(self::oracle() as{TypeError,ForDynamic} core::bool) #t152.{core::Set::addAll}{Invariant}(core::_GrowableList::•(0)){(core::Iterable) → void}; @@ -1451,7 +1451,7 @@ static method testForElement(dynamic dynVar, core::List listInt, core #t153.{core::List::addAll}{Invariant}(core::_GrowableList::_literal1>(core::_GrowableList::•(0))){(core::Iterable>) → void}; } =>#t153; core::Set?> set60 = block { - final core::Set?> #t154 = new col::_Set::•?>(); + final core::Set?> #t154 = new _co::_Set::•?>(); for (core::int i = 0; self::oracle("foo") as{TypeError,ForDynamic} core::bool; i = i.{core::num::+}(1){(core::num) → core::int}) #t154.{core::Set::addAll}{Invariant}(core::_GrowableList::_literal1?>(core::_GrowableList::•(0))){(core::Iterable?>) → void}; #t154.{core::Set::add}{Invariant}(null){(core::List?) → core::bool}; @@ -1469,7 +1469,7 @@ static method testForElement(dynamic dynVar, core::List listInt, core #t156.{core::List::addAll}{Invariant}(core::_GrowableList::_literal1>(core::_GrowableList::•(0))){(core::Iterable>) → void}; } =>#t156; core::Set?> set61 = block { - final core::Set?> #t157 = new col::_Set::•?>(); + final core::Set?> #t157 = new _co::_Set::•?>(); for (core::int i = 0; self::oracle("foo") as{TypeError,ForDynamic} core::bool; i = i.{core::num::+}(1){(core::num) → core::int}) if(self::oracle() as{TypeError,ForDynamic} core::bool) #t157.{core::Set::addAll}{Invariant}(core::_GrowableList::_literal1?>(core::_GrowableList::•(0))){(core::Iterable?>) → void}; @@ -1488,7 +1488,7 @@ static method testForElement(dynamic dynVar, core::List listInt, core #t159.{core::List::add}{Invariant}(core::_GrowableList::•(0)){(core::List) → void}; } =>#t159; core::Set?> set70 = block { - final core::Set?> #t160 = new col::_Set::•?>(); + final core::Set?> #t160 = new _co::_Set::•?>(); for (core::int i = 0; self::oracle("foo") as{TypeError,ForDynamic} core::bool; i = i.{core::num::+}(1){(core::num) → core::int}) #t160.{core::Set::add}{Invariant}(core::_GrowableList::•(0)){(core::List?) → core::bool}; #t160.{core::Set::add}{Invariant}(null){(core::List?) → core::bool}; @@ -1506,7 +1506,7 @@ static method testForElement(dynamic dynVar, core::List listInt, core #t162.{core::List::add}{Invariant}(core::_GrowableList::•(0)){(core::List) → void}; } =>#t162; core::Set?> set71 = block { - final core::Set?> #t163 = new col::_Set::•?>(); + final core::Set?> #t163 = new _co::_Set::•?>(); for (core::int i = 0; self::oracle("foo") as{TypeError,ForDynamic} core::bool; i = i.{core::num::+}(1){(core::num) → core::int}) if(self::oracle() as{TypeError,ForDynamic} core::bool) #t163.{core::Set::add}{Invariant}(core::_GrowableList::•(0)){(core::List?) → core::bool}; @@ -1528,7 +1528,7 @@ static method testForElement(dynamic dynVar, core::List listInt, core #t165.{core::List::add}{Invariant}(3.14){(core::num) → void}; } =>#t165; core::Set set80 = block { - final core::Set #t166 = new col::_Set::•(); + final core::Set #t166 = new _co::_Set::•(); for (core::int i = 0; self::oracle("foo") as{TypeError,ForDynamic} core::bool; i = i.{core::num::+}(1){(core::num) → core::int}) if(self::oracle() as{TypeError,ForDynamic} core::bool) #t166.{core::Set::add}{Invariant}(42){(core::num?) → core::bool}; @@ -1554,7 +1554,7 @@ static method testForElement(dynamic dynVar, core::List listInt, core #t168.{core::List::addAll}{Invariant}(listDouble){(core::Iterable) → void}; } =>#t168; core::Set set81 = block { - final core::Set #t169 = new col::_Set::•(); + final core::Set #t169 = new _co::_Set::•(); for (core::int i = 0; self::oracle("foo") as{TypeError,ForDynamic} core::bool; i = i.{core::num::+}(1){(core::num) → core::int}) if(self::oracle() as{TypeError,ForDynamic} core::bool) #t169.{core::Set::addAll}{Invariant}(listInt){(core::Iterable) → void}; @@ -1580,7 +1580,7 @@ static method testForElement(dynamic dynVar, core::List listInt, core #t171.{core::List::addAll}{Invariant}(dynVar as{TypeError,ForDynamic} core::Iterable){(core::Iterable) → void}; } =>#t171; core::Set set82 = block { - final core::Set #t172 = new col::_Set::•(); + final core::Set #t172 = new _co::_Set::•(); for (core::int i = 0; self::oracle("foo") as{TypeError,ForDynamic} core::bool; i = i.{core::num::+}(1){(core::num) → core::int}) if(self::oracle() as{TypeError,ForDynamic} core::bool) #t172.{core::Set::addAll}{Invariant}(listInt){(core::Iterable) → void}; @@ -1606,7 +1606,7 @@ static method testForElement(dynamic dynVar, core::List listInt, core #t174.{core::List::addAll}{Invariant}(listDouble){(core::Iterable) → void}; } =>#t174; core::Set set83 = block { - final core::Set #t175 = new col::_Set::•(); + final core::Set #t175 = new _co::_Set::•(); for (core::int i = 0; self::oracle("foo") as{TypeError,ForDynamic} core::bool; i = i.{core::num::+}(1){(core::num) → core::int}) if(self::oracle() as{TypeError,ForDynamic} core::bool) #t175.{core::Set::addAll}{Invariant}(listInt){(core::Iterable) → void}; @@ -1629,7 +1629,7 @@ static method testForElement(dynamic dynVar, core::List listInt, core #t177.{core::List::add}{Invariant}(dynVar as{TypeError,ForDynamic} core::int){(core::int) → void}; } =>#t177; core::Set set90 = block { - final core::Set #t178 = new col::_Set::•(); + final core::Set #t178 = new _co::_Set::•(); for (core::int i = 0; self::oracle("foo") as{TypeError,ForDynamic} core::bool; i = i.{core::num::+}(1){(core::num) → core::int}) #t178.{core::Set::add}{Invariant}(dynVar as{TypeError,ForDynamic} core::int?){(core::int?) → core::bool}; #t178.{core::Set::add}{Invariant}(null){(core::int?) → core::bool}; @@ -1654,7 +1654,7 @@ static method testForElement(dynamic dynVar, core::List listInt, core } } =>#t180; core::Set set91 = block { - final core::Set #t183 = new col::_Set::•(); + final core::Set #t183 = new _co::_Set::•(); for (core::int i = 0; self::oracle("foo") as{TypeError,ForDynamic} core::bool; i = i.{core::num::+}(1){(core::num) → core::int}) { synthesized core::Iterator :sync-for-iterator = (dynVar as{TypeError,ForDynamic} core::Iterable).{core::Iterable::iterator}{core::Iterator}; for (; :sync-for-iterator.{core::Iterator::moveNext}(){() → core::bool}; ) { @@ -1688,7 +1688,7 @@ static method testForElement(dynamic dynVar, core::List listInt, core #t190.{core::List::add}{Invariant}(42){(core::int) → void}; } =>#t190; core::Set set100 = block { - final core::Set #t192 = new col::_Set::•(); + final core::Set #t192 = new _co::_Set::•(); for (final core::int #t193 = index = 0; self::oracle("foo") as{TypeError,ForDynamic} core::bool; index = index.{core::num::+}(1){(core::num) → core::int}) #t192.{core::Set::add}{Invariant}(42){(core::int) → core::bool}; } =>#t192; @@ -1708,7 +1708,7 @@ static method testForElement(dynamic dynVar, core::List listInt, core } } =>#t196; core::Set set110 = block { - final core::Set #t197 = new col::_Set::•(); + final core::Set #t197 = new _co::_Set::•(); { synthesized core::Iterator :sync-for-iterator = core::_GrowableList::_literal3(1, 2, 3).{core::Iterable::iterator}{core::Iterator}; for (; :sync-for-iterator.{core::Iterator::moveNext}(){() → core::bool}; ) { @@ -1740,7 +1740,7 @@ static method testForElement(dynamic dynVar, core::List listInt, core } } =>#t199; core::Set set120 = block { - final core::Set #t200 = new col::_Set::•(); + final core::Set #t200 = new _co::_Set::•(); { synthesized core::Iterator :sync-for-iterator = (dynVar as{TypeError,ForDynamic} core::Iterable).{core::Iterable::iterator}{core::Iterator}; for (; :sync-for-iterator.{core::Iterator::moveNext}(){() → core::bool}; ) { @@ -1767,7 +1767,7 @@ static method testForElement(dynamic dynVar, core::List listInt, core #t202.{core::List::add}{Invariant}(i){(core::int) → void}; } =>#t202; core::Set set130 = block { - final core::Set #t203 = new col::_Set::•(); + final core::Set #t203 = new _co::_Set::•(); for (core::int i = 1; i.{core::num::<}(2){(core::num) → core::bool}; i = i.{core::num::+}(1){(core::num) → core::int}) #t203.{core::Set::add}{Invariant}(i){(core::int) → core::bool}; } =>#t203; @@ -1786,7 +1786,7 @@ static method testForElementErrors(core::Map map, core::Li ^" in "bar" as{TypeError} core::int){(core::int) → void}; } { - final core::Set #t206 = new col::_Set::•(); + final core::Set #t206 = new _co::_Set::•(); for (core::int i = 0; self::oracle("foo") as{TypeError,ForDynamic} core::bool; i = i.{core::num::+}(1){(core::num) → core::int}) #t206.{core::Set::add}{Invariant}(invalid-expression "pkg/front_end/testcases/general/control_flow_collection_inference.dart:211:46: Error: A value of type 'String' can't be assigned to a variable of type 'int?'. {for (int i = 0; oracle(\"foo\"); i++) \"bar\", null}; @@ -1813,7 +1813,7 @@ static method testForElementErrors(core::Map map, core::Li ^" in "bar" as{TypeError} core::int)){(core::Iterable) → void}; } { - final core::Set #t209 = new col::_Set::•(); + final core::Set #t209 = new _co::_Set::•(); for (core::int i = 0; self::oracle("foo") as{TypeError,ForDynamic} core::bool; i = i.{core::num::+}(1){(core::num) → core::int}) #t209.{core::Set::addAll}{Invariant}(core::_GrowableList::_literal1(invalid-expression "pkg/front_end/testcases/general/control_flow_collection_inference.dart:214:50: Error: A value of type 'String' can't be assigned to a variable of type 'int?'. {for (int i = 0; oracle(\"foo\"); i++) ...[\"bar\"], null}; @@ -1841,7 +1841,7 @@ static method testForElementErrors(core::Map map, core::Li ^"){(core::int) → void}; } { - final core::Set #t212 = new col::_Set::•(); + final core::Set #t212 = new _co::_Set::•(); for (core::int i = 0; self::oracle("foo") as{TypeError,ForDynamic} core::bool; i = i.{core::num::+}(1){(core::num) → core::int}) #t212.{core::Set::add}{Invariant}(invalid-expression "pkg/front_end/testcases/general/control_flow_collection_inference.dart:217:49: Error: Unexpected type 'Map' of a spread. Expected 'dynamic' or an Iterable. - 'Map' is from 'dart:core'. @@ -1869,7 +1869,7 @@ static method testForElementErrors(core::Map map, core::Li ^" in 3.14 as{TypeError} core::String){(core::String) → void}; } { - final core::Set #t214 = new col::_Set::•(); + final core::Set #t214 = new _co::_Set::•(); for (core::int i = 0; self::oracle("foo") as{TypeError,ForDynamic} core::bool; i = i.{core::num::+}(1){(core::num) → core::int}) if(self::oracle() as{TypeError,ForDynamic} core::bool) #t214.{core::Set::add}{Invariant}(invalid-expression "pkg/front_end/testcases/general/control_flow_collection_inference.dart:220:63: Error: A value of type 'int' can't be assigned to a variable of type 'String?'. @@ -1906,7 +1906,7 @@ static method testForElementErrors(core::Map map, core::Li #t216.{core::List::add}{Invariant}(42){(core::int) → void}; } { - final core::Set #t217 = new col::_Set::•(); + final core::Set #t217 = new _co::_Set::•(); for (core::int i = 0; self::oracle("foo") as{TypeError,ForDynamic} core::bool; i = i.{core::num::+}(1){(core::num) → core::int}) if(self::oracle() as{TypeError,ForDynamic} core::bool) #t217.{core::Set::add}{Invariant}(invalid-expression "pkg/front_end/testcases/general/control_flow_collection_inference.dart:223:63: Error: Unexpected type 'Map' of a spread. Expected 'dynamic' or an Iterable. @@ -1936,7 +1936,7 @@ static method testForElementErrors(core::Map map, core::Li ^"){(core::int) → void}; } { - final core::Set #t219 = new col::_Set::•(); + final core::Set #t219 = new _co::_Set::•(); for (core::int i = 0; self::oracle("foo") as{TypeError,ForDynamic} core::bool; i = i.{core::num::+}(1){(core::num) → core::int}) if(self::oracle() as{TypeError,ForDynamic} core::bool) #t219.{core::Set::add}{Invariant}(42){(core::int?) → core::bool}; @@ -1971,7 +1971,7 @@ static method testForElementErrors(core::Map map, core::Li } } { - final core::Set #t222 = new col::_Set::•(); + final core::Set #t222 = new _co::_Set::•(); { synthesized core::Iterator :sync-for-iterator = core::_GrowableList::_literal1(1).{core::Iterable::iterator}{core::Iterator}; for (; :sync-for-iterator.{core::Iterator::moveNext}(){() → core::bool}; ) { @@ -2016,7 +2016,7 @@ static method testForElementErrors(core::Map map, core::Li } } =>#t226; core::Set set10 = block { - final core::Set #t227 = new col::_Set::•(); + final core::Set #t227 = new _co::_Set::•(); { synthesized core::Iterator :sync-for-iterator = invalid-expression "pkg/front_end/testcases/general/control_flow_collection_inference.dart:235:30: Error: The type 'String' used in the 'for' loop must implement 'Iterable'. - 'Iterable' is from 'dart:core'. @@ -2058,7 +2058,7 @@ static method testForElementErrors(core::Map map, core::Li } } =>#t229; core::Set set20 = block { - final core::Set #t230 = new col::_Set::•(); + final core::Set #t230 = new _co::_Set::•(); { synthesized core::Iterator :sync-for-iterator = core::_GrowableList::_literal2(invalid-expression "pkg/front_end/testcases/general/control_flow_collection_inference.dart:238:31: Error: A value of type 'String' can't be assigned to a variable of type 'int'. var set20 = {for (int i in [\"not\", \"int\"]) i, null}; @@ -2106,7 +2106,7 @@ static method testForElementErrors(core::Map map, core::Li } } =>#t232; core::Set set30 = block { - final core::Set #t234 = new col::_Set::•(); + final core::Set #t234 = new _co::_Set::•(); { synthesized Never :stream = invalid-expression "pkg/front_end/testcases/general/control_flow_collection_inference.dart:241:36: Error: The type 'String' used in the 'for' loop must implement 'Stream'. - 'Stream' is from 'dart:async'. @@ -2163,7 +2163,7 @@ static method testForElementErrors(core::Map map, core::Li } } =>#t238; core::Set set40 = block { - final core::Set #t240 = new col::_Set::•(); + final core::Set #t240 = new _co::_Set::•(); { synthesized asy::Stream :stream = asy::Stream::fromIterable(core::_GrowableList::_literal2(invalid-expression "pkg/front_end/testcases/general/control_flow_collection_inference.dart:244:57: Error: A value of type 'String' can't be assigned to a variable of type 'int'. var set40 = {await for (int i in Stream.fromIterable([\"not\", \"int\"])) i, null}; @@ -2208,7 +2208,7 @@ static method testForElementErrors(core::Map map, core::Li #t244.{core::List::add}{Invariant}(42){(core::int) → void}; } =>#t244; core::Set set50 = block { - final core::Set #t245 = new col::_Set::•(); + final core::Set #t245 = new _co::_Set::•(); for (; ; ) #t245.{core::Set::add}{Invariant}(42){(core::int?) → core::bool}; #t245.{core::Set::add}{Invariant}(null){(core::int?) → core::bool}; @@ -2227,7 +2227,7 @@ static method testForElementErrors(core::Map map, core::Li #t247.{core::List::add}{Invariant}(42){(core::int) → void}; } =>#t247; core::Set set60 = block { - final core::Set #t248 = new col::_Set::•(); + final core::Set #t248 = new _co::_Set::•(); for (; invalid-expression "pkg/front_end/testcases/general/control_flow_collection_inference.dart:250:23: Error: A value of type 'String' can't be assigned to a variable of type 'bool'. var set60 = {for (; \"not bool\";) 42, null}; ^" in "not bool" as{TypeError} core::bool; ) @@ -2250,7 +2250,7 @@ static method testForElementErrorsNotAsync(asy::Stream stream) → dy #t250.{core::List::add}{Invariant}(i){(core::int) → void}; } { - final core::Set #t251 = new col::_Set::•(); + final core::Set #t251 = new _co::_Set::•(); await for (core::int i in stream) #t251.{core::Set::add}{Invariant}(i){(core::int) → core::bool}; } @@ -2267,7 +2267,7 @@ static method testPromotion(self::A a) → dynamic { #t253.{core::List::add}{Invariant}(a{self::B}.{self::B::foo}{core::int}){(core::int) → void}; } =>#t253; core::Set set10 = block { - final core::Set #t254 = new col::_Set::•(); + final core::Set #t254 = new _co::_Set::•(); if(a is self::B) #t254.{core::Set::add}{Invariant}(a{self::B}.{self::B::foo}{core::int}){(core::int) → core::bool}; } =>#t254; diff --git a/pkg/front_end/testcases/general/if_null_in_set_literal.dart.strong.transformed.expect b/pkg/front_end/testcases/general/if_null_in_set_literal.dart.strong.transformed.expect index c820943e5d6..8d6121d1fe3 100644 --- a/pkg/front_end/testcases/general/if_null_in_set_literal.dart.strong.transformed.expect +++ b/pkg/front_end/testcases/general/if_null_in_set_literal.dart.strong.transformed.expect @@ -1,13 +1,13 @@ library; import self as self; import "dart:core" as core; -import "dart:collection" as col; +import "dart:_compact_hash" as _co; static method main() → dynamic { core::Object? a; core::Object? b; return block { - final core::Set #t1 = new col::_Set::•(); + final core::Set #t1 = new _co::_Set::•(); #t1.{core::Set::add}{Invariant}(let final core::Object? #t2 = a in #t2 == null ?{core::Object?} b : #t2{core::Object}){(core::Object?) → core::bool}; } =>#t1; } diff --git a/pkg/front_end/testcases/general/inferred_generic_function_type_argument.dart.strong.transformed.expect b/pkg/front_end/testcases/general/inferred_generic_function_type_argument.dart.strong.transformed.expect index 5a9dee16a93..436dc75a41f 100644 --- a/pkg/front_end/testcases/general/inferred_generic_function_type_argument.dart.strong.transformed.expect +++ b/pkg/front_end/testcases/general/inferred_generic_function_type_argument.dart.strong.transformed.expect @@ -29,7 +29,7 @@ library; // import self as self; import "dart:core" as core; -import "dart:collection" as col; +import "dart:_compact_hash" as _co; typedef F = () → void; static method method() → self::method::T% @@ -38,7 +38,7 @@ static method test(() → void f) → dynamic f = self::method<() → void>(); core::List<() → void> list = core::_GrowableList::_literal1<() → void>(f); core::Set<() → void> set = block { - final core::Set<() → void> #t1 = new col::_Set::•<() → void>(); + final core::Set<() → void> #t1 = new _co::_Set::•<() → void>(); #t1.{core::Set::add}{Invariant}(f){(() → void) → core::bool}; } =>#t1; core::Map<() → void, core::int> map1 = <() → void, core::int>{f: 1}; diff --git a/pkg/front_end/testcases/general/issue37027.dart.strong.transformed.expect b/pkg/front_end/testcases/general/issue37027.dart.strong.transformed.expect index de747f15f1e..f7c08d396c1 100644 --- a/pkg/front_end/testcases/general/issue37027.dart.strong.transformed.expect +++ b/pkg/front_end/testcases/general/issue37027.dart.strong.transformed.expect @@ -1,13 +1,13 @@ library; import self as self; import "dart:core" as core; -import "dart:collection" as col; +import "dart:_compact_hash" as _co; class C extends core::Object { final field core::Set s; constructor •(core::List ell) → self::C : self::C::s = block { - final core::Set #t1 = new col::_Set::•(); + final core::Set #t1 = new _co::_Set::•(); { synthesized core::Iterator :sync-for-iterator = ell.{core::Iterable::iterator}{core::Iterator}; for (; :sync-for-iterator.{core::Iterator::moveNext}(){() → core::bool}; ) { diff --git a/pkg/front_end/testcases/general/null_aware_spread.dart.strong.transformed.expect b/pkg/front_end/testcases/general/null_aware_spread.dart.strong.transformed.expect index 24c3c82cd0e..d819cb59e37 100644 --- a/pkg/front_end/testcases/general/null_aware_spread.dart.strong.transformed.expect +++ b/pkg/front_end/testcases/general/null_aware_spread.dart.strong.transformed.expect @@ -1,7 +1,7 @@ library; import self as self; import "dart:core" as core; -import "dart:collection" as col; +import "dart:_compact_hash" as _co; static method nullAwareListSpread(core::List? list) → dynamic { list = block { @@ -13,7 +13,7 @@ static method nullAwareListSpread(core::List? list) → dynamic { } static method nullAwareSetSpread(core::Set? set) → dynamic { set = block { - final core::Set #t3 = new col::_Set::•(); + final core::Set #t3 = new _co::_Set::•(); #t3.{core::Set::add}{Invariant}("foo"){(core::String) → core::bool}; final core::Iterable? #t4 = set; if(!(#t4 == null)) diff --git a/pkg/front_end/testcases/general/null_check_type_variable_type.dart.strong.transformed.expect b/pkg/front_end/testcases/general/null_check_type_variable_type.dart.strong.transformed.expect index 72f3226e274..a78abe8e394 100644 --- a/pkg/front_end/testcases/general/null_check_type_variable_type.dart.strong.transformed.expect +++ b/pkg/front_end/testcases/general/null_check_type_variable_type.dart.strong.transformed.expect @@ -1,7 +1,7 @@ library; import self as self; import "dart:core" as core; -import "dart:collection" as col; +import "dart:_compact_hash" as _co; class Element extends core::Object { synthetic constructor •() → self::Element @@ -16,7 +16,7 @@ class Class extends core::Object { method setElement(covariant-by-class self::Class::E? element) → void { if(!(this.{self::Class::element}{self::Class::E?} =={core::Object::==}{(core::Object) → core::bool} element)) { this.{self::Class::element} = element; - core::Set elements = new col::_Set::•(); + core::Set elements = new _co::_Set::•(); if(!(element == null)) { elements.{core::Set::add}(element{self::Class::E% & self::Element /* '%' & '!' = '!' */}){(self::Element) → core::bool}; } diff --git a/pkg/front_end/testcases/general/spread_collection.dart.strong.transformed.expect b/pkg/front_end/testcases/general/spread_collection.dart.strong.transformed.expect index 288a24ee312..566678fd0de 100644 --- a/pkg/front_end/testcases/general/spread_collection.dart.strong.transformed.expect +++ b/pkg/front_end/testcases/general/spread_collection.dart.strong.transformed.expect @@ -9,7 +9,7 @@ library; // import self as self; import "dart:core" as core; -import "dart:collection" as col; +import "dart:_compact_hash" as _co; static field core::List? nullableList = core::_GrowableList::_literal1(3); static field core::Map? nullableMap = {3: 3}; @@ -30,7 +30,7 @@ static method main() → dynamic { #t3.{core::Map::addAll}{Invariant}(#t4{core::Map}){(core::Map) → void}; } =>#t3; final core::Set aSet = block { - final core::Set #t5 = new col::_Set::•(); + final core::Set #t5 = new _co::_Set::•(); #t5.{core::Set::add}{Invariant}(1){(core::int) → core::bool}; #t5.{core::Set::addAll}{Invariant}(core::_GrowableList::_literal1(2)){(core::Iterable) → void}; final core::Iterable? #t6 = self::nullableList; diff --git a/pkg/front_end/testcases/general/spread_collection_inference.dart.strong.transformed.expect b/pkg/front_end/testcases/general/spread_collection_inference.dart.strong.transformed.expect index de9ebe0b1aa..5ccca7534f1 100644 --- a/pkg/front_end/testcases/general/spread_collection_inference.dart.strong.transformed.expect +++ b/pkg/front_end/testcases/general/spread_collection_inference.dart.strong.transformed.expect @@ -111,6 +111,7 @@ library; import self as self; import "dart:core" as core; import "dart:collection" as col; +import "dart:_compact_hash" as _co; static method bar() → core::Map return throw ""; @@ -230,7 +231,7 @@ Try providing type arguments for the literal explicitly to disambiguate it. List lhs40 = [...notSpreadInt]; ^"); core::Set set40 = block { - final core::Set #t26 = new col::_Set::•(); + final core::Set #t26 = new _co::_Set::•(); #t26.{core::Set::add}{Invariant}(invalid-expression "pkg/front_end/testcases/general/spread_collection_inference.dart:109:37: Error: Unexpected type 'int' of a spread. Expected 'dynamic' or an Iterable. Set set40 = {...notSpreadInt}; ^"){(dynamic) → core::bool}; @@ -242,7 +243,7 @@ Try providing type arguments for the literal explicitly to disambiguate it. List lhs50 = [...notSpreadFunction]; ^"); core::Set set50 = block { - final core::Set #t27 = new col::_Set::•(); + final core::Set #t27 = new _co::_Set::•(); #t27.{core::Set::add}{Invariant}(invalid-expression "pkg/front_end/testcases/general/spread_collection_inference.dart:115:37: Error: Unexpected type 'int Function()?' of a spread. Expected 'dynamic' or an Iterable. Set set50 = {...notSpreadFunction}; ^"){(dynamic) → core::bool}; @@ -254,7 +255,7 @@ Try providing type arguments for the literal explicitly to disambiguate it. List lhs60 = [...spread]; ^"); core::Set set60 = block { - final core::Set #t28 = new col::_Set::•(); + final core::Set #t28 = new _co::_Set::•(); #t28.{core::Set::add}{Invariant}(invalid-expression "pkg/front_end/testcases/general/spread_collection_inference.dart:121:35: Error: Can't assign spread elements of type 'int' to collection elements of type 'String'. Set set60 = {...spread}; ^"){(core::String) → core::bool}; @@ -269,13 +270,13 @@ Try providing type arguments for the literal explicitly to disambiguate it. List lhs70 = [...null]; ^"); core::Set set70 = block { - final core::Set #t29 = new col::_Set::•(); + final core::Set #t29 = new _co::_Set::•(); #t29.{core::Set::add}{Invariant}(invalid-expression "pkg/front_end/testcases/general/spread_collection_inference.dart:129:29: Error: Can't spread a value with static type 'Null'. Set set70 = {...null}; ^"){(core::int) → core::bool}; } =>#t29; core::Set set71ambiguous = block { - final core::Set #t30 = new col::_Set::•(); + final core::Set #t30 = new _co::_Set::•(); #t30.{core::Set::add}{Invariant}(invalid-expression "pkg/front_end/testcases/general/spread_collection_inference.dart:133:8: Error: Can't spread a value with static type 'Null'. ...null, ^"){(dynamic) → core::bool}; @@ -291,13 +292,13 @@ Try providing type arguments for the literal explicitly to disambiguate it. #t31.{core::List::addAll}{Invariant}(#t32{core::Iterable}){(core::Iterable) → void}; } =>#t31; core::Set set80 = block { - final core::Set #t33 = new col::_Set::•(); + final core::Set #t33 = new _co::_Set::•(); final has-declared-initializer core::Iterable? #t34 = null; if(!(#t34 == null)) #t33.{core::Set::addAll}{Invariant}(#t34{core::Iterable}){(core::Iterable) → void}; } =>#t33; core::Set set81ambiguous = block { - final core::Set #t35 = new col::_Set::•(); + final core::Set #t35 = new _co::_Set::•(); final has-declared-initializer core::Iterable? #t36 = null; if(!(#t36 == null)) #t35.{core::Set::addAll}{Invariant}(#t36{core::Iterable}){(core::Iterable) → void}; diff --git a/pkg/front_end/testcases/general/top_level_map_literal_error.dart.strong.transformed.expect b/pkg/front_end/testcases/general/top_level_map_literal_error.dart.strong.transformed.expect index 84ca2fc07bb..6d62844d634 100644 --- a/pkg/front_end/testcases/general/top_level_map_literal_error.dart.strong.transformed.expect +++ b/pkg/front_end/testcases/general/top_level_map_literal_error.dart.strong.transformed.expect @@ -8,10 +8,10 @@ library; // import self as self; import "dart:core" as core; -import "dart:collection" as col; +import "dart:_compact_hash" as _co; static field core::Set a = block { - final core::Set #t1 = new col::_Set::•(); + final core::Set #t1 = new _co::_Set::•(); #t1.{core::Set::add}{Invariant}(0){(core::int) → core::bool}; } =>#t1; static field core::Map b = {0: 1}; diff --git a/pkg/front_end/testcases/generic_metadata/inferred_generic_types_in_arguments_and_bounds.dart.strong.transformed.expect b/pkg/front_end/testcases/generic_metadata/inferred_generic_types_in_arguments_and_bounds.dart.strong.transformed.expect index 148d92218f2..97b60fe28f6 100644 --- a/pkg/front_end/testcases/generic_metadata/inferred_generic_types_in_arguments_and_bounds.dart.strong.transformed.expect +++ b/pkg/front_end/testcases/generic_metadata/inferred_generic_types_in_arguments_and_bounds.dart.strong.transformed.expect @@ -1,7 +1,7 @@ library; import self as self; import "dart:core" as core; -import "dart:collection" as col; +import "dart:_compact_hash" as _co; class A extends core::Object { synthetic constructor •() → self::A @@ -14,7 +14,7 @@ static method test() → dynamic { self::A<(dynamic) → Never> x = self::foo<(dynamic) → Never>((dynamic Z) → Never => throw 42); core::List<(Y%) → self::A> y = core::_GrowableList::_literal1<(Y%) → self::A>(#C1); core::Set<(Y%) → self::A> z = block { - final core::Set<(Y%) → self::A> #t1 = new col::_Set::•<(Y%) → self::A>(); + final core::Set<(Y%) → self::A> #t1 = new _co::_Set::•<(Y%) → self::A>(); #t1.{core::Set::add}{Invariant}(y.{core::Iterable::first}{(Y%) → self::A}){((Y%) → self::A) → core::bool}; } =>#t1; } diff --git a/pkg/front_end/testcases/incremental/await_in_non_async.yaml.world.1.expect b/pkg/front_end/testcases/incremental/await_in_non_async.yaml.world.1.expect index 865fa206afa..a2d080b64e3 100644 --- a/pkg/front_end/testcases/incremental/await_in_non_async.yaml.world.1.expect +++ b/pkg/front_end/testcases/incremental/await_in_non_async.yaml.world.1.expect @@ -7,10 +7,11 @@ library from "org-dartlang-test:///main.dart" as main { static method foo() → dynamic {} } -And 19 platform libraries: +And 20 platform libraries: - dart:_http - dart:_builtin - dart:vmservice_io + - dart:_compact_hash - dart:async - dart:cli - dart:collection diff --git a/pkg/front_end/testcases/incremental/await_in_non_async.yaml.world.2.expect b/pkg/front_end/testcases/incremental/await_in_non_async.yaml.world.2.expect index ca65498c05b..e0d2f8e6809 100644 --- a/pkg/front_end/testcases/incremental/await_in_non_async.yaml.world.2.expect +++ b/pkg/front_end/testcases/incremental/await_in_non_async.yaml.world.2.expect @@ -14,10 +14,11 @@ library from "org-dartlang-test:///main.dart" as main { static method foo() → dynamic {} } -And 19 platform libraries: +And 20 platform libraries: - dart:_http - dart:_builtin - dart:vmservice_io + - dart:_compact_hash - dart:async - dart:cli - dart:collection diff --git a/pkg/front_end/testcases/incremental/bad_sdk_uri.yaml.world.3.expect b/pkg/front_end/testcases/incremental/bad_sdk_uri.yaml.world.3.expect index d03873f099f..96f1f9d1652 100644 --- a/pkg/front_end/testcases/incremental/bad_sdk_uri.yaml.world.3.expect +++ b/pkg/front_end/testcases/incremental/bad_sdk_uri.yaml.world.3.expect @@ -26,8 +26,9 @@ library from "org-dartlang-test:///main.dart" as main { } } -And 18 platform libraries: +And 19 platform libraries: - dart:_builtin + - dart:_compact_hash - dart:_internal - dart:_vmservice - dart:async diff --git a/pkg/front_end/testcases/incremental/issue_55357.yaml.world.1.expect b/pkg/front_end/testcases/incremental/issue_55357.yaml.world.1.expect index 9e332fe0c52..a718626c52b 100644 --- a/pkg/front_end/testcases/incremental/issue_55357.yaml.world.1.expect +++ b/pkg/front_end/testcases/incremental/issue_55357.yaml.world.1.expect @@ -8,10 +8,11 @@ library from "org-dartlang-test:///main.dart" as main { return 42; } -And 19 platform libraries: +And 20 platform libraries: - dart:_http - dart:_builtin - dart:vmservice_io + - dart:_compact_hash - dart:async - dart:cli - dart:collection diff --git a/pkg/front_end/testcases/incremental/issue_55357.yaml.world.3.expect b/pkg/front_end/testcases/incremental/issue_55357.yaml.world.3.expect index 9e332fe0c52..a718626c52b 100644 --- a/pkg/front_end/testcases/incremental/issue_55357.yaml.world.3.expect +++ b/pkg/front_end/testcases/incremental/issue_55357.yaml.world.3.expect @@ -8,10 +8,11 @@ library from "org-dartlang-test:///main.dart" as main { return 42; } -And 19 platform libraries: +And 20 platform libraries: - dart:_http - dart:_builtin - dart:vmservice_io + - dart:_compact_hash - dart:async - dart:cli - dart:collection diff --git a/pkg/front_end/testcases/incremental/load_from_component_explicitly_import_dart_core.yaml.world.1.expect b/pkg/front_end/testcases/incremental/load_from_component_explicitly_import_dart_core.yaml.world.1.expect index c68ca9bcee4..49685247b64 100644 --- a/pkg/front_end/testcases/incremental/load_from_component_explicitly_import_dart_core.yaml.world.1.expect +++ b/pkg/front_end/testcases/incremental/load_from_component_explicitly_import_dart_core.yaml.world.1.expect @@ -16,10 +16,11 @@ library from "org-dartlang-test:///main.dart" as main { } } -And 19 platform libraries: +And 20 platform libraries: - dart:_http - dart:_builtin - dart:vmservice_io + - dart:_compact_hash - dart:async - dart:cli - dart:collection diff --git a/pkg/front_end/testcases/incremental/load_from_component_explicitly_import_dart_core.yaml.world.2.expect b/pkg/front_end/testcases/incremental/load_from_component_explicitly_import_dart_core.yaml.world.2.expect index c68ca9bcee4..49685247b64 100644 --- a/pkg/front_end/testcases/incremental/load_from_component_explicitly_import_dart_core.yaml.world.2.expect +++ b/pkg/front_end/testcases/incremental/load_from_component_explicitly_import_dart_core.yaml.world.2.expect @@ -16,10 +16,11 @@ library from "org-dartlang-test:///main.dart" as main { } } -And 19 platform libraries: +And 20 platform libraries: - dart:_http - dart:_builtin - dart:vmservice_io + - dart:_compact_hash - dart:async - dart:cli - dart:collection diff --git a/pkg/front_end/testcases/incremental/no_outline_change_22.yaml.world.1.expect b/pkg/front_end/testcases/incremental/no_outline_change_22.yaml.world.1.expect index 1ca8a6f1c9c..7326ea51210 100644 --- a/pkg/front_end/testcases/incremental/no_outline_change_22.yaml.world.1.expect +++ b/pkg/front_end/testcases/incremental/no_outline_change_22.yaml.world.1.expect @@ -200,7 +200,7 @@ library from "org-dartlang-test:///main.dart" as main { return result; } method /* from org-dartlang-sdk:///sdk/lib/collection/list.dart */ toSet() → dart.core::Set { - dart.core::Set result = new dart.collection::_Set::•(); + dart.core::Set result = new dart._compact_hash::_Set::•(); for (dart.core::int i = 0; i.{dart.core::num::<}(this.{dart.core::List::length}{dart.core::int}){(dart.core::num) → dart.core::bool}; i = i.{dart.core::num::+}(1){(dart.core::num) → dart.core::int}) { result.{dart.core::Set::add}(this.{dart.core::List::[]}(i){(dart.core::int) → dart.core::int}){(dart.core::int) → dart.core::bool}; } diff --git a/pkg/front_end/testcases/incremental/no_outline_change_22.yaml.world.2.expect b/pkg/front_end/testcases/incremental/no_outline_change_22.yaml.world.2.expect index 1ca8a6f1c9c..7326ea51210 100644 --- a/pkg/front_end/testcases/incremental/no_outline_change_22.yaml.world.2.expect +++ b/pkg/front_end/testcases/incremental/no_outline_change_22.yaml.world.2.expect @@ -200,7 +200,7 @@ library from "org-dartlang-test:///main.dart" as main { return result; } method /* from org-dartlang-sdk:///sdk/lib/collection/list.dart */ toSet() → dart.core::Set { - dart.core::Set result = new dart.collection::_Set::•(); + dart.core::Set result = new dart._compact_hash::_Set::•(); for (dart.core::int i = 0; i.{dart.core::num::<}(this.{dart.core::List::length}{dart.core::int}){(dart.core::num) → dart.core::bool}; i = i.{dart.core::num::+}(1){(dart.core::num) → dart.core::int}) { result.{dart.core::Set::add}(this.{dart.core::List::[]}(i){(dart.core::int) → dart.core::int}){(dart.core::int) → dart.core::bool}; } diff --git a/pkg/front_end/testcases/incremental/omit_platform_works_3.yaml.world.1.expect b/pkg/front_end/testcases/incremental/omit_platform_works_3.yaml.world.1.expect index 622993fba82..6cb41143f88 100644 --- a/pkg/front_end/testcases/incremental/omit_platform_works_3.yaml.world.1.expect +++ b/pkg/front_end/testcases/incremental/omit_platform_works_3.yaml.world.1.expect @@ -6,10 +6,11 @@ library from "org-dartlang-test:///main.dart" as main { } } -And 19 platform libraries: +And 20 platform libraries: - dart:_http - dart:_builtin - dart:vmservice_io + - dart:_compact_hash - dart:async - dart:cli - dart:collection diff --git a/pkg/front_end/testcases/incremental/omit_platform_works_3.yaml.world.4.expect b/pkg/front_end/testcases/incremental/omit_platform_works_3.yaml.world.4.expect index bdef0b38989..f7602a6ab31 100644 --- a/pkg/front_end/testcases/incremental/omit_platform_works_3.yaml.world.4.expect +++ b/pkg/front_end/testcases/incremental/omit_platform_works_3.yaml.world.4.expect @@ -14,10 +14,11 @@ library from "org-dartlang-test:///main.dart" as main { } } -And 19 platform libraries: +And 20 platform libraries: - dart:_http - dart:_builtin - dart:vmservice_io + - dart:_compact_hash - dart:async - dart:cli - dart:collection diff --git a/pkg/front_end/testcases/incremental/omit_platform_works_3.yaml.world.5.expect b/pkg/front_end/testcases/incremental/omit_platform_works_3.yaml.world.5.expect index 7d26e9fd6b9..5342a054011 100644 --- a/pkg/front_end/testcases/incremental/omit_platform_works_3.yaml.world.5.expect +++ b/pkg/front_end/testcases/incremental/omit_platform_works_3.yaml.world.5.expect @@ -14,10 +14,11 @@ library from "org-dartlang-test:///main.dart" as main { } } -And 19 platform libraries: +And 20 platform libraries: - dart:_http - dart:_builtin - dart:vmservice_io + - dart:_compact_hash - dart:async - dart:cli - dart:collection diff --git a/pkg/front_end/testcases/incremental/patterns.yaml.world.1.expect b/pkg/front_end/testcases/incremental/patterns.yaml.world.1.expect index c0012ede364..dbcd00404ad 100644 --- a/pkg/front_end/testcases/incremental/patterns.yaml.world.1.expect +++ b/pkg/front_end/testcases/incremental/patterns.yaml.world.1.expect @@ -26,10 +26,11 @@ constants { #C1 = 0 } -And 19 platform libraries: +And 20 platform libraries: - dart:_http - dart:_builtin - dart:vmservice_io + - dart:_compact_hash - dart:async - dart:cli - dart:collection diff --git a/pkg/front_end/testcases/incremental/patterns.yaml.world.2.expect b/pkg/front_end/testcases/incremental/patterns.yaml.world.2.expect index 3c52a9c5741..20c854343ad 100644 --- a/pkg/front_end/testcases/incremental/patterns.yaml.world.2.expect +++ b/pkg/front_end/testcases/incremental/patterns.yaml.world.2.expect @@ -28,10 +28,11 @@ constants { #C1 = 0 } -And 19 platform libraries: +And 20 platform libraries: - dart:_http - dart:_builtin - dart:vmservice_io + - dart:_compact_hash - dart:async - dart:cli - dart:collection diff --git a/pkg/front_end/testcases/incremental/patterns.yaml.world.3.expect b/pkg/front_end/testcases/incremental/patterns.yaml.world.3.expect index c0012ede364..dbcd00404ad 100644 --- a/pkg/front_end/testcases/incremental/patterns.yaml.world.3.expect +++ b/pkg/front_end/testcases/incremental/patterns.yaml.world.3.expect @@ -26,10 +26,11 @@ constants { #C1 = 0 } -And 19 platform libraries: +And 20 platform libraries: - dart:_http - dart:_builtin - dart:vmservice_io + - dart:_compact_hash - dart:async - dart:cli - dart:collection diff --git a/pkg/front_end/testcases/inference/infer_from_complex_expressions_if_outer_most_value_is_precise.dart.strong.transformed.expect b/pkg/front_end/testcases/inference/infer_from_complex_expressions_if_outer_most_value_is_precise.dart.strong.transformed.expect index 80f4679bba0..9e7aae22790 100644 --- a/pkg/front_end/testcases/inference/infer_from_complex_expressions_if_outer_most_value_is_precise.dart.strong.transformed.expect +++ b/pkg/front_end/testcases/inference/infer_from_complex_expressions_if_outer_most_value_is_precise.dart.strong.transformed.expect @@ -75,7 +75,7 @@ library test; // import self as self; import "dart:core" as core; -import "dart:collection" as col; +import "dart:_compact_hash" as _co; class A extends core::Object { field core::int x = 0; @@ -128,7 +128,7 @@ static method test1() → dynamic { - 'List' is from 'dart:core'. c1 = /*error:INVALID_ASSIGNMENT*/ /*@typeArgs=dynamic*/ {}; ^" in ( block { - final core::Set #t3 = new col::_Set::•(); + final core::Set #t3 = new _co::_Set::•(); } =>#t3) as{TypeError} core::List; self::c2 = core::_GrowableList::•(0); self::c2 = invalid-expression "pkg/front_end/testcases/inference/infer_from_complex_expressions_if_outer_most_value_is_precise.dart:43:59: Error: A value of type 'Set' can't be assigned to a variable of type 'List'. @@ -136,7 +136,7 @@ static method test1() → dynamic { - 'List' is from 'dart:core'. c2 = /*error:INVALID_ASSIGNMENT*/ /*@typeArgs=dynamic*/ {}; ^" in ( block { - final core::Set #t4 = new col::_Set::•(); + final core::Set #t4 = new _co::_Set::•(); } =>#t4) as{TypeError} core::List; self::d = {}; self::d = invalid-expression "pkg/front_end/testcases/inference/infer_from_complex_expressions_if_outer_most_value_is_precise.dart:45:36: Error: A value of type 'int' can't be assigned to a variable of type 'Map'. diff --git a/pkg/front_end/testcases/inference_update_1/horizontal_inference.dart.strong.transformed.expect b/pkg/front_end/testcases/inference_update_1/horizontal_inference.dart.strong.transformed.expect index 44a34d5420e..007e9219f8f 100644 --- a/pkg/front_end/testcases/inference_update_1/horizontal_inference.dart.strong.transformed.expect +++ b/pkg/front_end/testcases/inference_update_1/horizontal_inference.dart.strong.transformed.expect @@ -1,7 +1,7 @@ library; import self as self; import "dart:core" as core; -import "dart:collection" as col; +import "dart:_compact_hash" as _co; static method testLaterUnnamedParameter((T%, (T%) → void) → void f) → dynamic { f(0, (core::int x) → void { @@ -51,13 +51,13 @@ static method testPropagateToLaterClosure((() → T%, (T%) → U%, (U%) → V%) → V% f) → dynamic { f, core::int, core::Set>(() → core::List => core::_GrowableList::_literal1(0), (core::List x) → core::int => x.{core::Iterable::single}{core::int}, (core::int y) → core::Set => block { - final core::Set #t2 = new col::_Set::•(); + final core::Set #t2 = new _co::_Set::•(); #t2.{core::Set::add}{Invariant}(y){(core::int) → core::bool}; } =>#t2){(() → core::List, (core::List) → core::int, (core::int) → core::Set) → core::Set}; } static method testDependencyCycle(((U%) → T%, (T%) → U%) → core::Map f) → dynamic { f, core::Set>((core::Object? x) → core::List => core::_GrowableList::_literal1(x), (core::Object? y) → core::Set => block { - final core::Set #t3 = new col::_Set::•(); + final core::Set #t3 = new _co::_Set::•(); #t3.{core::Set::add}{Invariant}(y){(core::Object?) → core::bool}; } =>#t3){((core::Set) → core::List, (core::List) → core::Set) → core::Map, core::Set>}; } diff --git a/pkg/front_end/testcases/inference_update_1/horizontal_inference_extension_method.dart.strong.transformed.expect b/pkg/front_end/testcases/inference_update_1/horizontal_inference_extension_method.dart.strong.transformed.expect index f0c73f9cf5c..b8fab1b55b7 100644 --- a/pkg/front_end/testcases/inference_update_1/horizontal_inference_extension_method.dart.strong.transformed.expect +++ b/pkg/front_end/testcases/inference_update_1/horizontal_inference_extension_method.dart.strong.transformed.expect @@ -1,7 +1,7 @@ library; import self as self; import "dart:core" as core; -import "dart:collection" as col; +import "dart:_compact_hash" as _co; extension /* unnamed */ _extension#0 on core::int { method _laterUnnamedParameter = self::_extension#0|_laterUnnamedParameter; @@ -91,13 +91,13 @@ static method testPropagateToLaterClosure(core::int i) → dynamic { } static method testLongDependencyChain(core::int i) → dynamic { self::_extension#0|_longDependencyChain, core::int, core::Set>(i, () → core::List => core::_GrowableList::_literal1(0), (core::List x) → core::int => x.{core::Iterable::single}{core::int}, (core::int y) → core::Set => block { - final core::Set #t1 = new col::_Set::•(); + final core::Set #t1 = new _co::_Set::•(); #t1.{core::Set::add}{Invariant}(y){(core::int) → core::bool}; } =>#t1); } static method testDependencyCycle(core::int i) → dynamic { self::_extension#0|_dependencyCycle, core::Set>(i, (core::Object? x) → core::List => core::_GrowableList::_literal1(x), (core::Object? y) → core::Set => block { - final core::Set #t2 = new col::_Set::•(); + final core::Set #t2 = new _co::_Set::•(); #t2.{core::Set::add}{Invariant}(y){(core::Object?) → core::bool}; } =>#t2); } diff --git a/pkg/front_end/testcases/nnbd/issue42758.dart.strong.transformed.expect b/pkg/front_end/testcases/nnbd/issue42758.dart.strong.transformed.expect index 95e3ae24160..f2868e79e3a 100644 --- a/pkg/front_end/testcases/nnbd/issue42758.dart.strong.transformed.expect +++ b/pkg/front_end/testcases/nnbd/issue42758.dart.strong.transformed.expect @@ -53,6 +53,7 @@ library; import self as self; import "dart:core" as core; import "dart:collection" as col; +import "dart:_compact_hash" as _co; static method test1(Never n1, Never? n2, Null n3) → dynamic { core::List l1 = block { @@ -87,35 +88,35 @@ static method test1(Never n1, Never? n2, Null n3) → dynamic { #t8.{core::Set::add}{Invariant}(n1){(Never) → core::bool}; } =>#t8; core::Set s2 = block { - final core::Set #t9 = new col::_Set::•(); + final core::Set #t9 = new _co::_Set::•(); final core::Iterable? #t10 = n1; if(!(#t10 == null)) #t9.{core::Set::addAll}{Invariant}(#t10{core::Iterable}){(core::Iterable) → void}; #t9.{core::Set::add}{Invariant}(n1){(Never) → core::bool}; } =>#t9; core::Set s3 = block { - final core::Set #t11 = new col::_Set::•(); + final core::Set #t11 = new _co::_Set::•(); #t11.{core::Set::add}{Invariant}(invalid-expression "pkg/front_end/testcases/nnbd/issue42758.dart:14:16: Error: Can't spread a value with static type 'Never?'. var s3 = {...n2, n1}; ^"){(dynamic) → core::bool}; #t11.{core::Set::add}{Invariant}(n1){(dynamic) → core::bool}; } =>#t11; core::Set s4 = block { - final core::Set #t12 = new col::_Set::•(); + final core::Set #t12 = new _co::_Set::•(); final core::Iterable? #t13 = n2; if(!(#t13 == null)) #t12.{core::Set::addAll}{Invariant}(#t13{core::Iterable}){(core::Iterable) → void}; #t12.{core::Set::add}{Invariant}(n1){(Never) → core::bool}; } =>#t12; core::Set s5 = block { - final core::Set #t14 = new col::_Set::•(); + final core::Set #t14 = new _co::_Set::•(); #t14.{core::Set::add}{Invariant}(invalid-expression "pkg/front_end/testcases/nnbd/issue42758.dart:16:16: Error: Can't spread a value with static type 'Null'. var s5 = {...n3, n1}; ^"){(dynamic) → core::bool}; #t14.{core::Set::add}{Invariant}(n1){(dynamic) → core::bool}; } =>#t14; core::Set s6 = block { - final core::Set #t15 = new col::_Set::•(); + final core::Set #t15 = new _co::_Set::•(); final core::Iterable? #t16 = n3; if(!(#t16 == null)) #t15.{core::Set::addAll}{Invariant}(#t16{core::Iterable}){(core::Iterable) → void}; @@ -186,35 +187,35 @@ static method test2(self:: #t31.{core::Set::add}{Invariant}(n1){(self::test2::N1) → core::bool}; } =>#t31; core::Set s2 = block { - final core::Set #t32 = new col::_Set::•(); + final core::Set #t32 = new _co::_Set::•(); final core::Iterable? #t33 = n1; if(!(#t33 == null)) #t32.{core::Set::addAll}{Invariant}(#t33{core::Iterable}){(core::Iterable) → void}; #t32.{core::Set::add}{Invariant}(n1){(self::test2::N1) → core::bool}; } =>#t32; core::Set s3 = block { - final core::Set #t34 = new col::_Set::•(); + final core::Set #t34 = new _co::_Set::•(); #t34.{core::Set::add}{Invariant}(invalid-expression "pkg/front_end/testcases/nnbd/issue42758.dart:36:16: Error: Can't spread a value with static type 'N2'. var s3 = {...n2, n1}; ^"){(dynamic) → core::bool}; #t34.{core::Set::add}{Invariant}(n1){(dynamic) → core::bool}; } =>#t34; core::Set s4 = block { - final core::Set #t35 = new col::_Set::•(); + final core::Set #t35 = new _co::_Set::•(); final core::Iterable? #t36 = n2; if(!(#t36 == null)) #t35.{core::Set::addAll}{Invariant}(#t36{core::Iterable}){(core::Iterable) → void}; #t35.{core::Set::add}{Invariant}(n1){(self::test2::N1) → core::bool}; } =>#t35; core::Set s5 = block { - final core::Set #t37 = new col::_Set::•(); + final core::Set #t37 = new _co::_Set::•(); #t37.{core::Set::add}{Invariant}(invalid-expression "pkg/front_end/testcases/nnbd/issue42758.dart:38:16: Error: Can't spread a value with static type 'N3'. var s5 = {...n3, n1}; ^"){(dynamic) → core::bool}; #t37.{core::Set::add}{Invariant}(n1){(dynamic) → core::bool}; } =>#t37; core::Set s6 = block { - final core::Set #t38 = new col::_Set::•(); + final core::Set #t38 = new _co::_Set::•(); final core::Iterable? #t39 = n3; if(!(#t39 == null)) #t38.{core::Set::addAll}{Invariant}(#t39{core::Iterable}){(core::Iterable) → void}; diff --git a/pkg/front_end/testcases/nnbd/issue43256.dart.strong.transformed.expect b/pkg/front_end/testcases/nnbd/issue43256.dart.strong.transformed.expect index c6a72b3ee9c..e19ee8f8025 100644 --- a/pkg/front_end/testcases/nnbd/issue43256.dart.strong.transformed.expect +++ b/pkg/front_end/testcases/nnbd/issue43256.dart.strong.transformed.expect @@ -48,7 +48,7 @@ library; // import self as self; import "dart:core" as core; -import "dart:collection" as col; +import "dart:_compact_hash" as _co; static field core::int i = 1; static field core::Map? nullableMap = {1: "Let", 2: "it", 3: "be"}; @@ -67,7 +67,7 @@ static field core::Map map1 = block { #t1.{core::Map::addAll}{Invariant}(self::nullableMap!){(core::Map) → void}; } =>#t1; static field core::Set set1 = block { - final core::Set #t2 = new col::_Set::•(); + final core::Set #t2 = new _co::_Set::•(); #t2.{core::Set::add}{Invariant}(0){(dynamic) → core::bool}; if(self::i.{core::num::>}(0){(core::num) → core::bool}) #t2.{core::Set::add}{Invariant}(invalid-expression "pkg/front_end/testcases/nnbd/issue43256.dart:23:17: Error: An expression whose value can be 'null' must be null-checked before it can be dereferenced. @@ -108,7 +108,7 @@ static method testMap?, Z extends core::List>(self::testIterables::X% x, self::testIterables::Y% y, self::testIterables::Z z) → dynamic { core::Set set2 = block { - final core::Set #t5 = new col::_Set::•(); + final core::Set #t5 = new _co::_Set::•(); #t5.{core::Set::add}{Invariant}(0){(dynamic) → core::bool}; if(self::i.{core::num::>}(0){(core::num) → core::bool}) #t5.{core::Set::add}{Invariant}(invalid-expression "pkg/front_end/testcases/nnbd/issue43256.dart:48:19: Error: Unexpected type 'X' of a spread. Expected 'dynamic' or an Iterable. diff --git a/pkg/front_end/testcases/nnbd/issue43455.dart.strong.transformed.expect b/pkg/front_end/testcases/nnbd/issue43455.dart.strong.transformed.expect index 753809775f6..91f5f6096f4 100644 --- a/pkg/front_end/testcases/nnbd/issue43455.dart.strong.transformed.expect +++ b/pkg/front_end/testcases/nnbd/issue43455.dart.strong.transformed.expect @@ -1,7 +1,7 @@ library; import self as self; import "dart:core" as core; -import "dart:collection" as col; +import "dart:_compact_hash" as _co; class C extends core::Object { synthetic constructor •() → self::C @@ -9,22 +9,22 @@ class C extends core::Object { ; method test(covariant-by-class self::C::X% x, covariant-by-class self::C::Y? y) → dynamic { core::Set v = block { - final core::Set #t1 = new col::_Set::•(); + final core::Set #t1 = new _co::_Set::•(); #t1.{core::Set::add}{Invariant}(x){(core::Object?) → core::bool}; #t1.{core::Set::add}{Invariant}(42){(core::Object?) → core::bool}; } =>#t1; core::Set w = block { - final core::Set #t2 = new col::_Set::•(); + final core::Set #t2 = new _co::_Set::•(); #t2.{core::Set::add}{Invariant}(42){(core::Object?) → core::bool}; #t2.{core::Set::add}{Invariant}(x){(core::Object?) → core::bool}; } =>#t2; core::Set p = block { - final core::Set #t3 = new col::_Set::•(); + final core::Set #t3 = new _co::_Set::•(); #t3.{core::Set::add}{Invariant}(y){(core::Object?) → core::bool}; #t3.{core::Set::add}{Invariant}(42){(core::Object?) → core::bool}; } =>#t3; core::Set q = block { - final core::Set #t4 = new col::_Set::•(); + final core::Set #t4 = new _co::_Set::•(); #t4.{core::Set::add}{Invariant}(42){(core::Object?) → core::bool}; #t4.{core::Set::add}{Invariant}(y){(core::Object?) → core::bool}; } =>#t4; @@ -38,12 +38,12 @@ class C extends core::Object { self::assertLeftSubtype>(q); if(x is core::Object?) { core::Set v = block { - final core::Set #t5 = new col::_Set::•(); + final core::Set #t5 = new _co::_Set::•(); #t5.{core::Set::add}{Invariant}(x{self::C::X% & core::Object? /* '%' & '?' = '%' */}){(core::Object?) → core::bool}; #t5.{core::Set::add}{Invariant}(42){(core::Object?) → core::bool}; } =>#t5; core::Set w = block { - final core::Set #t6 = new col::_Set::•(); + final core::Set #t6 = new _co::_Set::•(); #t6.{core::Set::add}{Invariant}(42){(core::Object?) → core::bool}; #t6.{core::Set::add}{Invariant}(x{self::C::X% & core::Object? /* '%' & '?' = '%' */}){(core::Object?) → core::bool}; } =>#t6; @@ -58,7 +58,7 @@ static method assertRightSubtype(dynamic x) → dynamic { x as core::Set; } static method assertLeftSubtype(self::assertLeftSubtype::X% x) → dynamic { - new col::_Set::•() as self::assertLeftSubtype::X%; + new _co::_Set::•() as self::assertLeftSubtype::X%; } static method main() → dynamic { new self::C::•().{self::C::test}(42, null){(core::int?, core::int?) → dynamic}; diff --git a/pkg/front_end/testcases/nnbd/issue43495.dart.strong.transformed.expect b/pkg/front_end/testcases/nnbd/issue43495.dart.strong.transformed.expect index ca3a879892d..755b904da10 100644 --- a/pkg/front_end/testcases/nnbd/issue43495.dart.strong.transformed.expect +++ b/pkg/front_end/testcases/nnbd/issue43495.dart.strong.transformed.expect @@ -167,6 +167,7 @@ library; import self as self; import "dart:core" as core; import "dart:collection" as col; +import "dart:_compact_hash" as _co; static method foo(core::bool condition, core::Iterable iterable, core::List? a, core::Set? b, core::Iterable? c, core::Map? d) → dynamic { return [ block { @@ -187,13 +188,13 @@ static method foo(core::bool condition, core::Iterable iterable, core:: - 'List' is from 'dart:core'. {...a}, // Error. ^": null}, block { - final core::Set #t4 = new col::_Set::•(); + final core::Set #t4 = new _co::_Set::•(); #t4.{core::Set::add}{Invariant}(invalid-expression "pkg/front_end/testcases/nnbd/issue43495.dart:13:14: Error: Unexpected type 'Map?' of a spread. Expected 'dynamic' or an Iterable. - 'Map' is from 'dart:core'. {...d}, // Error. ^"){(core::int) → core::bool}; } =>#t4, block { - final core::Set #t5 = new col::_Set::•(); + final core::Set #t5 = new _co::_Set::•(); if(condition) { synthesized core::Iterator :sync-for-iterator = invalid-expression "pkg/front_end/testcases/nnbd/issue43495.dart:14:24: Error: An expression whose value can be 'null' must be null-checked before it can be dereferenced. {if (condition) ...a}, // Error. @@ -207,7 +208,7 @@ static method foo(core::bool condition, core::Iterable iterable, core:: } } } =>#t5, block { - final core::Set #t8 = new col::_Set::•(); + final core::Set #t8 = new _co::_Set::•(); if(condition) { synthesized core::Iterator :sync-for-iterator = invalid-expression "pkg/front_end/testcases/nnbd/issue43495.dart:15:24: Error: An expression whose value can be 'null' must be null-checked before it can be dereferenced. {if (condition) ...b}, // Error. @@ -221,7 +222,7 @@ static method foo(core::bool condition, core::Iterable iterable, core:: } } } =>#t8, block { - final core::Set #t11 = new col::_Set::•(); + final core::Set #t11 = new _co::_Set::•(); if(condition) { synthesized core::Iterator :sync-for-iterator = invalid-expression "pkg/front_end/testcases/nnbd/issue43495.dart:16:24: Error: An expression whose value can be 'null' must be null-checked before it can be dereferenced. {if (condition) ...c}, // Error. @@ -241,7 +242,7 @@ static method foo(core::bool condition, core::Iterable iterable, core:: {if (condition) ...d}, // Error. ^", null){(core::int, core::int) → void}; } =>#t14, block { - final core::Set #t15 = new col::_Set::•(); + final core::Set #t15 = new _co::_Set::•(); { synthesized core::Iterator :sync-for-iterator = iterable.{core::Iterable::iterator}{core::Iterator}; for (; :sync-for-iterator.{core::Iterator::moveNext}(){() → core::bool}; ) { @@ -261,7 +262,7 @@ static method foo(core::bool condition, core::Iterable iterable, core:: } } } =>#t15, block { - final core::Set #t18 = new col::_Set::•(); + final core::Set #t18 = new _co::_Set::•(); { synthesized core::Iterator :sync-for-iterator = iterable.{core::Iterable::iterator}{core::Iterator}; for (; :sync-for-iterator.{core::Iterator::moveNext}(){() → core::bool}; ) { @@ -281,7 +282,7 @@ static method foo(core::bool condition, core::Iterable iterable, core:: } } } =>#t18, block { - final core::Set #t21 = new col::_Set::•(); + final core::Set #t21 = new _co::_Set::•(); { synthesized core::Iterator :sync-for-iterator = iterable.{core::Iterable::iterator}{core::Iterator}; for (; :sync-for-iterator.{core::Iterator::moveNext}(){() → core::bool}; ) { @@ -312,7 +313,7 @@ static method foo(core::bool condition, core::Iterable iterable, core:: } } } =>#t24, block { - final core::Set #t25 = new col::_Set::•(); + final core::Set #t25 = new _co::_Set::•(); for (core::int i = 0; i.{core::num::<}(42){(core::num) → core::bool}; i = i.{core::num::+}(1){(core::num) → core::int}) { synthesized core::Iterator :sync-for-iterator = invalid-expression "pkg/front_end/testcases/nnbd/issue43495.dart:22:38: Error: An expression whose value can be 'null' must be null-checked before it can be dereferenced. {for (int i = 0; i < 42; ++i) ...a}, // Error. @@ -326,7 +327,7 @@ static method foo(core::bool condition, core::Iterable iterable, core:: } } } =>#t25, block { - final core::Set #t28 = new col::_Set::•(); + final core::Set #t28 = new _co::_Set::•(); for (core::int i = 0; i.{core::num::<}(42){(core::num) → core::bool}; i = i.{core::num::+}(1){(core::num) → core::int}) { synthesized core::Iterator :sync-for-iterator = invalid-expression "pkg/front_end/testcases/nnbd/issue43495.dart:23:38: Error: An expression whose value can be 'null' must be null-checked before it can be dereferenced. {for (int i = 0; i < 42; ++i) ...b}, // Error. @@ -340,7 +341,7 @@ static method foo(core::bool condition, core::Iterable iterable, core:: } } } =>#t28, block { - final core::Set #t31 = new col::_Set::•(); + final core::Set #t31 = new _co::_Set::•(); for (core::int i = 0; i.{core::num::<}(42){(core::num) → core::bool}; i = i.{core::num::+}(1){(core::num) → core::int}) { synthesized core::Iterator :sync-for-iterator = invalid-expression "pkg/front_end/testcases/nnbd/issue43495.dart:24:38: Error: An expression whose value can be 'null' must be null-checked before it can be dereferenced. {for (int i = 0; i < 42; ++i) ...c}, // Error. @@ -360,17 +361,17 @@ static method foo(core::bool condition, core::Iterable iterable, core:: {for (int i = 0; i < 42; ++i) ...d}, // Error. ^", null){(core::int, core::int) → void}; } =>#t34, block { - final core::Set #t35 = new col::_Set::•(); + final core::Set #t35 = new _co::_Set::•(); final core::Iterable? #t36 = a; if(!(#t36 == null)) #t35.{core::Set::addAll}{Invariant}(#t36{core::Iterable}){(core::Iterable) → void}; } =>#t35, block { - final core::Set #t37 = new col::_Set::•(); + final core::Set #t37 = new _co::_Set::•(); final core::Iterable? #t38 = b; if(!(#t38 == null)) #t37.{core::Set::addAll}{Invariant}(#t38{core::Iterable}){(core::Iterable) → void}; } =>#t37, block { - final core::Set #t39 = new col::_Set::•(); + final core::Set #t39 = new _co::_Set::•(); final core::Iterable? #t40 = c; if(!(#t40 == null)) #t39.{core::Set::addAll}{Invariant}(#t40{core::Iterable}){(core::Iterable) → void}; @@ -380,7 +381,7 @@ static method foo(core::bool condition, core::Iterable iterable, core:: if(!(#t42 == null)) #t41.{core::Map::addAll}{Invariant}(#t42{core::Map}){(core::Map) → void}; } =>#t41, block { - final core::Set #t43 = new col::_Set::•(); + final core::Set #t43 = new _co::_Set::•(); if(condition) { final core::Iterable? #t44 = a; if(!(#t44 == null)) { @@ -395,7 +396,7 @@ static method foo(core::bool condition, core::Iterable iterable, core:: } } } =>#t43, block { - final core::Set #t47 = new col::_Set::•(); + final core::Set #t47 = new _co::_Set::•(); if(condition) { final core::Iterable? #t48 = b; if(!(#t48 == null)) { @@ -410,7 +411,7 @@ static method foo(core::bool condition, core::Iterable iterable, core:: } } } =>#t47, block { - final core::Set #t51 = new col::_Set::•(); + final core::Set #t51 = new _co::_Set::•(); if(condition) { final core::Iterable? #t52 = c; if(!(#t52 == null)) { @@ -432,7 +433,7 @@ static method foo(core::bool condition, core::Iterable iterable, core:: #t55.{core::Map::addAll}{Invariant}(#t56{core::Map}){(core::Map) → void}; } } =>#t55, block { - final core::Set #t57 = new col::_Set::•(); + final core::Set #t57 = new _co::_Set::•(); { synthesized core::Iterator :sync-for-iterator = iterable.{core::Iterable::iterator}{core::Iterator}; for (; :sync-for-iterator.{core::Iterator::moveNext}(){() → core::bool}; ) { @@ -453,7 +454,7 @@ static method foo(core::bool condition, core::Iterable iterable, core:: } } } =>#t57, block { - final core::Set #t61 = new col::_Set::•(); + final core::Set #t61 = new _co::_Set::•(); { synthesized core::Iterator :sync-for-iterator = iterable.{core::Iterable::iterator}{core::Iterator}; for (; :sync-for-iterator.{core::Iterator::moveNext}(){() → core::bool}; ) { @@ -474,7 +475,7 @@ static method foo(core::bool condition, core::Iterable iterable, core:: } } } =>#t61, block { - final core::Set #t65 = new col::_Set::•(); + final core::Set #t65 = new _co::_Set::•(); { synthesized core::Iterator :sync-for-iterator = iterable.{core::Iterable::iterator}{core::Iterator}; for (; :sync-for-iterator.{core::Iterator::moveNext}(){() → core::bool}; ) { @@ -508,7 +509,7 @@ static method foo(core::bool condition, core::Iterable iterable, core:: } } } =>#t69, block { - final core::Set #t71 = new col::_Set::•(); + final core::Set #t71 = new _co::_Set::•(); for (core::int i = 0; i.{core::num::<}(42){(core::num) → core::bool}; i = i.{core::num::+}(1){(core::num) → core::int}) { final core::Iterable? #t72 = a; if(!(#t72 == null)) { @@ -523,7 +524,7 @@ static method foo(core::bool condition, core::Iterable iterable, core:: } } } =>#t71, block { - final core::Set #t75 = new col::_Set::•(); + final core::Set #t75 = new _co::_Set::•(); for (core::int i = 0; i.{core::num::<}(42){(core::num) → core::bool}; i = i.{core::num::+}(1){(core::num) → core::int}) { final core::Iterable? #t76 = b; if(!(#t76 == null)) { @@ -538,7 +539,7 @@ static method foo(core::bool condition, core::Iterable iterable, core:: } } } =>#t75, block { - final core::Set #t79 = new col::_Set::•(); + final core::Set #t79 = new _co::_Set::•(); for (core::int i = 0; i.{core::num::<}(42){(core::num) → core::bool}; i = i.{core::num::+}(1){(core::num) → core::int}) { final core::Iterable? #t80 = c; if(!(#t80 == null)) { @@ -579,12 +580,12 @@ static method bar?, Y extends core::Set{invalid-expression "pkg/front_end/testcases/nnbd/issue43495.dart:54:19: Error: Unexpected type 'X' of a map spread entry. Expected 'dynamic' or a Map. {...x}, // Error. ^": null}, block { - final core::Set #t88 = new col::_Set::•(); + final core::Set #t88 = new _co::_Set::•(); #t88.{core::Set::add}{Invariant}(invalid-expression "pkg/front_end/testcases/nnbd/issue43495.dart:55:14: Error: Unexpected type 'W' of a spread. Expected 'dynamic' or an Iterable. {...w}, // Error. ^"){(core::int) → core::bool}; } =>#t88, block { - final core::Set #t89 = new col::_Set::•(); + final core::Set #t89 = new _co::_Set::•(); if(condition) { synthesized core::Iterator :sync-for-iterator = invalid-expression "pkg/front_end/testcases/nnbd/issue43495.dart:56:24: Error: An expression whose value can be 'null' must be null-checked before it can be dereferenced. {if (condition) ...x}, // Error. @@ -598,7 +599,7 @@ static method bar?, Y extends core::Set#t89, block { - final core::Set #t92 = new col::_Set::•(); + final core::Set #t92 = new _co::_Set::•(); if(condition) { synthesized core::Iterator :sync-for-iterator = invalid-expression "pkg/front_end/testcases/nnbd/issue43495.dart:57:24: Error: An expression whose value can be 'null' must be null-checked before it can be dereferenced. {if (condition) ...y}, // Error. @@ -612,7 +613,7 @@ static method bar?, Y extends core::Set#t92, block { - final core::Set #t95 = new col::_Set::•(); + final core::Set #t95 = new _co::_Set::•(); if(condition) { synthesized core::Iterator :sync-for-iterator = invalid-expression "pkg/front_end/testcases/nnbd/issue43495.dart:58:24: Error: An expression whose value can be 'null' must be null-checked before it can be dereferenced. {if (condition) ...z}, // Error. @@ -632,7 +633,7 @@ static method bar?, Y extends core::Set#t98, block { - final core::Set #t99 = new col::_Set::•(); + final core::Set #t99 = new _co::_Set::•(); { synthesized core::Iterator :sync-for-iterator = iterable.{core::Iterable::iterator}{core::Iterator}; for (; :sync-for-iterator.{core::Iterator::moveNext}(){() → core::bool}; ) { @@ -652,7 +653,7 @@ static method bar?, Y extends core::Set#t99, block { - final core::Set #t102 = new col::_Set::•(); + final core::Set #t102 = new _co::_Set::•(); { synthesized core::Iterator :sync-for-iterator = iterable.{core::Iterable::iterator}{core::Iterator}; for (; :sync-for-iterator.{core::Iterator::moveNext}(){() → core::bool}; ) { @@ -672,7 +673,7 @@ static method bar?, Y extends core::Set#t102, block { - final core::Set #t105 = new col::_Set::•(); + final core::Set #t105 = new _co::_Set::•(); { synthesized core::Iterator :sync-for-iterator = iterable.{core::Iterable::iterator}{core::Iterator}; for (; :sync-for-iterator.{core::Iterator::moveNext}(){() → core::bool}; ) { @@ -703,7 +704,7 @@ static method bar?, Y extends core::Set#t108, block { - final core::Set #t109 = new col::_Set::•(); + final core::Set #t109 = new _co::_Set::•(); for (core::int i = 0; i.{core::num::<}(42){(core::num) → core::bool}; i = i.{core::num::+}(1){(core::num) → core::int}) { synthesized core::Iterator :sync-for-iterator = invalid-expression "pkg/front_end/testcases/nnbd/issue43495.dart:64:38: Error: An expression whose value can be 'null' must be null-checked before it can be dereferenced. {for (int i = 0; i < 42; ++i) ...x}, // Error. @@ -717,7 +718,7 @@ static method bar?, Y extends core::Set#t109, block { - final core::Set #t112 = new col::_Set::•(); + final core::Set #t112 = new _co::_Set::•(); for (core::int i = 0; i.{core::num::<}(42){(core::num) → core::bool}; i = i.{core::num::+}(1){(core::num) → core::int}) { synthesized core::Iterator :sync-for-iterator = invalid-expression "pkg/front_end/testcases/nnbd/issue43495.dart:65:38: Error: An expression whose value can be 'null' must be null-checked before it can be dereferenced. {for (int i = 0; i < 42; ++i) ...y}, // Error. @@ -731,7 +732,7 @@ static method bar?, Y extends core::Set#t112, block { - final core::Set #t115 = new col::_Set::•(); + final core::Set #t115 = new _co::_Set::•(); for (core::int i = 0; i.{core::num::<}(42){(core::num) → core::bool}; i = i.{core::num::+}(1){(core::num) → core::int}) { synthesized core::Iterator :sync-for-iterator = invalid-expression "pkg/front_end/testcases/nnbd/issue43495.dart:66:38: Error: An expression whose value can be 'null' must be null-checked before it can be dereferenced. {for (int i = 0; i < 42; ++i) ...z}, // Error. @@ -751,17 +752,17 @@ static method bar?, Y extends core::Set#t118, block { - final core::Set #t119 = new col::_Set::•(); + final core::Set #t119 = new _co::_Set::•(); final core::Iterable? #t120 = x; if(!(#t120 == null)) #t119.{core::Set::addAll}{Invariant}(#t120{core::Iterable}){(core::Iterable) → void}; } =>#t119, block { - final core::Set #t121 = new col::_Set::•(); + final core::Set #t121 = new _co::_Set::•(); final core::Iterable? #t122 = y; if(!(#t122 == null)) #t121.{core::Set::addAll}{Invariant}(#t122{core::Iterable}){(core::Iterable) → void}; } =>#t121, block { - final core::Set #t123 = new col::_Set::•(); + final core::Set #t123 = new _co::_Set::•(); final core::Iterable? #t124 = z; if(!(#t124 == null)) #t123.{core::Set::addAll}{Invariant}(#t124{core::Iterable}){(core::Iterable) → void}; @@ -771,7 +772,7 @@ static method bar?, Y extends core::Set}){(core::Map) → void}; } =>#t125, block { - final core::Set #t127 = new col::_Set::•(); + final core::Set #t127 = new _co::_Set::•(); if(condition) { final core::Iterable? #t128 = x; if(!(#t128 == null)) { @@ -786,7 +787,7 @@ static method bar?, Y extends core::Set#t127, block { - final core::Set #t131 = new col::_Set::•(); + final core::Set #t131 = new _co::_Set::•(); if(condition) { final core::Iterable? #t132 = y; if(!(#t132 == null)) { @@ -801,7 +802,7 @@ static method bar?, Y extends core::Set#t131, block { - final core::Set #t135 = new col::_Set::•(); + final core::Set #t135 = new _co::_Set::•(); if(condition) { final core::Iterable? #t136 = z; if(!(#t136 == null)) { @@ -823,7 +824,7 @@ static method bar?, Y extends core::Set}){(core::Map) → void}; } } =>#t139, block { - final core::Set #t141 = new col::_Set::•(); + final core::Set #t141 = new _co::_Set::•(); { synthesized core::Iterator :sync-for-iterator = iterable.{core::Iterable::iterator}{core::Iterator}; for (; :sync-for-iterator.{core::Iterator::moveNext}(){() → core::bool}; ) { @@ -844,7 +845,7 @@ static method bar?, Y extends core::Set#t141, block { - final core::Set #t145 = new col::_Set::•(); + final core::Set #t145 = new _co::_Set::•(); { synthesized core::Iterator :sync-for-iterator = iterable.{core::Iterable::iterator}{core::Iterator}; for (; :sync-for-iterator.{core::Iterator::moveNext}(){() → core::bool}; ) { @@ -865,7 +866,7 @@ static method bar?, Y extends core::Set#t145, block { - final core::Set #t149 = new col::_Set::•(); + final core::Set #t149 = new _co::_Set::•(); { synthesized core::Iterator :sync-for-iterator = iterable.{core::Iterable::iterator}{core::Iterator}; for (; :sync-for-iterator.{core::Iterator::moveNext}(){() → core::bool}; ) { @@ -899,7 +900,7 @@ static method bar?, Y extends core::Set#t153, block { - final core::Set #t155 = new col::_Set::•(); + final core::Set #t155 = new _co::_Set::•(); for (core::int i = 0; i.{core::num::<}(42){(core::num) → core::bool}; i = i.{core::num::+}(1){(core::num) → core::int}) { final core::Iterable? #t156 = x; if(!(#t156 == null)) { @@ -914,7 +915,7 @@ static method bar?, Y extends core::Set#t155, block { - final core::Set #t159 = new col::_Set::•(); + final core::Set #t159 = new _co::_Set::•(); for (core::int i = 0; i.{core::num::<}(42){(core::num) → core::bool}; i = i.{core::num::+}(1){(core::num) → core::int}) { final core::Iterable? #t160 = y; if(!(#t160 == null)) { @@ -929,7 +930,7 @@ static method bar?, Y extends core::Set#t159, block { - final core::Set #t163 = new col::_Set::•(); + final core::Set #t163 = new _co::_Set::•(); for (core::int i = 0; i.{core::num::<}(42){(core::num) → core::bool}; i = i.{core::num::+}(1){(core::num) → core::int}) { final core::Iterable? #t164 = z; if(!(#t164 == null)) { diff --git a/pkg/front_end/testcases/nnbd/spread_if_null.dart.strong.transformed.expect b/pkg/front_end/testcases/nnbd/spread_if_null.dart.strong.transformed.expect index 656c8a54c9d..c276ba7fdc3 100644 --- a/pkg/front_end/testcases/nnbd/spread_if_null.dart.strong.transformed.expect +++ b/pkg/front_end/testcases/nnbd/spread_if_null.dart.strong.transformed.expect @@ -1,7 +1,7 @@ library; import self as self; import "dart:core" as core; -import "dart:collection" as col; +import "dart:_compact_hash" as _co; static method main() → dynamic { has-declared-initializer core::List? list = null; @@ -47,7 +47,7 @@ static method main() → dynamic { } =>#t11; has-declared-initializer core::Set? set = null; core::print( block { - final core::Set #t13 = new col::_Set::•(); + final core::Set #t13 = new _co::_Set::•(); #t13.{core::Set::add}{Invariant}(1){(core::int) → core::bool}; #t13.{core::Set::add}{Invariant}(2){(core::int) → core::bool}; final core::Iterable? #t14 = set; @@ -56,7 +56,7 @@ static method main() → dynamic { #t13.{core::Set::add}{Invariant}(3){(core::int) → core::bool}; } =>#t13); core::print( block { - final core::Set #t15 = new col::_Set::•(); + final core::Set #t15 = new _co::_Set::•(); #t15.{core::Set::add}{Invariant}(1){(core::int) → core::bool}; #t15.{core::Set::add}{Invariant}(2){(core::int) → core::bool}; final has-declared-initializer core::Iterable? #t16 = null; @@ -65,13 +65,13 @@ static method main() → dynamic { #t15.{core::Set::add}{Invariant}(3){(core::int) → core::bool}; } =>#t15); core::Set set1 = block { - final core::Set #t17 = new col::_Set::•(); + final core::Set #t17 = new _co::_Set::•(); final core::Iterable? #t18 = set; if(!(#t18 == null)) #t17.{core::Set::addAll}{Invariant}(#t18{core::Iterable}){(core::Iterable) → void}; } =>#t17; core::Set set3 = block { - final core::Set #t19 = new col::_Set::•(); + final core::Set #t19 = new _co::_Set::•(); #t19.{core::Set::add}{Invariant}(1){(core::int) → core::bool}; #t19.{core::Set::add}{Invariant}(2){(core::int) → core::bool}; final core::Iterable? #t20 = set; @@ -80,7 +80,7 @@ static method main() → dynamic { #t19.{core::Set::add}{Invariant}(3){(core::int) → core::bool}; } =>#t19; core::Set set4 = block { - final core::Set #t21 = new col::_Set::•(); + final core::Set #t21 = new _co::_Set::•(); #t21.{core::Set::add}{Invariant}(1){(core::int) → core::bool}; #t21.{core::Set::add}{Invariant}(2){(core::int) → core::bool}; final has-declared-initializer core::Iterable? #t22 = null; diff --git a/pkg/front_end/testcases/nnbd/strictly_non_nullable_warnings.dart.strong.transformed.expect b/pkg/front_end/testcases/nnbd/strictly_non_nullable_warnings.dart.strong.transformed.expect index 88624924574..a04a8cddb8b 100644 --- a/pkg/front_end/testcases/nnbd/strictly_non_nullable_warnings.dart.strong.transformed.expect +++ b/pkg/front_end/testcases/nnbd/strictly_non_nullable_warnings.dart.strong.transformed.expect @@ -1,7 +1,7 @@ library; import self as self; import "dart:core" as core; -import "dart:collection" as col; +import "dart:_compact_hash" as _co; class A extends core::Object { synthetic constructor •() → self::A @@ -43,13 +43,13 @@ static method warning(core::String s, core::List l, core::Map}){(core::Iterable) → void}; } core::Set a = block { - final core::Set #t7 = new col::_Set::•(); + final core::Set #t7 = new _co::_Set::•(); final core::Iterable? #t8 = l; if(!(#t8 == null)) #t7.{core::Set::addAll}{Invariant}(#t8{core::Iterable}){(core::Iterable) → void}; } =>#t7; { - final core::Set #t9 = new col::_Set::•(); + final core::Set #t9 = new _co::_Set::•(); final core::Iterable? #t10 = l; if(!(#t10 == null)) #t9.{core::Set::addAll}{Invariant}(#t10{core::Iterable}){(core::Iterable) → void}; diff --git a/pkg/front_end/testcases/null_aware_elements/simple_positive.dart.strong.transformed.expect b/pkg/front_end/testcases/null_aware_elements/simple_positive.dart.strong.transformed.expect index a274c13b0d9..302e496f49d 100644 --- a/pkg/front_end/testcases/null_aware_elements/simple_positive.dart.strong.transformed.expect +++ b/pkg/front_end/testcases/null_aware_elements/simple_positive.dart.strong.transformed.expect @@ -1,7 +1,7 @@ library; import self as self; import "dart:core" as core; -import "dart:collection" as col; +import "dart:_compact_hash" as _co; static method foo1(core::int? x) → dynamic return block { @@ -12,7 +12,7 @@ static method foo1(core::int? x) → dynamic } =>#t1; static method foo2(core::String? x) → dynamic return block { - final core::Set #t3 = new col::_Set::•(); + final core::Set #t3 = new _co::_Set::•(); final core::String? #t4 = x; if(!(#t4 == null)) #t3.{core::Set::add}{Invariant}(#t4{core::String}){(core::String) → core::bool}; @@ -33,7 +33,7 @@ static method bar1(core::int? x) → dynamic } =>#t7; static method bar2(core::int? x, core::bool b) → dynamic return block { - final core::Set #t9 = new col::_Set::•(); + final core::Set #t9 = new _co::_Set::•(); if(b) { final core::int? #t10 = x; if(!(#t10 == null)) @@ -42,7 +42,7 @@ static method bar2(core::int? x, core::bool b) → dynamic } =>#t9; static method bar3(core::int? x, core::List y) → dynamic return block { - final core::Set #t11 = new col::_Set::•(); + final core::Set #t11 = new _co::_Set::•(); { synthesized core::Iterator :sync-for-iterator = y.{core::Iterable::iterator}{core::Iterator}; for (; :sync-for-iterator.{core::Iterator::moveNext}(){() → core::bool}; ) { @@ -113,41 +113,41 @@ static method main() → dynamic { self::expectShallowEqualLists(self::foo1(0) as{TypeError,ForDynamic} core::List, core::_GrowableList::_literal1(0)); self::expectShallowEqualLists(self::foo1(null) as{TypeError,ForDynamic} core::List, core::_GrowableList::•(0)); self::expectShallowEqualSets(self::foo2("") as{TypeError,ForDynamic} core::Set, block { - final core::Set #t26 = new col::_Set::•(); + final core::Set #t26 = new _co::_Set::•(); #t26.{core::Set::add}{Invariant}(""){(core::String) → core::bool}; } =>#t26); self::expectShallowEqualSets(self::foo2(null) as{TypeError,ForDynamic} core::Set, block { - final core::Set #t27 = new col::_Set::•(); + final core::Set #t27 = new _co::_Set::•(); } =>#t27); self::expectShallowEqualMaps(self::foo3(false, 0) as{TypeError,ForDynamic} core::Map, {false: 0}); self::expectShallowEqualMaps(self::foo3(null, 0) as{TypeError,ForDynamic} core::Map, {}); self::expectShallowEqualLists(self::bar1(0) as{TypeError,ForDynamic} core::List, core::_GrowableList::_literal1(0)); self::expectShallowEqualLists(self::bar1(null) as{TypeError,ForDynamic} core::List, core::_GrowableList::•(0)); self::expectShallowEqualSets(self::bar2(0, true) as{TypeError,ForDynamic} core::Set, block { - final core::Set #t28 = new col::_Set::•(); + final core::Set #t28 = new _co::_Set::•(); #t28.{core::Set::add}{Invariant}(0){(core::int) → core::bool}; } =>#t28); self::expectShallowEqualSets(self::bar2(0, false) as{TypeError,ForDynamic} core::Set, block { - final core::Set #t29 = new col::_Set::•(); + final core::Set #t29 = new _co::_Set::•(); } =>#t29); self::expectShallowEqualSets(self::bar2(null, true) as{TypeError,ForDynamic} core::Set, block { - final core::Set #t30 = new col::_Set::•(); + final core::Set #t30 = new _co::_Set::•(); } =>#t30); self::expectShallowEqualSets(self::bar2(null, false) as{TypeError,ForDynamic} core::Set, block { - final core::Set #t31 = new col::_Set::•(); + final core::Set #t31 = new _co::_Set::•(); } =>#t31); self::expectShallowEqualSets(self::bar3(0, core::_GrowableList::_literal2("", "")) as{TypeError,ForDynamic} core::Set, block { - final core::Set #t32 = new col::_Set::•(); + final core::Set #t32 = new _co::_Set::•(); #t32.{core::Set::add}{Invariant}(0){(core::int) → core::bool}; } =>#t32); self::expectShallowEqualSets(self::bar3(null, core::_GrowableList::_literal2("", "")) as{TypeError,ForDynamic} core::Set, block { - final core::Set #t33 = new col::_Set::•(); + final core::Set #t33 = new _co::_Set::•(); } =>#t33); self::expectShallowEqualSets(self::bar3(0, core::_GrowableList::•(0)) as{TypeError,ForDynamic} core::Set, block { - final core::Set #t34 = new col::_Set::•(); + final core::Set #t34 = new _co::_Set::•(); } =>#t34); self::expectShallowEqualSets(self::bar3(null, core::_GrowableList::•(0)) as{TypeError,ForDynamic} core::Set, block { - final core::Set #t35 = new col::_Set::•(); + final core::Set #t35 = new _co::_Set::•(); } =>#t35); self::expectShallowEqualMaps(self::bar4("", false) as{TypeError,ForDynamic} core::Map, {"": false}); self::expectShallowEqualMaps(self::bar4("", null) as{TypeError,ForDynamic} core::Map, {}); diff --git a/pkg/front_end/testcases/offsets/spreads.dart.strong.transformed.expect b/pkg/front_end/testcases/offsets/spreads.dart.strong.transformed.expect index 2436a14c441..a9be8846bbf 100644 --- a/pkg/front_end/testcases/offsets/spreads.dart.strong.transformed.expect +++ b/pkg/front_end/testcases/offsets/spreads.dart.strong.transformed.expect @@ -2,6 +2,7 @@ library; import self as self; import "dart:core" as core; import "dart:collection" as col; +import "dart:_compact_hash" as _co; [5]static method main([23] core::List args) → void { [45] [45] core::Set fooSet = [54] [54] block { @@ -13,7 +14,7 @@ import "dart:collection" as col; [-1] for (; [127] [127] [-1] [-1] :sync-for-iterator.{core::Iterator::moveNext}[-1](){() → core::bool}; ) { [122] [122] core::String s = [-1] [-1] [-1] [-1] :sync-for-iterator.{core::Iterator::current}{core::String}; [136] [136] [136] [-1] [-1] #t1.{core::Set::addAll}{Invariant}[-1]([136] block { -[-1] [-1] final core::Set #t2 = [-1] [-1] new col::_Set::• [-1](); +[-1] [-1] final core::Set #t2 = [-1] [-1] new _co::_Set::• [-1](); [148] [148] [148] [-1] [-1] #t2.{core::Set::add}{Invariant}[-1]([148] "${[146] [146] s}"){(core::String) → core::bool}; [164] [164] [164] [-1] [-1] #t2.{core::Set::add}{Invariant}[-1]([164] "${[159] [159] s}_2"){(core::String) → core::bool}; } =>[-1] [-1] #t2){(core::Iterable) → void}; @@ -21,7 +22,7 @@ import "dart:collection" as col; } [177] if([193] [193] [186] [186] [181] [181] args.{core::List::length}{core::int} =={core::num::==}{(core::Object) → core::bool} [196] [196] 42) [203] [203] [203] [-1] [-1] #t1.{core::Set::addAll}{Invariant}[-1]([203] block { -[-1] [-1] final core::Set #t3 = [-1] [-1] new col::_Set::• [-1](); +[-1] [-1] final core::Set #t3 = [-1] [-1] new _co::_Set::• [-1](); [211] [211] [211] [-1] [-1] #t3.{core::Set::add}{Invariant}[-1]([211] "length"){(core::String) → core::bool}; [227] [227] [227] [-1] [-1] #t3.{core::Set::add}{Invariant}[-1]([227] "is"){(core::String) → core::bool}; [239] [239] [239] [-1] [-1] #t3.{core::Set::add}{Invariant}[-1]([239] "42"){(core::String) → core::bool}; @@ -37,7 +38,7 @@ import "dart:collection" as col; [354] [354] core::String s = [-1] [-1] [-1] [-1] :sync-for-iterator.{core::Iterator::current}{core::String}; [-1] { [368] [368] synthesized core::Iterator :sync-for-iterator = [368] [368] [368]([368] block { -[-1] [-1] final core::Set #t5 = [-1] [-1] new col::_Set::• [-1](); +[-1] [-1] final core::Set #t5 = [-1] [-1] new _co::_Set::• [-1](); [380] [380] [380] [-1] [-1] #t5.{core::Set::add}{Invariant}[-1]([380] "${[378] [378] s}"){(core::String) → core::bool}; [396] [396] [396] [-1] [-1] #t5.{core::Set::add}{Invariant}[-1]([396] "${[391] [391] s}_2"){(core::String) → core::bool}; } =>[-1] [-1] #t5).{core::Iterable::iterator}{core::Iterator}; @@ -53,7 +54,7 @@ import "dart:collection" as col; } [409] if([425] [425] [418] [418] [413] [413] args.{core::List::length}{core::int} =={core::num::==}{(core::Object) → core::bool} [428] [428] 42) { [435] [435] synthesized core::Iterator :sync-for-iterator = [435] [435] [435]([435] block { -[-1] [-1] final core::Set #t8 = [-1] [-1] new col::_Set::• [-1](); +[-1] [-1] final core::Set #t8 = [-1] [-1] new _co::_Set::• [-1](); [443] [443] [443] [-1] [-1] #t8.{core::Set::add}{Invariant}[-1]([443] "length"){(core::String) → core::bool}; [459] [459] [459] [-1] [-1] #t8.{core::Set::add}{Invariant}[-1]([459] "is"){(core::String) → core::bool}; [471] [471] [471] [-1] [-1] #t8.{core::Set::add}{Invariant}[-1]([471] "42"){(core::String) → core::bool}; diff --git a/pkg/front_end/testcases/patterns/access_order.dart.strong.transformed.expect b/pkg/front_end/testcases/patterns/access_order.dart.strong.transformed.expect index cf43fdc33c4..29bcc163041 100644 --- a/pkg/front_end/testcases/patterns/access_order.dart.strong.transformed.expect +++ b/pkg/front_end/testcases/patterns/access_order.dart.strong.transformed.expect @@ -3,6 +3,7 @@ import self as self; import "dart:core" as core; import "dart:collection" as col; import "dart:_internal" as _in; +import "dart:_compact_hash" as _co; import "dart:math" as math; import "dart:collection"; @@ -204,7 +205,7 @@ abstract class _MyList&Object&ListMixin exten return result; } method /* from org-dartlang-sdk:///sdk/lib/collection/list.dart */ toSet() → core::Set { - core::Set result = new col::_Set::•(); + core::Set result = new _co::_Set::•(); for (core::int i = 0; i.{core::num::<}(this.{core::List::length}{core::int}){(core::num) → core::bool}; i = i.{core::num::+}(1){(core::num) → core::int}) { result.{core::Set::add}(this.{core::List::[]}(i){(core::int) → self::_MyList&Object&ListMixin::E%}){(self::_MyList&Object&ListMixin::E%) → core::bool}; } diff --git a/pkg/front_end/testcases/patterns/cache_lookups.dart.strong.transformed.expect b/pkg/front_end/testcases/patterns/cache_lookups.dart.strong.transformed.expect index 930ae6350c9..79237dc6c88 100644 --- a/pkg/front_end/testcases/patterns/cache_lookups.dart.strong.transformed.expect +++ b/pkg/front_end/testcases/patterns/cache_lookups.dart.strong.transformed.expect @@ -68,6 +68,7 @@ import self as cac; import "dart:core" as core; import "dart:collection" as col; import "dart:_internal" as _in; +import "dart:_compact_hash" as _co; import "dart:math" as math; import "cache_lookups.dart" as self; @@ -271,7 +272,7 @@ abstract class _CustomList&Object&ListMixin e return result; } method /* from org-dartlang-sdk:///sdk/lib/collection/list.dart */ toSet() → core::Set { - core::Set result = new col::_Set::•(); + core::Set result = new _co::_Set::•(); for (core::int i = 0; i.{core::num::<}(this.{core::List::length}{core::int}){(core::num) → core::bool}; i = i.{core::num::+}(1){(core::num) → core::int}) { result.{core::Set::add}(this.{core::List::[]}(i){(core::int) → cac::_CustomList&Object&ListMixin::E%}){(cac::_CustomList&Object&ListMixin::E%) → core::bool}; } diff --git a/pkg/front_end/testcases/patterns/coercion_in_if_case_element.dart.strong.transformed.expect b/pkg/front_end/testcases/patterns/coercion_in_if_case_element.dart.strong.transformed.expect index 21e09bfc948..a16fd371c64 100644 --- a/pkg/front_end/testcases/patterns/coercion_in_if_case_element.dart.strong.transformed.expect +++ b/pkg/front_end/testcases/patterns/coercion_in_if_case_element.dart.strong.transformed.expect @@ -1,7 +1,7 @@ library; import self as self; import "dart:core" as core; -import "dart:collection" as col; +import "dart:_compact_hash" as _co; static method testList(dynamic x, dynamic list) → dynamic { return block { @@ -17,7 +17,7 @@ static method testList(dynamic x, dynamic list) → dynamic { } static method testSet(dynamic x, dynamic list) → dynamic { return block { - final core::Set #t2 = new col::_Set::•(); + final core::Set #t2 = new _co::_Set::•(); #t2.{core::Set::add}{Invariant}(0){(dynamic) → core::bool}; { final synthesized dynamic #0#0 = list; diff --git a/pkg/front_end/testcases/patterns/collections_entry_to_element_conversion_in_inference.dart.strong.transformed.expect b/pkg/front_end/testcases/patterns/collections_entry_to_element_conversion_in_inference.dart.strong.transformed.expect index 340cd8ea5c9..6ee96356e25 100644 --- a/pkg/front_end/testcases/patterns/collections_entry_to_element_conversion_in_inference.dart.strong.transformed.expect +++ b/pkg/front_end/testcases/patterns/collections_entry_to_element_conversion_in_inference.dart.strong.transformed.expect @@ -1,11 +1,11 @@ library; import self as self; import "dart:core" as core; -import "dart:collection" as col; +import "dart:_compact_hash" as _co; static method test1(dynamic x, dynamic another) → core::Iterable { return block { - final core::Set #t1 = new col::_Set::•(); + final core::Set #t1 = new _co::_Set::•(); hoisted core::int i; hoisted core::int n; { @@ -33,7 +33,7 @@ static method test1(dynamic x, dynamic another) → core::Iterable { } static method test2(dynamic x, dynamic another) → core::Iterable { return block { - final core::Set #t12 = new col::_Set::•(); + final core::Set #t12 = new _co::_Set::•(); { final synthesized dynamic #0#0 = x; if(#0#0 is core::String) { @@ -51,7 +51,7 @@ static method test2(dynamic x, dynamic another) → core::Iterable { } static method test3(dynamic x, dynamic another) → core::Iterable { return block { - final core::Set #t15 = new col::_Set::•(); + final core::Set #t15 = new _co::_Set::•(); { synthesized core::Iterator :sync-for-iterator = (x as{TypeError,ForDynamic} core::Iterable).{core::Iterable::iterator}{core::Iterator}; for (; :sync-for-iterator.{core::Iterator::moveNext}(){() → core::bool}; ) { @@ -79,51 +79,51 @@ static method test3(dynamic x, dynamic another) → core::Iterable { } static method main() → dynamic { self::expectSetEquals(self::test1(core::_GrowableList::_literal2(0, 2), block { - final core::Set #t19 = new col::_Set::•(); + final core::Set #t19 = new _co::_Set::•(); #t19.{core::Set::add}{Invariant}(1){(core::int) → core::bool}; #t19.{core::Set::add}{Invariant}(2){(core::int) → core::bool}; #t19.{core::Set::add}{Invariant}(3){(core::int) → core::bool}; } =>#t19) as core::Set, block { - final core::Set #t20 = new col::_Set::•(); + final core::Set #t20 = new _co::_Set::•(); #t20.{core::Set::add}{Invariant}(1){(dynamic) → core::bool}; #t20.{core::Set::add}{Invariant}(2){(dynamic) → core::bool}; #t20.{core::Set::add}{Invariant}(3){(dynamic) → core::bool}; } =>#t20); self::expectSetEquals(self::test2(core::_GrowableList::_literal2(0, 0), block { - final core::Set #t21 = new col::_Set::•(); + final core::Set #t21 = new _co::_Set::•(); #t21.{core::Set::add}{Invariant}(1){(core::int) → core::bool}; #t21.{core::Set::add}{Invariant}(2){(core::int) → core::bool}; #t21.{core::Set::add}{Invariant}(3){(core::int) → core::bool}; } =>#t21) as core::Set, block { - final core::Set #t22 = new col::_Set::•(); + final core::Set #t22 = new _co::_Set::•(); } =>#t22); self::expectThrows(() → void => self::test1(core::_GrowableList::•(0), {})); self::expectSetEquals(self::test2("foo", block { - final core::Set #t23 = new col::_Set::•(); + final core::Set #t23 = new _co::_Set::•(); #t23.{core::Set::add}{Invariant}(1){(core::int) → core::bool}; #t23.{core::Set::add}{Invariant}(2){(core::int) → core::bool}; #t23.{core::Set::add}{Invariant}(3){(core::int) → core::bool}; } =>#t23) as core::Set, block { - final core::Set #t24 = new col::_Set::•(); + final core::Set #t24 = new _co::_Set::•(); #t24.{core::Set::add}{Invariant}(1){(dynamic) → core::bool}; #t24.{core::Set::add}{Invariant}(2){(dynamic) → core::bool}; #t24.{core::Set::add}{Invariant}(3){(dynamic) → core::bool}; } =>#t24); self::expectSetEquals(self::test2(false, block { - final core::Set #t25 = new col::_Set::•(); + final core::Set #t25 = new _co::_Set::•(); #t25.{core::Set::add}{Invariant}(1){(core::int) → core::bool}; #t25.{core::Set::add}{Invariant}(2){(core::int) → core::bool}; #t25.{core::Set::add}{Invariant}(3){(core::int) → core::bool}; } =>#t25) as core::Set, block { - final core::Set #t26 = new col::_Set::•(); + final core::Set #t26 = new _co::_Set::•(); } =>#t26); self::expectSetEquals(self::test3(core::_GrowableList::_literal2>(core::_GrowableList::_literal1(0), core::_GrowableList::_literal1(1)), block { - final core::Set #t27 = new col::_Set::•(); + final core::Set #t27 = new _co::_Set::•(); #t27.{core::Set::add}{Invariant}(1){(core::int) → core::bool}; #t27.{core::Set::add}{Invariant}(2){(core::int) → core::bool}; #t27.{core::Set::add}{Invariant}(3){(core::int) → core::bool}; } =>#t27) as core::Set, block { - final core::Set #t28 = new col::_Set::•(); + final core::Set #t28 = new _co::_Set::•(); #t28.{core::Set::add}{Invariant}(1){(dynamic) → core::bool}; #t28.{core::Set::add}{Invariant}(2){(dynamic) → core::bool}; #t28.{core::Set::add}{Invariant}(3){(dynamic) → core::bool}; diff --git a/pkg/front_end/testcases/patterns/element_to_entry_conversion.dart.strong.transformed.expect b/pkg/front_end/testcases/patterns/element_to_entry_conversion.dart.strong.transformed.expect index bdab0f0148b..52cbd2b917b 100644 --- a/pkg/front_end/testcases/patterns/element_to_entry_conversion.dart.strong.transformed.expect +++ b/pkg/front_end/testcases/patterns/element_to_entry_conversion.dart.strong.transformed.expect @@ -1,7 +1,7 @@ library; import self as self; import "dart:core" as core; -import "dart:collection" as col; +import "dart:_compact_hash" as _co; static method test1(dynamic x, dynamic another) → dynamic { return block { @@ -73,7 +73,7 @@ static method main() → dynamic { self::expectEquals(self::mapToString(self::test3(0, 1, {2: 2}) as{TypeError,ForDynamic} core::Map), self::mapToString({1: 1, 2: 0, 3: 3})); self::expectEquals(self::mapToString(self::test3("foo", 1, {2: 2}) as{TypeError,ForDynamic} core::Map), self::mapToString({1: 1, 2: 2, 3: 3})); self::expectEquals(self::mapToString(self::test3("foo", "bar", block { - final core::Set #t4 = new col::_Set::•(); + final core::Set #t4 = new _co::_Set::•(); #t4.{core::Set::add}{Invariant}(2){(core::int) → core::bool}; #t4.{core::Set::add}{Invariant}(2){(core::int) → core::bool}; } =>#t4) as{TypeError,ForDynamic} core::Map), self::mapToString({1: 1, 3: 3})); diff --git a/pkg/front_end/testcases/patterns/for_in_inference.dart.strong.transformed.expect b/pkg/front_end/testcases/patterns/for_in_inference.dart.strong.transformed.expect index 4fa0f8ff35b..ca70f16c5ee 100644 --- a/pkg/front_end/testcases/patterns/for_in_inference.dart.strong.transformed.expect +++ b/pkg/front_end/testcases/patterns/for_in_inference.dart.strong.transformed.expect @@ -1,7 +1,7 @@ library; import self as self; import "dart:core" as core; -import "dart:collection" as col; +import "dart:_compact_hash" as _co; static method test1() → dynamic { { @@ -54,7 +54,7 @@ static method test2() → dynamic { } static method test3() → core::Iterable { return block { - final core::Set #t18 = new col::_Set::•(); + final core::Set #t18 = new _co::_Set::•(); { synthesized core::Iterator> :sync-for-iterator = core::_GrowableList::_literal1>(core::_GrowableList::_literal4(3, 4, 5, 6)).{core::Iterable::iterator}{core::Iterator>}; for (; :sync-for-iterator.{core::Iterator::moveNext}(){() → core::bool}; ) { diff --git a/pkg/front_end/testcases/patterns/if_else_in_collections_errors.dart.strong.transformed.expect b/pkg/front_end/testcases/patterns/if_else_in_collections_errors.dart.strong.transformed.expect index 492e06b30d4..17e87837c81 100644 --- a/pkg/front_end/testcases/patterns/if_else_in_collections_errors.dart.strong.transformed.expect +++ b/pkg/front_end/testcases/patterns/if_else_in_collections_errors.dart.strong.transformed.expect @@ -16,7 +16,7 @@ library; // import self as self; import "dart:core" as core; -import "dart:collection" as col; +import "dart:_compact_hash" as _co; static method test1(dynamic x) → dynamic return block { @@ -39,7 +39,7 @@ test1(dynamic x) => [1, if (x case int y) 2 else y, 3]; // Error. } =>#t1; static method test2(dynamic x) → dynamic return block { - final core::Set #t2 = new col::_Set::•(); + final core::Set #t2 = new _co::_Set::•(); #t2.{core::Set::add}{Invariant}(1){(core::int) → core::bool}; { final synthesized dynamic #0#0 = x; diff --git a/pkg/front_end/testcases/patterns/issue51971_2.dart.strong.transformed.expect b/pkg/front_end/testcases/patterns/issue51971_2.dart.strong.transformed.expect index 209b371e7ac..056eef6133e 100644 --- a/pkg/front_end/testcases/patterns/issue51971_2.dart.strong.transformed.expect +++ b/pkg/front_end/testcases/patterns/issue51971_2.dart.strong.transformed.expect @@ -32,7 +32,7 @@ library; // import self as self; import "dart:core" as core; -import "dart:collection" as col; +import "dart:_compact_hash" as _co; static method test1(dynamic x1) → dynamic { { @@ -154,7 +154,7 @@ static method test5(dynamic x5) → dynamic { } static method test6(dynamic x6) → dynamic { return block { - final core::Set #t13 = new col::_Set::•(); + final core::Set #t13 = new _co::_Set::•(); hoisted core::int i6; hoisted core::int n6; { diff --git a/pkg/front_end/testcases/patterns/issue53092.dart.strong.transformed.expect b/pkg/front_end/testcases/patterns/issue53092.dart.strong.transformed.expect index 5460244e52e..998f2cc3796 100644 --- a/pkg/front_end/testcases/patterns/issue53092.dart.strong.transformed.expect +++ b/pkg/front_end/testcases/patterns/issue53092.dart.strong.transformed.expect @@ -1,11 +1,12 @@ library; import self as self; import "dart:core" as core; +import "dart:_compact_hash" as _co; import "dart:collection" as col; static method test(dynamic y) → core::Iterable { return block { - final core::Set #t1 = new col::_Set::•(); + final core::Set #t1 = new _co::_Set::•(); { synthesized core::Iterator :sync-for-iterator = ( block { final core::Set #t2 = col::LinkedHashSet::of(y as{TypeError,ForDynamic} core::Iterable); diff --git a/pkg/front_end/testcases/patterns/issue54230.dart.strong.transformed.expect b/pkg/front_end/testcases/patterns/issue54230.dart.strong.transformed.expect index 7424c00befd..e54f9c0ae88 100644 --- a/pkg/front_end/testcases/patterns/issue54230.dart.strong.transformed.expect +++ b/pkg/front_end/testcases/patterns/issue54230.dart.strong.transformed.expect @@ -8,12 +8,12 @@ library; // import self as self; import "dart:core" as core; -import "dart:collection" as col; +import "dart:_compact_hash" as _co; static method test() → void { { final synthesized core::Set #0#0 = block { - final core::Set #t1 = new col::_Set::•(); + final core::Set #t1 = new _co::_Set::•(); #t1.{core::Set::add}{Invariant}(0){(core::int) → core::bool}; } =>#t1; final const synthesized Never #0#1 = invalid-expression "pkg/front_end/testcases/patterns/issue54230.dart:6:22: Error: Both Iterable and Map spread elements encountered in ambiguous literal. diff --git a/pkg/front_end/testcases/patterns/matching_and_capturing_accesses_list_element_once.dart.strong.transformed.expect b/pkg/front_end/testcases/patterns/matching_and_capturing_accesses_list_element_once.dart.strong.transformed.expect index e5c9152984c..88a896efb80 100644 --- a/pkg/front_end/testcases/patterns/matching_and_capturing_accesses_list_element_once.dart.strong.transformed.expect +++ b/pkg/front_end/testcases/patterns/matching_and_capturing_accesses_list_element_once.dart.strong.transformed.expect @@ -3,6 +3,7 @@ import self as self; import "dart:core" as core; import "dart:collection" as col; import "dart:_internal" as _in; +import "dart:_compact_hash" as _co; import "dart:math" as math; import "dart:collection"; @@ -204,7 +205,7 @@ abstract class _A&Object&ListMixin extends core::Object implements col::ListBase return result; } method /* from org-dartlang-sdk:///sdk/lib/collection/list.dart */ toSet() → core::Set { - core::Set result = new col::_Set::•(); + core::Set result = new _co::_Set::•(); for (core::int i = 0; i.{core::num::<}(this.{core::List::length}{core::int}){(core::num) → core::bool}; i = i.{core::num::+}(1){(core::num) → core::int}) { result.{core::Set::add}(this.{core::List::[]}(i){(core::int) → core::int}){(core::int) → core::bool}; } diff --git a/pkg/front_end/testcases/patterns/negative_length.dart.strong.transformed.expect b/pkg/front_end/testcases/patterns/negative_length.dart.strong.transformed.expect index 4f70f504831..1f4649b3c17 100644 --- a/pkg/front_end/testcases/patterns/negative_length.dart.strong.transformed.expect +++ b/pkg/front_end/testcases/patterns/negative_length.dart.strong.transformed.expect @@ -3,6 +3,7 @@ import self as self; import "dart:core" as core; import "dart:collection" as col; import "dart:_internal" as _in; +import "dart:_compact_hash" as _co; import "dart:math" as math; import "dart:collection"; @@ -204,7 +205,7 @@ abstract class _NegativeLengthList&Object&ListMixin { - core::Set result = new col::_Set::•(); + core::Set result = new _co::_Set::•(); for (core::int i = 0; i.{core::num::<}(this.{core::List::length}{core::int}){(core::num) → core::bool}; i = i.{core::num::+}(1){(core::num) → core::int}) { result.{core::Set::add}(this.{core::List::[]}(i){(core::int) → self::_NegativeLengthList&Object&ListMixin::E%}){(self::_NegativeLengthList&Object&ListMixin::E%) → core::bool}; } diff --git a/pkg/front_end/testcases/patterns/pattern_inForInitializer_element.dart.strong.transformed.expect b/pkg/front_end/testcases/patterns/pattern_inForInitializer_element.dart.strong.transformed.expect index 3788da7cc89..7d9964d8839 100644 --- a/pkg/front_end/testcases/patterns/pattern_inForInitializer_element.dart.strong.transformed.expect +++ b/pkg/front_end/testcases/patterns/pattern_inForInitializer_element.dart.strong.transformed.expect @@ -1,7 +1,7 @@ library; import self as self; import "dart:core" as core; -import "dart:collection" as col; +import "dart:_compact_hash" as _co; static method f(dynamic x) → void return block { @@ -20,7 +20,7 @@ static method f(dynamic x) → void } =>#t1; static method g(dynamic x) → void return block { - final core::Set #t6 = new col::_Set::•(); + final core::Set #t6 = new _co::_Set::•(); hoisted dynamic a; hoisted dynamic b; { diff --git a/pkg/front_end/testcases/regress/issue_42423.dart.strong.transformed.expect b/pkg/front_end/testcases/regress/issue_42423.dart.strong.transformed.expect index efffefc249a..a881effb67e 100644 --- a/pkg/front_end/testcases/regress/issue_42423.dart.strong.transformed.expect +++ b/pkg/front_end/testcases/regress/issue_42423.dart.strong.transformed.expect @@ -1,14 +1,14 @@ library; import self as self; import "dart:core" as core; -import "dart:collection" as col; +import "dart:_compact_hash" as _co; import "package:expect/expect.dart" as exp; import "package:expect/expect.dart"; static method test1(dynamic stringList) → dynamic { core::Set intSet = block { - final core::Set #t1 = new col::_Set::•(); + final core::Set #t1 = new _co::_Set::•(); final core::Iterable? #t2 = stringList as{TypeError,ForDynamic} core::Iterable?; if(!(#t2 == null)) { synthesized core::Iterator :sync-for-iterator = #t2{core::Iterable}.{core::Iterable::iterator}{core::Iterator}; diff --git a/pkg/front_end/testcases/set_literals/disambiguation_rule.dart.strong.transformed.expect b/pkg/front_end/testcases/set_literals/disambiguation_rule.dart.strong.transformed.expect index 09233a7b167..094977935b5 100644 --- a/pkg/front_end/testcases/set_literals/disambiguation_rule.dart.strong.transformed.expect +++ b/pkg/front_end/testcases/set_literals/disambiguation_rule.dart.strong.transformed.expect @@ -42,6 +42,7 @@ library; // import self as self; import "dart:core" as core; +import "dart:_compact_hash" as _co; import "dart:collection" as col; import "dart:async" as asy; @@ -51,17 +52,17 @@ import "dart:collection" show LinkedHashMap, LinkedHashSet; static method main() → dynamic async /* emittedValueType= dynamic */ { core::Map m = {}; core::Set s = block { - final core::Set #t1 = new col::_Set::•(); + final core::Set #t1 = new _co::_Set::•(); } =>#t1; core::Iterable i = block { - final core::Set #t2 = new col::_Set::•(); + final core::Set #t2 = new _co::_Set::•(); } =>#t2; col::LinkedHashSet lhs = invalid-expression "pkg/front_end/testcases/set_literals/disambiguation_rule.dart:13:28: Error: A value of type 'Set' can't be assigned to a variable of type 'LinkedHashSet'. - 'Set' is from 'dart:core'. - 'LinkedHashSet' is from 'dart:collection'. LinkedHashSet lhs = {}; ^" in ( block { - final core::Set #t3 = new col::_Set::•(); + final core::Set #t3 = new _co::_Set::•(); } =>#t3) as{TypeError} col::LinkedHashSet; col::LinkedHashMap lhm = invalid-expression "pkg/front_end/testcases/set_literals/disambiguation_rule.dart:14:34: Error: A value of type 'Map' can't be assigned to a variable of type 'LinkedHashMap'. - 'Map' is from 'dart:core'. @@ -83,11 +84,11 @@ static method mapfun() → asy::Future> async / return {}; static method setfun() → asy::Future> async /* emittedValueType= core::Set */ return block { - final core::Set #t4 = new col::_Set::•(); + final core::Set #t4 = new _co::_Set::•(); } =>#t4; static method iterablefun() → asy::Future> async /* emittedValueType= core::Iterable */ return block { - final core::Set #t5 = new col::_Set::•(); + final core::Set #t5 = new _co::_Set::•(); } =>#t5; static method lhsfun() → asy::Future> async /* emittedValueType= col::LinkedHashSet */ return invalid-expression "pkg/front_end/testcases/set_literals/disambiguation_rule.dart:32:46: Error: A value of type 'Set' can't be returned from an async function with return type 'Future>'. @@ -96,7 +97,7 @@ static method lhsfun() → asy::Future> async /* e - 'LinkedHashSet' is from 'dart:collection'. Future> lhsfun() async => {}; ^" in ( block { - final core::Set #t6 = new col::_Set::•(); + final core::Set #t6 = new _co::_Set::•(); } =>#t6) as{TypeError} col::LinkedHashSet; static method lhmfun() → asy::Future> async /* emittedValueType= col::LinkedHashMap */ return invalid-expression "pkg/front_end/testcases/set_literals/disambiguation_rule.dart:33:52: Error: A value of type 'Map' can't be returned from an async function with return type 'Future>'. @@ -109,11 +110,11 @@ static method mapfun2() → FutureOr> return {}; static method setfun2() → FutureOr> return block { - final core::Set #t7 = new col::_Set::•(); + final core::Set #t7 = new _co::_Set::•(); } =>#t7; static method iterablefun2() → FutureOr> return block { - final core::Set #t8 = new col::_Set::•(); + final core::Set #t8 = new _co::_Set::•(); } =>#t8; static method lhsfun2() → FutureOr> return invalid-expression "pkg/front_end/testcases/set_literals/disambiguation_rule.dart:38:43: Error: A value of type 'Set' can't be returned from a function with return type 'FutureOr>'. @@ -121,7 +122,7 @@ static method lhsfun2() → FutureOr> - 'LinkedHashSet' is from 'dart:collection'. FutureOr> lhsfun2() => {}; ^" in ( block { - final core::Set #t9 = new col::_Set::•(); + final core::Set #t9 = new _co::_Set::•(); } =>#t9) as{TypeError} FutureOr>; static method lhmfun2() → FutureOr> return invalid-expression "pkg/front_end/testcases/set_literals/disambiguation_rule.dart:39:49: Error: A value of type 'Map' can't be returned from a function with return type 'FutureOr>'. diff --git a/pkg/front_end/testcases/unified_collections/fold_initial.dart.strong.transformed.expect b/pkg/front_end/testcases/unified_collections/fold_initial.dart.strong.transformed.expect index 7903ff531b9..0e1b1594b66 100644 --- a/pkg/front_end/testcases/unified_collections/fold_initial.dart.strong.transformed.expect +++ b/pkg/front_end/testcases/unified_collections/fold_initial.dart.strong.transformed.expect @@ -1,6 +1,7 @@ library; import self as self; import "dart:core" as core; +import "dart:_compact_hash" as _co; import "dart:collection" as col; static method foldInitialElements() → void { @@ -17,7 +18,7 @@ static method foldInitialElements() → void { } =>#t1; self::expect(core::_GrowableList::generate(7, (core::int? i) → core::int? => i), list); core::Set set = block { - final core::Set #t2 = new col::_Set::•(); + final core::Set #t2 = new _co::_Set::•(); #t2.{core::Set::add}{Invariant}(element0 as{TypeError,ForDynamic} core::int?){(core::int?) → core::bool}; #t2.{core::Set::add}{Invariant}(element1{core::int}){(core::int?) → core::bool}; #t2.{core::Set::add}{Invariant}(element2){(core::int?) → core::bool}; @@ -51,7 +52,7 @@ static method foldInitialSpread1() → void { } =>#t3; self::expect(core::_GrowableList::generate(7, (core::int i) → core::int => i), list); core::Set set = block { - final core::Set #t6 = new col::_Set::•(); + final core::Set #t6 = new _co::_Set::•(); { synthesized core::Iterator :sync-for-iterator = (initial as{TypeError,ForDynamic} core::Iterable).{core::Iterable::iterator}{core::Iterator}; for (; :sync-for-iterator.{core::Iterator::moveNext}(){() → core::bool}; ) { @@ -178,7 +179,7 @@ static method foldInitialSpread6([core::bool c = #C1]) → void { } =>#t17; self::expect(core::_GrowableList::generate(7, (core::int i) → core::int => i), list); core::Set set = block { - final core::Set #t19 = new col::_Set::•(); + final core::Set #t19 = new _co::_Set::•(); final core::Iterable? #t20 = initial; if(!(#t20 == null)) #t19.{core::Set::addAll}{Invariant}(#t20{core::Iterable}){(core::Iterable) → void}; diff --git a/pkg/front_end/testcases/unified_collections/invariance.dart.strong.transformed.expect b/pkg/front_end/testcases/unified_collections/invariance.dart.strong.transformed.expect index 9bc283d7b06..2f84bd5c9b7 100644 --- a/pkg/front_end/testcases/unified_collections/invariance.dart.strong.transformed.expect +++ b/pkg/front_end/testcases/unified_collections/invariance.dart.strong.transformed.expect @@ -1,7 +1,7 @@ library; import self as self; import "dart:core" as core; -import "dart:collection" as col; +import "dart:_compact_hash" as _co; static method main() → dynamic { core::List list1 = core::_GrowableList::_literal1(0); @@ -25,19 +25,19 @@ static method main() → dynamic { #t1.{core::List::add}{Invariant}(2){(core::int?) → void}; } =>#t1; core::Set set1 = block { - final core::Set #t4 = new col::_Set::•(); + final core::Set #t4 = new _co::_Set::•(); #t4.{core::Set::add}{Invariant}(0){(core::int) → core::bool}; } =>#t4; core::Set set2 = block { - final core::Set #t5 = new col::_Set::•(); + final core::Set #t5 = new _co::_Set::•(); #t5.{core::Set::add}{Invariant}(0){(core::int?) → core::bool}; } =>#t5; dynamic set3 = block { - final core::Set #t6 = new col::_Set::•(); + final core::Set #t6 = new _co::_Set::•(); #t6.{core::Set::add}{Invariant}(0){(core::int) → core::bool}; } =>#t6; core::Set set = block { - final core::Set #t7 = new col::_Set::•(); + final core::Set #t7 = new _co::_Set::•(); #t7.{core::Set::add}{Invariant}(0){(core::int?) → core::bool}; #t7.{core::Set::addAll}{Invariant}(set1){(core::Iterable) → void}; #t7.{core::Set::addAll}{Invariant}(set2){(core::Iterable) → void}; diff --git a/pkg/front_end/testcases/unified_collections/set_add_all.dart.strong.transformed.expect b/pkg/front_end/testcases/unified_collections/set_add_all.dart.strong.transformed.expect index bf1fcdab2ad..5402e4b5e7f 100644 --- a/pkg/front_end/testcases/unified_collections/set_add_all.dart.strong.transformed.expect +++ b/pkg/front_end/testcases/unified_collections/set_add_all.dart.strong.transformed.expect @@ -1,41 +1,42 @@ library; import self as self; import "dart:core" as core; +import "dart:_compact_hash" as _co; import "dart:collection" as col; static method useAddAll() → void { dynamic dynamicSet1 = block { - final core::Set #t1 = new col::_Set::•(); + final core::Set #t1 = new _co::_Set::•(); #t1.{core::Set::add}{Invariant}(0){(core::int) → core::bool}; #t1.{core::Set::add}{Invariant}(1){(core::int) → core::bool}; #t1.{core::Set::add}{Invariant}(2){(core::int) → core::bool}; } =>#t1; dynamic dynamicSet2 = block { - final core::Set #t2 = new col::_Set::•(); + final core::Set #t2 = new _co::_Set::•(); #t2.{core::Set::add}{Invariant}(3){(core::num) → core::bool}; #t2.{core::Set::add}{Invariant}(4){(core::num) → core::bool}; #t2.{core::Set::add}{Invariant}(5){(core::num) → core::bool}; } =>#t2; dynamic dynamicSet3 = block { - final core::Set #t3 = new col::_Set::•(); + final core::Set #t3 = new _co::_Set::•(); #t3.{core::Set::add}{Invariant}(6){(core::int?) → core::bool}; #t3.{core::Set::add}{Invariant}(7){(core::int?) → core::bool}; #t3.{core::Set::add}{Invariant}(8){(core::int?) → core::bool}; } =>#t3; core::Iterable iterableIntSet = block { - final core::Set #t4 = new col::_Set::•(); + final core::Set #t4 = new _co::_Set::•(); #t4.{core::Set::add}{Invariant}(9){(core::int) → core::bool}; #t4.{core::Set::add}{Invariant}(10){(core::int) → core::bool}; #t4.{core::Set::add}{Invariant}(11){(core::int) → core::bool}; } =>#t4; core::Set intSet = block { - final core::Set #t5 = new col::_Set::•(); + final core::Set #t5 = new _co::_Set::•(); #t5.{core::Set::add}{Invariant}(12){(core::int) → core::bool}; #t5.{core::Set::add}{Invariant}(13){(core::int) → core::bool}; #t5.{core::Set::add}{Invariant}(14){(core::int) → core::bool}; } =>#t5; core::Set set1 = block { - final core::Set #t6 = new col::_Set::•(); + final core::Set #t6 = new _co::_Set::•(); { synthesized core::Iterator :sync-for-iterator = (dynamicSet1 as{TypeError,ForDynamic} core::Iterable).{core::Iterable::iterator}{core::Iterator}; for (; :sync-for-iterator.{core::Iterator::moveNext}(){() → core::bool}; ) { @@ -71,7 +72,7 @@ static method useAddAll() → void { } =>#t6; self::expect(core::_GrowableList::generate(15, (core::int i) → core::int => i).{core::Iterable::toSet}(){() → core::Set}, set1); core::Set set2 = block { - final core::Set #t13 = new col::_Set::•(); + final core::Set #t13 = new _co::_Set::•(); { synthesized core::Iterator :sync-for-iterator = (dynamicSet1 as{TypeError,ForDynamic} core::Iterable).{core::Iterable::iterator}{core::Iterator}; for (; :sync-for-iterator.{core::Iterator::moveNext}(){() → core::bool}; ) { @@ -107,7 +108,7 @@ static method useAddAll() → void { } =>#t13; self::expect(core::_GrowableList::generate(15, (core::int i) → core::int => i).{core::Iterable::toSet}(){() → core::Set}, set2); core::Set set3 = block { - final core::Set #t20 = new col::_Set::•(); + final core::Set #t20 = new _co::_Set::•(); { synthesized core::Iterator :sync-for-iterator = (dynamicSet1 as{TypeError,ForDynamic} core::Iterable).{core::Iterable::iterator}{core::Iterator}; for (; :sync-for-iterator.{core::Iterator::moveNext}(){() → core::bool}; ) { @@ -152,13 +153,13 @@ static method useAddAll() → void { self::expect(core::_GrowableList::generate(15, (core::int i) → core::int => i).{core::Iterable::toSet}(){() → core::Set}, set4); { core::Set intSet1 = block { - final core::Set #t28 = new col::_Set::•(); + final core::Set #t28 = new _co::_Set::•(); #t28.{core::Set::add}{Invariant}(0){(core::int) → core::bool}; #t28.{core::Set::add}{Invariant}(1){(core::int) → core::bool}; #t28.{core::Set::add}{Invariant}(2){(core::int) → core::bool}; } =>#t28; core::Set intSet2 = block { - final core::Set #t29 = new col::_Set::•(); + final core::Set #t29 = new _co::_Set::•(); #t29.{core::Set::add}{Invariant}(3){(core::int) → core::bool}; #t29.{core::Set::add}{Invariant}(4){(core::int) → core::bool}; #t29.{core::Set::add}{Invariant}(5){(core::int) → core::bool}; @@ -172,37 +173,37 @@ static method useAddAll() → void { } static method useAddAllNullable() → void { dynamic dynamicSet1 = block { - final core::Set #t31 = new col::_Set::•(); + final core::Set #t31 = new _co::_Set::•(); #t31.{core::Set::add}{Invariant}(0){(core::int) → core::bool}; #t31.{core::Set::add}{Invariant}(1){(core::int) → core::bool}; #t31.{core::Set::add}{Invariant}(2){(core::int) → core::bool}; } =>#t31; dynamic dynamicSet2 = block { - final core::Set #t32 = new col::_Set::•(); + final core::Set #t32 = new _co::_Set::•(); #t32.{core::Set::add}{Invariant}(3){(core::num) → core::bool}; #t32.{core::Set::add}{Invariant}(4){(core::num) → core::bool}; #t32.{core::Set::add}{Invariant}(5){(core::num) → core::bool}; } =>#t32; dynamic dynamicSet3 = block { - final core::Set #t33 = new col::_Set::•(); + final core::Set #t33 = new _co::_Set::•(); #t33.{core::Set::add}{Invariant}(6){(core::int?) → core::bool}; #t33.{core::Set::add}{Invariant}(7){(core::int?) → core::bool}; #t33.{core::Set::add}{Invariant}(8){(core::int?) → core::bool}; } =>#t33; core::Iterable? iterableIntSet = true ?{core::Set?} block { - final core::Set #t34 = new col::_Set::•(); + final core::Set #t34 = new _co::_Set::•(); #t34.{core::Set::add}{Invariant}(9){(core::int) → core::bool}; #t34.{core::Set::add}{Invariant}(10){(core::int) → core::bool}; #t34.{core::Set::add}{Invariant}(11){(core::int) → core::bool}; } =>#t34 : null; core::Set? intSet = true ?{core::Set?} block { - final core::Set #t35 = new col::_Set::•(); + final core::Set #t35 = new _co::_Set::•(); #t35.{core::Set::add}{Invariant}(12){(core::int) → core::bool}; #t35.{core::Set::add}{Invariant}(13){(core::int) → core::bool}; #t35.{core::Set::add}{Invariant}(14){(core::int) → core::bool}; } =>#t35 : null; core::Set set1 = block { - final core::Set #t36 = new col::_Set::•(); + final core::Set #t36 = new _co::_Set::•(); final core::Iterable? #t37 = dynamicSet1 as{TypeError,ForDynamic} core::Iterable?; if(!(#t37 == null)) { synthesized core::Iterator :sync-for-iterator = #t37{core::Iterable}.{core::Iterable::iterator}{core::Iterator}; @@ -245,7 +246,7 @@ static method useAddAllNullable() → void { } =>#t36; self::expect(core::_GrowableList::generate(15, (core::int i) → core::int => i).{core::Iterable::toSet}(){() → core::Set}, set1); core::Set set2 = block { - final core::Set #t48 = new col::_Set::•(); + final core::Set #t48 = new _co::_Set::•(); final core::Iterable? #t49 = dynamicSet1 as{TypeError,ForDynamic} core::Iterable?; if(!(#t49 == null)) { synthesized core::Iterator :sync-for-iterator = #t49{core::Iterable}.{core::Iterable::iterator}{core::Iterator}; @@ -288,7 +289,7 @@ static method useAddAllNullable() → void { } =>#t48; self::expect(core::_GrowableList::generate(15, (core::int i) → core::int => i).{core::Iterable::toSet}(){() → core::Set}, set2); core::Set set3 = block { - final core::Set #t60 = new col::_Set::•(); + final core::Set #t60 = new _co::_Set::•(); final core::Iterable? #t61 = dynamicSet1 as{TypeError,ForDynamic} core::Iterable?; if(!(#t61 == null)) { synthesized core::Iterator :sync-for-iterator = #t61{core::Iterable}.{core::Iterable::iterator}{core::Iterator}; @@ -331,7 +332,7 @@ static method useAddAllNullable() → void { } =>#t60; self::expect(core::_GrowableList::generate(15, (core::int i) → core::int => i).{core::Iterable::toSet}(){() → core::Set}, set3); core::Set set4 = block { - final core::Set #t72 = new col::_Set::•(); + final core::Set #t72 = new _co::_Set::•(); final core::Iterable? #t73 = dynamicSet1 as{TypeError,ForDynamic} core::Iterable?; if(!(#t73 == null)) #t72.{core::Set::addAll}{Invariant}(#t73{core::Iterable}){(core::Iterable) → void}; diff --git a/pkg/vm/lib/modular/specializer/map_factory_specializer.dart b/pkg/vm/lib/modular/specializer/map_factory_specializer.dart index 19cd70efaca..297f2c4d917 100644 --- a/pkg/vm/lib/modular/specializer/map_factory_specializer.dart +++ b/pkg/vm/lib/modular/specializer/map_factory_specializer.dart @@ -24,7 +24,7 @@ class MapFactorySpecializer extends BaseSpecializer { ), _internalLinkedHashMapConstructor = assertNotNull( coreTypes.index.getConstructor( - 'dart:collection', + 'dart:_compact_hash', '_Map', '', ), diff --git a/pkg/vm/lib/modular/specializer/set_factory_specializer.dart b/pkg/vm/lib/modular/specializer/set_factory_specializer.dart index 19bf66efa97..05b661a8401 100644 --- a/pkg/vm/lib/modular/specializer/set_factory_specializer.dart +++ b/pkg/vm/lib/modular/specializer/set_factory_specializer.dart @@ -25,7 +25,7 @@ class SetFactorySpecializer extends BaseSpecializer { ), _internalLinkedHashSetConstructor = assertNotNull( coreTypes.index.getConstructor( - 'dart:collection', + 'dart:_compact_hash', '_Set', '', ), diff --git a/pkg/vm/lib/modular/target/vm.dart b/pkg/vm/lib/modular/target/vm.dart index c1480ab05d1..5cb9d12e73c 100644 --- a/pkg/vm/lib/modular/target/vm.dart +++ b/pkg/vm/lib/modular/target/vm.dart @@ -75,6 +75,7 @@ class VmTarget extends Target { List get extraRequiredLibraries => const [ 'dart:async', 'dart:collection', + 'dart:_compact_hash', 'dart:concurrent', 'dart:convert', 'dart:developer', @@ -96,6 +97,9 @@ class VmTarget extends Target { 'dart:cli', ]; + @override + bool mayDefineRestrictedType(Uri uri) => uri.isScheme('dart'); + @override List get extraRequiredLibrariesPlatform => const []; @@ -131,9 +135,7 @@ class VmTarget extends Target { @override List get extraIndexedLibraries => const [ - // TODO(askesc): When the VM supports set literals, we no longer - // need to index dart:collection, as it is only needed for desugaring of - // const sets. We can remove it from this list at that time. + "dart:_compact_hash", "dart:collection", // TODO(askesc): This is for the VM host endian optimization, which // could possibly be done more cleanly after the VM no longer supports @@ -438,24 +440,24 @@ class VmTarget extends Target { @override Class concreteMapLiteralClass(CoreTypes coreTypes) { - return _map ??= coreTypes.index.getClass('dart:collection', '_Map'); + return _map ??= coreTypes.index.getClass('dart:_compact_hash', '_Map'); } @override Class concreteConstMapLiteralClass(CoreTypes coreTypes) { return _constMap ??= - coreTypes.index.getClass('dart:collection', '_ConstMap'); + coreTypes.index.getClass('dart:_compact_hash', '_ConstMap'); } @override Class concreteSetLiteralClass(CoreTypes coreTypes) { - return _set ??= coreTypes.index.getClass('dart:collection', '_Set'); + return _set ??= coreTypes.index.getClass('dart:_compact_hash', '_Set'); } @override Class concreteConstSetLiteralClass(CoreTypes coreTypes) { return _constSet ??= - coreTypes.index.getClass('dart:collection', '_ConstSet'); + coreTypes.index.getClass('dart:_compact_hash', '_ConstSet'); } @override diff --git a/pkg/vm/testcases/transformations/deferred_loading/main.dart.expect b/pkg/vm/testcases/transformations/deferred_loading/main.dart.expect index 18c6c3e848e..44060f26877 100644 --- a/pkg/vm/testcases/transformations/deferred_loading/main.dart.expect +++ b/pkg/vm/testcases/transformations/deferred_loading/main.dart.expect @@ -19,6 +19,7 @@ LoadingUnit(id=1, parent=0, dart:developer dart:convert dart:concurrent + dart:_compact_hash dart:collection dart:async #pkg/vm/testcases/transformations/deferred_loading/c.dart diff --git a/pkg/vm/testcases/transformations/type_flow/transformer/class_generics_case1.dart.expect b/pkg/vm/testcases/transformations/type_flow/transformer/class_generics_case1.dart.expect index 0c6885e0897..be4c7eaf906 100644 --- a/pkg/vm/testcases/transformations/type_flow/transformer/class_generics_case1.dart.expect +++ b/pkg/vm/testcases/transformations/type_flow/transformer/class_generics_case1.dart.expect @@ -11,7 +11,7 @@ class Element extends core::Object { } class InheritedElement extends self::Element { - [@vm.inferred-type.metadata=dart.collection::_Map<#lib::Element, dart.core::Object?>] + [@vm.inferred-type.metadata=dart._compact_hash::_Map<#lib::Element, dart.core::Object?>] [@vm.procedure-attributes.metadata=methodOrSetterCalledDynamically:false,getterCalledDynamically:false,hasThisUses:false,hasNonThisUses:false,hasTearOffUses:false,getterSelectorId:1] final field core::Map _dependents; synthetic constructor •() → self::InheritedElement @@ -21,7 +21,7 @@ class InheritedElement extends self::Element { [@vm.inferred-return-type.metadata=dart.core::Null? (value: null)] [@vm.procedure-attributes.metadata=methodOrSetterCalledDynamically:false,getterCalledDynamically:false,hasThisUses:false,hasTearOffUses:false,methodOrSetterSelectorId:2,getterSelectorId:3] method setDependencies([@vm.inferred-arg-type.metadata=!] self::Element dependent, [@vm.inferred-arg-type.metadata=dart.core::_Smi?] core::Object? value) → void { - [@vm.call-site-attributes.metadata=receiverType:dart.core::Map<#lib::Element, dart.core::Object?>] [@vm.direct-call.metadata=dart.collection::__Map&_HashVMBase&MapMixin&_HashBase&_OperatorEqualsAndHashCode&_LinkedHashMapMixin.[]=] [@vm.inferred-type.metadata=!? (skip check)] [@vm.direct-call.metadata=#lib::InheritedElement._dependents] [@vm.inferred-type.metadata=dart.collection::_Map<#lib::Element, dart.core::Object?>] this.{self::InheritedElement::_dependents}{core::Map}.{core::Map::[]=}(dependent, value){(self::Element, core::Object?) → void}; + [@vm.call-site-attributes.metadata=receiverType:dart.core::Map<#lib::Element, dart.core::Object?>] [@vm.direct-call.metadata=dart._compact_hash::__Map&_HashVMBase&MapMixin&_HashBase&_OperatorEqualsAndHashCode&_LinkedHashMapMixin.[]=] [@vm.inferred-type.metadata=!? (skip check)] [@vm.direct-call.metadata=#lib::InheritedElement._dependents] [@vm.inferred-type.metadata=dart._compact_hash::_Map<#lib::Element, dart.core::Object?>] this.{self::InheritedElement::_dependents}{core::Map}.{core::Map::[]=}(dependent, value){(self::Element, core::Object?) → void}; } } diff --git a/pkg/vm/testcases/transformations/type_flow/transformer/const_map.dart.expect b/pkg/vm/testcases/transformations/type_flow/transformer/const_map.dart.expect index d43f6d43252..53d89cebd9f 100644 --- a/pkg/vm/testcases/transformations/type_flow/transformer/const_map.dart.expect +++ b/pkg/vm/testcases/transformations/type_flow/transformer/const_map.dart.expect @@ -16,7 +16,7 @@ class _Attribute extends core::Object { [@vm.inferred-return-type.metadata=#lib::_Attribute] static method fromReader() → self::_Attribute { - final self::_AttributeName name = [@vm.direct-call.metadata=dart.collection::__ConstMap&_HashVMImmutableBase&MapMixin&_HashBase&_OperatorEqualsAndCanonicalHashCode&_LinkedHashMapMixin&_UnmodifiableMapMixin&_ImmutableLinkedHashMapMixin.[]] [@vm.inferred-type.metadata=#lib::_AttributeName? (skip check)] #C8.{core::Map::[]}(#C1){(core::Object?) → self::_AttributeName?}!; + final self::_AttributeName name = [@vm.direct-call.metadata=dart._compact_hash::__ConstMap&_HashVMImmutableBase&MapMixin&_HashBase&_OperatorEqualsAndCanonicalHashCode&_LinkedHashMapMixin&_UnmodifiableMapMixin&_ImmutableLinkedHashMapMixin.[]] [@vm.inferred-type.metadata=#lib::_AttributeName? (skip check)] #C8.{core::Map::[]}(#C1){(core::Object?) → self::_AttributeName?}!; return new self::_Attribute::_(); } } diff --git a/pkg/vm/testcases/transformations/type_flow/transformer/const_set.dart.expect b/pkg/vm/testcases/transformations/type_flow/transformer/const_set.dart.expect index 3cd097befe8..28706c6cb21 100644 --- a/pkg/vm/testcases/transformations/type_flow/transformer/const_set.dart.expect +++ b/pkg/vm/testcases/transformations/type_flow/transformer/const_set.dart.expect @@ -16,7 +16,7 @@ class _Attribute extends core::Object { [@vm.inferred-return-type.metadata=#lib::_Attribute] static method fromReader() → self::_Attribute { - final core::bool name = [@vm.direct-call.metadata=dart.collection::__ConstSet&_HashVMImmutableBase&SetMixin&_HashBase&_OperatorEqualsAndCanonicalHashCode&_LinkedHashSetMixin&_UnmodifiableSetMixin&_ImmutableLinkedHashSetMixin.contains] [@vm.inferred-type.metadata=!? (skip check)] #C3.{core::Set::contains}(#C2){(core::Object?) → core::bool}; + final core::bool name = [@vm.direct-call.metadata=dart._compact_hash::__ConstSet&_HashVMImmutableBase&SetMixin&_HashBase&_OperatorEqualsAndCanonicalHashCode&_LinkedHashSetMixin&_UnmodifiableSetMixin&_ImmutableLinkedHashSetMixin.contains] [@vm.inferred-type.metadata=!? (skip check)] #C3.{core::Set::contains}(#C2){(core::Object?) → core::bool}; return let final self::_AttributeName #t1 = #C8.{core::List::[]}(#C2){(core::int) → self::_AttributeName} in new self::_Attribute::_(); } } diff --git a/pkg/vm/testcases/transformations/type_flow/transformer/set_map_constructor_concrete.dart.expect b/pkg/vm/testcases/transformations/type_flow/transformer/set_map_constructor_concrete.dart.expect index 7a24ff166de..f7b9a8e567a 100644 --- a/pkg/vm/testcases/transformations/type_flow/transformer/set_map_constructor_concrete.dart.expect +++ b/pkg/vm/testcases/transformations/type_flow/transformer/set_map_constructor_concrete.dart.expect @@ -1,62 +1,63 @@ library #lib; import self as self; import "dart:core" as core; +import "dart:_compact_hash" as _co; import "dart:collection" as col; import "dart:collection"; import "dart:core"; -[@vm.inferred-type.metadata=dart.collection::_Set] -static field core::Set globalSet = new col::_Set::•(); +[@vm.inferred-type.metadata=dart._compact_hash::_Set] +static field core::Set globalSet = new _co::_Set::•(); -[@vm.inferred-type.metadata=dart.collection::_CompactLinkedIdentityHashSet] -static field core::Set identitySet = [@vm.inferred-type.metadata=dart.collection::_CompactLinkedIdentityHashSet] col::LinkedHashSet::identity(); +[@vm.inferred-type.metadata=dart._compact_hash::CompactLinkedIdentityHashSet] +static field core::Set identitySet = [@vm.inferred-type.metadata=dart._compact_hash::CompactLinkedIdentityHashSet] col::LinkedHashSet::identity(); -[@vm.inferred-type.metadata=dart.collection::_Set] -static field core::Set linkedSet = new col::_Set::•(); +[@vm.inferred-type.metadata=dart._compact_hash::_Set] +static field core::Set linkedSet = new _co::_Set::•(); [@vm.inferred-type.metadata=!] static field core::Set linkedIdentitySet = [@vm.inferred-type.metadata=!] col::LinkedHashSet::•(#C1, #C2); -[@vm.inferred-type.metadata=dart.collection::_CompactLinkedCustomHashSet] -static field core::Set linkedCustomSet = let final (core::String, core::String) → core::bool #t1 = (core::String a, core::String b) → core::bool => [@vm.inferred-type.metadata=dart.core::bool (receiver not int)] a =={core::String::==}{(core::Object) → core::bool} b in let final (core::String) → core::int #t2 = (core::String o) → core::int => [@vm.inferred-type.metadata=dart.core::_Smi] o.{core::String::hashCode}{core::int} in let final (dynamic) → core::bool #t3 = (dynamic o) → core::bool => true in [@vm.inferred-type.metadata=dart.collection::_CompactLinkedCustomHashSet] col::LinkedHashSet::•(#t1, #t2, isValidKey: #t3); +[@vm.inferred-type.metadata=dart._compact_hash::CompactLinkedCustomHashSet] +static field core::Set linkedCustomSet = let final (core::String, core::String) → core::bool #t1 = (core::String a, core::String b) → core::bool => [@vm.inferred-type.metadata=dart.core::bool (receiver not int)] a =={core::String::==}{(core::Object) → core::bool} b in let final (core::String) → core::int #t2 = (core::String o) → core::int => [@vm.inferred-type.metadata=dart.core::_Smi] o.{core::String::hashCode}{core::int} in let final (dynamic) → core::bool #t3 = (dynamic o) → core::bool => true in [@vm.inferred-type.metadata=dart._compact_hash::CompactLinkedCustomHashSet] col::LinkedHashSet::•(#t1, #t2, isValidKey: #t3); -[@vm.inferred-type.metadata=dart.collection::_Map] -static field core::Map globalMap = [@vm.inferred-type.metadata=dart.collection::_Map] core::Map::•(); +[@vm.inferred-type.metadata=dart._compact_hash::_Map] +static field core::Map globalMap = [@vm.inferred-type.metadata=dart._compact_hash::_Map] core::Map::•(); -[@vm.inferred-type.metadata=dart.collection::_CompactLinkedIdentityHashMap] -static field core::Map identityMap = [@vm.inferred-type.metadata=dart.collection::_CompactLinkedIdentityHashMap] col::LinkedHashMap::identity(); +[@vm.inferred-type.metadata=dart._compact_hash::CompactLinkedIdentityHashMap] +static field core::Map identityMap = [@vm.inferred-type.metadata=dart._compact_hash::CompactLinkedIdentityHashMap] col::LinkedHashMap::identity(); [@vm.inferred-type.metadata=dart.collection::UnmodifiableMapView] -static field core::Map unmodifiableMap = [@vm.inferred-type.metadata=dart.collection::UnmodifiableMapView] core::Map::unmodifiable([@vm.inferred-type.metadata=dart.collection::_CompactLinkedIdentityHashMap] self::identityMap); +static field core::Map unmodifiableMap = [@vm.inferred-type.metadata=dart.collection::UnmodifiableMapView] core::Map::unmodifiable([@vm.inferred-type.metadata=dart._compact_hash::CompactLinkedIdentityHashMap] self::identityMap); -[@vm.inferred-type.metadata=dart.collection::_Map] +[@vm.inferred-type.metadata=dart._compact_hash::_Map] static field core::Map globalMapLiteral = {}; -[@vm.inferred-type.metadata=dart.collection::_Map] -static field core::Map linkedMap = new col::_Map::•(); +[@vm.inferred-type.metadata=dart._compact_hash::_Map] +static field core::Map linkedMap = new _co::_Map::•(); [@vm.inferred-type.metadata=!] static field core::Map linkedIdentityMap = [@vm.inferred-type.metadata=!] col::LinkedHashMap::•(#C1, #C2); -[@vm.inferred-type.metadata=dart.collection::_CompactLinkedCustomHashMap] -static field core::Map linkedCustomMap = let final (core::String, core::String) → core::bool #t4 = (core::String a, core::String b) → core::bool => [@vm.inferred-type.metadata=dart.core::bool (receiver not int)] a =={core::String::==}{(core::Object) → core::bool} b in let final (core::String) → core::int #t5 = (core::String o) → core::int => [@vm.inferred-type.metadata=dart.core::_Smi] o.{core::String::hashCode}{core::int} in let final (dynamic) → core::bool #t6 = (dynamic o) → core::bool => true in [@vm.inferred-type.metadata=dart.collection::_CompactLinkedCustomHashMap] col::LinkedHashMap::•(#t4, #t5, isValidKey: #t6); +[@vm.inferred-type.metadata=dart._compact_hash::CompactLinkedCustomHashMap] +static field core::Map linkedCustomMap = let final (core::String, core::String) → core::bool #t4 = (core::String a, core::String b) → core::bool => [@vm.inferred-type.metadata=dart.core::bool (receiver not int)] a =={core::String::==}{(core::Object) → core::bool} b in let final (core::String) → core::int #t5 = (core::String o) → core::int => [@vm.inferred-type.metadata=dart.core::_Smi] o.{core::String::hashCode}{core::int} in let final (dynamic) → core::bool #t6 = (dynamic o) → core::bool => true in [@vm.inferred-type.metadata=dart._compact_hash::CompactLinkedCustomHashMap] col::LinkedHashMap::•(#t4, #t5, isValidKey: #t6); [@vm.inferred-return-type.metadata=dart.core::Null? (value: null)] static method main() → dynamic { - core::print([@vm.inferred-type.metadata=dart.collection::_Set] self::globalSet); - core::print([@vm.inferred-type.metadata=dart.collection::_CompactLinkedIdentityHashSet] self::identitySet); - core::print([@vm.inferred-type.metadata=dart.collection::_Set] self::linkedSet); + core::print([@vm.inferred-type.metadata=dart._compact_hash::_Set] self::globalSet); + core::print([@vm.inferred-type.metadata=dart._compact_hash::CompactLinkedIdentityHashSet] self::identitySet); + core::print([@vm.inferred-type.metadata=dart._compact_hash::_Set] self::linkedSet); core::print([@vm.inferred-type.metadata=!] self::linkedIdentitySet); - core::print([@vm.inferred-type.metadata=dart.collection::_CompactLinkedCustomHashSet] self::linkedCustomSet); - core::print([@vm.inferred-type.metadata=dart.collection::_Map] self::globalMap); - core::print([@vm.inferred-type.metadata=dart.collection::_Map] self::globalMapLiteral); - core::print([@vm.inferred-type.metadata=dart.collection::_CompactLinkedIdentityHashMap] self::identityMap); + core::print([@vm.inferred-type.metadata=dart._compact_hash::CompactLinkedCustomHashSet] self::linkedCustomSet); + core::print([@vm.inferred-type.metadata=dart._compact_hash::_Map] self::globalMap); + core::print([@vm.inferred-type.metadata=dart._compact_hash::_Map] self::globalMapLiteral); + core::print([@vm.inferred-type.metadata=dart._compact_hash::CompactLinkedIdentityHashMap] self::identityMap); core::print([@vm.inferred-type.metadata=dart.collection::UnmodifiableMapView] self::unmodifiableMap); - core::print([@vm.inferred-type.metadata=dart.collection::_Map] self::linkedMap); + core::print([@vm.inferred-type.metadata=dart._compact_hash::_Map] self::linkedMap); core::print([@vm.inferred-type.metadata=!] self::linkedIdentityMap); - core::print([@vm.inferred-type.metadata=dart.collection::_CompactLinkedCustomHashMap] self::linkedCustomMap); + core::print([@vm.inferred-type.metadata=dart._compact_hash::CompactLinkedCustomHashMap] self::linkedCustomMap); } constants { #C1 = static-tearoff core::identical diff --git a/runtime/vm/compiler/recognized_methods_list.h b/runtime/vm/compiler/recognized_methods_list.h index 0cb4c86a1e9..5643dea1584 100644 --- a/runtime/vm/compiler/recognized_methods_list.h +++ b/runtime/vm/compiler/recognized_methods_list.h @@ -13,22 +13,22 @@ namespace dart { // debug mode to get the correct fingerprint from the mismatch error. #define OTHER_RECOGNIZED_LIST(V) \ V(AsyncLibrary, _FutureListener, handleValue, FutureListenerHandleValue, \ - 0xec08b9f2) \ + 0xaa83f1d2) \ V(AsyncLibrary, _SuspendState, get:_functionData, \ - SuspendState_getFunctionData, 0x7272eaae) \ + SuspendState_getFunctionData, 0x79c36a6d) \ V(AsyncLibrary, _SuspendState, set:_functionData, \ - SuspendState_setFunctionData, 0x2b4950eb) \ + SuspendState_setFunctionData, 0x3299d0aa) \ V(AsyncLibrary, _SuspendState, get:_thenCallback, \ - SuspendState_getThenCallback, 0x2b81e561) \ + SuspendState_getThenCallback, 0x14fb604a) \ V(AsyncLibrary, _SuspendState, set:_thenCallback, \ - SuspendState_setThenCallback, 0x751f9d1e) \ + SuspendState_setThenCallback, 0x5e991807) \ V(AsyncLibrary, _SuspendState, get:_errorCallback, \ - SuspendState_getErrorCallback, 0xaeacef2f) \ + SuspendState_getErrorCallback, 0xc0a87747) \ V(AsyncLibrary, _SuspendState, set:_errorCallback, \ - SuspendState_setErrorCallback, 0xc3ebebec) \ - V(AsyncLibrary, _SuspendState, _clone, SuspendState_clone, 0xadfd28e0) \ - V(AsyncLibrary, _SuspendState, _resume, SuspendState_resume, 0x5d5d6cc9) \ - V(ConvertLibrary, _Utf8Decoder, _scan, Utf8DecoderScan, 0xb9801ae2) \ + SuspendState_setErrorCallback, 0xd5e77404) \ + V(AsyncLibrary, _SuspendState, _clone, SuspendState_clone, 0x751294d7) \ + V(AsyncLibrary, _SuspendState, _resume, SuspendState_resume, 0x48d39768) \ + V(ConvertLibrary, _Utf8Decoder, _scan, Utf8DecoderScan, 0x903cbc3e) \ V(CoreLibrary, ::, identical, ObjectIdentical, 0x03f96b55) \ V(CoreLibrary, Object, Object., ObjectConstructor, 0xab6d6cf2) \ V(CoreLibrary, _Array, [], ObjectArrayGetIndexed, 0x78d7e092) \ @@ -75,128 +75,128 @@ namespace dart { V(CoreLibrary, _Smi, get:hashCode, Smi_hashCode, 0x75c3b512) \ V(CoreLibrary, _Mint, get:hashCode, Mint_hashCode, 0x75c3b512) \ V(CoreLibrary, _Double, get:hashCode, Double_hashCode, 0x75c3b8d3) \ - V(CollectionLibrary, _HashVMBase, get:_index, LinkedHashBase_getIndex, \ - 0x88095a1c) \ - V(CollectionLibrary, _HashVMBase, set:_index, LinkedHashBase_setIndex, \ - 0xa2a17c58) \ - V(CollectionLibrary, _HashVMBase, get:_data, LinkedHashBase_getData, \ - 0x2c6e46c3) \ - V(CollectionLibrary, _HashVMBase, set:_data, LinkedHashBase_setData, \ - 0x40dad7ff) \ - V(CollectionLibrary, _HashVMBase, get:_usedData, LinkedHashBase_getUsedData, \ - 0x46eb7c2d) \ - V(CollectionLibrary, _HashVMBase, set:_usedData, LinkedHashBase_setUsedData, \ - 0xb3ab6fe9) \ - V(CollectionLibrary, _HashVMBase, get:_hashMask, LinkedHashBase_getHashMask, \ - 0x4ef1afdc) \ - V(CollectionLibrary, _HashVMBase, set:_hashMask, LinkedHashBase_setHashMask, \ - 0xbbb1a398) \ - V(CollectionLibrary, _HashVMBase, get:_deletedKeys, \ - LinkedHashBase_getDeletedKeys, 0x50f0ace0) \ - V(CollectionLibrary, _HashVMBase, set:_deletedKeys, \ - LinkedHashBase_setDeletedKeys, 0xbdb0a09c) \ - V(CollectionLibrary, _HashVMImmutableBase, get:_data, \ - ImmutableLinkedHashBase_getData, 0x2c6e46c3) \ - V(CollectionLibrary, _HashVMImmutableBase, get:_indexNullable, \ - ImmutableLinkedHashBase_getIndex, 0xfd6a643b) \ - V(CollectionLibrary, _HashVMImmutableBase, set:_index, \ - ImmutableLinkedHashBase_setIndexStoreRelease, 0xa2a17c58) \ + V(CompactHashLibrary, _HashVMBase, get:_index, LinkedHashBase_getIndex, \ + 0xb49e7210) \ + V(CompactHashLibrary, _HashVMBase, set:_index, LinkedHashBase_setIndex, \ + 0xcf36944c) \ + V(CompactHashLibrary, _HashVMBase, get:_data, LinkedHashBase_getData, \ + 0x372bf7ad) \ + V(CompactHashLibrary, _HashVMBase, set:_data, LinkedHashBase_setData, \ + 0x4b9888e9) \ + V(CompactHashLibrary, _HashVMBase, get:_usedData, \ + LinkedHashBase_getUsedData, 0x74808f38) \ + V(CompactHashLibrary, _HashVMBase, set:_usedData, \ + LinkedHashBase_setUsedData, 0xe14082f4) \ + V(CompactHashLibrary, _HashVMBase, get:_hashMask, \ + LinkedHashBase_getHashMask, 0x53cd6dce) \ + V(CompactHashLibrary, _HashVMBase, set:_hashMask, \ + LinkedHashBase_setHashMask, 0xc08d618a) \ + V(CompactHashLibrary, _HashVMBase, get:_deletedKeys, \ + LinkedHashBase_getDeletedKeys, 0x75eeb895) \ + V(CompactHashLibrary, _HashVMBase, set:_deletedKeys, \ + LinkedHashBase_setDeletedKeys, 0xe2aeac51) \ + V(CompactHashLibrary, _HashVMImmutableBase, get:_data, \ + ImmutableLinkedHashBase_getData, 0x372bf7ad) \ + V(CompactHashLibrary, _HashVMImmutableBase, get:_indexNullable, \ + ImmutableLinkedHashBase_getIndex, 0xfe7649ae) \ + V(CompactHashLibrary, _HashVMImmutableBase, set:_index, \ + ImmutableLinkedHashBase_setIndexStoreRelease, 0xcf36944c) \ V(DeveloperLibrary, ::, get:extensionStreamHasListener, \ ExtensionStreamHasListener, 0xfa975305) \ V(DeveloperLibrary, ::, debugger, Debugger, 0xf0aaff14) \ V(FfiLibrary, _NativeFinalizer, get:_callback, NativeFinalizer_getCallback, \ - 0x5c965d35) \ + 0x7cf2a7fa) \ V(FfiLibrary, _NativeFinalizer, set:_callback, NativeFinalizer_setCallback, \ - 0xb1055132) \ - V(FfiLibrary, ::, _abi, FfiAbi, 0x7c2d9fb5) \ - V(FfiLibrary, ::, _ffiCall, FfiCall, 0x610a5d82) \ + 0xd1619bf7) \ + V(FfiLibrary, ::, _abi, FfiAbi, 0x4d633e6c) \ + V(FfiLibrary, ::, _ffiCall, FfiCall, 0x5c807fed) \ V(FfiLibrary, ::, _nativeCallbackFunction, FfiNativeCallbackFunction, \ - 0x3fd896dc) \ + 0x387b4313) \ V(FfiLibrary, ::, _nativeAsyncCallbackFunction, \ - FfiNativeAsyncCallbackFunction, 0xbeb62bd9) \ + FfiNativeAsyncCallbackFunction, 0xbdd1a333) \ V(FfiLibrary, ::, _nativeIsolateLocalCallbackFunction, \ - FfiNativeIsolateLocalCallbackFunction, 0x03d3193f) \ - V(FfiLibrary, ::, _loadAbiSpecificInt, FfiLoadAbiSpecificInt, 0x77ead473) \ + FfiNativeIsolateLocalCallbackFunction, 0x21b66eba) \ + V(FfiLibrary, ::, _loadAbiSpecificInt, FfiLoadAbiSpecificInt, 0x6abf6ce5) \ V(FfiLibrary, ::, _loadAbiSpecificIntAtIndex, FfiLoadAbiSpecificIntAtIndex, \ - 0xaaab3b82) \ - V(FfiLibrary, ::, _loadInt8, FfiLoadInt8, 0x0ee7cbd7) \ - V(FfiLibrary, ::, _loadInt16, FfiLoadInt16, 0xec271d2e) \ - V(FfiLibrary, ::, _loadInt32, FfiLoadInt32, 0xee052bc4) \ - V(FfiLibrary, ::, _loadInt64, FfiLoadInt64, 0xded2aba4) \ - V(FfiLibrary, ::, _loadUint8, FfiLoadUint8, 0xe13108d2) \ - V(FfiLibrary, ::, _loadUint16, FfiLoadUint16, 0x0cb948eb) \ - V(FfiLibrary, ::, _loadUint32, FfiLoadUint32, 0xf6517c56) \ - V(FfiLibrary, ::, _loadUint64, FfiLoadUint64, 0x04e8e9cd) \ - V(FfiLibrary, ::, _loadFloat, FfiLoadFloat, 0xf8bc6c9d) \ - V(FfiLibrary, ::, _loadFloatUnaligned, FfiLoadFloatUnaligned, 0xc8abc83f) \ - V(FfiLibrary, ::, _loadDouble, FfiLoadDouble, 0xf6efae59) \ - V(FfiLibrary, ::, _loadDoubleUnaligned, FfiLoadDoubleUnaligned, 0xc981a579) \ - V(FfiLibrary, ::, _loadPointer, FfiLoadPointer, 0x99eaf904) \ - V(FfiLibrary, ::, _storeAbiSpecificInt, FfiStoreAbiSpecificInt, 0xc6ec40c1) \ + 0xc188d9b4) \ + V(FfiLibrary, ::, _loadInt8, FfiLoadInt8, 0xe4acf678) \ + V(FfiLibrary, ::, _loadInt16, FfiLoadInt16, 0xefe482c4) \ + V(FfiLibrary, ::, _loadInt32, FfiLoadInt32, 0xea00adeb) \ + V(FfiLibrary, ::, _loadInt64, FfiLoadInt64, 0xef97e83a) \ + V(FfiLibrary, ::, _loadUint8, FfiLoadUint8, 0x07c41993) \ + V(FfiLibrary, ::, _loadUint16, FfiLoadUint16, 0x0608f9f3) \ + V(FfiLibrary, ::, _loadUint32, FfiLoadUint32, 0x0b7025a8) \ + V(FfiLibrary, ::, _loadUint64, FfiLoadUint64, 0x0d0d244e) \ + V(FfiLibrary, ::, _loadFloat, FfiLoadFloat, 0xd16bbb37) \ + V(FfiLibrary, ::, _loadFloatUnaligned, FfiLoadFloatUnaligned, 0xee4990db) \ + V(FfiLibrary, ::, _loadDouble, FfiLoadDouble, 0xeaad7aeb) \ + V(FfiLibrary, ::, _loadDoubleUnaligned, FfiLoadDoubleUnaligned, 0xf5f51fa2) \ + V(FfiLibrary, ::, _loadPointer, FfiLoadPointer, 0x8a1cfd98) \ + V(FfiLibrary, ::, _storeAbiSpecificInt, FfiStoreAbiSpecificInt, 0xaa7301ed) \ V(FfiLibrary, ::, _storeAbiSpecificIntAtIndex, \ - FfiStoreAbiSpecificIntAtIndex, 0x5b77195f) \ - V(FfiLibrary, ::, _storeInt8, FfiStoreInt8, 0xdf339b0d) \ - V(FfiLibrary, ::, _storeInt16, FfiStoreInt16, 0xd830df33) \ - V(FfiLibrary, ::, _storeInt32, FfiStoreInt32, 0xfbc9185e) \ - V(FfiLibrary, ::, _storeInt64, FfiStoreInt64, 0xf1b6f97b) \ - V(FfiLibrary, ::, _storeUint8, FfiStoreUint8, 0x0550bef7) \ - V(FfiLibrary, ::, _storeUint16, FfiStoreUint16, 0xe2e096df) \ - V(FfiLibrary, ::, _storeUint32, FfiStoreUint32, 0xe5bad4c6) \ - V(FfiLibrary, ::, _storeUint64, FfiStoreUint64, 0xe2bc1e3a) \ - V(FfiLibrary, ::, _storeFloat, FfiStoreFloat, 0x6467d8be) \ - V(FfiLibrary, ::, _storeFloatUnaligned, FfiStoreFloatUnaligned, 0x5fed7a43) \ - V(FfiLibrary, ::, _storeDouble, FfiStoreDouble, 0x427c74a4) \ + FfiStoreAbiSpecificIntAtIndex, 0x258c60d4) \ + V(FfiLibrary, ::, _storeInt8, FfiStoreInt8, 0xeea23e04) \ + V(FfiLibrary, ::, _storeInt16, FfiStoreInt16, 0xdb5cf1d3) \ + V(FfiLibrary, ::, _storeInt32, FfiStoreInt32, 0xd4dab0b0) \ + V(FfiLibrary, ::, _storeInt64, FfiStoreInt64, 0x05d6cb79) \ + V(FfiLibrary, ::, _storeUint8, FfiStoreUint8, 0x01c04301) \ + V(FfiLibrary, ::, _storeUint16, FfiStoreUint16, 0x130c90a5) \ + V(FfiLibrary, ::, _storeUint32, FfiStoreUint32, 0x1009830c) \ + V(FfiLibrary, ::, _storeUint64, FfiStoreUint64, 0x097ed239) \ + V(FfiLibrary, ::, _storeFloat, FfiStoreFloat, 0x546dec6e) \ + V(FfiLibrary, ::, _storeFloatUnaligned, FfiStoreFloatUnaligned, 0x502339d2) \ + V(FfiLibrary, ::, _storeDouble, FfiStoreDouble, 0x4e77b771) \ V(FfiLibrary, ::, _storeDoubleUnaligned, FfiStoreDoubleUnaligned, \ - 0x3db1bf9b) \ - V(FfiLibrary, ::, _storePointer, FfiStorePointer, 0x8b4bcd59) \ - V(FfiLibrary, ::, _fromAddress, FfiFromAddress, 0x81010e21) \ + 0x49ce588e) \ + V(FfiLibrary, ::, _storePointer, FfiStorePointer, 0xa08094f1) \ + V(FfiLibrary, ::, _fromAddress, FfiFromAddress, 0x941575ee) \ V(FfiLibrary, Pointer, get:address, FfiGetAddress, 0x7cc16ffe) \ - V(FfiLibrary, Native, _addressOf, FfiNativeAddressOf, 0x83966d9d) \ + V(FfiLibrary, Native, _addressOf, FfiNativeAddressOf, 0x7f8597d3) \ V(FfiLibrary, ::, _asExternalTypedDataInt8, FfiAsExternalTypedDataInt8, \ - 0x766cf299) \ + 0x5dc718ce) \ V(FfiLibrary, ::, _asExternalTypedDataInt16, FfiAsExternalTypedDataInt16, \ - 0xd07fe5c7) \ + 0xd3655dc5) \ V(FfiLibrary, ::, _asExternalTypedDataInt32, FfiAsExternalTypedDataInt32, \ - 0x38077547) \ + 0x33a11910) \ V(FfiLibrary, ::, _asExternalTypedDataInt64, FfiAsExternalTypedDataInt64, \ - 0xaf8d33fc) \ + 0xb8cb53ac) \ V(FfiLibrary, ::, _asExternalTypedDataUint8, FfiAsExternalTypedDataUint8, \ - 0x35057435) \ + 0x39e68357) \ V(FfiLibrary, ::, _asExternalTypedDataUint16, FfiAsExternalTypedDataUint16, \ - 0x89880a3b) \ + 0xa534cb17) \ V(FfiLibrary, ::, _asExternalTypedDataUint32, FfiAsExternalTypedDataUint32, \ - 0xd255c842) \ + 0xaee39c37) \ V(FfiLibrary, ::, _asExternalTypedDataUint64, FfiAsExternalTypedDataUint64, \ - 0x06a15dc6) \ + 0xfe31e70a) \ V(FfiLibrary, ::, _asExternalTypedDataFloat, FfiAsExternalTypedDataFloat, \ - 0x6f294a0d) \ + 0x5469007d) \ V(FfiLibrary, ::, _asExternalTypedDataDouble, FfiAsExternalTypedDataDouble, \ - 0x40b0c5e2) \ - V(FfiLibrary, ::, _memCopy, MemCopy, 0x27323056) \ + 0x423c204f) \ + V(FfiLibrary, ::, _memCopy, MemCopy, 0x51939aa6) \ V(FfiLibrary, ::, _checkNotDeeplyImmutable, CheckNotDeeplyImmutable, \ - 0x56383704) \ + 0x34e4da90) \ V(InternalLibrary, ClassID, getID, ClassIDgetID, 0xdc6e70ca) \ - V(InternalLibrary, ::, _nativeEffect, NativeEffect, 0x5360b6d1) \ + V(InternalLibrary, ::, _nativeEffect, NativeEffect, 0x61c2f399) \ V(InternalLibrary, ::, reachabilityFence, ReachabilityFence, 0x72f213bf) \ V(InternalLibrary, ::, get:has63BitSmis, Has63BitSmis, 0xf5fe3f31) \ V(InternalLibrary, ::, copyRangeFromUint8ListToOneByteString, \ CopyRangeFromUint8ListToOneByteString, 0xcc3444c2) \ V(InternalLibrary, FinalizerBase, get:_allEntries, \ - FinalizerBase_getAllEntries, 0xf022daab) \ + FinalizerBase_getAllEntries, 0xf4e8b525) \ V(InternalLibrary, FinalizerBase, set:_allEntries, \ - FinalizerBase_setAllEntries, 0x8eec0928) \ + FinalizerBase_setAllEntries, 0x93b1e3a2) \ V(InternalLibrary, FinalizerBase, get:_detachments, \ - FinalizerBase_getDetachments, 0x2f47f776) \ + FinalizerBase_getDetachments, 0x2e8e08fa) \ V(InternalLibrary, FinalizerBase, set:_detachments, \ - FinalizerBase_setDetachments, 0x78720633) \ + FinalizerBase_setDetachments, 0x77b817b7) \ V(InternalLibrary, FinalizerBase, _exchangeEntriesCollectedWithNull, \ - FinalizerBase_exchangeEntriesCollectedWithNull, 0x6c740d3b) \ + FinalizerBase_exchangeEntriesCollectedWithNull, 0x7633c339) \ V(InternalLibrary, FinalizerBase, _setIsolate, FinalizerBase_setIsolate, \ - 0xbcdac792) \ + 0xc95e4a30) \ V(InternalLibrary, FinalizerBase, get:_isolateFinalizers, \ - FinalizerBase_getIsolateFinalizers, 0x70d8272c) \ + FinalizerBase_getIsolateFinalizers, 0x572a4340) \ V(InternalLibrary, FinalizerBase, set:_isolateFinalizers, \ - FinalizerBase_setIsolateFinalizers, 0xb3c95529) \ + FinalizerBase_setIsolateFinalizers, 0x9a1b713d) \ V(InternalLibrary, FinalizerEntry, allocate, FinalizerEntry_allocate, \ 0xe09dc0b8) \ V(InternalLibrary, FinalizerEntry, get:value, FinalizerEntry_getValue, \ @@ -219,19 +219,19 @@ namespace dart { 0x56ff3b70) \ V(MathLibrary, ::, min, MathMin, 0x63eb7469) \ V(MathLibrary, ::, max, MathMax, 0xf9320c82) \ - V(MathLibrary, ::, _doublePow, MathDoublePow, 0x428b8405) \ - V(MathLibrary, ::, _intPow, MathIntPow, 0xab39e81a) \ - V(MathLibrary, ::, _sin, MathSin, 0x17bdb243) \ - V(MathLibrary, ::, _cos, MathCos, 0xf4776585) \ - V(MathLibrary, ::, _tan, MathTan, 0xeafd3d77) \ - V(MathLibrary, ::, _asin, MathAsin, 0x29c7bdde) \ - V(MathLibrary, ::, _acos, MathAcos, 0x1fed891b) \ - V(MathLibrary, ::, _atan, MathAtan, 0x10dd4932) \ - V(MathLibrary, ::, _atan2, MathAtan2, 0x58b7d993) \ - V(MathLibrary, ::, _sqrt, MathSqrt, 0x02fb1bd0) \ - V(MathLibrary, ::, _exp, MathExp, 0x00d7e810) \ - V(MathLibrary, ::, _log, MathLog, 0x09916ca2) \ - V(NativeWrappersLibrary, ::, _getNativeField, GetNativeField, 0x9ff68786) \ + V(MathLibrary, ::, _doublePow, MathDoublePow, 0x424e2227) \ + V(MathLibrary, ::, _intPow, MathIntPow, 0x9a0d648c) \ + V(MathLibrary, ::, _sin, MathSin, 0x101882d8) \ + V(MathLibrary, ::, _cos, MathCos, 0xf91585da) \ + V(MathLibrary, ::, _tan, MathTan, 0xf720c4ea) \ + V(MathLibrary, ::, _asin, MathAsin, 0xfe7986cb) \ + V(MathLibrary, ::, _acos, MathAcos, 0x174c6974) \ + V(MathLibrary, ::, _atan, MathAtan, 0x1ae3f717) \ + V(MathLibrary, ::, _atan2, MathAtan2, 0x531004a9) \ + V(MathLibrary, ::, _sqrt, MathSqrt, 0x1f167f7a) \ + V(MathLibrary, ::, _exp, MathExp, 0x02565a46) \ + V(MathLibrary, ::, _log, MathLog, 0x106c0978) \ + V(NativeWrappersLibrary, ::, _getNativeField, GetNativeField, 0x8a67a22d) \ V(TypedDataLibrary, _Int8List, [], Int8ArrayGetIndexed, 0x23133682) \ V(TypedDataLibrary, _ExternalInt8Array, [], ExternalInt8ArrayGetIndexed, \ 0x23133682) \ @@ -304,111 +304,111 @@ namespace dart { ExternalInt32x4ArrayGetIndexed, 0x4959642b) \ V(TypedDataLibrary, _Int32x4ArrayView, [], Int32x4ArrayViewGetIndexed, \ 0x4959642b) \ - V(TypedDataLibrary, _TypedList, _getInt8, TypedList_GetInt8, 0x1606c835) \ - V(TypedDataLibrary, _TypedList, _getUint8, TypedList_GetUint8, 0x1762ea2b) \ - V(TypedDataLibrary, _TypedList, _getInt16, TypedList_GetInt16, 0x2e238250) \ - V(TypedDataLibrary, _TypedList, _getUint16, TypedList_GetUint16, 0x2fa4e2ba) \ - V(TypedDataLibrary, _TypedList, _getInt32, TypedList_GetInt32, 0x18fb190b) \ - V(TypedDataLibrary, _TypedList, _getUint32, TypedList_GetUint32, 0x19405a7c) \ - V(TypedDataLibrary, _TypedList, _getInt64, TypedList_GetInt64, 0xf643ac00) \ - V(TypedDataLibrary, _TypedList, _getUint64, TypedList_GetUint64, 0x2c3e655a) \ + V(TypedDataLibrary, _TypedList, _getInt8, TypedList_GetInt8, 0x26d42e4c) \ + V(TypedDataLibrary, _TypedList, _getUint8, TypedList_GetUint8, 0xf58cab06) \ + V(TypedDataLibrary, _TypedList, _getInt16, TypedList_GetInt16, 0xffbc3275) \ + V(TypedDataLibrary, _TypedList, _getUint16, TypedList_GetUint16, 0xfa3e6ed7) \ + V(TypedDataLibrary, _TypedList, _getInt32, TypedList_GetInt32, 0x30684c92) \ + V(TypedDataLibrary, _TypedList, _getUint32, TypedList_GetUint32, 0x252cc660) \ + V(TypedDataLibrary, _TypedList, _getInt64, TypedList_GetInt64, 0x2c2f44e0) \ + V(TypedDataLibrary, _TypedList, _getUint64, TypedList_GetUint64, 0x2f85e64b) \ V(TypedDataLibrary, _TypedList, _getFloat32, TypedList_GetFloat32, \ - 0xe8d98d08) \ + 0xf2b3f49c) \ V(TypedDataLibrary, _TypedList, _getFloat64, TypedList_GetFloat64, \ - 0xf80d2235) \ + 0xd8edbf39) \ V(TypedDataLibrary, _TypedList, _getFloat32x4, TypedList_GetFloat32x4, \ - 0xaf0ff8e6) \ + 0x8535083e) \ V(TypedDataLibrary, _TypedList, _getFloat64x2, TypedList_GetFloat64x2, \ - 0x544018c1) \ + 0x601cfc98) \ V(TypedDataLibrary, _TypedList, _getInt32x4, TypedList_GetInt32x4, \ - 0x5556600c) \ - V(TypedDataLibrary, _TypedList, _setInt8, TypedList_SetInt8, 0xe16c2fa3) \ - V(TypedDataLibrary, _TypedList, _setUint8, TypedList_SetUint8, 0xaf3ca349) \ - V(TypedDataLibrary, _TypedList, _setInt16, TypedList_SetInt16, 0xbac92c28) \ - V(TypedDataLibrary, _TypedList, _setUint16, TypedList_SetUint16, 0xce053450) \ - V(TypedDataLibrary, _TypedList, _setInt32, TypedList_SetInt32, 0xbdbd9741) \ - V(TypedDataLibrary, _TypedList, _setUint32, TypedList_SetUint32, 0xb9498fb3) \ - V(TypedDataLibrary, _TypedList, _setInt64, TypedList_SetInt64, 0xc8b03b7b) \ - V(TypedDataLibrary, _TypedList, _setUint64, TypedList_SetUint64, 0xda2a1e06) \ + 0x5492ada5) \ + V(TypedDataLibrary, _TypedList, _setInt8, TypedList_SetInt8, 0xc407fda1) \ + V(TypedDataLibrary, _TypedList, _setUint8, TypedList_SetUint8, 0xe1bade7c) \ + V(TypedDataLibrary, _TypedList, _setInt16, TypedList_SetInt16, 0xb419c6ad) \ + V(TypedDataLibrary, _TypedList, _setUint16, TypedList_SetUint16, 0xa7231704) \ + V(TypedDataLibrary, _TypedList, _setInt32, TypedList_SetInt32, 0xb649e136) \ + V(TypedDataLibrary, _TypedList, _setUint32, TypedList_SetUint32, 0xbe067c9d) \ + V(TypedDataLibrary, _TypedList, _setInt64, TypedList_SetInt64, 0xd893ceb9) \ + V(TypedDataLibrary, _TypedList, _setUint64, TypedList_SetUint64, 0xb69598f1) \ V(TypedDataLibrary, _TypedList, _setFloat32, TypedList_SetFloat32, \ - 0x2f1919e1) \ + 0x134728fa) \ V(TypedDataLibrary, _TypedList, _setFloat64, TypedList_SetFloat64, \ - 0x233ce4d3) \ + 0x0c2e6726) \ V(TypedDataLibrary, _TypedList, _setFloat32x4, TypedList_SetFloat32x4, \ - 0x38a9155b) \ + 0x3dc17446) \ V(TypedDataLibrary, _TypedList, _setFloat64x2, TypedList_SetFloat64x2, \ - 0xbacdc340) \ + 0x90fdf042) \ V(TypedDataLibrary, _TypedList, _setInt32x4, TypedList_SetInt32x4, \ - 0x5ccbee5c) \ - V(TypedDataLibrary, ByteData, ., ByteDataFactory, 0x0f140a3b) \ + 0x5f4a7491) \ + V(TypedDataLibrary, ByteData, ., ByteDataFactory, 0x9f5fcfc3) \ V(TypedDataLibrary, _ByteDataView, get:offsetInBytes, \ ByteDataViewOffsetInBytes, 0x60b1da6c) \ V(TypedDataLibrary, _ByteDataView, get:_typedData, ByteDataViewTypedData, \ - 0xb9b44479) \ + 0xfec7ba91) \ V(TypedDataLibrary, _TypedListView, get:offsetInBytes, \ TypedDataViewOffsetInBytes, 0x60b1da6c) \ V(TypedDataLibrary, _TypedListView, get:_typedData, TypedDataViewTypedData, \ - 0xb9b44479) \ + 0xfec7ba91) \ V(TypedDataLibrary, _ByteDataView, ._, TypedData_ByteDataView_factory, \ - 0x3169ff7d) \ + 0xee06a642) \ V(TypedDataLibrary, _Int8ArrayView, ._, TypedData_Int8ArrayView_factory, \ - 0x4438fdcb) \ + 0x62af12b2) \ V(TypedDataLibrary, _Uint8ArrayView, ._, TypedData_Uint8ArrayView_factory, \ - 0x95e37496) \ + 0x743ef52f) \ V(TypedDataLibrary, _Uint8ClampedArrayView, ._, \ - TypedData_Uint8ClampedArrayView_factory, 0x051c646a) \ + TypedData_Uint8ClampedArrayView_factory, 0x0a86ebcf) \ V(TypedDataLibrary, _Int16ArrayView, ._, TypedData_Int16ArrayView_factory, \ - 0x48f0ffdc) \ + 0xd58d175f) \ V(TypedDataLibrary, _Uint16ArrayView, ._, TypedData_Uint16ArrayView_factory, \ - 0x9fdbb233) \ + 0x5de67481) \ V(TypedDataLibrary, _Int32ArrayView, ._, TypedData_Int32ArrayView_factory, \ - 0xe2cc967a) \ + 0x187f51da) \ V(TypedDataLibrary, _Uint32ArrayView, ._, TypedData_Uint32ArrayView_factory, \ - 0x8665a6a2) \ + 0xb319a8d6) \ V(TypedDataLibrary, _Int64ArrayView, ._, TypedData_Int64ArrayView_factory, \ - 0x12aa3ab0) \ + 0xf5fb900c) \ V(TypedDataLibrary, _Uint64ArrayView, ._, TypedData_Uint64ArrayView_factory, \ - 0x25a95afe) \ + 0xa35ed807) \ V(TypedDataLibrary, _Float32ArrayView, ._, \ - TypedData_Float32ArrayView_factory, 0xdc797845) \ + TypedData_Float32ArrayView_factory, 0x89e4ecdf) \ V(TypedDataLibrary, _Float64ArrayView, ._, \ - TypedData_Float64ArrayView_factory, 0xcb594118) \ + TypedData_Float64ArrayView_factory, 0x0562ef6d) \ V(TypedDataLibrary, _Float32x4ArrayView, ._, \ - TypedData_Float32x4ArrayView_factory, 0x66419ac1) \ + TypedData_Float32x4ArrayView_factory, 0x0f97516a) \ V(TypedDataLibrary, _Int32x4ArrayView, ._, \ - TypedData_Int32x4ArrayView_factory, 0x04934906) \ + TypedData_Int32x4ArrayView_factory, 0x918335c2) \ V(TypedDataLibrary, _Float64x2ArrayView, ._, \ - TypedData_Float64x2ArrayView_factory, 0x42c547a5) \ + TypedData_Float64x2ArrayView_factory, 0x14fa6c01) \ V(TypedDataLibrary, _UnmodifiableByteDataView, ._, \ - TypedData_UnmodifiableByteDataView_factory, 0x9ae1040c) \ + TypedData_UnmodifiableByteDataView_factory, 0xf837748b) \ V(TypedDataLibrary, _UnmodifiableInt8ArrayView, ._, \ - TypedData_UnmodifiableInt8ArrayView_factory, 0x4f0e318b) \ + TypedData_UnmodifiableInt8ArrayView_factory, 0x5ea61aa0) \ V(TypedDataLibrary, _UnmodifiableUint8ArrayView, ._, \ - TypedData_UnmodifiableUint8ArrayView_factory, 0x442b7c4a) \ + TypedData_UnmodifiableUint8ArrayView_factory, 0x79b3d901) \ V(TypedDataLibrary, _UnmodifiableUint8ClampedArrayView, ._, \ - TypedData_UnmodifiableUint8ClampedArrayView_factory, 0x6a3bdd0e) \ + TypedData_UnmodifiableUint8ClampedArrayView_factory, 0x6c59e8ba) \ V(TypedDataLibrary, _UnmodifiableInt16ArrayView, ._, \ - TypedData_UnmodifiableInt16ArrayView_factory, 0xb6cb193b) \ + TypedData_UnmodifiableInt16ArrayView_factory, 0x6c74b817) \ V(TypedDataLibrary, _UnmodifiableUint16ArrayView, ._, \ - TypedData_UnmodifiableUint16ArrayView_factory, 0xa6bea3d7) \ + TypedData_UnmodifiableUint16ArrayView_factory, 0xec6da26d) \ V(TypedDataLibrary, _UnmodifiableInt32ArrayView, ._, \ - TypedData_UnmodifiableInt32ArrayView_factory, 0x48e066e5) \ + TypedData_UnmodifiableInt32ArrayView_factory, 0xb60484c4) \ V(TypedDataLibrary, _UnmodifiableUint32ArrayView, ._, \ - TypedData_UnmodifiableUint32ArrayView_factory, 0x9508a275) \ + TypedData_UnmodifiableUint32ArrayView_factory, 0x60c008ff) \ V(TypedDataLibrary, _UnmodifiableInt64ArrayView, ._, \ - TypedData_UnmodifiableInt64ArrayView_factory, 0x7635c145) \ + TypedData_UnmodifiableInt64ArrayView_factory, 0x98aff1d4) \ V(TypedDataLibrary, _UnmodifiableUint64ArrayView, ._, \ - TypedData_UnmodifiableUint64ArrayView_factory, 0x3ffeb983) \ + TypedData_UnmodifiableUint64ArrayView_factory, 0x82b8406e) \ V(TypedDataLibrary, _UnmodifiableFloat32ArrayView, ._, \ - TypedData_UnmodifiableFloat32ArrayView_factory, 0x5406ef8a) \ + TypedData_UnmodifiableFloat32ArrayView_factory, 0xd6ef44e0) \ V(TypedDataLibrary, _UnmodifiableFloat64ArrayView, ._, \ - TypedData_UnmodifiableFloat64ArrayView_factory, 0xbf6cd86c) \ + TypedData_UnmodifiableFloat64ArrayView_factory, 0xa938e7c3) \ V(TypedDataLibrary, _UnmodifiableFloat32x4ArrayView, ._, \ - TypedData_UnmodifiableFloat32x4ArrayView_factory, 0x5f08d69b) \ + TypedData_UnmodifiableFloat32x4ArrayView_factory, 0xdaa7e110) \ V(TypedDataLibrary, _UnmodifiableInt32x4ArrayView, ._, \ - TypedData_UnmodifiableInt32x4ArrayView_factory, 0xf65dddb3) \ + TypedData_UnmodifiableInt32x4ArrayView_factory, 0xc53f4ea7) \ V(TypedDataLibrary, _UnmodifiableFloat64x2ArrayView, ._, \ - TypedData_UnmodifiableFloat64x2ArrayView_factory, 0x6d8c5a1b) \ + TypedData_UnmodifiableFloat64x2ArrayView_factory, 0x0f95ea75) \ V(TypedDataLibrary, Int8List, ., TypedData_Int8Array_factory, 0x65f0bd07) \ V(TypedDataLibrary, Uint8List, ., TypedData_Uint8Array_factory, 0xedc6dace) \ V(TypedDataLibrary, Uint8ClampedList, ., \ @@ -433,23 +433,23 @@ namespace dart { V(TypedDataLibrary, Float64x2List, ., TypedData_Float64x2Array_factory, \ 0xecade3e9) \ V(TypedDataLibrary, _TypedListBase, _memMove1, TypedData_memMove1, \ - 0xd267f3d0) \ + 0xc9e2c2e8) \ V(TypedDataLibrary, _TypedListBase, _memMove2, TypedData_memMove2, \ - 0xed299fd6) \ + 0xb8ce9805) \ V(TypedDataLibrary, _TypedListBase, _memMove4, TypedData_memMove4, \ - 0xcfd4eb46) \ + 0xd1aa4ff0) \ V(TypedDataLibrary, _TypedListBase, _memMove8, TypedData_memMove8, \ - 0xd1ca5745) \ + 0xd6e9ea3c) \ V(TypedDataLibrary, _TypedListBase, _memMove16, TypedData_memMove16, \ - 0x077790f5) \ + 0xce3f5080) \ V(TypedDataLibrary, ::, _typedDataIndexCheck, TypedDataIndexCheck, \ - 0x7912cea9) \ + 0x6bf4597c) \ V(TypedDataLibrary, ::, _byteDataByteOffsetCheck, ByteDataByteOffsetCheck, \ - 0xbaf71484) \ + 0xa3d746a7) \ V(TypedDataLibrary, Float32x4, _Float32x4FromDoubles, Float32x4FromDoubles, \ - 0x1828616b) \ + 0x5bf18ed9) \ V(TypedDataLibrary, Float32x4, Float32x4.zero, Float32x4Zero, 0xd3992842) \ - V(TypedDataLibrary, Float32x4, _Float32x4Splat, Float32x4Splat, 0x13883b03) \ + V(TypedDataLibrary, Float32x4, _Float32x4Splat, Float32x4Splat, 0x634bed32) \ V(TypedDataLibrary, Float32x4, Float32x4.fromInt32x4Bits, \ Int32x4ToFloat32x4, 0x7eb87d82) \ V(TypedDataLibrary, Float32x4, Float32x4.fromFloat64x2, \ @@ -477,14 +477,14 @@ namespace dart { V(TypedDataLibrary, _Float32x4, unary-, Float32x4Negate, 0xe68eac52) \ V(TypedDataLibrary, _Float32x4, abs, Float32x4Abs, 0xeb296688) \ V(TypedDataLibrary, _Float32x4, clamp, Float32x4Clamp, 0x77b05a1d) \ - V(TypedDataLibrary, _Float32x4, _withX, Float32x4WithX, 0xa2fa87ef) \ - V(TypedDataLibrary, _Float32x4, _withY, Float32x4WithY, 0x9b9c9c83) \ - V(TypedDataLibrary, _Float32x4, _withZ, Float32x4WithZ, 0x97b916e0) \ - V(TypedDataLibrary, _Float32x4, _withW, Float32x4WithW, 0x95160a9b) \ + V(TypedDataLibrary, _Float32x4, _withX, Float32x4WithX, 0xa37b7fa7) \ + V(TypedDataLibrary, _Float32x4, _withY, Float32x4WithY, 0xcd0ff712) \ + V(TypedDataLibrary, _Float32x4, _withZ, Float32x4WithZ, 0xb99fe966) \ + V(TypedDataLibrary, _Float32x4, _withW, Float32x4WithW, 0xd3567bb9) \ V(TypedDataLibrary, Float64x2, _Float64x2FromDoubles, Float64x2FromDoubles, \ - 0xd83bc891) \ + 0x7d1f258d) \ V(TypedDataLibrary, Float64x2, Float64x2.zero, Float64x2Zero, 0x82777158) \ - V(TypedDataLibrary, Float64x2, _Float64x2Splat, Float64x2Splat, 0x5af65404) \ + V(TypedDataLibrary, Float64x2, _Float64x2Splat, Float64x2Splat, 0x3d21f386) \ V(TypedDataLibrary, Float64x2, Float64x2.fromFloat32x4, \ Float32x4ToFloat64x2, 0x6e8a84a6) \ V(TypedDataLibrary, _Float64x2, get:x, Float64x2GetX, 0x3a1c6d70) \ @@ -496,13 +496,13 @@ namespace dart { V(TypedDataLibrary, _Float64x2, get:signMask, Float64x2GetSignMask, \ 0x7c4dfa2a) \ V(TypedDataLibrary, _Float64x2, scale, Float64x2Scale, 0x52787958) \ - V(TypedDataLibrary, _Float64x2, _withX, Float64x2WithX, 0x51d8d105) \ - V(TypedDataLibrary, _Float64x2, _withY, Float64x2WithY, 0x4a7ae599) \ + V(TypedDataLibrary, _Float64x2, _withX, Float64x2WithX, 0x5259c8bd) \ + V(TypedDataLibrary, _Float64x2, _withY, Float64x2WithY, 0x7bee4028) \ V(TypedDataLibrary, _Float64x2, min, Float64x2Min, 0x3611c492) \ V(TypedDataLibrary, _Float64x2, max, Float64x2Max, 0x18414663) \ - V(TypedDataLibrary, Int32x4, _Int32x4FromInts, Int32x4FromInts, 0xa8e3a570) \ + V(TypedDataLibrary, Int32x4, _Int32x4FromInts, Int32x4FromInts, 0x2d46f8dd) \ V(TypedDataLibrary, Int32x4, _Int32x4FromBools, Int32x4FromBools, \ - 0xf54f7808) \ + 0x89c00421) \ V(TypedDataLibrary, Int32x4, Int32x4.fromFloat32x4Bits, Float32x4ToInt32x4, \ 0x45555da1) \ V(TypedDataLibrary, _Int32x4, get:flagX, Int32x4GetFlagX, 0xc281ec18) \ @@ -513,10 +513,10 @@ namespace dart { V(TypedDataLibrary, _Int32x4, shuffle, Int32x4Shuffle, 0x4044fa13) \ V(TypedDataLibrary, _Int32x4, shuffleMix, Int32x4ShuffleMix, 0x4fcb1cdc) \ V(TypedDataLibrary, _Int32x4, select, Int32x4Select, 0x68ad87e0) \ - V(TypedDataLibrary, _Int32x4, _withFlagX, Int32x4WithFlagX, 0xb7c1e8a3) \ - V(TypedDataLibrary, _Int32x4, _withFlagY, Int32x4WithFlagY, 0xa8b283e6) \ - V(TypedDataLibrary, _Int32x4, _withFlagZ, Int32x4WithFlagZ, 0xa7e87094) \ - V(TypedDataLibrary, _Int32x4, _withFlagW, Int32x4WithFlagW, 0xb316e198) \ + V(TypedDataLibrary, _Int32x4, _withFlagX, Int32x4WithFlagX, 0x9c13e04a) \ + V(TypedDataLibrary, _Int32x4, _withFlagY, Int32x4WithFlagY, 0xbded0a49) \ + V(TypedDataLibrary, _Int32x4, _withFlagZ, Int32x4WithFlagZ, 0xce48ea53) \ + V(TypedDataLibrary, _Int32x4, _withFlagW, Int32x4WithFlagW, 0xbef4702b) \ // List of assembler intrinsics: // (library, class-name, function-name, intrinsification method, fingerprint). @@ -581,11 +581,11 @@ namespace dart { V(CoreLibrary, _IntegerImplementation, >=, Integer_greaterEqualThan, \ 0x4aa007b3) \ V(CoreLibrary, _IntegerImplementation, <<, Integer_shl, 0x2d16ae7a) \ - V(DeveloperLibrary, ::, _getDefaultTag, UserTag_defaultTag, 0x6bfcb0e5) \ - V(DeveloperLibrary, ::, _getCurrentTag, Profiler_getCurrentTag, 0x70cdb8ce) \ + V(DeveloperLibrary, ::, _getDefaultTag, UserTag_defaultTag, 0x59490cb3) \ + V(DeveloperLibrary, ::, _getCurrentTag, Profiler_getCurrentTag, 0x4a0762f4) \ V(DeveloperLibrary, ::, _isDartStreamEnabled, Timeline_isDartStreamEnabled, \ - 0xc95d97f3) \ - V(DeveloperLibrary, ::, _getNextTaskId, Timeline_getNextTaskId, 0x5b0df34b) \ + 0xe87bfe54) \ + V(DeveloperLibrary, ::, _getNextTaskId, Timeline_getNextTaskId, 0x43c2f99b) \ V(InternalLibrary, ::, allocateOneByteString, AllocateOneByteString, \ 0x9e5a2e15) \ V(InternalLibrary, ::, allocateTwoByteString, AllocateTwoByteString, \ @@ -623,27 +623,27 @@ namespace dart { V(CoreLibrary, _IntegerImplementation, >>, Integer_sar, 0x49c7691f) \ V(CoreLibrary, _IntegerImplementation, >>>, Integer_shr, 0x2b3da581) \ V(CoreLibrary, _Double, unary-, DoubleFlipSignBit, 0x3d1bf06b) \ - V(TypedDataLibrary, _Int8List, []=, Int8ArraySetIndexed, 0x02e93049) \ - V(TypedDataLibrary, _Uint8List, []=, Uint8ArraySetIndexed, 0xc8ef5e7d) \ + V(TypedDataLibrary, _Int8List, []=, Int8ArraySetIndexed, 0x507b6fcd) \ + V(TypedDataLibrary, _Uint8List, []=, Uint8ArraySetIndexed, 0x70278ad7) \ V(TypedDataLibrary, _ExternalUint8Array, []=, ExternalUint8ArraySetIndexed, \ - 0xc8ef5e7d) \ + 0x70278ad7) \ V(TypedDataLibrary, _Uint8ClampedList, []=, Uint8ClampedArraySetIndexed, \ - 0x44f383c5) \ + 0xf619ff25) \ V(TypedDataLibrary, _ExternalUint8ClampedArray, []=, \ - ExternalUint8ClampedArraySetIndexed, 0x44f383c5) \ - V(TypedDataLibrary, _Int16List, []=, Int16ArraySetIndexed, 0x3c444b9c) \ - V(TypedDataLibrary, _Uint16List, []=, Uint16ArraySetIndexed, 0x96d4fe9c) \ - V(TypedDataLibrary, _Int32List, []=, Int32ArraySetIndexed, 0x7ce3fb7c) \ - V(TypedDataLibrary, _Uint32List, []=, Uint32ArraySetIndexed, 0xe4f7d33c) \ - V(TypedDataLibrary, _Int64List, []=, Int64ArraySetIndexed, 0x671bf23c) \ - V(TypedDataLibrary, _Uint64List, []=, Uint64ArraySetIndexed, 0x5e1499dc) \ - V(TypedDataLibrary, _Float64List, []=, Float64ArraySetIndexed, 0x84c8ac62) \ - V(TypedDataLibrary, _Float32List, []=, Float32ArraySetIndexed, 0x5e23a4a2) \ + ExternalUint8ClampedArraySetIndexed, 0xf619ff25) \ + V(TypedDataLibrary, _Int16List, []=, Int16ArraySetIndexed, 0x070bb1fc) \ + V(TypedDataLibrary, _Uint16List, []=, Uint16ArraySetIndexed, 0x3392641c) \ + V(TypedDataLibrary, _Int32List, []=, Int32ArraySetIndexed, 0xb28f43dc) \ + V(TypedDataLibrary, _Uint32List, []=, Uint32ArraySetIndexed, 0x3e9643fc) \ + V(TypedDataLibrary, _Int64List, []=, Int64ArraySetIndexed, 0xb4a7347c) \ + V(TypedDataLibrary, _Uint64List, []=, Uint64ArraySetIndexed, 0x1486557c) \ + V(TypedDataLibrary, _Float64List, []=, Float64ArraySetIndexed, 0x3242f302) \ + V(TypedDataLibrary, _Float32List, []=, Float32ArraySetIndexed, 0xfd9ad482) \ V(TypedDataLibrary, _Float32x4List, []=, Float32x4ArraySetIndexed, \ - 0xadb196fb) \ - V(TypedDataLibrary, _Int32x4List, []=, Int32x4ArraySetIndexed, 0xf37c3bf3) \ + 0x8852d29b) \ + V(TypedDataLibrary, _Int32x4List, []=, Int32x4ArraySetIndexed, 0x0a36bc53) \ V(TypedDataLibrary, _Float64x2List, []=, Float64x2ArraySetIndexed, \ - 0xf3086b45) \ + 0x1f07e105) \ V(TypedDataLibrary, _TypedListBase, get:length, TypedListBaseLength, \ 0x5833d8ab) \ V(TypedDataLibrary, _ByteDataView, get:length, ByteDataViewLength, \ @@ -669,38 +669,38 @@ namespace dart { // A list of core functions that internally dispatch based on received id. #define POLYMORPHIC_TARGET_LIST(V) \ V(CoreLibrary, _StringBase, [], StringBaseCharAt, 0xd052aeff) \ - V(TypedDataLibrary, _TypedList, _getInt8, TypedList_GetInt8, 0x1606c835) \ - V(TypedDataLibrary, _TypedList, _getUint8, TypedList_GetUint8, 0x1762ea2b) \ - V(TypedDataLibrary, _TypedList, _getInt16, TypedList_GetInt16, 0x2e238250) \ - V(TypedDataLibrary, _TypedList, _getUint16, TypedList_GetUint16, 0x2fa4e2ba) \ - V(TypedDataLibrary, _TypedList, _getInt32, TypedList_GetInt32, 0x18fb190b) \ - V(TypedDataLibrary, _TypedList, _getUint32, TypedList_GetUint32, 0x19405a7c) \ - V(TypedDataLibrary, _TypedList, _getInt64, TypedList_GetInt64, 0xf643ac00) \ - V(TypedDataLibrary, _TypedList, _getUint64, TypedList_GetUint64, 0x2c3e655a) \ + V(TypedDataLibrary, _TypedList, _getInt8, TypedList_GetInt8, 0x26d42e4c) \ + V(TypedDataLibrary, _TypedList, _getUint8, TypedList_GetUint8, 0xf58cab06) \ + V(TypedDataLibrary, _TypedList, _getInt16, TypedList_GetInt16, 0xffbc3275) \ + V(TypedDataLibrary, _TypedList, _getUint16, TypedList_GetUint16, 0xfa3e6ed7) \ + V(TypedDataLibrary, _TypedList, _getInt32, TypedList_GetInt32, 0x30684c92) \ + V(TypedDataLibrary, _TypedList, _getUint32, TypedList_GetUint32, 0x252cc660) \ + V(TypedDataLibrary, _TypedList, _getInt64, TypedList_GetInt64, 0x2c2f44e0) \ + V(TypedDataLibrary, _TypedList, _getUint64, TypedList_GetUint64, 0x2f85e64b) \ V(TypedDataLibrary, _TypedList, _getFloat32, TypedList_GetFloat32, \ - 0xe8d98d08) \ + 0xf2b3f49c) \ V(TypedDataLibrary, _TypedList, _getFloat64, TypedList_GetFloat64, \ - 0xf80d2235) \ + 0xd8edbf39) \ V(TypedDataLibrary, _TypedList, _getFloat32x4, TypedList_GetFloat32x4, \ - 0xaf0ff8e6) \ + 0x8535083e) \ V(TypedDataLibrary, _TypedList, _getInt32x4, TypedList_GetInt32x4, \ - 0x5556600c) \ - V(TypedDataLibrary, _TypedList, _setInt8, TypedList_SetInt8, 0xe16c2fa3) \ - V(TypedDataLibrary, _TypedList, _setUint8, TypedList_SetInt8, 0xaf3ca349) \ - V(TypedDataLibrary, _TypedList, _setInt16, TypedList_SetInt16, 0xbac92c28) \ - V(TypedDataLibrary, _TypedList, _setUint16, TypedList_SetInt16, 0xce053450) \ - V(TypedDataLibrary, _TypedList, _setInt32, TypedList_SetInt32, 0xbdbd9741) \ - V(TypedDataLibrary, _TypedList, _setUint32, TypedList_SetUint32, 0xb9498fb3) \ - V(TypedDataLibrary, _TypedList, _setInt64, TypedList_SetInt64, 0xc8b03b7b) \ - V(TypedDataLibrary, _TypedList, _setUint64, TypedList_SetUint64, 0xda2a1e06) \ + 0x5492ada5) \ + V(TypedDataLibrary, _TypedList, _setInt8, TypedList_SetInt8, 0xc407fda1) \ + V(TypedDataLibrary, _TypedList, _setUint8, TypedList_SetInt8, 0xe1bade7c) \ + V(TypedDataLibrary, _TypedList, _setInt16, TypedList_SetInt16, 0xb419c6ad) \ + V(TypedDataLibrary, _TypedList, _setUint16, TypedList_SetInt16, 0xa7231704) \ + V(TypedDataLibrary, _TypedList, _setInt32, TypedList_SetInt32, 0xb649e136) \ + V(TypedDataLibrary, _TypedList, _setUint32, TypedList_SetUint32, 0xbe067c9d) \ + V(TypedDataLibrary, _TypedList, _setInt64, TypedList_SetInt64, 0xd893ceb9) \ + V(TypedDataLibrary, _TypedList, _setUint64, TypedList_SetUint64, 0xb69598f1) \ V(TypedDataLibrary, _TypedList, _setFloat32, TypedList_SetFloat32, \ - 0x2f1919e1) \ + 0x134728fa) \ V(TypedDataLibrary, _TypedList, _setFloat64, TypedList_SetFloat64, \ - 0x233ce4d3) \ + 0x0c2e6726) \ V(TypedDataLibrary, _TypedList, _setFloat32x4, TypedList_SetFloat32x4, \ - 0x38a9155b) \ + 0x3dc17446) \ V(TypedDataLibrary, _TypedList, _setInt32x4, TypedList_SetInt32x4, \ - 0x5ccbee5c) \ + 0x5f4a7491) \ V(CoreLibrary, Object, get:runtimeType, ObjectRuntimeType, 0x0364b091) \ // List of recognized list factories: diff --git a/runtime/vm/compiler/runtime_offsets_extracted.h b/runtime/vm/compiler/runtime_offsets_extracted.h index e5006033043..bac6e16985f 100644 --- a/runtime/vm/compiler/runtime_offsets_extracted.h +++ b/runtime/vm/compiler/runtime_offsets_extracted.h @@ -253,35 +253,35 @@ static constexpr dart::compiler::target::word ObjectStore_double_type_offset = static constexpr dart::compiler::target::word ObjectStore_int_type_offset = 0x98; static constexpr dart::compiler::target::word - ObjectStore_record_field_names_offset = 0x1f4; + ObjectStore_record_field_names_offset = 0x1f8; static constexpr dart::compiler::target::word ObjectStore_string_type_offset = 0xd4; static constexpr dart::compiler::target::word ObjectStore_type_type_offset = 0x84; static constexpr dart::compiler::target::word - ObjectStore_ffi_callback_code_offset = 0x270; + ObjectStore_ffi_callback_code_offset = 0x274; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_await_offset = 0x21c; + ObjectStore_suspend_state_await_offset = 0x220; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_await_with_type_check_offset = 0x220; + ObjectStore_suspend_state_await_with_type_check_offset = 0x224; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_handle_exception_offset = 0x240; + ObjectStore_suspend_state_handle_exception_offset = 0x244; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_init_async_offset = 0x218; + ObjectStore_suspend_state_init_async_offset = 0x21c; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_init_async_star_offset = 0x22c; + ObjectStore_suspend_state_init_async_star_offset = 0x230; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_init_sync_star_offset = 0x238; + ObjectStore_suspend_state_init_sync_star_offset = 0x23c; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_return_async_offset = 0x224; + ObjectStore_suspend_state_return_async_offset = 0x228; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_return_async_not_future_offset = 0x228; + ObjectStore_suspend_state_return_async_not_future_offset = 0x22c; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_return_async_star_offset = 0x234; + ObjectStore_suspend_state_return_async_star_offset = 0x238; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_suspend_sync_star_at_start_offset = 0x23c; + ObjectStore_suspend_state_suspend_sync_star_at_start_offset = 0x240; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_yield_async_star_offset = 0x230; + ObjectStore_suspend_state_yield_async_star_offset = 0x234; static constexpr dart::compiler::target::word OneByteString_data_offset = 0xc; static constexpr dart::compiler::target::word PersistentHandle_ptr_offset = 0x0; static constexpr dart::compiler::target::word PointerBase_data_offset = 0x4; @@ -968,35 +968,35 @@ static constexpr dart::compiler::target::word ObjectStore_double_type_offset = static constexpr dart::compiler::target::word ObjectStore_int_type_offset = 0x130; static constexpr dart::compiler::target::word - ObjectStore_record_field_names_offset = 0x3e8; + ObjectStore_record_field_names_offset = 0x3f0; static constexpr dart::compiler::target::word ObjectStore_string_type_offset = 0x1a8; static constexpr dart::compiler::target::word ObjectStore_type_type_offset = 0x108; static constexpr dart::compiler::target::word - ObjectStore_ffi_callback_code_offset = 0x4e0; + ObjectStore_ffi_callback_code_offset = 0x4e8; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_await_offset = 0x438; + ObjectStore_suspend_state_await_offset = 0x440; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_await_with_type_check_offset = 0x440; + ObjectStore_suspend_state_await_with_type_check_offset = 0x448; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_handle_exception_offset = 0x480; + ObjectStore_suspend_state_handle_exception_offset = 0x488; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_init_async_offset = 0x430; + ObjectStore_suspend_state_init_async_offset = 0x438; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_init_async_star_offset = 0x458; + ObjectStore_suspend_state_init_async_star_offset = 0x460; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_init_sync_star_offset = 0x470; + ObjectStore_suspend_state_init_sync_star_offset = 0x478; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_return_async_offset = 0x448; + ObjectStore_suspend_state_return_async_offset = 0x450; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_return_async_not_future_offset = 0x450; + ObjectStore_suspend_state_return_async_not_future_offset = 0x458; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_return_async_star_offset = 0x468; + ObjectStore_suspend_state_return_async_star_offset = 0x470; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_suspend_sync_star_at_start_offset = 0x478; + ObjectStore_suspend_state_suspend_sync_star_at_start_offset = 0x480; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_yield_async_star_offset = 0x460; + ObjectStore_suspend_state_yield_async_star_offset = 0x468; static constexpr dart::compiler::target::word OneByteString_data_offset = 0x10; static constexpr dart::compiler::target::word PersistentHandle_ptr_offset = 0x0; static constexpr dart::compiler::target::word PointerBase_data_offset = 0x8; @@ -1683,35 +1683,35 @@ static constexpr dart::compiler::target::word ObjectStore_double_type_offset = static constexpr dart::compiler::target::word ObjectStore_int_type_offset = 0x98; static constexpr dart::compiler::target::word - ObjectStore_record_field_names_offset = 0x1f4; + ObjectStore_record_field_names_offset = 0x1f8; static constexpr dart::compiler::target::word ObjectStore_string_type_offset = 0xd4; static constexpr dart::compiler::target::word ObjectStore_type_type_offset = 0x84; static constexpr dart::compiler::target::word - ObjectStore_ffi_callback_code_offset = 0x270; + ObjectStore_ffi_callback_code_offset = 0x274; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_await_offset = 0x21c; + ObjectStore_suspend_state_await_offset = 0x220; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_await_with_type_check_offset = 0x220; + ObjectStore_suspend_state_await_with_type_check_offset = 0x224; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_handle_exception_offset = 0x240; + ObjectStore_suspend_state_handle_exception_offset = 0x244; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_init_async_offset = 0x218; + ObjectStore_suspend_state_init_async_offset = 0x21c; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_init_async_star_offset = 0x22c; + ObjectStore_suspend_state_init_async_star_offset = 0x230; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_init_sync_star_offset = 0x238; + ObjectStore_suspend_state_init_sync_star_offset = 0x23c; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_return_async_offset = 0x224; + ObjectStore_suspend_state_return_async_offset = 0x228; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_return_async_not_future_offset = 0x228; + ObjectStore_suspend_state_return_async_not_future_offset = 0x22c; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_return_async_star_offset = 0x234; + ObjectStore_suspend_state_return_async_star_offset = 0x238; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_suspend_sync_star_at_start_offset = 0x23c; + ObjectStore_suspend_state_suspend_sync_star_at_start_offset = 0x240; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_yield_async_star_offset = 0x230; + ObjectStore_suspend_state_yield_async_star_offset = 0x234; static constexpr dart::compiler::target::word OneByteString_data_offset = 0xc; static constexpr dart::compiler::target::word PersistentHandle_ptr_offset = 0x0; static constexpr dart::compiler::target::word PointerBase_data_offset = 0x4; @@ -2397,35 +2397,35 @@ static constexpr dart::compiler::target::word ObjectStore_double_type_offset = static constexpr dart::compiler::target::word ObjectStore_int_type_offset = 0x130; static constexpr dart::compiler::target::word - ObjectStore_record_field_names_offset = 0x3e8; + ObjectStore_record_field_names_offset = 0x3f0; static constexpr dart::compiler::target::word ObjectStore_string_type_offset = 0x1a8; static constexpr dart::compiler::target::word ObjectStore_type_type_offset = 0x108; static constexpr dart::compiler::target::word - ObjectStore_ffi_callback_code_offset = 0x4e0; + ObjectStore_ffi_callback_code_offset = 0x4e8; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_await_offset = 0x438; + ObjectStore_suspend_state_await_offset = 0x440; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_await_with_type_check_offset = 0x440; + ObjectStore_suspend_state_await_with_type_check_offset = 0x448; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_handle_exception_offset = 0x480; + ObjectStore_suspend_state_handle_exception_offset = 0x488; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_init_async_offset = 0x430; + ObjectStore_suspend_state_init_async_offset = 0x438; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_init_async_star_offset = 0x458; + ObjectStore_suspend_state_init_async_star_offset = 0x460; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_init_sync_star_offset = 0x470; + ObjectStore_suspend_state_init_sync_star_offset = 0x478; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_return_async_offset = 0x448; + ObjectStore_suspend_state_return_async_offset = 0x450; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_return_async_not_future_offset = 0x450; + ObjectStore_suspend_state_return_async_not_future_offset = 0x458; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_return_async_star_offset = 0x468; + ObjectStore_suspend_state_return_async_star_offset = 0x470; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_suspend_sync_star_at_start_offset = 0x478; + ObjectStore_suspend_state_suspend_sync_star_at_start_offset = 0x480; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_yield_async_star_offset = 0x460; + ObjectStore_suspend_state_yield_async_star_offset = 0x468; static constexpr dart::compiler::target::word OneByteString_data_offset = 0x10; static constexpr dart::compiler::target::word PersistentHandle_ptr_offset = 0x0; static constexpr dart::compiler::target::word PointerBase_data_offset = 0x8; @@ -3116,35 +3116,35 @@ static constexpr dart::compiler::target::word ObjectStore_double_type_offset = static constexpr dart::compiler::target::word ObjectStore_int_type_offset = 0x130; static constexpr dart::compiler::target::word - ObjectStore_record_field_names_offset = 0x3e8; + ObjectStore_record_field_names_offset = 0x3f0; static constexpr dart::compiler::target::word ObjectStore_string_type_offset = 0x1a8; static constexpr dart::compiler::target::word ObjectStore_type_type_offset = 0x108; static constexpr dart::compiler::target::word - ObjectStore_ffi_callback_code_offset = 0x4e0; + ObjectStore_ffi_callback_code_offset = 0x4e8; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_await_offset = 0x438; + ObjectStore_suspend_state_await_offset = 0x440; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_await_with_type_check_offset = 0x440; + ObjectStore_suspend_state_await_with_type_check_offset = 0x448; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_handle_exception_offset = 0x480; + ObjectStore_suspend_state_handle_exception_offset = 0x488; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_init_async_offset = 0x430; + ObjectStore_suspend_state_init_async_offset = 0x438; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_init_async_star_offset = 0x458; + ObjectStore_suspend_state_init_async_star_offset = 0x460; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_init_sync_star_offset = 0x470; + ObjectStore_suspend_state_init_sync_star_offset = 0x478; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_return_async_offset = 0x448; + ObjectStore_suspend_state_return_async_offset = 0x450; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_return_async_not_future_offset = 0x450; + ObjectStore_suspend_state_return_async_not_future_offset = 0x458; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_return_async_star_offset = 0x468; + ObjectStore_suspend_state_return_async_star_offset = 0x470; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_suspend_sync_star_at_start_offset = 0x478; + ObjectStore_suspend_state_suspend_sync_star_at_start_offset = 0x480; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_yield_async_star_offset = 0x460; + ObjectStore_suspend_state_yield_async_star_offset = 0x468; static constexpr dart::compiler::target::word OneByteString_data_offset = 0x10; static constexpr dart::compiler::target::word PersistentHandle_ptr_offset = 0x0; static constexpr dart::compiler::target::word PointerBase_data_offset = 0x8; @@ -3832,35 +3832,35 @@ static constexpr dart::compiler::target::word ObjectStore_double_type_offset = static constexpr dart::compiler::target::word ObjectStore_int_type_offset = 0x130; static constexpr dart::compiler::target::word - ObjectStore_record_field_names_offset = 0x3e8; + ObjectStore_record_field_names_offset = 0x3f0; static constexpr dart::compiler::target::word ObjectStore_string_type_offset = 0x1a8; static constexpr dart::compiler::target::word ObjectStore_type_type_offset = 0x108; static constexpr dart::compiler::target::word - ObjectStore_ffi_callback_code_offset = 0x4e0; + ObjectStore_ffi_callback_code_offset = 0x4e8; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_await_offset = 0x438; + ObjectStore_suspend_state_await_offset = 0x440; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_await_with_type_check_offset = 0x440; + ObjectStore_suspend_state_await_with_type_check_offset = 0x448; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_handle_exception_offset = 0x480; + ObjectStore_suspend_state_handle_exception_offset = 0x488; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_init_async_offset = 0x430; + ObjectStore_suspend_state_init_async_offset = 0x438; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_init_async_star_offset = 0x458; + ObjectStore_suspend_state_init_async_star_offset = 0x460; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_init_sync_star_offset = 0x470; + ObjectStore_suspend_state_init_sync_star_offset = 0x478; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_return_async_offset = 0x448; + ObjectStore_suspend_state_return_async_offset = 0x450; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_return_async_not_future_offset = 0x450; + ObjectStore_suspend_state_return_async_not_future_offset = 0x458; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_return_async_star_offset = 0x468; + ObjectStore_suspend_state_return_async_star_offset = 0x470; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_suspend_sync_star_at_start_offset = 0x478; + ObjectStore_suspend_state_suspend_sync_star_at_start_offset = 0x480; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_yield_async_star_offset = 0x460; + ObjectStore_suspend_state_yield_async_star_offset = 0x468; static constexpr dart::compiler::target::word OneByteString_data_offset = 0x10; static constexpr dart::compiler::target::word PersistentHandle_ptr_offset = 0x0; static constexpr dart::compiler::target::word PointerBase_data_offset = 0x8; @@ -4548,35 +4548,35 @@ static constexpr dart::compiler::target::word ObjectStore_double_type_offset = static constexpr dart::compiler::target::word ObjectStore_int_type_offset = 0x98; static constexpr dart::compiler::target::word - ObjectStore_record_field_names_offset = 0x1f4; + ObjectStore_record_field_names_offset = 0x1f8; static constexpr dart::compiler::target::word ObjectStore_string_type_offset = 0xd4; static constexpr dart::compiler::target::word ObjectStore_type_type_offset = 0x84; static constexpr dart::compiler::target::word - ObjectStore_ffi_callback_code_offset = 0x270; + ObjectStore_ffi_callback_code_offset = 0x274; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_await_offset = 0x21c; + ObjectStore_suspend_state_await_offset = 0x220; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_await_with_type_check_offset = 0x220; + ObjectStore_suspend_state_await_with_type_check_offset = 0x224; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_handle_exception_offset = 0x240; + ObjectStore_suspend_state_handle_exception_offset = 0x244; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_init_async_offset = 0x218; + ObjectStore_suspend_state_init_async_offset = 0x21c; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_init_async_star_offset = 0x22c; + ObjectStore_suspend_state_init_async_star_offset = 0x230; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_init_sync_star_offset = 0x238; + ObjectStore_suspend_state_init_sync_star_offset = 0x23c; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_return_async_offset = 0x224; + ObjectStore_suspend_state_return_async_offset = 0x228; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_return_async_not_future_offset = 0x228; + ObjectStore_suspend_state_return_async_not_future_offset = 0x22c; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_return_async_star_offset = 0x234; + ObjectStore_suspend_state_return_async_star_offset = 0x238; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_suspend_sync_star_at_start_offset = 0x23c; + ObjectStore_suspend_state_suspend_sync_star_at_start_offset = 0x240; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_yield_async_star_offset = 0x230; + ObjectStore_suspend_state_yield_async_star_offset = 0x234; static constexpr dart::compiler::target::word OneByteString_data_offset = 0xc; static constexpr dart::compiler::target::word PersistentHandle_ptr_offset = 0x0; static constexpr dart::compiler::target::word PointerBase_data_offset = 0x4; @@ -5264,35 +5264,35 @@ static constexpr dart::compiler::target::word ObjectStore_double_type_offset = static constexpr dart::compiler::target::word ObjectStore_int_type_offset = 0x130; static constexpr dart::compiler::target::word - ObjectStore_record_field_names_offset = 0x3e8; + ObjectStore_record_field_names_offset = 0x3f0; static constexpr dart::compiler::target::word ObjectStore_string_type_offset = 0x1a8; static constexpr dart::compiler::target::word ObjectStore_type_type_offset = 0x108; static constexpr dart::compiler::target::word - ObjectStore_ffi_callback_code_offset = 0x4e0; + ObjectStore_ffi_callback_code_offset = 0x4e8; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_await_offset = 0x438; + ObjectStore_suspend_state_await_offset = 0x440; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_await_with_type_check_offset = 0x440; + ObjectStore_suspend_state_await_with_type_check_offset = 0x448; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_handle_exception_offset = 0x480; + ObjectStore_suspend_state_handle_exception_offset = 0x488; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_init_async_offset = 0x430; + ObjectStore_suspend_state_init_async_offset = 0x438; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_init_async_star_offset = 0x458; + ObjectStore_suspend_state_init_async_star_offset = 0x460; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_init_sync_star_offset = 0x470; + ObjectStore_suspend_state_init_sync_star_offset = 0x478; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_return_async_offset = 0x448; + ObjectStore_suspend_state_return_async_offset = 0x450; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_return_async_not_future_offset = 0x450; + ObjectStore_suspend_state_return_async_not_future_offset = 0x458; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_return_async_star_offset = 0x468; + ObjectStore_suspend_state_return_async_star_offset = 0x470; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_suspend_sync_star_at_start_offset = 0x478; + ObjectStore_suspend_state_suspend_sync_star_at_start_offset = 0x480; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_yield_async_star_offset = 0x460; + ObjectStore_suspend_state_yield_async_star_offset = 0x468; static constexpr dart::compiler::target::word OneByteString_data_offset = 0x10; static constexpr dart::compiler::target::word PersistentHandle_ptr_offset = 0x0; static constexpr dart::compiler::target::word PointerBase_data_offset = 0x8; @@ -5972,35 +5972,35 @@ static constexpr dart::compiler::target::word ObjectStore_double_type_offset = static constexpr dart::compiler::target::word ObjectStore_int_type_offset = 0x98; static constexpr dart::compiler::target::word - ObjectStore_record_field_names_offset = 0x1f4; + ObjectStore_record_field_names_offset = 0x1f8; static constexpr dart::compiler::target::word ObjectStore_string_type_offset = 0xd4; static constexpr dart::compiler::target::word ObjectStore_type_type_offset = 0x84; static constexpr dart::compiler::target::word - ObjectStore_ffi_callback_code_offset = 0x270; + ObjectStore_ffi_callback_code_offset = 0x274; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_await_offset = 0x21c; + ObjectStore_suspend_state_await_offset = 0x220; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_await_with_type_check_offset = 0x220; + ObjectStore_suspend_state_await_with_type_check_offset = 0x224; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_handle_exception_offset = 0x240; + ObjectStore_suspend_state_handle_exception_offset = 0x244; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_init_async_offset = 0x218; + ObjectStore_suspend_state_init_async_offset = 0x21c; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_init_async_star_offset = 0x22c; + ObjectStore_suspend_state_init_async_star_offset = 0x230; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_init_sync_star_offset = 0x238; + ObjectStore_suspend_state_init_sync_star_offset = 0x23c; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_return_async_offset = 0x224; + ObjectStore_suspend_state_return_async_offset = 0x228; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_return_async_not_future_offset = 0x228; + ObjectStore_suspend_state_return_async_not_future_offset = 0x22c; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_return_async_star_offset = 0x234; + ObjectStore_suspend_state_return_async_star_offset = 0x238; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_suspend_sync_star_at_start_offset = 0x23c; + ObjectStore_suspend_state_suspend_sync_star_at_start_offset = 0x240; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_yield_async_star_offset = 0x230; + ObjectStore_suspend_state_yield_async_star_offset = 0x234; static constexpr dart::compiler::target::word OneByteString_data_offset = 0xc; static constexpr dart::compiler::target::word PersistentHandle_ptr_offset = 0x0; static constexpr dart::compiler::target::word PointerBase_data_offset = 0x4; @@ -6679,35 +6679,35 @@ static constexpr dart::compiler::target::word ObjectStore_double_type_offset = static constexpr dart::compiler::target::word ObjectStore_int_type_offset = 0x130; static constexpr dart::compiler::target::word - ObjectStore_record_field_names_offset = 0x3e8; + ObjectStore_record_field_names_offset = 0x3f0; static constexpr dart::compiler::target::word ObjectStore_string_type_offset = 0x1a8; static constexpr dart::compiler::target::word ObjectStore_type_type_offset = 0x108; static constexpr dart::compiler::target::word - ObjectStore_ffi_callback_code_offset = 0x4e0; + ObjectStore_ffi_callback_code_offset = 0x4e8; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_await_offset = 0x438; + ObjectStore_suspend_state_await_offset = 0x440; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_await_with_type_check_offset = 0x440; + ObjectStore_suspend_state_await_with_type_check_offset = 0x448; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_handle_exception_offset = 0x480; + ObjectStore_suspend_state_handle_exception_offset = 0x488; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_init_async_offset = 0x430; + ObjectStore_suspend_state_init_async_offset = 0x438; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_init_async_star_offset = 0x458; + ObjectStore_suspend_state_init_async_star_offset = 0x460; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_init_sync_star_offset = 0x470; + ObjectStore_suspend_state_init_sync_star_offset = 0x478; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_return_async_offset = 0x448; + ObjectStore_suspend_state_return_async_offset = 0x450; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_return_async_not_future_offset = 0x450; + ObjectStore_suspend_state_return_async_not_future_offset = 0x458; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_return_async_star_offset = 0x468; + ObjectStore_suspend_state_return_async_star_offset = 0x470; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_suspend_sync_star_at_start_offset = 0x478; + ObjectStore_suspend_state_suspend_sync_star_at_start_offset = 0x480; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_yield_async_star_offset = 0x460; + ObjectStore_suspend_state_yield_async_star_offset = 0x468; static constexpr dart::compiler::target::word OneByteString_data_offset = 0x10; static constexpr dart::compiler::target::word PersistentHandle_ptr_offset = 0x0; static constexpr dart::compiler::target::word PointerBase_data_offset = 0x8; @@ -7386,35 +7386,35 @@ static constexpr dart::compiler::target::word ObjectStore_double_type_offset = static constexpr dart::compiler::target::word ObjectStore_int_type_offset = 0x98; static constexpr dart::compiler::target::word - ObjectStore_record_field_names_offset = 0x1f4; + ObjectStore_record_field_names_offset = 0x1f8; static constexpr dart::compiler::target::word ObjectStore_string_type_offset = 0xd4; static constexpr dart::compiler::target::word ObjectStore_type_type_offset = 0x84; static constexpr dart::compiler::target::word - ObjectStore_ffi_callback_code_offset = 0x270; + ObjectStore_ffi_callback_code_offset = 0x274; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_await_offset = 0x21c; + ObjectStore_suspend_state_await_offset = 0x220; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_await_with_type_check_offset = 0x220; + ObjectStore_suspend_state_await_with_type_check_offset = 0x224; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_handle_exception_offset = 0x240; + ObjectStore_suspend_state_handle_exception_offset = 0x244; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_init_async_offset = 0x218; + ObjectStore_suspend_state_init_async_offset = 0x21c; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_init_async_star_offset = 0x22c; + ObjectStore_suspend_state_init_async_star_offset = 0x230; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_init_sync_star_offset = 0x238; + ObjectStore_suspend_state_init_sync_star_offset = 0x23c; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_return_async_offset = 0x224; + ObjectStore_suspend_state_return_async_offset = 0x228; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_return_async_not_future_offset = 0x228; + ObjectStore_suspend_state_return_async_not_future_offset = 0x22c; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_return_async_star_offset = 0x234; + ObjectStore_suspend_state_return_async_star_offset = 0x238; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_suspend_sync_star_at_start_offset = 0x23c; + ObjectStore_suspend_state_suspend_sync_star_at_start_offset = 0x240; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_yield_async_star_offset = 0x230; + ObjectStore_suspend_state_yield_async_star_offset = 0x234; static constexpr dart::compiler::target::word OneByteString_data_offset = 0xc; static constexpr dart::compiler::target::word PersistentHandle_ptr_offset = 0x0; static constexpr dart::compiler::target::word PointerBase_data_offset = 0x4; @@ -8092,35 +8092,35 @@ static constexpr dart::compiler::target::word ObjectStore_double_type_offset = static constexpr dart::compiler::target::word ObjectStore_int_type_offset = 0x130; static constexpr dart::compiler::target::word - ObjectStore_record_field_names_offset = 0x3e8; + ObjectStore_record_field_names_offset = 0x3f0; static constexpr dart::compiler::target::word ObjectStore_string_type_offset = 0x1a8; static constexpr dart::compiler::target::word ObjectStore_type_type_offset = 0x108; static constexpr dart::compiler::target::word - ObjectStore_ffi_callback_code_offset = 0x4e0; + ObjectStore_ffi_callback_code_offset = 0x4e8; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_await_offset = 0x438; + ObjectStore_suspend_state_await_offset = 0x440; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_await_with_type_check_offset = 0x440; + ObjectStore_suspend_state_await_with_type_check_offset = 0x448; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_handle_exception_offset = 0x480; + ObjectStore_suspend_state_handle_exception_offset = 0x488; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_init_async_offset = 0x430; + ObjectStore_suspend_state_init_async_offset = 0x438; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_init_async_star_offset = 0x458; + ObjectStore_suspend_state_init_async_star_offset = 0x460; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_init_sync_star_offset = 0x470; + ObjectStore_suspend_state_init_sync_star_offset = 0x478; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_return_async_offset = 0x448; + ObjectStore_suspend_state_return_async_offset = 0x450; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_return_async_not_future_offset = 0x450; + ObjectStore_suspend_state_return_async_not_future_offset = 0x458; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_return_async_star_offset = 0x468; + ObjectStore_suspend_state_return_async_star_offset = 0x470; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_suspend_sync_star_at_start_offset = 0x478; + ObjectStore_suspend_state_suspend_sync_star_at_start_offset = 0x480; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_yield_async_star_offset = 0x460; + ObjectStore_suspend_state_yield_async_star_offset = 0x468; static constexpr dart::compiler::target::word OneByteString_data_offset = 0x10; static constexpr dart::compiler::target::word PersistentHandle_ptr_offset = 0x0; static constexpr dart::compiler::target::word PointerBase_data_offset = 0x8; @@ -8803,35 +8803,35 @@ static constexpr dart::compiler::target::word ObjectStore_double_type_offset = static constexpr dart::compiler::target::word ObjectStore_int_type_offset = 0x130; static constexpr dart::compiler::target::word - ObjectStore_record_field_names_offset = 0x3e8; + ObjectStore_record_field_names_offset = 0x3f0; static constexpr dart::compiler::target::word ObjectStore_string_type_offset = 0x1a8; static constexpr dart::compiler::target::word ObjectStore_type_type_offset = 0x108; static constexpr dart::compiler::target::word - ObjectStore_ffi_callback_code_offset = 0x4e0; + ObjectStore_ffi_callback_code_offset = 0x4e8; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_await_offset = 0x438; + ObjectStore_suspend_state_await_offset = 0x440; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_await_with_type_check_offset = 0x440; + ObjectStore_suspend_state_await_with_type_check_offset = 0x448; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_handle_exception_offset = 0x480; + ObjectStore_suspend_state_handle_exception_offset = 0x488; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_init_async_offset = 0x430; + ObjectStore_suspend_state_init_async_offset = 0x438; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_init_async_star_offset = 0x458; + ObjectStore_suspend_state_init_async_star_offset = 0x460; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_init_sync_star_offset = 0x470; + ObjectStore_suspend_state_init_sync_star_offset = 0x478; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_return_async_offset = 0x448; + ObjectStore_suspend_state_return_async_offset = 0x450; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_return_async_not_future_offset = 0x450; + ObjectStore_suspend_state_return_async_not_future_offset = 0x458; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_return_async_star_offset = 0x468; + ObjectStore_suspend_state_return_async_star_offset = 0x470; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_suspend_sync_star_at_start_offset = 0x478; + ObjectStore_suspend_state_suspend_sync_star_at_start_offset = 0x480; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_yield_async_star_offset = 0x460; + ObjectStore_suspend_state_yield_async_star_offset = 0x468; static constexpr dart::compiler::target::word OneByteString_data_offset = 0x10; static constexpr dart::compiler::target::word PersistentHandle_ptr_offset = 0x0; static constexpr dart::compiler::target::word PointerBase_data_offset = 0x8; @@ -9511,35 +9511,35 @@ static constexpr dart::compiler::target::word ObjectStore_double_type_offset = static constexpr dart::compiler::target::word ObjectStore_int_type_offset = 0x130; static constexpr dart::compiler::target::word - ObjectStore_record_field_names_offset = 0x3e8; + ObjectStore_record_field_names_offset = 0x3f0; static constexpr dart::compiler::target::word ObjectStore_string_type_offset = 0x1a8; static constexpr dart::compiler::target::word ObjectStore_type_type_offset = 0x108; static constexpr dart::compiler::target::word - ObjectStore_ffi_callback_code_offset = 0x4e0; + ObjectStore_ffi_callback_code_offset = 0x4e8; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_await_offset = 0x438; + ObjectStore_suspend_state_await_offset = 0x440; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_await_with_type_check_offset = 0x440; + ObjectStore_suspend_state_await_with_type_check_offset = 0x448; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_handle_exception_offset = 0x480; + ObjectStore_suspend_state_handle_exception_offset = 0x488; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_init_async_offset = 0x430; + ObjectStore_suspend_state_init_async_offset = 0x438; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_init_async_star_offset = 0x458; + ObjectStore_suspend_state_init_async_star_offset = 0x460; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_init_sync_star_offset = 0x470; + ObjectStore_suspend_state_init_sync_star_offset = 0x478; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_return_async_offset = 0x448; + ObjectStore_suspend_state_return_async_offset = 0x450; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_return_async_not_future_offset = 0x450; + ObjectStore_suspend_state_return_async_not_future_offset = 0x458; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_return_async_star_offset = 0x468; + ObjectStore_suspend_state_return_async_star_offset = 0x470; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_suspend_sync_star_at_start_offset = 0x478; + ObjectStore_suspend_state_suspend_sync_star_at_start_offset = 0x480; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_yield_async_star_offset = 0x460; + ObjectStore_suspend_state_yield_async_star_offset = 0x468; static constexpr dart::compiler::target::word OneByteString_data_offset = 0x10; static constexpr dart::compiler::target::word PersistentHandle_ptr_offset = 0x0; static constexpr dart::compiler::target::word PointerBase_data_offset = 0x8; @@ -10219,35 +10219,35 @@ static constexpr dart::compiler::target::word ObjectStore_double_type_offset = static constexpr dart::compiler::target::word ObjectStore_int_type_offset = 0x98; static constexpr dart::compiler::target::word - ObjectStore_record_field_names_offset = 0x1f4; + ObjectStore_record_field_names_offset = 0x1f8; static constexpr dart::compiler::target::word ObjectStore_string_type_offset = 0xd4; static constexpr dart::compiler::target::word ObjectStore_type_type_offset = 0x84; static constexpr dart::compiler::target::word - ObjectStore_ffi_callback_code_offset = 0x270; + ObjectStore_ffi_callback_code_offset = 0x274; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_await_offset = 0x21c; + ObjectStore_suspend_state_await_offset = 0x220; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_await_with_type_check_offset = 0x220; + ObjectStore_suspend_state_await_with_type_check_offset = 0x224; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_handle_exception_offset = 0x240; + ObjectStore_suspend_state_handle_exception_offset = 0x244; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_init_async_offset = 0x218; + ObjectStore_suspend_state_init_async_offset = 0x21c; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_init_async_star_offset = 0x22c; + ObjectStore_suspend_state_init_async_star_offset = 0x230; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_init_sync_star_offset = 0x238; + ObjectStore_suspend_state_init_sync_star_offset = 0x23c; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_return_async_offset = 0x224; + ObjectStore_suspend_state_return_async_offset = 0x228; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_return_async_not_future_offset = 0x228; + ObjectStore_suspend_state_return_async_not_future_offset = 0x22c; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_return_async_star_offset = 0x234; + ObjectStore_suspend_state_return_async_star_offset = 0x238; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_suspend_sync_star_at_start_offset = 0x23c; + ObjectStore_suspend_state_suspend_sync_star_at_start_offset = 0x240; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_yield_async_star_offset = 0x230; + ObjectStore_suspend_state_yield_async_star_offset = 0x234; static constexpr dart::compiler::target::word OneByteString_data_offset = 0xc; static constexpr dart::compiler::target::word PersistentHandle_ptr_offset = 0x0; static constexpr dart::compiler::target::word PointerBase_data_offset = 0x4; @@ -10927,35 +10927,35 @@ static constexpr dart::compiler::target::word ObjectStore_double_type_offset = static constexpr dart::compiler::target::word ObjectStore_int_type_offset = 0x130; static constexpr dart::compiler::target::word - ObjectStore_record_field_names_offset = 0x3e8; + ObjectStore_record_field_names_offset = 0x3f0; static constexpr dart::compiler::target::word ObjectStore_string_type_offset = 0x1a8; static constexpr dart::compiler::target::word ObjectStore_type_type_offset = 0x108; static constexpr dart::compiler::target::word - ObjectStore_ffi_callback_code_offset = 0x4e0; + ObjectStore_ffi_callback_code_offset = 0x4e8; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_await_offset = 0x438; + ObjectStore_suspend_state_await_offset = 0x440; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_await_with_type_check_offset = 0x440; + ObjectStore_suspend_state_await_with_type_check_offset = 0x448; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_handle_exception_offset = 0x480; + ObjectStore_suspend_state_handle_exception_offset = 0x488; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_init_async_offset = 0x430; + ObjectStore_suspend_state_init_async_offset = 0x438; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_init_async_star_offset = 0x458; + ObjectStore_suspend_state_init_async_star_offset = 0x460; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_init_sync_star_offset = 0x470; + ObjectStore_suspend_state_init_sync_star_offset = 0x478; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_return_async_offset = 0x448; + ObjectStore_suspend_state_return_async_offset = 0x450; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_return_async_not_future_offset = 0x450; + ObjectStore_suspend_state_return_async_not_future_offset = 0x458; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_return_async_star_offset = 0x468; + ObjectStore_suspend_state_return_async_star_offset = 0x470; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_suspend_sync_star_at_start_offset = 0x478; + ObjectStore_suspend_state_suspend_sync_star_at_start_offset = 0x480; static constexpr dart::compiler::target::word - ObjectStore_suspend_state_yield_async_star_offset = 0x460; + ObjectStore_suspend_state_yield_async_star_offset = 0x468; static constexpr dart::compiler::target::word OneByteString_data_offset = 0x10; static constexpr dart::compiler::target::word PersistentHandle_ptr_offset = 0x0; static constexpr dart::compiler::target::word PointerBase_data_offset = 0x8; @@ -11670,35 +11670,35 @@ static constexpr dart::compiler::target::word static constexpr dart::compiler::target::word AOT_ObjectStore_int_type_offset = 0x98; static constexpr dart::compiler::target::word - AOT_ObjectStore_record_field_names_offset = 0x1f4; + AOT_ObjectStore_record_field_names_offset = 0x1f8; static constexpr dart::compiler::target::word AOT_ObjectStore_string_type_offset = 0xd4; static constexpr dart::compiler::target::word AOT_ObjectStore_type_type_offset = 0x84; static constexpr dart::compiler::target::word - AOT_ObjectStore_ffi_callback_code_offset = 0x270; + AOT_ObjectStore_ffi_callback_code_offset = 0x274; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_await_offset = 0x21c; + AOT_ObjectStore_suspend_state_await_offset = 0x220; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_await_with_type_check_offset = 0x220; + AOT_ObjectStore_suspend_state_await_with_type_check_offset = 0x224; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_handle_exception_offset = 0x240; + AOT_ObjectStore_suspend_state_handle_exception_offset = 0x244; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_init_async_offset = 0x218; + AOT_ObjectStore_suspend_state_init_async_offset = 0x21c; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_init_async_star_offset = 0x22c; + AOT_ObjectStore_suspend_state_init_async_star_offset = 0x230; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_init_sync_star_offset = 0x238; + AOT_ObjectStore_suspend_state_init_sync_star_offset = 0x23c; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_return_async_offset = 0x224; + AOT_ObjectStore_suspend_state_return_async_offset = 0x228; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_return_async_not_future_offset = 0x228; + AOT_ObjectStore_suspend_state_return_async_not_future_offset = 0x22c; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_return_async_star_offset = 0x234; + AOT_ObjectStore_suspend_state_return_async_star_offset = 0x238; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_suspend_sync_star_at_start_offset = 0x23c; + AOT_ObjectStore_suspend_state_suspend_sync_star_at_start_offset = 0x240; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_yield_async_star_offset = 0x230; + AOT_ObjectStore_suspend_state_yield_async_star_offset = 0x234; static constexpr dart::compiler::target::word AOT_OneByteString_data_offset = 0xc; static constexpr dart::compiler::target::word AOT_PersistentHandle_ptr_offset = @@ -12463,35 +12463,35 @@ static constexpr dart::compiler::target::word static constexpr dart::compiler::target::word AOT_ObjectStore_int_type_offset = 0x130; static constexpr dart::compiler::target::word - AOT_ObjectStore_record_field_names_offset = 0x3e8; + AOT_ObjectStore_record_field_names_offset = 0x3f0; static constexpr dart::compiler::target::word AOT_ObjectStore_string_type_offset = 0x1a8; static constexpr dart::compiler::target::word AOT_ObjectStore_type_type_offset = 0x108; static constexpr dart::compiler::target::word - AOT_ObjectStore_ffi_callback_code_offset = 0x4e0; + AOT_ObjectStore_ffi_callback_code_offset = 0x4e8; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_await_offset = 0x438; + AOT_ObjectStore_suspend_state_await_offset = 0x440; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_await_with_type_check_offset = 0x440; + AOT_ObjectStore_suspend_state_await_with_type_check_offset = 0x448; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_handle_exception_offset = 0x480; + AOT_ObjectStore_suspend_state_handle_exception_offset = 0x488; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_init_async_offset = 0x430; + AOT_ObjectStore_suspend_state_init_async_offset = 0x438; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_init_async_star_offset = 0x458; + AOT_ObjectStore_suspend_state_init_async_star_offset = 0x460; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_init_sync_star_offset = 0x470; + AOT_ObjectStore_suspend_state_init_sync_star_offset = 0x478; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_return_async_offset = 0x448; + AOT_ObjectStore_suspend_state_return_async_offset = 0x450; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_return_async_not_future_offset = 0x450; + AOT_ObjectStore_suspend_state_return_async_not_future_offset = 0x458; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_return_async_star_offset = 0x468; + AOT_ObjectStore_suspend_state_return_async_star_offset = 0x470; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_suspend_sync_star_at_start_offset = 0x478; + AOT_ObjectStore_suspend_state_suspend_sync_star_at_start_offset = 0x480; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_yield_async_star_offset = 0x460; + AOT_ObjectStore_suspend_state_yield_async_star_offset = 0x468; static constexpr dart::compiler::target::word AOT_OneByteString_data_offset = 0x10; static constexpr dart::compiler::target::word AOT_PersistentHandle_ptr_offset = @@ -13263,35 +13263,35 @@ static constexpr dart::compiler::target::word static constexpr dart::compiler::target::word AOT_ObjectStore_int_type_offset = 0x130; static constexpr dart::compiler::target::word - AOT_ObjectStore_record_field_names_offset = 0x3e8; + AOT_ObjectStore_record_field_names_offset = 0x3f0; static constexpr dart::compiler::target::word AOT_ObjectStore_string_type_offset = 0x1a8; static constexpr dart::compiler::target::word AOT_ObjectStore_type_type_offset = 0x108; static constexpr dart::compiler::target::word - AOT_ObjectStore_ffi_callback_code_offset = 0x4e0; + AOT_ObjectStore_ffi_callback_code_offset = 0x4e8; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_await_offset = 0x438; + AOT_ObjectStore_suspend_state_await_offset = 0x440; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_await_with_type_check_offset = 0x440; + AOT_ObjectStore_suspend_state_await_with_type_check_offset = 0x448; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_handle_exception_offset = 0x480; + AOT_ObjectStore_suspend_state_handle_exception_offset = 0x488; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_init_async_offset = 0x430; + AOT_ObjectStore_suspend_state_init_async_offset = 0x438; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_init_async_star_offset = 0x458; + AOT_ObjectStore_suspend_state_init_async_star_offset = 0x460; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_init_sync_star_offset = 0x470; + AOT_ObjectStore_suspend_state_init_sync_star_offset = 0x478; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_return_async_offset = 0x448; + AOT_ObjectStore_suspend_state_return_async_offset = 0x450; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_return_async_not_future_offset = 0x450; + AOT_ObjectStore_suspend_state_return_async_not_future_offset = 0x458; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_return_async_star_offset = 0x468; + AOT_ObjectStore_suspend_state_return_async_star_offset = 0x470; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_suspend_sync_star_at_start_offset = 0x478; + AOT_ObjectStore_suspend_state_suspend_sync_star_at_start_offset = 0x480; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_yield_async_star_offset = 0x460; + AOT_ObjectStore_suspend_state_yield_async_star_offset = 0x468; static constexpr dart::compiler::target::word AOT_OneByteString_data_offset = 0x10; static constexpr dart::compiler::target::word AOT_PersistentHandle_ptr_offset = @@ -14059,35 +14059,35 @@ static constexpr dart::compiler::target::word static constexpr dart::compiler::target::word AOT_ObjectStore_int_type_offset = 0x130; static constexpr dart::compiler::target::word - AOT_ObjectStore_record_field_names_offset = 0x3e8; + AOT_ObjectStore_record_field_names_offset = 0x3f0; static constexpr dart::compiler::target::word AOT_ObjectStore_string_type_offset = 0x1a8; static constexpr dart::compiler::target::word AOT_ObjectStore_type_type_offset = 0x108; static constexpr dart::compiler::target::word - AOT_ObjectStore_ffi_callback_code_offset = 0x4e0; + AOT_ObjectStore_ffi_callback_code_offset = 0x4e8; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_await_offset = 0x438; + AOT_ObjectStore_suspend_state_await_offset = 0x440; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_await_with_type_check_offset = 0x440; + AOT_ObjectStore_suspend_state_await_with_type_check_offset = 0x448; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_handle_exception_offset = 0x480; + AOT_ObjectStore_suspend_state_handle_exception_offset = 0x488; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_init_async_offset = 0x430; + AOT_ObjectStore_suspend_state_init_async_offset = 0x438; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_init_async_star_offset = 0x458; + AOT_ObjectStore_suspend_state_init_async_star_offset = 0x460; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_init_sync_star_offset = 0x470; + AOT_ObjectStore_suspend_state_init_sync_star_offset = 0x478; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_return_async_offset = 0x448; + AOT_ObjectStore_suspend_state_return_async_offset = 0x450; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_return_async_not_future_offset = 0x450; + AOT_ObjectStore_suspend_state_return_async_not_future_offset = 0x458; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_return_async_star_offset = 0x468; + AOT_ObjectStore_suspend_state_return_async_star_offset = 0x470; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_suspend_sync_star_at_start_offset = 0x478; + AOT_ObjectStore_suspend_state_suspend_sync_star_at_start_offset = 0x480; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_yield_async_star_offset = 0x460; + AOT_ObjectStore_suspend_state_yield_async_star_offset = 0x468; static constexpr dart::compiler::target::word AOT_OneByteString_data_offset = 0x10; static constexpr dart::compiler::target::word AOT_PersistentHandle_ptr_offset = @@ -14855,35 +14855,35 @@ static constexpr dart::compiler::target::word static constexpr dart::compiler::target::word AOT_ObjectStore_int_type_offset = 0x130; static constexpr dart::compiler::target::word - AOT_ObjectStore_record_field_names_offset = 0x3e8; + AOT_ObjectStore_record_field_names_offset = 0x3f0; static constexpr dart::compiler::target::word AOT_ObjectStore_string_type_offset = 0x1a8; static constexpr dart::compiler::target::word AOT_ObjectStore_type_type_offset = 0x108; static constexpr dart::compiler::target::word - AOT_ObjectStore_ffi_callback_code_offset = 0x4e0; + AOT_ObjectStore_ffi_callback_code_offset = 0x4e8; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_await_offset = 0x438; + AOT_ObjectStore_suspend_state_await_offset = 0x440; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_await_with_type_check_offset = 0x440; + AOT_ObjectStore_suspend_state_await_with_type_check_offset = 0x448; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_handle_exception_offset = 0x480; + AOT_ObjectStore_suspend_state_handle_exception_offset = 0x488; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_init_async_offset = 0x430; + AOT_ObjectStore_suspend_state_init_async_offset = 0x438; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_init_async_star_offset = 0x458; + AOT_ObjectStore_suspend_state_init_async_star_offset = 0x460; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_init_sync_star_offset = 0x470; + AOT_ObjectStore_suspend_state_init_sync_star_offset = 0x478; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_return_async_offset = 0x448; + AOT_ObjectStore_suspend_state_return_async_offset = 0x450; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_return_async_not_future_offset = 0x450; + AOT_ObjectStore_suspend_state_return_async_not_future_offset = 0x458; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_return_async_star_offset = 0x468; + AOT_ObjectStore_suspend_state_return_async_star_offset = 0x470; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_suspend_sync_star_at_start_offset = 0x478; + AOT_ObjectStore_suspend_state_suspend_sync_star_at_start_offset = 0x480; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_yield_async_star_offset = 0x460; + AOT_ObjectStore_suspend_state_yield_async_star_offset = 0x468; static constexpr dart::compiler::target::word AOT_OneByteString_data_offset = 0x10; static constexpr dart::compiler::target::word AOT_PersistentHandle_ptr_offset = @@ -15653,35 +15653,35 @@ static constexpr dart::compiler::target::word static constexpr dart::compiler::target::word AOT_ObjectStore_int_type_offset = 0x98; static constexpr dart::compiler::target::word - AOT_ObjectStore_record_field_names_offset = 0x1f4; + AOT_ObjectStore_record_field_names_offset = 0x1f8; static constexpr dart::compiler::target::word AOT_ObjectStore_string_type_offset = 0xd4; static constexpr dart::compiler::target::word AOT_ObjectStore_type_type_offset = 0x84; static constexpr dart::compiler::target::word - AOT_ObjectStore_ffi_callback_code_offset = 0x270; + AOT_ObjectStore_ffi_callback_code_offset = 0x274; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_await_offset = 0x21c; + AOT_ObjectStore_suspend_state_await_offset = 0x220; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_await_with_type_check_offset = 0x220; + AOT_ObjectStore_suspend_state_await_with_type_check_offset = 0x224; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_handle_exception_offset = 0x240; + AOT_ObjectStore_suspend_state_handle_exception_offset = 0x244; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_init_async_offset = 0x218; + AOT_ObjectStore_suspend_state_init_async_offset = 0x21c; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_init_async_star_offset = 0x22c; + AOT_ObjectStore_suspend_state_init_async_star_offset = 0x230; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_init_sync_star_offset = 0x238; + AOT_ObjectStore_suspend_state_init_sync_star_offset = 0x23c; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_return_async_offset = 0x224; + AOT_ObjectStore_suspend_state_return_async_offset = 0x228; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_return_async_not_future_offset = 0x228; + AOT_ObjectStore_suspend_state_return_async_not_future_offset = 0x22c; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_return_async_star_offset = 0x234; + AOT_ObjectStore_suspend_state_return_async_star_offset = 0x238; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_suspend_sync_star_at_start_offset = 0x23c; + AOT_ObjectStore_suspend_state_suspend_sync_star_at_start_offset = 0x240; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_yield_async_star_offset = 0x230; + AOT_ObjectStore_suspend_state_yield_async_star_offset = 0x234; static constexpr dart::compiler::target::word AOT_OneByteString_data_offset = 0xc; static constexpr dart::compiler::target::word AOT_PersistentHandle_ptr_offset = @@ -16447,35 +16447,35 @@ static constexpr dart::compiler::target::word static constexpr dart::compiler::target::word AOT_ObjectStore_int_type_offset = 0x130; static constexpr dart::compiler::target::word - AOT_ObjectStore_record_field_names_offset = 0x3e8; + AOT_ObjectStore_record_field_names_offset = 0x3f0; static constexpr dart::compiler::target::word AOT_ObjectStore_string_type_offset = 0x1a8; static constexpr dart::compiler::target::word AOT_ObjectStore_type_type_offset = 0x108; static constexpr dart::compiler::target::word - AOT_ObjectStore_ffi_callback_code_offset = 0x4e0; + AOT_ObjectStore_ffi_callback_code_offset = 0x4e8; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_await_offset = 0x438; + AOT_ObjectStore_suspend_state_await_offset = 0x440; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_await_with_type_check_offset = 0x440; + AOT_ObjectStore_suspend_state_await_with_type_check_offset = 0x448; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_handle_exception_offset = 0x480; + AOT_ObjectStore_suspend_state_handle_exception_offset = 0x488; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_init_async_offset = 0x430; + AOT_ObjectStore_suspend_state_init_async_offset = 0x438; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_init_async_star_offset = 0x458; + AOT_ObjectStore_suspend_state_init_async_star_offset = 0x460; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_init_sync_star_offset = 0x470; + AOT_ObjectStore_suspend_state_init_sync_star_offset = 0x478; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_return_async_offset = 0x448; + AOT_ObjectStore_suspend_state_return_async_offset = 0x450; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_return_async_not_future_offset = 0x450; + AOT_ObjectStore_suspend_state_return_async_not_future_offset = 0x458; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_return_async_star_offset = 0x468; + AOT_ObjectStore_suspend_state_return_async_star_offset = 0x470; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_suspend_sync_star_at_start_offset = 0x478; + AOT_ObjectStore_suspend_state_suspend_sync_star_at_start_offset = 0x480; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_yield_async_star_offset = 0x460; + AOT_ObjectStore_suspend_state_yield_async_star_offset = 0x468; static constexpr dart::compiler::target::word AOT_OneByteString_data_offset = 0x10; static constexpr dart::compiler::target::word AOT_PersistentHandle_ptr_offset = @@ -17233,35 +17233,35 @@ static constexpr dart::compiler::target::word static constexpr dart::compiler::target::word AOT_ObjectStore_int_type_offset = 0x98; static constexpr dart::compiler::target::word - AOT_ObjectStore_record_field_names_offset = 0x1f4; + AOT_ObjectStore_record_field_names_offset = 0x1f8; static constexpr dart::compiler::target::word AOT_ObjectStore_string_type_offset = 0xd4; static constexpr dart::compiler::target::word AOT_ObjectStore_type_type_offset = 0x84; static constexpr dart::compiler::target::word - AOT_ObjectStore_ffi_callback_code_offset = 0x270; + AOT_ObjectStore_ffi_callback_code_offset = 0x274; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_await_offset = 0x21c; + AOT_ObjectStore_suspend_state_await_offset = 0x220; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_await_with_type_check_offset = 0x220; + AOT_ObjectStore_suspend_state_await_with_type_check_offset = 0x224; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_handle_exception_offset = 0x240; + AOT_ObjectStore_suspend_state_handle_exception_offset = 0x244; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_init_async_offset = 0x218; + AOT_ObjectStore_suspend_state_init_async_offset = 0x21c; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_init_async_star_offset = 0x22c; + AOT_ObjectStore_suspend_state_init_async_star_offset = 0x230; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_init_sync_star_offset = 0x238; + AOT_ObjectStore_suspend_state_init_sync_star_offset = 0x23c; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_return_async_offset = 0x224; + AOT_ObjectStore_suspend_state_return_async_offset = 0x228; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_return_async_not_future_offset = 0x228; + AOT_ObjectStore_suspend_state_return_async_not_future_offset = 0x22c; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_return_async_star_offset = 0x234; + AOT_ObjectStore_suspend_state_return_async_star_offset = 0x238; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_suspend_sync_star_at_start_offset = 0x23c; + AOT_ObjectStore_suspend_state_suspend_sync_star_at_start_offset = 0x240; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_yield_async_star_offset = 0x230; + AOT_ObjectStore_suspend_state_yield_async_star_offset = 0x234; static constexpr dart::compiler::target::word AOT_OneByteString_data_offset = 0xc; static constexpr dart::compiler::target::word AOT_PersistentHandle_ptr_offset = @@ -18017,35 +18017,35 @@ static constexpr dart::compiler::target::word static constexpr dart::compiler::target::word AOT_ObjectStore_int_type_offset = 0x130; static constexpr dart::compiler::target::word - AOT_ObjectStore_record_field_names_offset = 0x3e8; + AOT_ObjectStore_record_field_names_offset = 0x3f0; static constexpr dart::compiler::target::word AOT_ObjectStore_string_type_offset = 0x1a8; static constexpr dart::compiler::target::word AOT_ObjectStore_type_type_offset = 0x108; static constexpr dart::compiler::target::word - AOT_ObjectStore_ffi_callback_code_offset = 0x4e0; + AOT_ObjectStore_ffi_callback_code_offset = 0x4e8; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_await_offset = 0x438; + AOT_ObjectStore_suspend_state_await_offset = 0x440; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_await_with_type_check_offset = 0x440; + AOT_ObjectStore_suspend_state_await_with_type_check_offset = 0x448; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_handle_exception_offset = 0x480; + AOT_ObjectStore_suspend_state_handle_exception_offset = 0x488; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_init_async_offset = 0x430; + AOT_ObjectStore_suspend_state_init_async_offset = 0x438; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_init_async_star_offset = 0x458; + AOT_ObjectStore_suspend_state_init_async_star_offset = 0x460; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_init_sync_star_offset = 0x470; + AOT_ObjectStore_suspend_state_init_sync_star_offset = 0x478; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_return_async_offset = 0x448; + AOT_ObjectStore_suspend_state_return_async_offset = 0x450; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_return_async_not_future_offset = 0x450; + AOT_ObjectStore_suspend_state_return_async_not_future_offset = 0x458; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_return_async_star_offset = 0x468; + AOT_ObjectStore_suspend_state_return_async_star_offset = 0x470; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_suspend_sync_star_at_start_offset = 0x478; + AOT_ObjectStore_suspend_state_suspend_sync_star_at_start_offset = 0x480; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_yield_async_star_offset = 0x460; + AOT_ObjectStore_suspend_state_yield_async_star_offset = 0x468; static constexpr dart::compiler::target::word AOT_OneByteString_data_offset = 0x10; static constexpr dart::compiler::target::word AOT_PersistentHandle_ptr_offset = @@ -18808,35 +18808,35 @@ static constexpr dart::compiler::target::word static constexpr dart::compiler::target::word AOT_ObjectStore_int_type_offset = 0x130; static constexpr dart::compiler::target::word - AOT_ObjectStore_record_field_names_offset = 0x3e8; + AOT_ObjectStore_record_field_names_offset = 0x3f0; static constexpr dart::compiler::target::word AOT_ObjectStore_string_type_offset = 0x1a8; static constexpr dart::compiler::target::word AOT_ObjectStore_type_type_offset = 0x108; static constexpr dart::compiler::target::word - AOT_ObjectStore_ffi_callback_code_offset = 0x4e0; + AOT_ObjectStore_ffi_callback_code_offset = 0x4e8; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_await_offset = 0x438; + AOT_ObjectStore_suspend_state_await_offset = 0x440; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_await_with_type_check_offset = 0x440; + AOT_ObjectStore_suspend_state_await_with_type_check_offset = 0x448; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_handle_exception_offset = 0x480; + AOT_ObjectStore_suspend_state_handle_exception_offset = 0x488; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_init_async_offset = 0x430; + AOT_ObjectStore_suspend_state_init_async_offset = 0x438; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_init_async_star_offset = 0x458; + AOT_ObjectStore_suspend_state_init_async_star_offset = 0x460; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_init_sync_star_offset = 0x470; + AOT_ObjectStore_suspend_state_init_sync_star_offset = 0x478; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_return_async_offset = 0x448; + AOT_ObjectStore_suspend_state_return_async_offset = 0x450; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_return_async_not_future_offset = 0x450; + AOT_ObjectStore_suspend_state_return_async_not_future_offset = 0x458; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_return_async_star_offset = 0x468; + AOT_ObjectStore_suspend_state_return_async_star_offset = 0x470; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_suspend_sync_star_at_start_offset = 0x478; + AOT_ObjectStore_suspend_state_suspend_sync_star_at_start_offset = 0x480; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_yield_async_star_offset = 0x460; + AOT_ObjectStore_suspend_state_yield_async_star_offset = 0x468; static constexpr dart::compiler::target::word AOT_OneByteString_data_offset = 0x10; static constexpr dart::compiler::target::word AOT_PersistentHandle_ptr_offset = @@ -19595,35 +19595,35 @@ static constexpr dart::compiler::target::word static constexpr dart::compiler::target::word AOT_ObjectStore_int_type_offset = 0x130; static constexpr dart::compiler::target::word - AOT_ObjectStore_record_field_names_offset = 0x3e8; + AOT_ObjectStore_record_field_names_offset = 0x3f0; static constexpr dart::compiler::target::word AOT_ObjectStore_string_type_offset = 0x1a8; static constexpr dart::compiler::target::word AOT_ObjectStore_type_type_offset = 0x108; static constexpr dart::compiler::target::word - AOT_ObjectStore_ffi_callback_code_offset = 0x4e0; + AOT_ObjectStore_ffi_callback_code_offset = 0x4e8; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_await_offset = 0x438; + AOT_ObjectStore_suspend_state_await_offset = 0x440; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_await_with_type_check_offset = 0x440; + AOT_ObjectStore_suspend_state_await_with_type_check_offset = 0x448; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_handle_exception_offset = 0x480; + AOT_ObjectStore_suspend_state_handle_exception_offset = 0x488; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_init_async_offset = 0x430; + AOT_ObjectStore_suspend_state_init_async_offset = 0x438; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_init_async_star_offset = 0x458; + AOT_ObjectStore_suspend_state_init_async_star_offset = 0x460; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_init_sync_star_offset = 0x470; + AOT_ObjectStore_suspend_state_init_sync_star_offset = 0x478; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_return_async_offset = 0x448; + AOT_ObjectStore_suspend_state_return_async_offset = 0x450; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_return_async_not_future_offset = 0x450; + AOT_ObjectStore_suspend_state_return_async_not_future_offset = 0x458; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_return_async_star_offset = 0x468; + AOT_ObjectStore_suspend_state_return_async_star_offset = 0x470; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_suspend_sync_star_at_start_offset = 0x478; + AOT_ObjectStore_suspend_state_suspend_sync_star_at_start_offset = 0x480; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_yield_async_star_offset = 0x460; + AOT_ObjectStore_suspend_state_yield_async_star_offset = 0x468; static constexpr dart::compiler::target::word AOT_OneByteString_data_offset = 0x10; static constexpr dart::compiler::target::word AOT_PersistentHandle_ptr_offset = @@ -20382,35 +20382,35 @@ static constexpr dart::compiler::target::word static constexpr dart::compiler::target::word AOT_ObjectStore_int_type_offset = 0x130; static constexpr dart::compiler::target::word - AOT_ObjectStore_record_field_names_offset = 0x3e8; + AOT_ObjectStore_record_field_names_offset = 0x3f0; static constexpr dart::compiler::target::word AOT_ObjectStore_string_type_offset = 0x1a8; static constexpr dart::compiler::target::word AOT_ObjectStore_type_type_offset = 0x108; static constexpr dart::compiler::target::word - AOT_ObjectStore_ffi_callback_code_offset = 0x4e0; + AOT_ObjectStore_ffi_callback_code_offset = 0x4e8; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_await_offset = 0x438; + AOT_ObjectStore_suspend_state_await_offset = 0x440; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_await_with_type_check_offset = 0x440; + AOT_ObjectStore_suspend_state_await_with_type_check_offset = 0x448; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_handle_exception_offset = 0x480; + AOT_ObjectStore_suspend_state_handle_exception_offset = 0x488; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_init_async_offset = 0x430; + AOT_ObjectStore_suspend_state_init_async_offset = 0x438; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_init_async_star_offset = 0x458; + AOT_ObjectStore_suspend_state_init_async_star_offset = 0x460; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_init_sync_star_offset = 0x470; + AOT_ObjectStore_suspend_state_init_sync_star_offset = 0x478; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_return_async_offset = 0x448; + AOT_ObjectStore_suspend_state_return_async_offset = 0x450; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_return_async_not_future_offset = 0x450; + AOT_ObjectStore_suspend_state_return_async_not_future_offset = 0x458; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_return_async_star_offset = 0x468; + AOT_ObjectStore_suspend_state_return_async_star_offset = 0x470; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_suspend_sync_star_at_start_offset = 0x478; + AOT_ObjectStore_suspend_state_suspend_sync_star_at_start_offset = 0x480; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_yield_async_star_offset = 0x460; + AOT_ObjectStore_suspend_state_yield_async_star_offset = 0x468; static constexpr dart::compiler::target::word AOT_OneByteString_data_offset = 0x10; static constexpr dart::compiler::target::word AOT_PersistentHandle_ptr_offset = @@ -21171,35 +21171,35 @@ static constexpr dart::compiler::target::word static constexpr dart::compiler::target::word AOT_ObjectStore_int_type_offset = 0x98; static constexpr dart::compiler::target::word - AOT_ObjectStore_record_field_names_offset = 0x1f4; + AOT_ObjectStore_record_field_names_offset = 0x1f8; static constexpr dart::compiler::target::word AOT_ObjectStore_string_type_offset = 0xd4; static constexpr dart::compiler::target::word AOT_ObjectStore_type_type_offset = 0x84; static constexpr dart::compiler::target::word - AOT_ObjectStore_ffi_callback_code_offset = 0x270; + AOT_ObjectStore_ffi_callback_code_offset = 0x274; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_await_offset = 0x21c; + AOT_ObjectStore_suspend_state_await_offset = 0x220; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_await_with_type_check_offset = 0x220; + AOT_ObjectStore_suspend_state_await_with_type_check_offset = 0x224; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_handle_exception_offset = 0x240; + AOT_ObjectStore_suspend_state_handle_exception_offset = 0x244; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_init_async_offset = 0x218; + AOT_ObjectStore_suspend_state_init_async_offset = 0x21c; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_init_async_star_offset = 0x22c; + AOT_ObjectStore_suspend_state_init_async_star_offset = 0x230; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_init_sync_star_offset = 0x238; + AOT_ObjectStore_suspend_state_init_sync_star_offset = 0x23c; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_return_async_offset = 0x224; + AOT_ObjectStore_suspend_state_return_async_offset = 0x228; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_return_async_not_future_offset = 0x228; + AOT_ObjectStore_suspend_state_return_async_not_future_offset = 0x22c; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_return_async_star_offset = 0x234; + AOT_ObjectStore_suspend_state_return_async_star_offset = 0x238; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_suspend_sync_star_at_start_offset = 0x23c; + AOT_ObjectStore_suspend_state_suspend_sync_star_at_start_offset = 0x240; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_yield_async_star_offset = 0x230; + AOT_ObjectStore_suspend_state_yield_async_star_offset = 0x234; static constexpr dart::compiler::target::word AOT_OneByteString_data_offset = 0xc; static constexpr dart::compiler::target::word AOT_PersistentHandle_ptr_offset = @@ -21956,35 +21956,35 @@ static constexpr dart::compiler::target::word static constexpr dart::compiler::target::word AOT_ObjectStore_int_type_offset = 0x130; static constexpr dart::compiler::target::word - AOT_ObjectStore_record_field_names_offset = 0x3e8; + AOT_ObjectStore_record_field_names_offset = 0x3f0; static constexpr dart::compiler::target::word AOT_ObjectStore_string_type_offset = 0x1a8; static constexpr dart::compiler::target::word AOT_ObjectStore_type_type_offset = 0x108; static constexpr dart::compiler::target::word - AOT_ObjectStore_ffi_callback_code_offset = 0x4e0; + AOT_ObjectStore_ffi_callback_code_offset = 0x4e8; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_await_offset = 0x438; + AOT_ObjectStore_suspend_state_await_offset = 0x440; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_await_with_type_check_offset = 0x440; + AOT_ObjectStore_suspend_state_await_with_type_check_offset = 0x448; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_handle_exception_offset = 0x480; + AOT_ObjectStore_suspend_state_handle_exception_offset = 0x488; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_init_async_offset = 0x430; + AOT_ObjectStore_suspend_state_init_async_offset = 0x438; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_init_async_star_offset = 0x458; + AOT_ObjectStore_suspend_state_init_async_star_offset = 0x460; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_init_sync_star_offset = 0x470; + AOT_ObjectStore_suspend_state_init_sync_star_offset = 0x478; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_return_async_offset = 0x448; + AOT_ObjectStore_suspend_state_return_async_offset = 0x450; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_return_async_not_future_offset = 0x450; + AOT_ObjectStore_suspend_state_return_async_not_future_offset = 0x458; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_return_async_star_offset = 0x468; + AOT_ObjectStore_suspend_state_return_async_star_offset = 0x470; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_suspend_sync_star_at_start_offset = 0x478; + AOT_ObjectStore_suspend_state_suspend_sync_star_at_start_offset = 0x480; static constexpr dart::compiler::target::word - AOT_ObjectStore_suspend_state_yield_async_star_offset = 0x460; + AOT_ObjectStore_suspend_state_yield_async_star_offset = 0x468; static constexpr dart::compiler::target::word AOT_OneByteString_data_offset = 0x10; static constexpr dart::compiler::target::word AOT_PersistentHandle_ptr_offset = diff --git a/runtime/vm/dart_entry.cc b/runtime/vm/dart_entry.cc index dc0b69d2da5..f60bffed3de 100644 --- a/runtime/vm/dart_entry.cc +++ b/runtime/vm/dart_entry.cc @@ -778,13 +778,13 @@ static ObjectPtr RehashObjects(Zone* zone, return DartEntry::InvokeFunction(rehashing_function, arguments); } -ObjectPtr DartLibraryCalls::RehashObjectsInDartCollection( +ObjectPtr DartLibraryCalls::RehashObjectsInDartCompactHash( Thread* thread, const Object& array_or_growable_array) { auto zone = thread->zone(); - const auto& collections_lib = - Library::Handle(zone, Library::CollectionLibrary()); - return RehashObjects(zone, collections_lib, array_or_growable_array); + const auto& compact_hash_lib = + Library::Handle(zone, Library::CompactHashLibrary()); + return RehashObjects(zone, compact_hash_lib, array_or_growable_array); } ObjectPtr DartLibraryCalls::RehashObjectsInDartCore( diff --git a/runtime/vm/dart_entry.h b/runtime/vm/dart_entry.h index c5a4460d93b..04a53b109f6 100644 --- a/runtime/vm/dart_entry.h +++ b/runtime/vm/dart_entry.h @@ -302,8 +302,8 @@ class DartLibraryCalls : public AllStatic { // Returns null on success, an ErrorPtr on failure. static ObjectPtr EnsureScheduleImmediate(); - // Runs the `_rehashObjects()` function in `dart:collection`. - static ObjectPtr RehashObjectsInDartCollection( + // Runs the `_rehashObjects()` function in `dart:compact_hash`. + static ObjectPtr RehashObjectsInDartCompactHash( Thread* thread, const Object& array_or_growable_array); diff --git a/runtime/vm/message_snapshot.cc b/runtime/vm/message_snapshot.cc index 7b276edeeb2..ca5aeaae01f 100644 --- a/runtime/vm/message_snapshot.cc +++ b/runtime/vm/message_snapshot.cc @@ -490,7 +490,7 @@ ObjectPtr MessageDeserializationCluster::PostLoadLinkedHash( Array& maps = Array::Handle(d->zone(), d->refs()); maps = maps.Slice(start_index_, stop_index_ - start_index_, /*with_type_argument=*/false); - return DartLibraryCalls::RehashObjectsInDartCollection(d->thread(), maps); + return DartLibraryCalls::RehashObjectsInDartCompactHash(d->thread(), maps); } class ClassMessageSerializationCluster : public MessageSerializationCluster { @@ -3452,8 +3452,8 @@ ObjectPtr ReadObjectGraphCopyMessage(Thread* thread, PersistentHandle* handle) { if (msg_array.At(1) != Object::null()) { const auto& objects_to_rehash = Object::Handle(zone, msg_array.At(1)); auto& result = Object::Handle(zone); - result = DartLibraryCalls::RehashObjectsInDartCollection(thread, - objects_to_rehash); + result = DartLibraryCalls::RehashObjectsInDartCompactHash( + thread, objects_to_rehash); if (result.ptr() != Object::null()) { msg_obj = result.ptr(); } diff --git a/runtime/vm/object.cc b/runtime/vm/object.cc index 5af97fcc392..60a4baf6dd7 100644 --- a/runtime/vm/object.cc +++ b/runtime/vm/object.cc @@ -2011,18 +2011,18 @@ ErrorPtr Object::Init(IsolateGroup* isolate_group, cls = Class::New(isolate_group); RegisterPrivateClass(cls, Symbols::_MirrorReference(), lib); - // Pre-register the collection library so we can place the vm class - // Map there rather than the core library. - lib = Library::LookupLibrary(thread, Symbols::DartCollection()); + // Pre-register dart:_compact_hash library so that we could place + // collection classes (_Map, _ConstMap, _Set, _ConstSet) here. + lib = Library::LookupLibrary(thread, Symbols::DartCompactHash()); if (lib.IsNull()) { - lib = Library::NewLibraryHelper(Symbols::DartCollection(), true); + lib = Library::NewLibraryHelper(Symbols::DartCompactHash(), true); lib.SetLoadRequested(); lib.Register(thread); } + object_store->set_bootstrap_library(ObjectStore::kCompactHash, lib); - object_store->set_bootstrap_library(ObjectStore::kCollection, lib); ASSERT(!lib.IsNull()); - ASSERT(lib.ptr() == Library::CollectionLibrary()); + ASSERT(lib.ptr() == Library::CompactHashLibrary()); cls = Class::New(isolate_group); object_store->set_map_impl_class(cls); cls.set_type_arguments_field_offset(Map::type_arguments_offset(), @@ -2057,6 +2057,15 @@ ErrorPtr Object::Init(IsolateGroup* isolate_group, RegisterPrivateClass(cls, Symbols::_ConstSet(), lib); pending_classes.Add(cls); + // Pre-register the collection library. + lib = Library::LookupLibrary(thread, Symbols::DartCollection()); + if (lib.IsNull()) { + lib = Library::NewLibraryHelper(Symbols::DartCollection(), true); + lib.SetLoadRequested(); + lib.Register(thread); + } + object_store->set_bootstrap_library(ObjectStore::kCollection, lib); + // Pre-register the async library so we can place the vm class // FutureOr there rather than the core library. lib = Library::LookupLibrary(thread, Symbols::DartAsync()); @@ -14812,6 +14821,10 @@ LibraryPtr Library::CollectionLibrary() { return IsolateGroup::Current()->object_store()->collection_library(); } +LibraryPtr Library::CompactHashLibrary() { + return IsolateGroup::Current()->object_store()->_compact_hash_library(); +} + LibraryPtr Library::DeveloperLibrary() { return IsolateGroup::Current()->object_store()->developer_library(); } diff --git a/runtime/vm/object.h b/runtime/vm/object.h index 4a1e64acfaa..41b0d0f3e67 100644 --- a/runtime/vm/object.h +++ b/runtime/vm/object.h @@ -5353,6 +5353,7 @@ class Library : public Object { static LibraryPtr ConvertLibrary(); static LibraryPtr CoreLibrary(); static LibraryPtr CollectionLibrary(); + static LibraryPtr CompactHashLibrary(); static LibraryPtr DeveloperLibrary(); static LibraryPtr FfiLibrary(); static LibraryPtr InternalLibrary(); @@ -12118,7 +12119,7 @@ class ImmutableLinkedHashBase : public AllStatic { }; // Corresponds to -// - _Map in dart:collection +// - _Map in dart:_compact_hash // - "new Map()", // - non-const map literals, and // - the default constructor of LinkedHashMap in dart:collection. @@ -12191,7 +12192,7 @@ class Map : public LinkedHashBase { }; // Corresponds to -// - _ConstMap in dart:collection +// - _ConstMap in dart:_compact_hash // - const map literals class ConstMap : public AllStatic { public: @@ -12221,7 +12222,7 @@ class ConstMap : public AllStatic { }; // Corresponds to -// - _Set in dart:collection, +// - _Set in dart:_compact_hash, // - "new Set()", // - non-const set literals, and // - the default constructor of LinkedHashSet in dart:collection. @@ -12292,7 +12293,7 @@ class Set : public LinkedHashBase { }; // Corresponds to -// - _ConstSet in dart:collection +// - _ConstSet in dart:_compact_hash // - const set literals class ConstSet : public AllStatic { public: diff --git a/runtime/vm/object_store.cc b/runtime/vm/object_store.cc index f4f1861d8b8..6dd63fbc951 100644 --- a/runtime/vm/object_store.cc +++ b/runtime/vm/object_store.cc @@ -216,8 +216,9 @@ void ObjectStore::InitKnownObjects() { Thread* thread = Thread::Current(); Zone* zone = thread->zone(); Class& cls = Class::Handle(zone); - const Library& collection_lib = Library::Handle(zone, collection_library()); - cls = collection_lib.LookupClassAllowPrivate(Symbols::_Set()); + const Library& compact_hash_lib = + Library::Handle(zone, _compact_hash_library()); + cls = compact_hash_lib.LookupClassAllowPrivate(Symbols::_Set()); ASSERT(!cls.IsNull()); set_set_impl_class(cls); diff --git a/runtime/vm/object_store.h b/runtime/vm/object_store.h index fc1054c0cec..71c5117e573 100644 --- a/runtime/vm/object_store.h +++ b/runtime/vm/object_store.h @@ -19,6 +19,7 @@ class ObjectPointerVisitor; #define FOR_EACH_BOOTSTRAP_LIBRARY(M) \ M(Core, core) \ M(Async, async) \ + M(CompactHash, _compact_hash) \ M(Collection, collection) \ M(Convert, convert) \ M(Developer, developer) \ @@ -142,6 +143,7 @@ class ObjectPointerVisitor; RW(Array, canonical_type_arguments) \ RW(Library, async_library) \ RW(Library, core_library) \ + RW(Library, _compact_hash_library) \ RW(Library, collection_library) \ RW(Library, concurrent_library) \ RW(Library, convert_library) \ diff --git a/runtime/vm/object_test.cc b/runtime/vm/object_test.cc index 9896e0bc9bb..f717c7e867f 100644 --- a/runtime/vm/object_test.cc +++ b/runtime/vm/object_test.cc @@ -6215,14 +6215,15 @@ ISOLATE_UNIT_TEST_CASE(PrintJSONPrimitives) { ElideJSONSubstring("_TypeParameter@", buffer, buffer); EXPECT_SUBSTRING( "{\"type\":\"@Instance\",\"_vmType\":\"Map\",\"class\":{" - "\"type\":\"@Class\",\"fixedId\":true,\"id\":\"\",\"name\":\"_" - "Map\",\"_vmName\":\"\",\"location\":{\"type\":" + "\"type\":\"@Class\",\"fixedId\":true,\"id\":\"\",\"name\":\"" + "_Map\",\"_vmName\":\"\",\"location\":{\"type\":" "\"SourceLocation\",\"script\":{\"type\":\"@Script\",\"fixedId\":true," - "\"id\":\"\",\"uri\":\"dart:collection-patch\\/" - "compact_hash.dart\",\"_kind\":\"kernel\"}" + "\"id\":\"\",\"uri\":\"dart:_compact_hash\"," + "\"_kind\":\"kernel\"}" "},\"library\":{\"type\":\"@Library\",\"fixedId\":" - "true,\"id\":\"\",\"name\":\"dart.collection\",\"uri\":\"dart:" - "collection\"},\"typeParameters\":[{\"type\":\"@Instance\",\"_vmType\":" + "true,\"id\":\"\",\"name\":\"dart._compact_hash\"," + "\"uri\":\"dart:_compact_hash\"}," + "\"typeParameters\":[{\"type\":\"@Instance\",\"_vmType\":" "\"TypeParameter\",\"class\":{\"type\":\"@Class\",\"fixedId\":true," "\"id\":\"\",\"name\":\"_TypeParameter\",\"_vmName\":\"" "\",\"location\":{\"type\":\"SourceLocation\",\"script\":{" diff --git a/runtime/vm/symbols.h b/runtime/vm/symbols.h index 8257f30045d..cd8d958e59b 100644 --- a/runtime/vm/symbols.h +++ b/runtime/vm/symbols.h @@ -54,6 +54,7 @@ class ObjectPointerVisitor; V(CurrentContextVar, ":current_context_var") \ V(DartAsync, "dart:async") \ V(DartCollection, "dart:collection") \ + V(DartCompactHash, "dart:_compact_hash") \ V(DartConcurrent, "dart:concurrent") \ V(DartCore, "dart:core") \ V(DartDeveloper, "dart:developer") \ diff --git a/sdk/lib/_internal/vm/lib/hash_factories.dart b/sdk/lib/_internal/vm/lib/hash_factories.dart index fea5baab6bd..9385c592598 100644 --- a/sdk/lib/_internal/vm/lib/hash_factories.dart +++ b/sdk/lib/_internal/vm/lib/hash_factories.dart @@ -2,6 +2,15 @@ // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. +import "dart:_compact_hash" + show + DefaultMap, + DefaultSet, + CompactLinkedIdentityHashSet, + CompactLinkedCustomHashSet, + CompactLinkedCustomHashMap, + CompactLinkedIdentityHashMap; + import "dart:_internal" show patch; import "dart:typed_data" show Uint32List; @@ -19,13 +28,13 @@ class LinkedHashMap { if (isValidKey == null) { if (hashCode == null) { if (equals == null) { - return new _Map(); + return DefaultMap(); } hashCode = _defaultHashCode; } else { if (identical(identityHashCode, hashCode) && identical(identical, equals)) { - return new _CompactLinkedIdentityHashMap(); + return CompactLinkedIdentityHashMap(); } equals ??= _defaultEquals; } @@ -33,11 +42,11 @@ class LinkedHashMap { hashCode ??= _defaultHashCode; equals ??= _defaultEquals; } - return new _CompactLinkedCustomHashMap(equals, hashCode, isValidKey); + return CompactLinkedCustomHashMap(equals, hashCode, isValidKey); } @patch - factory LinkedHashMap.identity() => new _CompactLinkedIdentityHashMap(); + factory LinkedHashMap.identity() => CompactLinkedIdentityHashMap(); } @patch @@ -50,13 +59,13 @@ class LinkedHashSet { if (isValidKey == null) { if (hashCode == null) { if (equals == null) { - return new _Set(); + return DefaultSet(); } hashCode = _defaultHashCode; } else { if (identical(identityHashCode, hashCode) && identical(identical, equals)) { - return new _CompactLinkedIdentityHashSet(); + return CompactLinkedIdentityHashSet(); } equals ??= _defaultEquals; } @@ -64,9 +73,9 @@ class LinkedHashSet { hashCode ??= _defaultHashCode; equals ??= _defaultEquals; } - return new _CompactLinkedCustomHashSet(equals, hashCode, isValidKey); + return CompactLinkedCustomHashSet(equals, hashCode, isValidKey); } @patch - factory LinkedHashSet.identity() => new _CompactLinkedIdentityHashSet(); + factory LinkedHashSet.identity() => CompactLinkedIdentityHashSet(); } diff --git a/sdk/lib/_internal/vm_shared/lib/collection_patch.dart b/sdk/lib/_internal/vm_shared/lib/collection_patch.dart index af322434181..098e83502b2 100644 --- a/sdk/lib/_internal/vm_shared/lib/collection_patch.dart +++ b/sdk/lib/_internal/vm_shared/lib/collection_patch.dart @@ -4,11 +4,7 @@ import "dart:_internal" as internal; -import "dart:_internal" show unsafeCast, patch, IterableElementError; - -class _TypeTest { - bool test(v) => v is T; -} +import "dart:_internal" show unsafeCast, patch, IterableElementError, TypeTest; @patch class HashMap { @@ -258,7 +254,7 @@ base class _CustomHashMap extends _HashMap { final _Hasher _hashCode; final _Predicate _validKey; _CustomHashMap(this._equals, this._hashCode, _Predicate? validKey) - : _validKey = (validKey != null) ? validKey : new _TypeTest().test; + : _validKey = (validKey != null) ? validKey : TypeTest().test; bool containsKey(Object? key) { if (!_validKey(key)) return false; @@ -802,7 +798,7 @@ base class _CustomHashSet extends _HashSet { final _Hasher _hasher; final _Predicate _validKey; _CustomHashSet(this._equality, this._hasher, _Predicate? validKey) - : _validKey = (validKey != null) ? validKey : new _TypeTest().test; + : _validKey = (validKey != null) ? validKey : TypeTest().test; bool remove(Object? element) { if (!_validKey(element)) return false; diff --git a/sdk/lib/_internal/vm_shared/lib/compact_hash.dart b/sdk/lib/_internal/vm_shared/lib/compact_hash.dart index 410333960b1..09b2eac1e93 100644 --- a/sdk/lib/_internal/vm_shared/lib/compact_hash.dart +++ b/sdk/lib/_internal/vm_shared/lib/compact_hash.dart @@ -1,15 +1,95 @@ // Copyright (c) 2015, the Dart project authors. Please see the AUTHORS file // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. +library dart._compact_hash; import "dart:_internal" as internal; -import "dart:_internal" show patch, IterableElementError, ClassID; +import "dart:_internal" show patch, IterableElementError, ClassID, TypeTest; + +import "dart:collection" show MapMixin, SetMixin, LinkedHashMap, LinkedHashSet; import "dart:math" show max; import "dart:typed_data" show Uint32List; +mixin _UnmodifiableMapMixin implements LinkedHashMap { + /// This operation is not supported by an unmodifiable map. + void operator []=(K key, V value) { + throw UnsupportedError("Cannot modify unmodifiable map"); + } + + /// This operation is not supported by an unmodifiable map. + void addAll(Map other) { + throw UnsupportedError("Cannot modify unmodifiable map"); + } + + /// This operation is not supported by an unmodifiable map. + void addEntries(Iterable> entries) { + throw UnsupportedError("Cannot modify unmodifiable map"); + } + + /// This operation is not supported by an unmodifiable map. + void clear() { + throw UnsupportedError("Cannot modify unmodifiable map"); + } + + /// This operation is not supported by an unmodifiable map. + V? remove(Object? key) { + throw UnsupportedError("Cannot modify unmodifiable map"); + } + + /// This operation is not supported by an unmodifiable map. + void removeWhere(bool test(K key, V value)) { + throw UnsupportedError("Cannot modify unmodifiable map"); + } + + /// This operation is not supported by an unmodifiable map. + V putIfAbsent(K key, V ifAbsent()) { + throw UnsupportedError("Cannot modify unmodifiable map"); + } + + /// This operation is not supported by an unmodifiable map. + V update(K key, V update(V value), {V Function()? ifAbsent}) { + throw UnsupportedError("Cannot modify unmodifiable map"); + } + + /// This operation is not supported by an unmodifiable map. + void updateAll(V update(K key, V value)) { + throw UnsupportedError("Cannot modify unmodifiable map"); + } +} + +mixin _UnmodifiableSetMixin implements LinkedHashSet { + static Never _throwUnmodifiable() { + throw UnsupportedError("Cannot change an unmodifiable set"); + } + + /// This operation is not supported by an unmodifiable set. + bool add(E value) => _throwUnmodifiable(); + + /// This operation is not supported by an unmodifiable set. + void clear() => _throwUnmodifiable(); + + /// This operation is not supported by an unmodifiable set. + void addAll(Iterable elements) => _throwUnmodifiable(); + + /// This operation is not supported by an unmodifiable set. + void removeAll(Iterable elements) => _throwUnmodifiable(); + + /// This operation is not supported by an unmodifiable set. + void retainAll(Iterable elements) => _throwUnmodifiable(); + + /// This operation is not supported by an unmodifiable set. + void removeWhere(bool test(E element)) => _throwUnmodifiable(); + + /// This operation is not supported by an unmodifiable set. + void retainWhere(bool test(E element)) => _throwUnmodifiable(); + + /// This operation is not supported by an unmodifiable set. + bool remove(Object? value) => _throwUnmodifiable(); +} + // Hash table with open addressing that separates the index from keys/values. // This function takes care of rehashing of the linked hashmaps in [objects]. We @@ -83,51 +163,41 @@ abstract class _HashVMBase implements _HashAbstractBase { @pragma("vm:recognized", "other") @pragma("vm:exact-result-type", "dart:typed_data#_Uint32List") @pragma("vm:prefer-inline") - @pragma("vm:external-name", "LinkedHashBase_getIndex") external Uint32List get _index; @pragma("vm:recognized", "other") @pragma("vm:prefer-inline") - @pragma("vm:external-name", "LinkedHashBase_setIndex") external void set _index(Uint32List value); @pragma("vm:recognized", "other") @pragma("vm:exact-result-type", "dart:core#_Smi") @pragma("vm:prefer-inline") - @pragma("vm:external-name", "LinkedHashBase_getHashMask") external int get _hashMask; @pragma("vm:recognized", "other") @pragma("vm:prefer-inline") - @pragma("vm:external-name", "LinkedHashBase_setHashMask") external void set _hashMask(int value); @pragma("vm:recognized", "other") @pragma("vm:exact-result-type", "dart:core#_List") @pragma("vm:prefer-inline") - @pragma("vm:external-name", "LinkedHashBase_getData") external List get _data; @pragma("vm:recognized", "other") @pragma("vm:prefer-inline") - @pragma("vm:external-name", "LinkedHashBase_setData") external void set _data(List value); @pragma("vm:recognized", "other") @pragma("vm:exact-result-type", "dart:core#_Smi") @pragma("vm:prefer-inline") - @pragma("vm:external-name", "LinkedHashBase_getUsedData") external int get _usedData; @pragma("vm:recognized", "other") @pragma("vm:prefer-inline") - @pragma("vm:external-name", "LinkedHashBase_setUsedData") external void set _usedData(int value); @pragma("vm:recognized", "other") @pragma("vm:exact-result-type", "dart:core#_Smi") @pragma("vm:prefer-inline") - @pragma("vm:external-name", "LinkedHashBase_getDeletedKeys") external int get _deletedKeys; @pragma("vm:recognized", "other") @pragma("vm:prefer-inline") - @pragma("vm:external-name", "LinkedHashBase_setDeletedKeys") external void set _deletedKeys(int value); } @@ -138,20 +208,17 @@ abstract class _HashVMImmutableBase extends _HashVMBase @pragma("vm:recognized", "other") @pragma("vm:exact-result-type", "dart:core#_ImmutableList") @pragma("vm:prefer-inline") - @pragma("vm:external-name", "ImmutableLinkedHashBase_getData") external List get _data; // The index is nullable rather than not nullable. @pragma("vm:recognized", "other") @pragma("vm:prefer-inline") - @pragma("vm:external-name", "ImmutableLinkedHashBase_getIndex") external Uint32List? get _indexNullable; Uint32List get _index => _indexNullable!; // Uses store-release atomic. @pragma("vm:recognized", "other") @pragma("vm:prefer-inline") - @pragma("vm:external-name", "ImmutableLinkedHashBase_setIndexStoreRelease") external void set _index(Uint32List value); } @@ -309,8 +376,7 @@ base class _Map extends _HashVMBase } void addAll(Map other) { - if (other is _Map) { - final otherBase = other as _Map; // manual promotion. + if (other case final _Map otherBase) { // If this map is empty we might be able to block-copy from [other]. if (isEmpty && _quickCopy(otherBase)) return; // TODO(48143): Pre-grow capacity if it will reduce rehashing. @@ -641,7 +707,7 @@ mixin _LinkedHashMapMixin on _HashBase, _EqualsAndHashCode { Iterable get values => _CompactIterable(this, -1, 2); } -base class _CompactLinkedIdentityHashMap extends _HashFieldBase +base class CompactLinkedIdentityHashMap extends _HashFieldBase with MapMixin, _HashBase, @@ -649,8 +715,7 @@ base class _CompactLinkedIdentityHashMap extends _HashFieldBase _LinkedHashMapMixin implements LinkedHashMap { void addAll(Map other) { - if (other is _CompactLinkedIdentityHashMap) { - final otherBase = other as _CompactLinkedIdentityHashMap; + if (other case final CompactLinkedIdentityHashMap otherBase) { // If this map is empty we might be able to block-copy from [other]. if (isEmpty && _quickCopy(otherBase)) return; // TODO(48143): Pre-grow capacity if it will reduce rehashing. @@ -659,7 +724,7 @@ base class _CompactLinkedIdentityHashMap extends _HashFieldBase } } -base class _CompactLinkedCustomHashMap extends _HashFieldBase +base class CompactLinkedCustomHashMap extends _HashFieldBase with MapMixin, _HashBase, @@ -674,9 +739,9 @@ base class _CompactLinkedCustomHashMap extends _HashFieldBase V? operator [](Object? o) => _validKey(o) ? super[o] : null; V? remove(Object? o) => _validKey(o) ? super.remove(o) : null; - _CompactLinkedCustomHashMap( + CompactLinkedCustomHashMap( this._equality, this._hasher, bool Function(Object?)? validKey) - : _validKey = validKey ?? _TypeTest().test; + : _validKey = validKey ?? TypeTest().test; } // Iterates through _data[_offset + _step], _data[_offset + 2*_step], ... @@ -951,7 +1016,7 @@ mixin _LinkedHashSetMixin on _HashBase, _EqualsAndHashCode { // Set implementation, analogous to _Map. Set literals create instances of this // class. -@pragma('vm:entry-point') +@pragma("vm:entry-point") base class _Set extends _HashVMBase with SetMixin, @@ -967,24 +1032,20 @@ base class _Set extends _HashVMBase _deletedKeys = 0; } - Set cast() => Set.castFrom(this, newSet: _newEmpty); - - static Set _newEmpty() => _Set(); - - // Returns a set of the same type, although this - // is not required by the spec. (For instance, always using an identity set - // would be technically correct, albeit surprising.) - Set toSet() => _Set()..addAll(this); - void addAll(Iterable other) { - if (other is _Set) { - final otherBase = other as _Set; + if (other case final _Set otherBase) { // If this set is empty we might be able to block-copy from [other]. if (isEmpty && _quickCopy(otherBase)) return; // TODO(48143): Pre-grow capacity if it will reduce rehashing. } super.addAll(other); } + + Set cast() => Set.castFrom(this, newSet: _newEmpty); + + static Set _newEmpty() => _Set(); + + Set toSet() => _Set()..addAll(this); } @pragma("vm:entry-point") @@ -1070,30 +1131,30 @@ mixin _ImmutableLinkedHashSetMixin _CompactIteratorImmutable(this, _data, _usedData, -1, 1); } -base class _CompactLinkedIdentityHashSet extends _HashFieldBase +base class CompactLinkedIdentityHashSet extends _HashFieldBase with SetMixin, _HashBase, _IdenticalAndIdentityHashCode, _LinkedHashSetMixin implements LinkedHashSet { - Set toSet() => _CompactLinkedIdentityHashSet()..addAll(this); - - static Set _newEmpty() => _CompactLinkedIdentityHashSet(); - - Set cast() => Set.castFrom(this, newSet: _newEmpty); - void addAll(Iterable other) { - if (other is _CompactLinkedIdentityHashSet) { + if (other is CompactLinkedIdentityHashSet) { // If this set is empty we might be able to block-copy from [other]. if (isEmpty && _quickCopy(other)) return; // TODO(48143): Pre-grow capacity if it will reduce rehashing. } super.addAll(other); } + + Set toSet() => CompactLinkedIdentityHashSet()..addAll(this); + + static Set _newEmpty() => CompactLinkedIdentityHashSet(); + + Set cast() => Set.castFrom(this, newSet: _newEmpty); } -base class _CompactLinkedCustomHashSet extends _HashFieldBase +base class CompactLinkedCustomHashSet extends _HashFieldBase with SetMixin, _HashBase, @@ -1108,12 +1169,18 @@ base class _CompactLinkedCustomHashSet extends _HashFieldBase E? lookup(Object? o) => _validKey(o) ? super.lookup(o) : null; bool remove(Object? o) => _validKey(o) ? super.remove(o) : false; - _CompactLinkedCustomHashSet( + CompactLinkedCustomHashSet( this._equality, this._hasher, bool Function(Object?)? validKey) - : _validKey = validKey ?? _TypeTest().test; + : _validKey = validKey ?? TypeTest().test; Set cast() => Set.castFrom(this); - Set toSet() => - _CompactLinkedCustomHashSet(_equality, _hasher, _validKey) - ..addAll(this); + Set toSet() => CompactLinkedCustomHashSet(_equality, _hasher, _validKey) + ..addAll(this); } + +/// Expose [_Map] as [DefaultMap] and [_Set] as [DefaultSet] so that +/// `dart:collection` could use these classes. We maintain original private +/// names unchanged to avoid breaking user code which incorrectly relies +/// on stability of [Type.toString]. +typedef DefaultMap = _Map; +typedef DefaultSet = _Set; diff --git a/sdk/lib/_internal/wasm/lib/compact_hash.dart b/sdk/lib/_internal/wasm/lib/compact_hash.dart index 52e048fc145..fe0ae62d17a 100644 --- a/sdk/lib/_internal/wasm/lib/compact_hash.dart +++ b/sdk/lib/_internal/wasm/lib/compact_hash.dart @@ -2,11 +2,91 @@ // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. -import "dart:_internal" show IterableElementError, ClassID, unsafeCast; +import "dart:_internal" + show IterableElementError, ClassID, TypeTest, unsafeCast; import "dart:_wasm"; + import "dart:collection"; + import "dart:math" show max; +mixin _UnmodifiableMapMixin implements LinkedHashMap { + /// This operation is not supported by an unmodifiable map. + void operator []=(K key, V value) { + throw UnsupportedError("Cannot modify unmodifiable map"); + } + + /// This operation is not supported by an unmodifiable map. + void addAll(Map other) { + throw UnsupportedError("Cannot modify unmodifiable map"); + } + + /// This operation is not supported by an unmodifiable map. + void addEntries(Iterable> entries) { + throw UnsupportedError("Cannot modify unmodifiable map"); + } + + /// This operation is not supported by an unmodifiable map. + void clear() { + throw UnsupportedError("Cannot modify unmodifiable map"); + } + + /// This operation is not supported by an unmodifiable map. + V? remove(Object? key) { + throw UnsupportedError("Cannot modify unmodifiable map"); + } + + /// This operation is not supported by an unmodifiable map. + void removeWhere(bool test(K key, V value)) { + throw UnsupportedError("Cannot modify unmodifiable map"); + } + + /// This operation is not supported by an unmodifiable map. + V putIfAbsent(K key, V ifAbsent()) { + throw UnsupportedError("Cannot modify unmodifiable map"); + } + + /// This operation is not supported by an unmodifiable map. + V update(K key, V update(V value), {V Function()? ifAbsent}) { + throw UnsupportedError("Cannot modify unmodifiable map"); + } + + /// This operation is not supported by an unmodifiable map. + void updateAll(V update(K key, V value)) { + throw UnsupportedError("Cannot modify unmodifiable map"); + } +} + +mixin _UnmodifiableSetMixin implements LinkedHashSet { + static Never _throwUnmodifiable() { + throw UnsupportedError("Cannot change an unmodifiable set"); + } + + /// This operation is not supported by an unmodifiable set. + bool add(E value) => _throwUnmodifiable(); + + /// This operation is not supported by an unmodifiable set. + void clear() => _throwUnmodifiable(); + + /// This operation is not supported by an unmodifiable set. + void addAll(Iterable elements) => _throwUnmodifiable(); + + /// This operation is not supported by an unmodifiable set. + void removeAll(Iterable elements) => _throwUnmodifiable(); + + /// This operation is not supported by an unmodifiable set. + void retainAll(Iterable elements) => _throwUnmodifiable(); + + /// This operation is not supported by an unmodifiable set. + void removeWhere(bool test(E element)) => _throwUnmodifiable(); + + /// This operation is not supported by an unmodifiable set. + void retainWhere(bool test(E element)) => _throwUnmodifiable(); + + /// This operation is not supported by an unmodifiable set. + bool remove(Object? value) => _throwUnmodifiable(); +} + // Hash table with open addressing that separates the index from keys/values. /// The object marking uninitialized [_HashBaseData._index] fields. @@ -161,18 +241,6 @@ mixin _IdenticalAndIdentityHashCode implements _EqualsAndHashCode { bool _equals(Object? e1, Object? e2) => identical(e1, e2); } -mixin _OperatorEqualsAndCanonicalHashCode implements _EqualsAndHashCode { - int _hashCode(Object? e) { - final cid = ClassID.getID(e); - if (cid < ClassID.numPredefinedCids || cid == ClassID.cidSymbol) { - return e.hashCode; - } - return identityHashCode(e); - } - - bool _equals(Object? e1, Object? e2) => e1 == e2; -} - mixin _CustomEqualsAndHashCode implements _EqualsAndHashCode { int Function(K) get _hasher; bool Function(K, K) get _equality; @@ -183,35 +251,53 @@ mixin _CustomEqualsAndHashCode implements _EqualsAndHashCode { bool _equals(Object? e1, Object? e2) => (_equality as Function)(e1, e2); } -base class _Map extends _HashFieldBase +@pragma("wasm:entry-point") +base class DefaultMap extends _HashFieldBase with MapMixin, _HashBase, _OperatorEqualsAndHashCode, - _LinkedHashMapMixin + _LinkedHashMapMixin, + _MapCreateIndexMixin implements LinkedHashMap { void addAll(Map other) { - if (other is _Map) { - final otherBase = other as _Map; // manual promotion. + if (other case final DefaultMap otherBase) { // If this map is empty we might be able to block-copy from [other]. if (isEmpty && _quickCopy(otherBase)) return; // TODO(48143): Pre-grow capacity if it will reduce rehashing. } super.addAll(other); } + + @pragma("wasm:entry-point") + static DefaultMap fromWasmArray(WasmArray data) { + final map = DefaultMap(); + assert(map._index == _uninitializedHashBaseIndex); + assert(map._hashMask == _HashBase._UNINITIALIZED_HASH_MASK); + assert(map._data == _uninitializedHashBaseData); + assert(map._usedData == 0); + assert(map._deletedKeys == 0); + + map._data = data; + map._usedData = data.length; + map._createIndex(true); + + return map; + } } -// This is essentially the same class as _Map, but it does +// This is essentially the same class as DefaultMap, but it does // not permit any modification of map entries from Dart code. We use // this class for maps constructed from Dart constant maps. +@pragma("wasm:entry-point") base class _ConstMap extends _HashFieldBase with MapMixin, _HashBase, - _OperatorEqualsAndCanonicalHashCode, + _OperatorEqualsAndHashCode, _LinkedHashMapMixin, - _UnmodifiableMapMixin, _MapCreateIndexMixin, + _UnmodifiableMapMixin, _ImmutableLinkedHashMapMixin implements LinkedHashMap { factory _ConstMap._uninstantiable() { @@ -533,8 +619,7 @@ base class CompactLinkedIdentityHashMap extends _HashFieldBase _LinkedHashMapMixin implements LinkedHashMap { void addAll(Map other) { - if (other is CompactLinkedIdentityHashMap) { - final otherBase = other as CompactLinkedIdentityHashMap; + if (other case final CompactLinkedIdentityHashMap otherBase) { // If this map is empty we might be able to block-copy from [other]. if (isEmpty && _quickCopy(otherBase)) return; // TODO(48143): Pre-grow capacity if it will reduce rehashing. @@ -560,7 +645,7 @@ base class CompactLinkedCustomHashMap extends _HashFieldBase CompactLinkedCustomHashMap( this._equality, this._hasher, bool Function(Object?)? validKey) - : _validKey = validKey ?? _TypeTest().test; + : _validKey = validKey ?? TypeTest().test; } // Iterates through _data[_offset + _step], _data[_offset + 2*_step], ... @@ -823,40 +908,57 @@ mixin _LinkedHashSetMixin on _HashBase, _EqualsAndHashCode { _CompactIterator(this, _data, _usedData, -1, 1); } -// Set implementation, analogous to _Map. Set literals create instances of this -// class. -base class _Set extends _HashFieldBase +// Set implementation, analogous to _Map. Set literals create instances +// of this class. +@pragma("wasm:entry-point") +base class DefaultSet extends _HashFieldBase with SetMixin, _HashBase, _OperatorEqualsAndHashCode, - _LinkedHashSetMixin + _LinkedHashSetMixin, + _SetCreateIndexMixin implements LinkedHashSet { - Set cast() => Set.castFrom(this, newSet: _newEmpty); - - static Set _newEmpty() => _Set(); - - // Returns a set of the same type, although this - // is not required by the spec. (For instance, always using an identity set - // would be technically correct, albeit surprising.) - Set toSet() => _Set()..addAll(this); - void addAll(Iterable other) { - if (other is _Set) { - final otherBase = other as _Set; + if (other case final DefaultSet otherBase) { // If this set is empty we might be able to block-copy from [other]. if (isEmpty && _quickCopy(otherBase)) return; // TODO(48143): Pre-grow capacity if it will reduce rehashing. } super.addAll(other); } + + @pragma("wasm:entry-point") + static DefaultSet fromWasmArray(WasmArray data) { + final set = DefaultSet(); + assert(set._index == _uninitializedHashBaseIndex); + assert(set._hashMask == _HashBase._UNINITIALIZED_HASH_MASK); + assert(set._data == _uninitializedHashBaseData); + assert(set._usedData == 0); + assert(set._deletedKeys == 0); + + set._data = data; + set._usedData = data.length; + set._createIndex(true); + + return set; + } + + bool add(E key); + + Set cast() => Set.castFrom(this, newSet: _newEmpty); + + static Set _newEmpty() => DefaultSet(); + + Set toSet() => DefaultSet()..addAll(this); } +@pragma("wasm:entry-point") base class _ConstSet extends _HashFieldBase with SetMixin, _HashBase, - _OperatorEqualsAndCanonicalHashCode, + _OperatorEqualsAndHashCode, _LinkedHashSetMixin, _UnmodifiableSetMixin, _SetCreateIndexMixin, @@ -869,10 +971,10 @@ base class _ConstSet extends _HashFieldBase Set cast() => Set.castFrom(this, newSet: _newEmpty); - static Set _newEmpty() => _Set(); + static Set _newEmpty() => DefaultSet(); // Returns a mutable set. - Set toSet() => _Set()..addAll(this); + Set toSet() => DefaultSet()..addAll(this); } mixin _SetCreateIndexMixin @@ -991,187 +1093,9 @@ base class CompactLinkedCustomHashSet extends _HashFieldBase CompactLinkedCustomHashSet( this._equality, this._hasher, bool Function(Object?)? validKey) - : _validKey = validKey ?? _TypeTest().test; + : _validKey = validKey ?? TypeTest().test; Set cast() => Set.castFrom(this); Set toSet() => CompactLinkedCustomHashSet(_equality, _hasher, _validKey) ..addAll(this); } - -mixin _UnmodifiableMapMixin implements Map { - static Never _throwUnmodifiable() { - throw UnsupportedError("Cannot change an unmodifiable set"); - } - - /// This operation is not supported by an unmodifiable map. - void operator []=(K key, V value) { - _throwUnmodifiable(); - } - - /// This operation is not supported by an unmodifiable map. - void addAll(Map other) { - _throwUnmodifiable(); - } - - /// This operation is not supported by an unmodifiable map. - void addEntries(Iterable> entries) { - _throwUnmodifiable(); - } - - /// This operation is not supported by an unmodifiable map. - void clear() { - _throwUnmodifiable(); - } - - /// This operation is not supported by an unmodifiable map. - V? remove(Object? key) { - _throwUnmodifiable(); - } - - /// This operation is not supported by an unmodifiable map. - void removeWhere(bool test(K key, V value)) { - _throwUnmodifiable(); - } - - /// This operation is not supported by an unmodifiable map. - V putIfAbsent(K key, V ifAbsent()) { - _throwUnmodifiable(); - } - - /// This operation is not supported by an unmodifiable map. - V update(K key, V update(V value), {V Function()? ifAbsent}) { - _throwUnmodifiable(); - } - - /// This operation is not supported by an unmodifiable map. - void updateAll(V update(K key, V value)) { - _throwUnmodifiable(); - } -} - -mixin _UnmodifiableSetMixin implements Set { - static Never _throwUnmodifiable() { - throw UnsupportedError("Cannot change an unmodifiable set"); - } - - /// This operation is not supported by an unmodifiable set. - bool add(E value) => _throwUnmodifiable(); - - /// This operation is not supported by an unmodifiable set. - void clear() => _throwUnmodifiable(); - - /// This operation is not supported by an unmodifiable set. - void addAll(Iterable elements) => _throwUnmodifiable(); - - /// This operation is not supported by an unmodifiable set. - void removeAll(Iterable elements) => _throwUnmodifiable(); - - /// This operation is not supported by an unmodifiable set. - void retainAll(Iterable elements) => _throwUnmodifiable(); - - /// This operation is not supported by an unmodifiable set. - void removeWhere(bool test(E element)) => _throwUnmodifiable(); - - /// This operation is not supported by an unmodifiable set. - void retainWhere(bool test(E element)) => _throwUnmodifiable(); - - /// This operation is not supported by an unmodifiable set. - bool remove(Object? value) => _throwUnmodifiable(); -} - -class _TypeTest { - bool test(v) => v is T; -} - -@pragma("wasm:entry-point") -base class WasmDefaultMap extends _HashFieldBase - with - MapMixin, - _HashBase, - _OperatorEqualsAndHashCode, - _LinkedHashMapMixin, - _MapCreateIndexMixin - implements LinkedHashMap { - @pragma("wasm:entry-point") - static WasmDefaultMap fromWasmArray(WasmArray data) { - final map = WasmDefaultMap(); - assert(map._index == _uninitializedHashBaseIndex); - assert(map._hashMask == _HashBase._UNINITIALIZED_HASH_MASK); - assert(map._data == _uninitializedHashBaseData); - assert(map._usedData == 0); - assert(map._deletedKeys == 0); - - map._data = data; - map._usedData = data.length; - map._createIndex(true); - - return map; - } - - void operator []=(K key, V value); -} - -@pragma('wasm:entry-point') -base class WasmDefaultSet extends _HashFieldBase - with - SetMixin, - _HashBase, - _OperatorEqualsAndHashCode, - _LinkedHashSetMixin, - _SetCreateIndexMixin - implements LinkedHashSet { - @pragma("wasm:entry-point") - static WasmDefaultSet fromWasmArray(WasmArray data) { - final map = WasmDefaultSet(); - assert(map._index == _uninitializedHashBaseIndex); - assert(map._hashMask == _HashBase._UNINITIALIZED_HASH_MASK); - assert(map._data == _uninitializedHashBaseData); - assert(map._usedData == 0); - assert(map._deletedKeys == 0); - - map._data = data; - map._usedData = data.length; - map._createIndex(true); - - return map; - } - - bool add(E key); - - Set cast() => Set.castFrom(this, newSet: _newEmpty); - - static Set _newEmpty() => WasmDefaultSet(); - - Set toSet() => WasmDefaultSet()..addAll(this); -} - -@pragma("wasm:entry-point") -base class WasmImmutableMap extends _HashFieldBase - with - MapMixin, - _HashBase, - _OperatorEqualsAndHashCode, - _LinkedHashMapMixin, - _MapCreateIndexMixin, - _UnmodifiableMapMixin, - _ImmutableLinkedHashMapMixin - implements LinkedHashMap {} - -@pragma("wasm:entry-point") -base class WasmImmutableSet extends _HashFieldBase - with - SetMixin, - _HashBase, - _OperatorEqualsAndHashCode, - _LinkedHashSetMixin, - _SetCreateIndexMixin, - _UnmodifiableSetMixin, - _ImmutableLinkedHashSetMixin - implements LinkedHashSet { - Set cast() => Set.castFrom(this, newSet: _newEmpty); - - static Set _newEmpty() => WasmDefaultSet(); - - // Returns a mutable set. - Set toSet() => _newEmpty()..addAll(this); -} diff --git a/sdk/lib/_internal/wasm/lib/hash_factories.dart b/sdk/lib/_internal/wasm/lib/hash_factories.dart index 7d97a37537c..07973c1591b 100644 --- a/sdk/lib/_internal/wasm/lib/hash_factories.dart +++ b/sdk/lib/_internal/wasm/lib/hash_factories.dart @@ -2,7 +2,16 @@ // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. -import "dart:_compact_hash"; +import "dart:_compact_hash" + show + DefaultMap, + DefaultSet, + CompactLinkedIdentityHashSet, + CompactLinkedCustomHashSet, + CompactLinkedCustomHashMap, + CompactLinkedIdentityHashMap, + MapInitializationFromWasmArray, + SetInitializationFromWasmArray; import "dart:_internal" show patch; import "dart:_wasm"; @@ -17,7 +26,7 @@ class LinkedHashMap { bool isValidKey(potentialKey)?}) { if (isValidKey == null) { if (hashCode == null && equals == null) { - return WasmDefaultMap(); + return DefaultMap(); } if (identical(identityHashCode, hashCode) && identical(identical, equals)) { @@ -30,7 +39,7 @@ class LinkedHashMap { } @pragma("wasm:entry-point") - static WasmDefaultMap _default() => WasmDefaultMap(); + static DefaultMap _default() => DefaultMap(); @patch factory LinkedHashMap.identity() => CompactLinkedIdentityHashMap(); @@ -45,7 +54,7 @@ class LinkedHashSet { bool isValidKey(potentialKey)?}) { if (isValidKey == null) { if (hashCode == null && equals == null) { - return WasmDefaultSet(); + return DefaultSet(); } if (identical(identityHashCode, hashCode) && identical(identical, equals)) { @@ -58,7 +67,7 @@ class LinkedHashSet { } @pragma("wasm:entry-point") - static WasmDefaultSet _default() => WasmDefaultSet(); + static DefaultSet _default() => DefaultSet(); @patch factory LinkedHashSet.identity() => CompactLinkedIdentityHashSet(); diff --git a/sdk/lib/internal/internal.dart b/sdk/lib/internal/internal.dart index 8de5ab8e8c9..3af050b93c9 100644 --- a/sdk/lib/internal/internal.dart +++ b/sdk/lib/internal/internal.dart @@ -1065,3 +1065,11 @@ bool isToStringVisiting(Object object) { /// /// Returns a future containing the result of the entry point method. external Future loadDynamicModule({Uri? uri, Uint8List? bytes}); + +/// Helper class to create `bool Function(Object?)` functions which +/// perform an `v is T` type test. +/// +/// Intended use: `TypeTest().test`. +class TypeTest { + bool test(Object? v) => v is T; +} diff --git a/sdk/lib/libraries.json b/sdk/lib/libraries.json index cc5978cbb2d..a7e3c37636a 100644 --- a/sdk/lib/libraries.json +++ b/sdk/lib/libraries.json @@ -9,6 +9,9 @@ "_builtin": { "uri": "_internal/vm/bin/builtin.dart" }, + "_compact_hash": { + "uri": "_internal/vm_shared/lib/compact_hash.dart" + }, "_internal": { "uri": "internal/internal.dart", "patches": [ @@ -25,7 +28,6 @@ "uri": "collection/collection.dart", "patches": [ "_internal/vm_shared/lib/collection_patch.dart", - "_internal/vm_shared/lib/compact_hash.dart", "_internal/vm/lib/hash_factories.dart" ] }, @@ -248,12 +250,12 @@ "_boxed_double": { "uri": "_internal/wasm/lib/boxed_double.dart" }, - "_error_utils": { - "uri": "_internal/wasm/lib/error_utils.dart" - }, "_compact_hash": { "uri": "_internal/wasm/lib/compact_hash.dart" }, + "_error_utils": { + "uri": "_internal/wasm/lib/error_utils.dart" + }, "_http": { "uri": "_http/http.dart" }, diff --git a/sdk/lib/libraries.yaml b/sdk/lib/libraries.yaml index 27338b54ba8..e9906055ad8 100644 --- a/sdk/lib/libraries.yaml +++ b/sdk/lib/libraries.yaml @@ -19,6 +19,9 @@ vm_common: _builtin: uri: "_internal/vm/bin/builtin.dart" + _compact_hash: + uri: "_internal/vm_shared/lib/compact_hash.dart" + _internal: uri: "internal/internal.dart" patches: @@ -33,7 +36,6 @@ vm_common: uri: "collection/collection.dart" patches: - "_internal/vm_shared/lib/collection_patch.dart" - - "_internal/vm_shared/lib/compact_hash.dart" - "_internal/vm/lib/hash_factories.dart" concurrent: @@ -211,10 +213,10 @@ wasm_common: uri: _internal/wasm/lib/boxed_int.dart _boxed_double: uri: _internal/wasm/lib/boxed_double.dart - _error_utils: - uri: _internal/wasm/lib/error_utils.dart _compact_hash: uri: _internal/wasm/lib/compact_hash.dart + _error_utils: + uri: _internal/wasm/lib/error_utils.dart _http: uri: _http/http.dart _internal: