1
0
mirror of https://github.com/dart-lang/sdk synced 2024-07-03 08:19:13 +00:00

[BUILD] - Initial CL to unfork the NNBD Dart SDK

- Flips the flag from --nnbd to --no-nnbd so that by default it builds
  the NNBD version
- using the --no-nnbd flag results in the SDK being built in a
  directory which has the 'Legacy' suffix added to it
  (e.g: out/DebugX64Legacy)
- the '--enable-experiment=non-nullable' flag still needs to be passed
  in during execution so that CFE runs in that mode. This is different
  from the 'null_safety' flag

Change-Id: I729630a7bd36ea7ae38134f9285b44e93c283c68
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/138902
Reviewed-by: Paul Berry <paulberry@google.com>
Reviewed-by: Sigmund Cherem <sigmund@google.com>
Reviewed-by: Johnni Winther <johnniwinther@google.com>
Reviewed-by: Régis Crelier <regis@google.com>
This commit is contained in:
asiva 2020-05-07 21:12:47 +00:00 committed by Siva Annamalai
parent 39e0e75fcf
commit 03ce33f80c
34 changed files with 2060 additions and 304 deletions

View File

@ -80,13 +80,13 @@ group("runtime_precompiled") {
]
}
if (use_nnbd) {
if (dont_use_nnbd) {
group("create_sdk") {
public_deps = [ "sdk_nnbd:create_sdk" ]
public_deps = [ "sdk:create_sdk" ]
}
} else {
group("create_sdk") {
public_deps = [ "sdk:create_sdk" ]
public_deps = [ "sdk_nnbd:create_sdk" ]
}
}

View File

@ -11,9 +11,7 @@ void main() {
group('migrate', defineMigrateTests, timeout: longTimeout);
}
// TODO(jcollins-g): Set to true and/or remove when when NNBD is enabled in the
// SDK running this test.
bool _nnbdIsEnabled = false;
bool _nnbdIsEnabled = true;
void defineMigrateTests() {
final didYouForgetToRunPubGet = contains('Did you forget to run "pub get"?');

View File

@ -75,7 +75,12 @@ class SourceToSummaryDillStep implements IOModularStep {
List<String> extraArgs;
if (module.isSdk) {
sources = ['dart:core'];
extraArgs = ['--libraries-file', '$rootScheme:///sdk/lib/libraries.json'];
extraArgs = [
'--libraries-file',
'$rootScheme:///sdk_nnbd/lib/libraries.json',
'--enable-experiment',
'non-nullable',
];
assert(transitiveDependencies.isEmpty);
} else {
sources = module.sources.map(sourceToImportUri).toList();
@ -149,7 +154,13 @@ class DDCStep implements IOModularStep {
List<String> extraArgs;
if (module.isSdk) {
sources = ['dart:core'];
extraArgs = ['--compile-sdk'];
extraArgs = [
'--compile-sdk',
'--libraries-file',
'$rootScheme:///sdk_nnbd/lib/libraries.json',
'--enable-experiment',
'non-nullable',
];
assert(transitiveDependencies.isEmpty);
} else {
var sdkModule = module.dependencies.firstWhere((m) => m.isSdk);
@ -229,6 +240,8 @@ class RunD8 implements IOModularStep {
var runjs = '''
import { dart, _isolate_helper } from 'dart_sdk.js';
import { main } from 'main.js';
// Run with weak null safety.
dart.nullSafety(false);
_isolate_helper.startRootIsolate(() => {}, []);
main.main();
''';

View File

@ -468,15 +468,6 @@ class TestConfiguration {
var normal = '$result$arch';
var cross = '${result}X$arch';
// TODO(38701): When enabling the NNBD experiment, we need to use the
// forked version of the SDK core libraries that have NNBD support. Remove
// this once the forked SDK at `<repo>/sdk_nnbd` has been merged back with
// `<repo>/sdk`.
if (experiments.contains("non-nullable")) {
normal += "NNBD";
cross += "NNBD";
}
var outDir = system.outputDirectory;
var normalDir = Directory(Path('$outDir$normal').toNativePath());
var crossDir = Directory(Path('$outDir$cross').toNativePath());

View File

@ -259,6 +259,46 @@ ConstantPool {
[1] = Reserved
}
Function 'get:_identityHashCode', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::int
Function '_instanceOf', abstract, debuggable
parameters [dynamic 'instantiatorTypeArguments', dynamic 'functionTypeArguments', dynamic 'type'] (required: 3)
return-type dart:core::bool
Function '_simpleInstanceOf', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '_simpleInstanceOfTrue', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '_simpleInstanceOfFalse', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '==', abstract, debuggable
parameters [dynamic 'other'] (required: 1)
return-type dart:core::bool
Function 'get:hashCode', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::int
Function 'toString', abstract, debuggable
parameters [] (required: 0)
return-type dart:core::String
Function 'noSuchMethod', abstract, debuggable
parameters [dart:core::Invocation 'invocation'] (required: 1)
return-type dynamic
Function 'get:runtimeType', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::Type
Class '_NamespaceImpl', script = '#lib'
extends dart:core::Object
implements [#lib::_Namespace]
@ -412,6 +452,46 @@ ConstantPool {
[3] = Reserved
}
Function 'get:_identityHashCode', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::int
Function '_instanceOf', abstract, debuggable
parameters [dynamic 'instantiatorTypeArguments', dynamic 'functionTypeArguments', dynamic 'type'] (required: 3)
return-type dart:core::bool
Function '_simpleInstanceOf', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '_simpleInstanceOfTrue', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '_simpleInstanceOfFalse', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '==', abstract, debuggable
parameters [dynamic 'other'] (required: 1)
return-type dart:core::bool
Function 'get:hashCode', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::int
Function 'toString', abstract, debuggable
parameters [] (required: 0)
return-type dart:core::String
Function 'noSuchMethod', abstract, debuggable
parameters [dart:core::Invocation 'invocation'] (required: 1)
return-type dynamic
Function 'get:runtimeType', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::Type
Class '_Namespace', script = '#lib'
extends dart:core::Object
@ -485,6 +565,46 @@ ConstantPool {
[1] = Reserved
}
Function 'get:_identityHashCode', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::int
Function '_instanceOf', abstract, debuggable
parameters [dynamic 'instantiatorTypeArguments', dynamic 'functionTypeArguments', dynamic 'type'] (required: 3)
return-type dart:core::bool
Function '_simpleInstanceOf', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '_simpleInstanceOfTrue', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '_simpleInstanceOfFalse', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '==', abstract, debuggable
parameters [dynamic 'other'] (required: 1)
return-type dart:core::bool
Function 'get:hashCode', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::int
Function 'toString', abstract, debuggable
parameters [] (required: 0)
return-type dart:core::String
Function 'noSuchMethod', abstract, debuggable
parameters [dart:core::Invocation 'invocation'] (required: 1)
return-type dynamic
Function 'get:runtimeType', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::Type
Class 'VMLibraryHooks', script = '#lib'
extends dart:core::Object
@ -585,6 +705,46 @@ ConstantPool {
[3] = Reserved
}
Function 'get:_identityHashCode', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::int
Function '_instanceOf', abstract, debuggable
parameters [dynamic 'instantiatorTypeArguments', dynamic 'functionTypeArguments', dynamic 'type'] (required: 3)
return-type dart:core::bool
Function '_simpleInstanceOf', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '_simpleInstanceOfTrue', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '_simpleInstanceOfFalse', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '==', abstract, debuggable
parameters [dynamic 'other'] (required: 1)
return-type dart:core::bool
Function 'get:hashCode', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::int
Function 'toString', abstract, debuggable
parameters [] (required: 0)
return-type dart:core::String
Function 'noSuchMethod', abstract, debuggable
parameters [dart:core::Invocation 'invocation'] (required: 1)
return-type dynamic
Function 'get:runtimeType', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::Type
Class 'Stdin', script = '#lib'
extends dart:core::Object
@ -607,6 +767,46 @@ ConstantPool {
[1] = Reserved
}
Function 'get:_identityHashCode', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::int
Function '_instanceOf', abstract, debuggable
parameters [dynamic 'instantiatorTypeArguments', dynamic 'functionTypeArguments', dynamic 'type'] (required: 3)
return-type dart:core::bool
Function '_simpleInstanceOf', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '_simpleInstanceOfTrue', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '_simpleInstanceOfFalse', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '==', abstract, debuggable
parameters [dynamic 'other'] (required: 1)
return-type dart:core::bool
Function 'get:hashCode', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::int
Function 'toString', abstract, debuggable
parameters [] (required: 0)
return-type dart:core::String
Function 'noSuchMethod', abstract, debuggable
parameters [dart:core::Invocation 'invocation'] (required: 1)
return-type dynamic
Function 'get:runtimeType', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::Type
Class '_StdIOUtils', script = '#lib'
extends dart:core::Object
@ -644,6 +844,46 @@ ConstantPool {
}
Function 'get:_identityHashCode', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::int
Function '_instanceOf', abstract, debuggable
parameters [dynamic 'instantiatorTypeArguments', dynamic 'functionTypeArguments', dynamic 'type'] (required: 3)
return-type dart:core::bool
Function '_simpleInstanceOf', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '_simpleInstanceOfTrue', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '_simpleInstanceOfFalse', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '==', abstract, debuggable
parameters [dynamic 'other'] (required: 1)
return-type dart:core::bool
Function 'get:hashCode', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::int
Function 'toString', abstract, debuggable
parameters [] (required: 0)
return-type dart:core::String
Function 'noSuchMethod', abstract, debuggable
parameters [dart:core::Invocation 'invocation'] (required: 1)
return-type dynamic
Function 'get:runtimeType', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::Type
}
]library #lib from "#lib" as #lib {
@ -653,6 +893,16 @@ ConstantPool {
synthetic constructor •() → #lib::_ScheduleImmediate*
: super dart.core::Object::•()
;
abstract member-signature get _identityHashCode() → dart.core::int*;
abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOf(dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOfTrue(dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOfFalse(dynamic type) → dart.core::bool*;
abstract member-signature operator ==(dynamic other) → dart.core::bool*;
abstract member-signature get hashCode() → dart.core::int*;
abstract member-signature method toString() → dart.core::String*;
abstract member-signature method noSuchMethod(dart.core::Invocation* invocation) → dynamic;
abstract member-signature get runtimeType() → dart.core::Type*;
}
class _NamespaceImpl extends dart.core::Object implements #lib::_Namespace {
static field #lib::_NamespaceImpl* _cachedNamespace = null;
@ -669,13 +919,23 @@ ConstantPool {
#lib::_NamespaceImpl::_cachedNamespace = #lib::_NamespaceImpl::_create(new #lib::_NamespaceImpl::_(), namespace);
}
static get _namespace() → #lib::_NamespaceImpl* {
if(#lib::_NamespaceImpl::_cachedNamespace.{dart.core::Object::==}(null)) {
if(#lib::_NamespaceImpl::_cachedNamespace.{#lib::_NamespaceImpl::==}(null)) {
#lib::_NamespaceImpl::_cachedNamespace = #lib::_NamespaceImpl::_create(new #lib::_NamespaceImpl::_(), #lib::_NamespaceImpl::_getDefault());
}
return #lib::_NamespaceImpl::_cachedNamespace;
}
static get _namespacePointer() → dart.core::int*
return #lib::_NamespaceImpl::_getPointer(#lib::_NamespaceImpl::_namespace);
abstract member-signature get _identityHashCode() → dart.core::int*;
abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOf(dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOfTrue(dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOfFalse(dynamic type) → dart.core::bool*;
abstract member-signature operator ==(dynamic other) → dart.core::bool*;
abstract member-signature get hashCode() → dart.core::int*;
abstract member-signature method toString() → dart.core::String*;
abstract member-signature method noSuchMethod(dart.core::Invocation* invocation) → dynamic;
abstract member-signature get runtimeType() → dart.core::Type*;
}
class _Namespace extends dart.core::Object {
synthetic constructor •() → #lib::_Namespace*
@ -688,6 +948,16 @@ ConstantPool {
return #lib::_NamespaceImpl::_namespace;
static get _namespacePointer() → dart.core::int*
return #lib::_NamespaceImpl::_namespacePointer;
abstract member-signature get _identityHashCode() → dart.core::int*;
abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOf(dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOfTrue(dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOfFalse(dynamic type) → dart.core::bool*;
abstract member-signature operator ==(dynamic other) → dart.core::bool*;
abstract member-signature get hashCode() → dart.core::int*;
abstract member-signature method toString() → dart.core::String*;
abstract member-signature method noSuchMethod(dart.core::Invocation* invocation) → dynamic;
abstract member-signature get runtimeType() → dart.core::Type*;
}
class VMLibraryHooks extends dart.core::Object {
static field dynamic timerFactory = null;
@ -714,11 +984,31 @@ ConstantPool {
}
return #lib::VMLibraryHooks::_cachedScript;
}
abstract member-signature get _identityHashCode() → dart.core::int*;
abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOf(dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOfTrue(dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOfFalse(dynamic type) → dart.core::bool*;
abstract member-signature operator ==(dynamic other) → dart.core::bool*;
abstract member-signature get hashCode() → dart.core::int*;
abstract member-signature method toString() → dart.core::String*;
abstract member-signature method noSuchMethod(dart.core::Invocation* invocation) → dynamic;
abstract member-signature get runtimeType() → dart.core::Type*;
}
class Stdin extends dart.core::Object {
synthetic constructor •() → #lib::Stdin*
: super dart.core::Object::•()
;
abstract member-signature get _identityHashCode() → dart.core::int*;
abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOf(dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOfTrue(dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOfFalse(dynamic type) → dart.core::bool*;
abstract member-signature operator ==(dynamic other) → dart.core::bool*;
abstract member-signature get hashCode() → dart.core::int*;
abstract member-signature method toString() → dart.core::String*;
abstract member-signature method noSuchMethod(dart.core::Invocation* invocation) → dynamic;
abstract member-signature get runtimeType() → dart.core::Type*;
}
class _StdIOUtils extends dart.core::Object {
synthetic constructor •() → #lib::_StdIOUtils*
@ -726,6 +1016,16 @@ ConstantPool {
;
static method _getStdioInputStream(dart.core::int* fd) → #lib::Stdin*
return null;
abstract member-signature get _identityHashCode() → dart.core::int*;
abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOf(dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOfTrue(dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOfFalse(dynamic type) → dart.core::bool*;
abstract member-signature operator ==(dynamic other) → dart.core::bool*;
abstract member-signature get hashCode() → dart.core::int*;
abstract member-signature method toString() → dart.core::String*;
abstract member-signature method noSuchMethod(dart.core::Invocation* invocation) → dynamic;
abstract member-signature get runtimeType() → dart.core::Type*;
}
static field dart.core::int* _stdinFD = 0;
static field dart.core::int* _stdoutFD = 1;
@ -759,7 +1059,7 @@ ConstantPool {
#lib::VMLibraryHooks::platformScript = #C10;
}
static get stdin() → #lib::Stdin* {
#lib::_stdin.{dart.core::Object::==}(null) ?{#lib::Stdin*} #lib::_stdin = #lib::_StdIOUtils::_getStdioInputStream(#lib::_stdinFD) : null;
#lib::_stdin.{#lib::Stdin::==}(null) ?{#lib::Stdin*} #lib::_stdin = #lib::_StdIOUtils::_getStdioInputStream(#lib::_stdinFD) : null;
return #lib::_stdin;
}
static method main() → dynamic {}

View File

@ -383,6 +383,46 @@ ConstantPool {
[1] = Reserved
}
Function 'get:_identityHashCode', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::int
Function '_instanceOf', abstract, debuggable
parameters [dynamic 'instantiatorTypeArguments', dynamic 'functionTypeArguments', dynamic 'type'] (required: 3)
return-type dart:core::bool
Function '_simpleInstanceOf', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '_simpleInstanceOfTrue', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '_simpleInstanceOfFalse', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '==', abstract, debuggable
parameters [dynamic 'other'] (required: 1)
return-type dart:core::bool
Function 'get:hashCode', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::int
Function 'toString', abstract, debuggable
parameters [] (required: 0)
return-type dart:core::String
Function 'noSuchMethod', abstract, debuggable
parameters [dart:core::Invocation 'invocation'] (required: 1)
return-type dynamic
Function 'get:runtimeType', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::Type
Class 'C2', script = '#lib'
extends dart:core::Object
@ -405,6 +445,46 @@ ConstantPool {
[1] = Reserved
}
Function 'get:_identityHashCode', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::int
Function '_instanceOf', abstract, debuggable
parameters [dynamic 'instantiatorTypeArguments', dynamic 'functionTypeArguments', dynamic 'type'] (required: 3)
return-type dart:core::bool
Function '_simpleInstanceOf', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '_simpleInstanceOfTrue', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '_simpleInstanceOfFalse', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '==', abstract, debuggable
parameters [dynamic 'other'] (required: 1)
return-type dart:core::bool
Function 'get:hashCode', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::int
Function 'toString', abstract, debuggable
parameters [] (required: 0)
return-type dart:core::String
Function 'noSuchMethod', abstract, debuggable
parameters [dart:core::Invocation 'invocation'] (required: 1)
return-type dynamic
Function 'get:runtimeType', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::Type
Class 'C3', script = '#lib'
extends dart:core::Object
@ -427,6 +507,46 @@ ConstantPool {
[1] = Reserved
}
Function 'get:_identityHashCode', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::int
Function '_instanceOf', abstract, debuggable
parameters [dynamic 'instantiatorTypeArguments', dynamic 'functionTypeArguments', dynamic 'type'] (required: 3)
return-type dart:core::bool
Function '_simpleInstanceOf', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '_simpleInstanceOfTrue', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '_simpleInstanceOfFalse', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '==', abstract, debuggable
parameters [dynamic 'other'] (required: 1)
return-type dart:core::bool
Function 'get:hashCode', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::int
Function 'toString', abstract, debuggable
parameters [] (required: 0)
return-type dart:core::String
Function 'noSuchMethod', abstract, debuggable
parameters [dart:core::Invocation 'invocation'] (required: 1)
return-type dynamic
Function 'get:runtimeType', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::Type
Class 'C4', script = '#lib'
extends dart:core::Object
@ -449,6 +569,46 @@ ConstantPool {
[1] = Reserved
}
Function 'get:_identityHashCode', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::int
Function '_instanceOf', abstract, debuggable
parameters [dynamic 'instantiatorTypeArguments', dynamic 'functionTypeArguments', dynamic 'type'] (required: 3)
return-type dart:core::bool
Function '_simpleInstanceOf', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '_simpleInstanceOfTrue', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '_simpleInstanceOfFalse', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '==', abstract, debuggable
parameters [dynamic 'other'] (required: 1)
return-type dart:core::bool
Function 'get:hashCode', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::int
Function 'toString', abstract, debuggable
parameters [] (required: 0)
return-type dart:core::String
Function 'noSuchMethod', abstract, debuggable
parameters [dart:core::Invocation 'invocation'] (required: 1)
return-type dynamic
Function 'get:runtimeType', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::Type
Class 'C5', script = '#lib'
extends dart:core::Object
@ -471,6 +631,46 @@ ConstantPool {
[1] = Reserved
}
Function 'get:_identityHashCode', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::int
Function '_instanceOf', abstract, debuggable
parameters [dynamic 'instantiatorTypeArguments', dynamic 'functionTypeArguments', dynamic 'type'] (required: 3)
return-type dart:core::bool
Function '_simpleInstanceOf', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '_simpleInstanceOfTrue', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '_simpleInstanceOfFalse', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '==', abstract, debuggable
parameters [dynamic 'other'] (required: 1)
return-type dart:core::bool
Function 'get:hashCode', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::int
Function 'toString', abstract, debuggable
parameters [] (required: 0)
return-type dart:core::String
Function 'noSuchMethod', abstract, debuggable
parameters [dart:core::Invocation 'invocation'] (required: 1)
return-type dynamic
Function 'get:runtimeType', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::Type
Class 'C6', script = '#lib'
extends dart:core::Object
@ -493,6 +693,46 @@ ConstantPool {
[1] = Reserved
}
Function 'get:_identityHashCode', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::int
Function '_instanceOf', abstract, debuggable
parameters [dynamic 'instantiatorTypeArguments', dynamic 'functionTypeArguments', dynamic 'type'] (required: 3)
return-type dart:core::bool
Function '_simpleInstanceOf', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '_simpleInstanceOfTrue', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '_simpleInstanceOfFalse', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '==', abstract, debuggable
parameters [dynamic 'other'] (required: 1)
return-type dart:core::bool
Function 'get:hashCode', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::int
Function 'toString', abstract, debuggable
parameters [] (required: 0)
return-type dart:core::String
Function 'noSuchMethod', abstract, debuggable
parameters [dart:core::Invocation 'invocation'] (required: 1)
return-type dynamic
Function 'get:runtimeType', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::Type
Class 'C7', script = '#lib'
extends dart:core::Object
@ -515,6 +755,46 @@ ConstantPool {
[1] = Reserved
}
Function 'get:_identityHashCode', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::int
Function '_instanceOf', abstract, debuggable
parameters [dynamic 'instantiatorTypeArguments', dynamic 'functionTypeArguments', dynamic 'type'] (required: 3)
return-type dart:core::bool
Function '_simpleInstanceOf', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '_simpleInstanceOfTrue', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '_simpleInstanceOfFalse', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '==', abstract, debuggable
parameters [dynamic 'other'] (required: 1)
return-type dart:core::bool
Function 'get:hashCode', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::int
Function 'toString', abstract, debuggable
parameters [] (required: 0)
return-type dart:core::String
Function 'noSuchMethod', abstract, debuggable
parameters [dart:core::Invocation 'invocation'] (required: 1)
return-type dynamic
Function 'get:runtimeType', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::Type
Class 'C8', script = '#lib'
extends dart:core::Object
@ -537,6 +817,46 @@ ConstantPool {
[1] = Reserved
}
Function 'get:_identityHashCode', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::int
Function '_instanceOf', abstract, debuggable
parameters [dynamic 'instantiatorTypeArguments', dynamic 'functionTypeArguments', dynamic 'type'] (required: 3)
return-type dart:core::bool
Function '_simpleInstanceOf', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '_simpleInstanceOfTrue', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '_simpleInstanceOfFalse', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '==', abstract, debuggable
parameters [dynamic 'other'] (required: 1)
return-type dart:core::bool
Function 'get:hashCode', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::int
Function 'toString', abstract, debuggable
parameters [] (required: 0)
return-type dart:core::String
Function 'noSuchMethod', abstract, debuggable
parameters [dart:core::Invocation 'invocation'] (required: 1)
return-type dynamic
Function 'get:runtimeType', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::Type
Class 'A', script = '#lib'
type-params <dart:core::Object T1, dart:core::Object T2> (args: 2)
extends dart:core::Object
@ -846,6 +1166,46 @@ ClosureCode {
ReturnTOS
}
Function 'get:_identityHashCode', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::int
Function '_instanceOf', abstract, debuggable
parameters [dynamic 'instantiatorTypeArguments', dynamic 'functionTypeArguments', dynamic 'type'] (required: 3)
return-type dart:core::bool
Function '_simpleInstanceOf', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '_simpleInstanceOfTrue', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '_simpleInstanceOfFalse', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '==', abstract, debuggable
parameters [dynamic 'other'] (required: 1)
return-type dart:core::bool
Function 'get:hashCode', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::int
Function 'toString', abstract, debuggable
parameters [] (required: 0)
return-type dart:core::String
Function 'noSuchMethod', abstract, debuggable
parameters [dart:core::Invocation 'invocation'] (required: 1)
return-type dynamic
Function 'get:runtimeType', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::Type
Class 'B', script = '#lib'
extends dart:core::Object
@ -1101,6 +1461,46 @@ ClosureCode {
ReturnTOS
}
Function 'get:_identityHashCode', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::int
Function '_instanceOf', abstract, debuggable
parameters [dynamic 'instantiatorTypeArguments', dynamic 'functionTypeArguments', dynamic 'type'] (required: 3)
return-type dart:core::bool
Function '_simpleInstanceOf', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '_simpleInstanceOfTrue', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '_simpleInstanceOfFalse', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '==', abstract, debuggable
parameters [dynamic 'other'] (required: 1)
return-type dart:core::bool
Function 'get:hashCode', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::int
Function 'toString', abstract, debuggable
parameters [] (required: 0)
return-type dart:core::String
Function 'noSuchMethod', abstract, debuggable
parameters [dart:core::Invocation 'invocation'] (required: 1)
return-type dynamic
Function 'get:runtimeType', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::Type
Class 'C', script = '#lib'
extends dart:core::Object
@ -1380,6 +1780,46 @@ ClosureCode {
ReturnTOS
}
Function 'get:_identityHashCode', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::int
Function '_instanceOf', abstract, debuggable
parameters [dynamic 'instantiatorTypeArguments', dynamic 'functionTypeArguments', dynamic 'type'] (required: 3)
return-type dart:core::bool
Function '_simpleInstanceOf', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '_simpleInstanceOfTrue', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '_simpleInstanceOfFalse', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '==', abstract, debuggable
parameters [dynamic 'other'] (required: 1)
return-type dart:core::bool
Function 'get:hashCode', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::int
Function 'toString', abstract, debuggable
parameters [] (required: 0)
return-type dart:core::String
Function 'noSuchMethod', abstract, debuggable
parameters [dart:core::Invocation 'invocation'] (required: 1)
return-type dynamic
Function 'get:runtimeType', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::Type
Class 'D', script = '#lib'
type-params <dart:core::Object T> (args: 1)
extends dart:core::Object
@ -1565,6 +2005,46 @@ ClosureCode {
ReturnTOS
}
Function 'get:_identityHashCode', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::int
Function '_instanceOf', abstract, debuggable
parameters [dynamic 'instantiatorTypeArguments', dynamic 'functionTypeArguments', dynamic 'type'] (required: 3)
return-type dart:core::bool
Function '_simpleInstanceOf', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '_simpleInstanceOfTrue', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '_simpleInstanceOfFalse', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '==', abstract, debuggable
parameters [dynamic 'other'] (required: 1)
return-type dart:core::bool
Function 'get:hashCode', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::int
Function 'toString', abstract, debuggable
parameters [] (required: 0)
return-type dart:core::String
Function 'noSuchMethod', abstract, debuggable
parameters [dart:core::Invocation 'invocation'] (required: 1)
return-type dynamic
Function 'get:runtimeType', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::Type
Class 'E', script = '#lib', abstract
extends dart:core::Object
@ -1715,6 +2195,46 @@ ConstantPool {
}
Function 'get:_identityHashCode', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::int
Function '_instanceOf', abstract, debuggable
parameters [dynamic 'instantiatorTypeArguments', dynamic 'functionTypeArguments', dynamic 'type'] (required: 3)
return-type dart:core::bool
Function '_simpleInstanceOf', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '_simpleInstanceOfTrue', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '_simpleInstanceOfFalse', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '==', abstract, debuggable
parameters [dynamic 'other'] (required: 1)
return-type dart:core::bool
Function 'get:hashCode', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::int
Function 'toString', abstract, debuggable
parameters [] (required: 0)
return-type dart:core::String
Function 'noSuchMethod', abstract, debuggable
parameters [dart:core::Invocation 'invocation'] (required: 1)
return-type dynamic
Function 'get:runtimeType', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::Type
}
]library #lib from "#lib" as #lib {
@ -1723,41 +2243,121 @@ ConstantPool {
synthetic constructor •() → #lib::C1*
: super dart.core::Object::•()
;
abstract member-signature get _identityHashCode() → dart.core::int*;
abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOf(dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOfTrue(dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOfFalse(dynamic type) → dart.core::bool*;
abstract member-signature operator ==(dynamic other) → dart.core::bool*;
abstract member-signature get hashCode() → dart.core::int*;
abstract member-signature method toString() → dart.core::String*;
abstract member-signature method noSuchMethod(dart.core::Invocation* invocation) → dynamic;
abstract member-signature get runtimeType() → dart.core::Type*;
}
class C2 extends dart.core::Object {
synthetic constructor •() → #lib::C2*
: super dart.core::Object::•()
;
abstract member-signature get _identityHashCode() → dart.core::int*;
abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOf(dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOfTrue(dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOfFalse(dynamic type) → dart.core::bool*;
abstract member-signature operator ==(dynamic other) → dart.core::bool*;
abstract member-signature get hashCode() → dart.core::int*;
abstract member-signature method toString() → dart.core::String*;
abstract member-signature method noSuchMethod(dart.core::Invocation* invocation) → dynamic;
abstract member-signature get runtimeType() → dart.core::Type*;
}
class C3 extends dart.core::Object {
synthetic constructor •() → #lib::C3*
: super dart.core::Object::•()
;
abstract member-signature get _identityHashCode() → dart.core::int*;
abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOf(dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOfTrue(dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOfFalse(dynamic type) → dart.core::bool*;
abstract member-signature operator ==(dynamic other) → dart.core::bool*;
abstract member-signature get hashCode() → dart.core::int*;
abstract member-signature method toString() → dart.core::String*;
abstract member-signature method noSuchMethod(dart.core::Invocation* invocation) → dynamic;
abstract member-signature get runtimeType() → dart.core::Type*;
}
class C4 extends dart.core::Object {
synthetic constructor •() → #lib::C4*
: super dart.core::Object::•()
;
abstract member-signature get _identityHashCode() → dart.core::int*;
abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOf(dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOfTrue(dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOfFalse(dynamic type) → dart.core::bool*;
abstract member-signature operator ==(dynamic other) → dart.core::bool*;
abstract member-signature get hashCode() → dart.core::int*;
abstract member-signature method toString() → dart.core::String*;
abstract member-signature method noSuchMethod(dart.core::Invocation* invocation) → dynamic;
abstract member-signature get runtimeType() → dart.core::Type*;
}
class C5 extends dart.core::Object {
synthetic constructor •() → #lib::C5*
: super dart.core::Object::•()
;
abstract member-signature get _identityHashCode() → dart.core::int*;
abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOf(dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOfTrue(dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOfFalse(dynamic type) → dart.core::bool*;
abstract member-signature operator ==(dynamic other) → dart.core::bool*;
abstract member-signature get hashCode() → dart.core::int*;
abstract member-signature method toString() → dart.core::String*;
abstract member-signature method noSuchMethod(dart.core::Invocation* invocation) → dynamic;
abstract member-signature get runtimeType() → dart.core::Type*;
}
class C6 extends dart.core::Object {
synthetic constructor •() → #lib::C6*
: super dart.core::Object::•()
;
abstract member-signature get _identityHashCode() → dart.core::int*;
abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOf(dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOfTrue(dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOfFalse(dynamic type) → dart.core::bool*;
abstract member-signature operator ==(dynamic other) → dart.core::bool*;
abstract member-signature get hashCode() → dart.core::int*;
abstract member-signature method toString() → dart.core::String*;
abstract member-signature method noSuchMethod(dart.core::Invocation* invocation) → dynamic;
abstract member-signature get runtimeType() → dart.core::Type*;
}
class C7 extends dart.core::Object {
synthetic constructor •() → #lib::C7*
: super dart.core::Object::•()
;
abstract member-signature get _identityHashCode() → dart.core::int*;
abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOf(dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOfTrue(dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOfFalse(dynamic type) → dart.core::bool*;
abstract member-signature operator ==(dynamic other) → dart.core::bool*;
abstract member-signature get hashCode() → dart.core::int*;
abstract member-signature method toString() → dart.core::String*;
abstract member-signature method noSuchMethod(dart.core::Invocation* invocation) → dynamic;
abstract member-signature get runtimeType() → dart.core::Type*;
}
class C8 extends dart.core::Object {
synthetic constructor •() → #lib::C8*
: super dart.core::Object::•()
;
abstract member-signature get _identityHashCode() → dart.core::int*;
abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOf(dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOfTrue(dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOfFalse(dynamic type) → dart.core::bool*;
abstract member-signature operator ==(dynamic other) → dart.core::bool*;
abstract member-signature get hashCode() → dart.core::int*;
abstract member-signature method toString() → dart.core::String*;
abstract member-signature method noSuchMethod(dart.core::Invocation* invocation) → dynamic;
abstract member-signature get runtimeType() → dart.core::Type*;
}
class A<T1 extends dart.core::Object* = dynamic, T2 extends dart.core::Object* = dynamic> extends dart.core::Object {
synthetic constructor •() → #lib::A<#lib::A::T1*, #lib::A::T2*>*
@ -1778,6 +2378,16 @@ ConstantPool {
[@vm.call-site-attributes.metadata=receiverType:FunctionType(void Function<T5, T6>()*)] nested1.call<#lib::C5*, #lib::C6*>();
[@vm.call-site-attributes.metadata=receiverType:FunctionType(void Function<T5, T6>()*)] nested1.call<dart.core::List<#lib::C5*>*, dart.core::List<#lib::C6*>*>();
}
abstract member-signature get _identityHashCode() → dart.core::int*;
abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOf(dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOfTrue(dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOfFalse(dynamic type) → dart.core::bool*;
abstract member-signature operator ==(dynamic other) → dart.core::bool*;
abstract member-signature get hashCode() → dart.core::int*;
abstract member-signature method toString() → dart.core::String*;
abstract member-signature method noSuchMethod(dart.core::Invocation* invocation) → dynamic;
abstract member-signature get runtimeType() → dart.core::Type*;
}
class B extends dart.core::Object {
field dart.core::int* foo = null;
@ -1817,6 +2427,16 @@ ConstantPool {
[@vm.call-site-attributes.metadata=receiverType:FunctionType(Null? Function()*)] closure3.call();
}
}
abstract member-signature get _identityHashCode() → dart.core::int*;
abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOf(dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOfTrue(dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOfFalse(dynamic type) → dart.core::bool*;
abstract member-signature operator ==(dynamic other) → dart.core::bool*;
abstract member-signature get hashCode() → dart.core::int*;
abstract member-signature method toString() → dart.core::String*;
abstract member-signature method noSuchMethod(dart.core::Invocation* invocation) → dynamic;
abstract member-signature get runtimeType() → dart.core::Type*;
}
class C extends dart.core::Object {
synthetic constructor •() → #lib::C*
@ -1848,6 +2468,16 @@ ConstantPool {
}
}
}
abstract member-signature get _identityHashCode() → dart.core::int*;
abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOf(dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOfTrue(dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOfFalse(dynamic type) → dart.core::bool*;
abstract member-signature operator ==(dynamic other) → dart.core::bool*;
abstract member-signature get hashCode() → dart.core::int*;
abstract member-signature method toString() → dart.core::String*;
abstract member-signature method noSuchMethod(dart.core::Invocation* invocation) → dynamic;
abstract member-signature get runtimeType() → dart.core::Type*;
}
class D<T extends dart.core::Object* = dynamic> extends dart.core::Object {
synthetic constructor •() → #lib::D<#lib::D::T*>*
@ -1862,6 +2492,16 @@ ConstantPool {
[@vm.call-site-attributes.metadata=receiverType:FunctionType(Null? Function()*)] inner.call();
};
}
abstract member-signature get _identityHashCode() → dart.core::int*;
abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOf(dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOfTrue(dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOfFalse(dynamic type) → dart.core::bool*;
abstract member-signature operator ==(dynamic other) → dart.core::bool*;
abstract member-signature get hashCode() → dart.core::int*;
abstract member-signature method toString() → dart.core::String*;
abstract member-signature method noSuchMethod(dart.core::Invocation* invocation) → dynamic;
abstract member-signature get runtimeType() → dart.core::Type*;
}
abstract class E extends dart.core::Object {
field (dart.core::int*, dart.core::int*) →* dart.core::int* foo1 = null;
@ -1878,6 +2518,16 @@ ConstantPool {
return let final dart.core::int* #t3 = this.{#lib::E::evalArg1}() in let final dart.core::int* #t4 = this.{#lib::E::evalArg2}() in [@vm.call-site-attributes.metadata=receiverType:FunctionType(int* Function<T>(T*, T*)*)] this.{#lib::E::foo2}.call<dart.core::int*>(#t3, #t4);
method testCallThroughGetter3() → dart.core::int*
return let final #lib::E* #t5 = this.{#lib::E::getE}() in let final dart.core::int* #t6 = this.{#lib::E::evalArg1}() in let final dart.core::int* #t7 = this.{#lib::E::evalArg2}() in [@vm.call-site-attributes.metadata=receiverType:FunctionType(int* Function<T>(T*, T*)*)] #t5.{#lib::E::foo2}.call<dart.core::int*>(#t6, #t7);
abstract member-signature get _identityHashCode() → dart.core::int*;
abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOf(dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOfTrue(dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOfFalse(dynamic type) → dart.core::bool*;
abstract member-signature operator ==(dynamic other) → dart.core::bool*;
abstract member-signature get hashCode() → dart.core::int*;
abstract member-signature method toString() → dart.core::String*;
abstract member-signature method noSuchMethod(dart.core::Invocation* invocation) → dynamic;
abstract member-signature get runtimeType() → dart.core::Type*;
}
static method simpleClosure() → dart.core::int* {
dart.core::int* x = 5;

View File

@ -159,6 +159,46 @@ ConstantPool {
[1] = Reserved
}
Function 'get:_identityHashCode', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::int
Function '_instanceOf', abstract, debuggable
parameters [dynamic 'instantiatorTypeArguments', dynamic 'functionTypeArguments', dynamic 'type'] (required: 3)
return-type dart:core::bool
Function '_simpleInstanceOf', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '_simpleInstanceOfTrue', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '_simpleInstanceOfFalse', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '==', abstract, debuggable
parameters [dynamic 'other'] (required: 1)
return-type dart:core::bool
Function 'get:hashCode', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::int
Function 'toString', abstract, debuggable
parameters [] (required: 0)
return-type dart:core::String
Function 'noSuchMethod', abstract, debuggable
parameters [dart:core::Invocation 'invocation'] (required: 1)
return-type dynamic
Function 'get:runtimeType', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::Type
Class 'B', script = '#lib'
extends #lib::A
@ -246,6 +286,16 @@ ConstantPool {
constructor redirecting2(dart.core::int* a, dart.core::int* b, dart.core::int* c) → #lib::A*
: this #lib::A::constr2(a, b.{dart.core::num::*}(c))
;
abstract member-signature get _identityHashCode() → dart.core::int*;
abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOf(dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOfTrue(dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOfFalse(dynamic type) → dart.core::bool*;
abstract member-signature operator ==(dynamic other) → dart.core::bool*;
abstract member-signature get hashCode() → dart.core::int*;
abstract member-signature method toString() → dart.core::String*;
abstract member-signature method noSuchMethod(dart.core::Invocation* invocation) → dynamic;
abstract member-signature get runtimeType() → dart.core::Type*;
}
class B extends #lib::A {
field dart.core::int* foo6 = 46;

View File

@ -280,6 +280,46 @@ ConstantPool {
[10] = Reserved
}
Function 'get:_identityHashCode', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::int
Function '_instanceOf', abstract, debuggable
parameters [dynamic 'instantiatorTypeArguments', dynamic 'functionTypeArguments', dynamic 'type'] (required: 3)
return-type dart:core::bool
Function '_simpleInstanceOf', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '_simpleInstanceOfTrue', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '_simpleInstanceOfFalse', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '==', abstract, debuggable
parameters [dynamic 'other'] (required: 1)
return-type dart:core::bool
Function 'get:hashCode', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::int
Function 'toString', abstract, debuggable
parameters [] (required: 0)
return-type dart:core::String
Function 'noSuchMethod', abstract, debuggable
parameters [dart:core::Invocation 'invocation'] (required: 1)
return-type dynamic
Function 'get:runtimeType', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::Type
Class 'A', script = '#lib'
extends #lib::Base < dart:core::int, dart:core::String >
@ -392,6 +432,46 @@ ConstantPool {
[6] = Reserved
}
Function 'get:_identityHashCode', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::int
Function '_instanceOf', abstract, debuggable
parameters [dynamic 'instantiatorTypeArguments', dynamic 'functionTypeArguments', dynamic 'type'] (required: 3)
return-type dart:core::bool
Function '_simpleInstanceOf', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '_simpleInstanceOfTrue', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '_simpleInstanceOfFalse', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '==', abstract, debuggable
parameters [dynamic 'other'] (required: 1)
return-type dart:core::bool
Function 'get:hashCode', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::int
Function 'toString', abstract, debuggable
parameters [] (required: 0)
return-type dart:core::String
Function 'noSuchMethod', abstract, debuggable
parameters [dart:core::Invocation 'invocation'] (required: 1)
return-type dynamic
Function 'get:runtimeType', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::Type
Class 'E', script = '#lib'
type-params <dart:core::Object K, dart:core::Object V> (args: 2)
extends dart:core::Object
@ -434,6 +514,46 @@ ConstantPool {
[2] = Reserved
}
Function 'get:_identityHashCode', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::int
Function '_instanceOf', abstract, debuggable
parameters [dynamic 'instantiatorTypeArguments', dynamic 'functionTypeArguments', dynamic 'type'] (required: 3)
return-type dart:core::bool
Function '_simpleInstanceOf', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '_simpleInstanceOfTrue', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '_simpleInstanceOfFalse', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '==', abstract, debuggable
parameters [dynamic 'other'] (required: 1)
return-type dart:core::bool
Function 'get:hashCode', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::int
Function 'toString', abstract, debuggable
parameters [] (required: 0)
return-type dart:core::String
Function 'noSuchMethod', abstract, debuggable
parameters [dart:core::Invocation 'invocation'] (required: 1)
return-type dynamic
Function 'get:runtimeType', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::Type
Class 'F', script = '#lib'
type-params <dart:core::Object K, dart:core::Object V> (args: 4)
extends #lib::E < dart:core::String, dart:core::List < #lib::F::TypeParam/1 > >
@ -526,6 +646,46 @@ ConstantPool {
[3] = Reserved
}
Function 'get:_identityHashCode', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::int
Function '_instanceOf', abstract, debuggable
parameters [dynamic 'instantiatorTypeArguments', dynamic 'functionTypeArguments', dynamic 'type'] (required: 3)
return-type dart:core::bool
Function '_simpleInstanceOf', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '_simpleInstanceOfTrue', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '_simpleInstanceOfFalse', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '==', abstract, debuggable
parameters [dynamic 'other'] (required: 1)
return-type dart:core::bool
Function 'get:hashCode', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::int
Function 'toString', abstract, debuggable
parameters [] (required: 0)
return-type dart:core::String
Function 'noSuchMethod', abstract, debuggable
parameters [dart:core::Invocation 'invocation'] (required: 1)
return-type dynamic
Function 'get:runtimeType', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::Type
Class 'H', script = '#lib'
type-params <dart:core::Object P1, dart:core::Object P2, dart:core::Object P3> (args: 5)
extends #lib::G < #lib::H::TypeParam/1, #lib::H::TypeParam/2 >
@ -598,6 +758,46 @@ ConstantPool {
[4] = Reserved
}
Function 'get:_identityHashCode', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::int
Function '_instanceOf', abstract, debuggable
parameters [dynamic 'instantiatorTypeArguments', dynamic 'functionTypeArguments', dynamic 'type'] (required: 3)
return-type dart:core::bool
Function '_simpleInstanceOf', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '_simpleInstanceOfTrue', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '_simpleInstanceOfFalse', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '==', abstract, debuggable
parameters [dynamic 'other'] (required: 1)
return-type dart:core::bool
Function 'get:hashCode', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::int
Function 'toString', abstract, debuggable
parameters [] (required: 0)
return-type dart:core::String
Function 'noSuchMethod', abstract, debuggable
parameters [dart:core::Invocation 'invocation'] (required: 1)
return-type dynamic
Function 'get:runtimeType', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::Type
Class 'J', script = '#lib'
extends dart:core::Object
@ -617,6 +817,46 @@ ConstantPool {
[0] = NativeEntry agent_J
}
Function 'get:_identityHashCode', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::int
Function '_instanceOf', abstract, debuggable
parameters [dynamic 'instantiatorTypeArguments', dynamic 'functionTypeArguments', dynamic 'type'] (required: 3)
return-type dart:core::bool
Function '_simpleInstanceOf', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '_simpleInstanceOfTrue', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '_simpleInstanceOfFalse', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '==', abstract, debuggable
parameters [dynamic 'other'] (required: 1)
return-type dart:core::bool
Function 'get:hashCode', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::int
Function 'toString', abstract, debuggable
parameters [] (required: 0)
return-type dart:core::String
Function 'noSuchMethod', abstract, debuggable
parameters [dart:core::Invocation 'invocation'] (required: 1)
return-type dynamic
Function 'get:runtimeType', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::Type
Class 'K', script = '#lib', abstract
type-params <dart:core::Object A, dart:core::Object B> (args: 2)
extends dart:core::Object
@ -645,6 +885,46 @@ ConstantPool {
[2] = Reserved
}
Function 'get:_identityHashCode', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::int
Function '_instanceOf', abstract, debuggable
parameters [dynamic 'instantiatorTypeArguments', dynamic 'functionTypeArguments', dynamic 'type'] (required: 3)
return-type dart:core::bool
Function '_simpleInstanceOf', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '_simpleInstanceOfTrue', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '_simpleInstanceOfFalse', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '==', abstract, debuggable
parameters [dynamic 'other'] (required: 1)
return-type dart:core::bool
Function 'get:hashCode', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::int
Function 'toString', abstract, debuggable
parameters [] (required: 0)
return-type dart:core::String
Function 'noSuchMethod', abstract, debuggable
parameters [dart:core::Invocation 'invocation'] (required: 1)
return-type dynamic
Function 'get:runtimeType', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::Type
Class 'TestTypeArgReuse', script = '#lib'
type-params <dart:core::Object P, dart:core::Object Q> (args: 2)
extends #lib::Base < #lib::TestTypeArgReuse::TypeParam/0, #lib::TestTypeArgReuse::TypeParam/1 >
@ -680,6 +960,16 @@ ConstantPool {
: super dart.core::Object::•() {
dart.core::print("Base: ${#lib::Base::T1*}, ${#lib::Base::T2*}");
}
abstract member-signature get _identityHashCode() → dart.core::int*;
abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOf(dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOfTrue(dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOfFalse(dynamic type) → dart.core::bool*;
abstract member-signature operator ==(dynamic other) → dart.core::bool*;
abstract member-signature get hashCode() → dart.core::int*;
abstract member-signature method toString() → dart.core::String*;
abstract member-signature method noSuchMethod(dart.core::Invocation* invocation) → dynamic;
abstract member-signature get runtimeType() → dart.core::Type*;
}
class A extends #lib::Base<dart.core::int*, dart.core::String*> {
constructor •(dart.core::String* s) → #lib::A*
@ -697,6 +987,16 @@ ConstantPool {
: super dart.core::Object::•() {
dart.core::print("C: ${s}");
}
abstract member-signature get _identityHashCode() → dart.core::int*;
abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOf(dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOfTrue(dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOfFalse(dynamic type) → dart.core::bool*;
abstract member-signature operator ==(dynamic other) → dart.core::bool*;
abstract member-signature get hashCode() → dart.core::int*;
abstract member-signature method toString() → dart.core::String*;
abstract member-signature method noSuchMethod(dart.core::Invocation* invocation) → dynamic;
abstract member-signature get runtimeType() → dart.core::Type*;
}
class E<K extends dart.core::Object* = dynamic, V extends dart.core::Object* = dynamic> extends dart.core::Object {
synthetic constructor •() → #lib::E<#lib::E::K*, #lib::E::V*>*
@ -704,6 +1004,16 @@ ConstantPool {
;
method test_reuse1() → dynamic
return dart.core::Map::•<#lib::E::K*, #lib::E::V*>();
abstract member-signature get _identityHashCode() → dart.core::int*;
abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOf(dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOfTrue(dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOfFalse(dynamic type) → dart.core::bool*;
abstract member-signature operator ==(dynamic other) → dart.core::bool*;
abstract member-signature get hashCode() → dart.core::int*;
abstract member-signature method toString() → dart.core::String*;
abstract member-signature method noSuchMethod(dart.core::Invocation* invocation) → dynamic;
abstract member-signature get runtimeType() → dart.core::Type*;
}
class F<K extends dart.core::Object* = dynamic, V extends dart.core::Object* = dynamic> extends #lib::E<dart.core::String*, dart.core::List<#lib::F::V*>*> {
synthetic constructor •() → #lib::F<#lib::F::K*, #lib::F::V*>*
@ -718,6 +1028,16 @@ ConstantPool {
;
static factory test_factory<K extends dart.core::Object* = dynamic, V extends dart.core::Object* = dynamic>() → #lib::G<#lib::G::test_factory::K*, #lib::G::test_factory::V*>*
return new #lib::H::•<dart.core::String*, #lib::G::test_factory::K*, #lib::G::test_factory::V*>();
abstract member-signature get _identityHashCode() → dart.core::int*;
abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOf(dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOfTrue(dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOfFalse(dynamic type) → dart.core::bool*;
abstract member-signature operator ==(dynamic other) → dart.core::bool*;
abstract member-signature get hashCode() → dart.core::int*;
abstract member-signature method toString() → dart.core::String*;
abstract member-signature method noSuchMethod(dart.core::Invocation* invocation) → dynamic;
abstract member-signature get runtimeType() → dart.core::Type*;
}
class H<P1 extends dart.core::Object* = dynamic, P2 extends dart.core::Object* = dynamic, P3 extends dart.core::Object* = dynamic> extends #lib::G<#lib::H::P2*, #lib::H::P3*> {
synthetic constructor •() → #lib::H<#lib::H::P1*, #lib::H::P2*, #lib::H::P3*>*
@ -730,14 +1050,44 @@ ConstantPool {
;
static factory test_factory2({dynamic param = #C1}) → #lib::I*
return new #lib::I::•(param);
abstract member-signature get _identityHashCode() → dart.core::int*;
abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOf(dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOfTrue(dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOfFalse(dynamic type) → dart.core::bool*;
abstract member-signature operator ==(dynamic other) → dart.core::bool*;
abstract member-signature get hashCode() → dart.core::int*;
abstract member-signature method toString() → dart.core::String*;
abstract member-signature method noSuchMethod(dart.core::Invocation* invocation) → dynamic;
abstract member-signature get runtimeType() → dart.core::Type*;
}
class J extends dart.core::Object {
@#C3
external static factory •() → #lib::J*;
abstract member-signature get _identityHashCode() → dart.core::int*;
abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOf(dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOfTrue(dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOfFalse(dynamic type) → dart.core::bool*;
abstract member-signature operator ==(dynamic other) → dart.core::bool*;
abstract member-signature get hashCode() → dart.core::int*;
abstract member-signature method toString() → dart.core::String*;
abstract member-signature method noSuchMethod(dart.core::Invocation* invocation) → dynamic;
abstract member-signature get runtimeType() → dart.core::Type*;
}
abstract class K<A extends dart.core::Object* = dynamic, B extends dart.core::Object* = dynamic> extends dart.core::Object {
static factory •<A extends dart.core::Object* = dynamic, B extends dart.core::Object* = dynamic>() → #lib::K<#lib::K::•::A*, #lib::K::•::B*>*
return new #lib::TestTypeArgReuse::•<#lib::K::•::A*, #lib::K::•::B*>();
abstract member-signature get _identityHashCode() → dart.core::int*;
abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOf(dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOfTrue(dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOfFalse(dynamic type) → dart.core::bool*;
abstract member-signature operator ==(dynamic other) → dart.core::bool*;
abstract member-signature get hashCode() → dart.core::int*;
abstract member-signature method toString() → dart.core::String*;
abstract member-signature method noSuchMethod(dart.core::Invocation* invocation) → dynamic;
abstract member-signature get runtimeType() → dart.core::Type*;
}
class TestTypeArgReuse<P extends dart.core::Object* = dynamic, Q extends dart.core::Object* = dynamic> extends #lib::Base<#lib::TestTypeArgReuse::P*, #lib::TestTypeArgReuse::Q*> implements #lib::K<#lib::TestTypeArgReuse::P*, #lib::TestTypeArgReuse::Q*> {
synthetic constructor •() → #lib::TestTypeArgReuse<#lib::TestTypeArgReuse::P*, #lib::TestTypeArgReuse::Q*>*

View File

@ -530,6 +530,42 @@ ConstantPool {
[1] = Reserved
}
Function 'get:_identityHashCode', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::int
Function '_instanceOf', abstract, debuggable
parameters [dynamic 'instantiatorTypeArguments', dynamic 'functionTypeArguments', dynamic 'type'] (required: 3)
return-type dart:core::bool
Function '_simpleInstanceOf', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '_simpleInstanceOfTrue', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '_simpleInstanceOfFalse', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '==', abstract, debuggable
parameters [dynamic 'other'] (required: 1)
return-type dart:core::bool
Function 'get:hashCode', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::int
Function 'noSuchMethod', abstract, debuggable
parameters [dart:core::Invocation 'invocation'] (required: 1)
return-type dynamic
Function 'get:runtimeType', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::Type
Class 'B', script = '#lib'
extends dart:core::Object
@ -559,6 +595,46 @@ ConstantPool {
[3] = Reserved
}
Function 'get:_identityHashCode', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::int
Function '_instanceOf', abstract, debuggable
parameters [dynamic 'instantiatorTypeArguments', dynamic 'functionTypeArguments', dynamic 'type'] (required: 3)
return-type dart:core::bool
Function '_simpleInstanceOf', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '_simpleInstanceOfTrue', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '_simpleInstanceOfFalse', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '==', abstract, debuggable
parameters [dynamic 'other'] (required: 1)
return-type dart:core::bool
Function 'get:hashCode', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::int
Function 'toString', abstract, debuggable
parameters [] (required: 0)
return-type dart:core::String
Function 'noSuchMethod', abstract, debuggable
parameters [dart:core::Invocation 'invocation'] (required: 1)
return-type dynamic
Function 'get:runtimeType', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::Type
Class 'C', script = '#lib'
extends #lib::B
@ -633,6 +709,46 @@ ConstantPool {
[6] = Reserved
}
Function 'get:_identityHashCode', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::int
Function '_instanceOf', abstract, debuggable
parameters [dynamic 'instantiatorTypeArguments', dynamic 'functionTypeArguments', dynamic 'type'] (required: 3)
return-type dart:core::bool
Function '_simpleInstanceOf', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '_simpleInstanceOfTrue', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '_simpleInstanceOfFalse', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '==', abstract, debuggable
parameters [dynamic 'other'] (required: 1)
return-type dart:core::bool
Function 'get:hashCode', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::int
Function 'toString', abstract, debuggable
parameters [] (required: 0)
return-type dart:core::String
Function 'noSuchMethod', abstract, debuggable
parameters [dart:core::Invocation 'invocation'] (required: 1)
return-type dynamic
Function 'get:runtimeType', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::Type
Class 'E', script = '#lib'
type-params <dart:core::Object T> (args: 1)
extends dart:core::Object
@ -656,6 +772,46 @@ ConstantPool {
[1] = Reserved
}
Function 'get:_identityHashCode', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::int
Function '_instanceOf', abstract, debuggable
parameters [dynamic 'instantiatorTypeArguments', dynamic 'functionTypeArguments', dynamic 'type'] (required: 3)
return-type dart:core::bool
Function '_simpleInstanceOf', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '_simpleInstanceOfTrue', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '_simpleInstanceOfFalse', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '==', abstract, debuggable
parameters [dynamic 'other'] (required: 1)
return-type dart:core::bool
Function 'get:hashCode', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::int
Function 'toString', abstract, debuggable
parameters [] (required: 0)
return-type dart:core::String
Function 'noSuchMethod', abstract, debuggable
parameters [dart:core::Invocation 'invocation'] (required: 1)
return-type dynamic
Function 'get:runtimeType', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::Type
Class 'F', script = '#lib'
type-params <dart:core::Object P, dart:core::Object Q> (args: 3)
extends #lib::E < dart:core::Map < #lib::F::TypeParam/0, #lib::F::TypeParam/1 > >
@ -697,12 +853,31 @@ ConstantPool {
;
method toString() → dart.core::String*
return this.{=#lib::A::_name};
abstract member-signature get _identityHashCode() → dart.core::int*;
abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOf(dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOfTrue(dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOfFalse(dynamic type) → dart.core::bool*;
abstract member-signature operator ==(dynamic other) → dart.core::bool*;
abstract member-signature get hashCode() → dart.core::int*;
abstract member-signature method noSuchMethod(dart.core::Invocation* invocation) → dynamic;
abstract member-signature get runtimeType() → dart.core::Type*;
}
class B extends dart.core::Object /*hasConstConstructor*/ {
final field dart.core::int* i;
const constructor •(dart.core::int* i) → #lib::B*
: #lib::B::i = i, super dart.core::Object::•()
;
abstract member-signature get _identityHashCode() → dart.core::int*;
abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOf(dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOfTrue(dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOfFalse(dynamic type) → dart.core::bool*;
abstract member-signature operator ==(dynamic other) → dart.core::bool*;
abstract member-signature get hashCode() → dart.core::int*;
abstract member-signature method toString() → dart.core::String*;
abstract member-signature method noSuchMethod(dart.core::Invocation* invocation) → dynamic;
abstract member-signature get runtimeType() → dart.core::Type*;
}
class C extends #lib::B /*hasConstConstructor*/ {
final field dart.core::int* j;
@ -716,11 +891,31 @@ ConstantPool {
const constructor •(dynamic x, [dynamic y = #C14]) → #lib::D*
: #lib::D::x = x, #lib::D::y = y, super dart.core::Object::•()
;
abstract member-signature get _identityHashCode() → dart.core::int*;
abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOf(dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOfTrue(dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOfFalse(dynamic type) → dart.core::bool*;
abstract member-signature operator ==(dynamic other) → dart.core::bool*;
abstract member-signature get hashCode() → dart.core::int*;
abstract member-signature method toString() → dart.core::String*;
abstract member-signature method noSuchMethod(dart.core::Invocation* invocation) → dynamic;
abstract member-signature get runtimeType() → dart.core::Type*;
}
class E<T extends dart.core::Object* = dynamic> extends dart.core::Object /*hasConstConstructor*/ {
const constructor •() → #lib::E<#lib::E::T*>*
: super dart.core::Object::•()
;
abstract member-signature get _identityHashCode() → dart.core::int*;
abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOf(dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOfTrue(dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOfFalse(dynamic type) → dart.core::bool*;
abstract member-signature operator ==(dynamic other) → dart.core::bool*;
abstract member-signature get hashCode() → dart.core::int*;
abstract member-signature method toString() → dart.core::String*;
abstract member-signature method noSuchMethod(dart.core::Invocation* invocation) → dynamic;
abstract member-signature get runtimeType() → dart.core::Type*;
}
class F<P extends dart.core::Object* = dynamic, Q extends dart.core::Object* = dynamic> extends #lib::E<dart.core::Map<#lib::F::P*, #lib::F::Q*>*> /*hasConstConstructor*/ {
const constructor •() → #lib::F<#lib::F::P*, #lib::F::Q*>*

View File

@ -26,12 +26,13 @@ L2:
Push r1
Push FP[-5]
InterfaceCall CP#0, 1
CompareIntLt
InterfaceCall CP#2, 2
AssertBoolean 0
JumpIfFalse L1
Push r0
Push FP[-5]
Push r1
InterfaceCall CP#2, 2
InterfaceCall CP#4, 2
AddInt
PopLocal r0
Push r1
@ -47,8 +48,10 @@ L1:
ConstantPool {
[0] = InterfaceCall 'dart:core::List::get:length', ArgDesc num-args 1, num-type-args 0, names []
[1] = Reserved
[2] = InterfaceCall 'dart:core::List::[]', ArgDesc num-args 2, num-type-args 0, names []
[2] = InterfaceCall 'dart:core::num::<', ArgDesc num-args 2, num-type-args 0, names []
[3] = Reserved
[4] = InterfaceCall 'dart:core::List::[]', ArgDesc num-args 2, num-type-args 0, names []
[5] = Reserved
}
@ -72,14 +75,15 @@ L3:
Push r1
Push FP[-5]
InterfaceCall CP#0, 1
CompareIntGe
InterfaceCall CP#2, 2
AssertBoolean 0
JumpIfFalse L2
Jump L1
L2:
Push r0
Push FP[-5]
Push r1
InterfaceCall CP#2, 2
InterfaceCall CP#4, 2
AddInt
PopLocal r0
Push r1
@ -95,8 +99,10 @@ L1:
ConstantPool {
[0] = InterfaceCall 'dart:core::List::get:length', ArgDesc num-args 1, num-type-args 0, names []
[1] = Reserved
[2] = InterfaceCall 'dart:core::List::[]', ArgDesc num-args 2, num-type-args 0, names []
[2] = InterfaceCall 'dart:core::num::>=', ArgDesc num-args 2, num-type-args 0, names []
[3] = Reserved
[4] = InterfaceCall 'dart:core::List::[]', ArgDesc num-args 2, num-type-args 0, names []
[5] = Reserved
}
@ -117,7 +123,8 @@ L4:
Push r1
Push FP[-5]
InterfaceCall CP#0, 1
CompareIntLt
InterfaceCall CP#2, 2
AssertBoolean 0
JumpIfFalse L1
Push r1
PushInt 0
@ -128,7 +135,7 @@ L2:
Push r0
Push FP[-5]
Push r1
InterfaceCall CP#2, 2
InterfaceCall CP#4, 2
AddInt
PopLocal r0
L3:
@ -145,8 +152,10 @@ L1:
ConstantPool {
[0] = InterfaceCall 'dart:core::List::get:length', ArgDesc num-args 1, num-type-args 0, names []
[1] = Reserved
[2] = InterfaceCall 'dart:core::List::[]', ArgDesc num-args 2, num-type-args 0, names []
[2] = InterfaceCall 'dart:core::num::<', ArgDesc num-args 2, num-type-args 0, names []
[3] = Reserved
[4] = InterfaceCall 'dart:core::List::[]', ArgDesc num-args 2, num-type-args 0, names []
[5] = Reserved
}
@ -166,7 +175,8 @@ L2:
Push r1
Push FP[-5]
InterfaceCall CP#0, 1
CompareIntLt
InterfaceCall CP#2, 2
AssertBoolean 0
JumpIfFalse L1
Push r0
Push FP[-5]
@ -178,7 +188,7 @@ L2:
StoreLocal r1
PopLocal r3
Push r2
InterfaceCall CP#2, 2
InterfaceCall CP#4, 2
AddInt
PopLocal r0
Jump L2
@ -189,8 +199,10 @@ L1:
ConstantPool {
[0] = InterfaceCall 'dart:core::List::get:length', ArgDesc num-args 1, num-type-args 0, names []
[1] = Reserved
[2] = InterfaceCall 'dart:core::List::[]', ArgDesc num-args 2, num-type-args 0, names []
[2] = InterfaceCall 'dart:core::num::<', ArgDesc num-args 2, num-type-args 0, names []
[3] = Reserved
[4] = InterfaceCall 'dart:core::List::[]', ArgDesc num-args 2, num-type-args 0, names []
[5] = Reserved
}
@ -220,7 +232,8 @@ L1:
Push r1
Push FP[-5]
InterfaceCall CP#2, 1
CompareIntLt
InterfaceCall CP#4, 2
AssertBoolean 0
JumpIfTrue L1
Push r0
ReturnTOS
@ -230,6 +243,8 @@ ConstantPool {
[1] = Reserved
[2] = InterfaceCall 'dart:core::List::get:length', ArgDesc num-args 1, num-type-args 0, names []
[3] = Reserved
[4] = InterfaceCall 'dart:core::num::<', ArgDesc num-args 2, num-type-args 0, names []
[5] = Reserved
}

View File

@ -89,6 +89,46 @@ Bytecode {
ConstantPool {
}
Function 'get:_identityHashCode', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::int
Function '_instanceOf', abstract, debuggable
parameters [dynamic 'instantiatorTypeArguments', dynamic 'functionTypeArguments', dynamic 'type'] (required: 3)
return-type dart:core::bool
Function '_simpleInstanceOf', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '_simpleInstanceOfTrue', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '_simpleInstanceOfFalse', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '==', abstract, debuggable
parameters [dynamic 'other'] (required: 1)
return-type dart:core::bool
Function 'get:hashCode', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::int
Function 'toString', abstract, debuggable
parameters [] (required: 0)
return-type dart:core::String
Function 'noSuchMethod', abstract, debuggable
parameters [dart:core::Invocation 'invocation'] (required: 1)
return-type dynamic
Function 'get:runtimeType', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::Type
Class 'A', script = '#lib'
extends #lib::Base1
@ -246,6 +286,46 @@ Function 'get:bar', getter, abstract, reflectable, debuggable
Function 'set:bazz', setter, abstract, reflectable, debuggable
parameters [dart:core::int 'x'] (required: 1)
return-type void
Function 'get:_identityHashCode', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::int
Function '_instanceOf', abstract, debuggable
parameters [dynamic 'instantiatorTypeArguments', dynamic 'functionTypeArguments', dynamic 'type'] (required: 3)
return-type dart:core::bool
Function '_simpleInstanceOf', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '_simpleInstanceOfTrue', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '_simpleInstanceOfFalse', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '==', abstract, debuggable
parameters [dynamic 'other'] (required: 1)
return-type dart:core::bool
Function 'get:hashCode', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::int
Function 'toString', abstract, debuggable
parameters [] (required: 0)
return-type dart:core::String
Function 'noSuchMethod', abstract, debuggable
parameters [dart:core::Invocation 'invocation'] (required: 1)
return-type dynamic
Function 'get:runtimeType', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::Type
Class 'B', script = '#lib', abstract
extends #lib::Base2
@ -482,6 +562,16 @@ ConstantPool {
get bar() → dynamic
return 42;
set bazz(dart.core::int* x) → void {}
abstract member-signature get _identityHashCode() → dart.core::int*;
abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOf(dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOfTrue(dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOfFalse(dynamic type) → dart.core::bool*;
abstract member-signature operator ==(dynamic other) → dart.core::bool*;
abstract member-signature get hashCode() → dart.core::int*;
abstract member-signature method toString() → dart.core::String*;
abstract member-signature method noSuchMethod(dart.core::Invocation* invocation) → dynamic;
abstract member-signature get runtimeType() → dart.core::Type*;
}
class A extends #lib::Base1 {
synthetic constructor •() → #lib::A*
@ -506,6 +596,16 @@ ConstantPool {
abstract method foo<T extends dart.core::Object* = dynamic>(dart.core::String* a1, #lib::Base2::foo::T* a2, dart.core::int* a3) → void;
abstract get bar() → dynamic;
abstract set bazz(dart.core::int* x) → void;
abstract member-signature get _identityHashCode() → dart.core::int*;
abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOf(dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOfTrue(dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOfFalse(dynamic type) → dart.core::bool*;
abstract member-signature operator ==(dynamic other) → dart.core::bool*;
abstract member-signature get hashCode() → dart.core::int*;
abstract member-signature method toString() → dart.core::String*;
abstract member-signature method noSuchMethod(dart.core::Invocation* invocation) → dynamic;
abstract member-signature get runtimeType() → dart.core::Type*;
}
abstract class B extends #lib::Base2 {
synthetic constructor •() → #lib::B*

View File

@ -123,6 +123,46 @@ ConstantPool {
[1] = Reserved
}
Function 'get:_identityHashCode', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::int
Function '_instanceOf', abstract, debuggable
parameters [dynamic 'instantiatorTypeArguments', dynamic 'functionTypeArguments', dynamic 'type'] (required: 3)
return-type dart:core::bool
Function '_simpleInstanceOf', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '_simpleInstanceOfTrue', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '_simpleInstanceOfFalse', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '==', abstract, debuggable
parameters [dynamic 'other'] (required: 1)
return-type dart:core::bool
Function 'get:hashCode', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::int
Function 'toString', abstract, debuggable
parameters [] (required: 0)
return-type dart:core::String
Function 'noSuchMethod', abstract, debuggable
parameters [dart:core::Invocation 'invocation'] (required: 1)
return-type dynamic
Function 'get:runtimeType', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::Type
Class 'B', script = '#lib'
extends #lib::A < dart:core::String >
@ -432,6 +472,46 @@ ConstantPool {
[4] = ObjectRef 'T'
}
Function 'get:_identityHashCode', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::int
Function '_instanceOf', abstract, debuggable
parameters [dynamic 'instantiatorTypeArguments', dynamic 'functionTypeArguments', dynamic 'type'] (required: 3)
return-type dart:core::bool
Function '_simpleInstanceOf', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '_simpleInstanceOfTrue', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '_simpleInstanceOfFalse', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '==', abstract, debuggable
parameters [dynamic 'other'] (required: 1)
return-type dart:core::bool
Function 'get:hashCode', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::int
Function 'toString', abstract, debuggable
parameters [] (required: 0)
return-type dart:core::String
Function 'noSuchMethod', abstract, debuggable
parameters [dart:core::Invocation 'invocation'] (required: 1)
return-type dynamic
Function 'get:runtimeType', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::Type
Class 'F', script = '#lib', abstract
type-params <dart:core::Object T> (args: 1)
extends dart:core::Object
@ -465,6 +545,46 @@ Function 'foo8', abstract, reflectable, debuggable
type-params <#lib::F::TypeParam/0 Q>
parameters [#lib::F::foo8::TypeParam/0 'a', dart:core::num 'b', #lib::F::TypeParam/0 'c'] (required: 3)
return-type void
Function 'get:_identityHashCode', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::int
Function '_instanceOf', abstract, debuggable
parameters [dynamic 'instantiatorTypeArguments', dynamic 'functionTypeArguments', dynamic 'type'] (required: 3)
return-type dart:core::bool
Function '_simpleInstanceOf', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '_simpleInstanceOfTrue', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '_simpleInstanceOfFalse', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '==', abstract, debuggable
parameters [dynamic 'other'] (required: 1)
return-type dart:core::bool
Function 'get:hashCode', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::int
Function 'toString', abstract, debuggable
parameters [] (required: 0)
return-type dart:core::String
Function 'noSuchMethod', abstract, debuggable
parameters [dart:core::Invocation 'invocation'] (required: 1)
return-type dynamic
Function 'get:runtimeType', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::Type
Class 'G', script = '#lib'
type-params <dart:core::Object T> (args: 1)
extends dart:core::Object
@ -535,6 +655,46 @@ ConstantPool {
[6] = ObjectRef < #lib::G::TypeParam/0 >
}
Function 'get:_identityHashCode', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::int
Function '_instanceOf', abstract, debuggable
parameters [dynamic 'instantiatorTypeArguments', dynamic 'functionTypeArguments', dynamic 'type'] (required: 3)
return-type dart:core::bool
Function '_simpleInstanceOf', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '_simpleInstanceOfTrue', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '_simpleInstanceOfFalse', abstract, debuggable
parameters [dynamic 'type'] (required: 1)
return-type dart:core::bool
Function '==', abstract, debuggable
parameters [dynamic 'other'] (required: 1)
return-type dart:core::bool
Function 'get:hashCode', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::int
Function 'toString', abstract, debuggable
parameters [] (required: 0)
return-type dart:core::String
Function 'noSuchMethod', abstract, debuggable
parameters [dart:core::Invocation 'invocation'] (required: 1)
return-type dynamic
Function 'get:runtimeType', getter, abstract, debuggable
parameters [] (required: 0)
return-type dart:core::Type
Class 'H', script = '#lib'
type-params <dart:core::Object T> (args: 1)
extends #lib::G < #lib::H::TypeParam/0 >
@ -690,6 +850,16 @@ ConstantPool {
synthetic constructor •() → #lib::A<#lib::A::T*>*
: super dart.core::Object::•()
;
abstract member-signature get _identityHashCode() → dart.core::int*;
abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOf(dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOfTrue(dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOfFalse(dynamic type) → dart.core::bool*;
abstract member-signature operator ==(dynamic other) → dart.core::bool*;
abstract member-signature get hashCode() → dart.core::int*;
abstract member-signature method toString() → dart.core::String*;
abstract member-signature method noSuchMethod(dart.core::Invocation* invocation) → dynamic;
abstract member-signature get runtimeType() → dart.core::Type*;
}
class B extends #lib::A<dart.core::String*> {
synthetic constructor •() → #lib::B*
@ -733,6 +903,16 @@ ConstantPool {
static factory •<P extends dart.core::String* = dynamic>() → #lib::E<#lib::E::•::P*>*
return null;
method foo6<generic-covariant-impl T extends #lib::E::P* = #lib::E::P*, U extends dart.core::List<#lib::E::foo6::T*>* = dart.core::List<#lib::E::P*>*>(dart.core::Map<#lib::E::foo6::T*, #lib::E::foo6::U*>* map) → void {}
abstract member-signature get _identityHashCode() → dart.core::int*;
abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOf(dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOfTrue(dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOfFalse(dynamic type) → dart.core::bool*;
abstract member-signature operator ==(dynamic other) → dart.core::bool*;
abstract member-signature get hashCode() → dart.core::int*;
abstract member-signature method toString() → dart.core::String*;
abstract member-signature method noSuchMethod(dart.core::Invocation* invocation) → dynamic;
abstract member-signature get runtimeType() → dart.core::Type*;
}
abstract class F<T extends dart.core::Object* = dynamic> extends dart.core::Object {
synthetic constructor •() → #lib::F<#lib::F::T*>*
@ -740,12 +920,32 @@ ConstantPool {
;
abstract method foo7<generic-covariant-impl Q extends #lib::F::T* = #lib::F::T*>(#lib::F::foo7::Q* a, covariant dart.core::num* b, generic-covariant-impl #lib::F::T* c) → void;
abstract method foo8<generic-covariant-impl Q extends #lib::F::T* = #lib::F::T*>(#lib::F::foo8::Q* a, covariant dart.core::num* b, generic-covariant-impl #lib::F::T* c) → void;
abstract member-signature get _identityHashCode() → dart.core::int*;
abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOf(dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOfTrue(dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOfFalse(dynamic type) → dart.core::bool*;
abstract member-signature operator ==(dynamic other) → dart.core::bool*;
abstract member-signature get hashCode() → dart.core::int*;
abstract member-signature method toString() → dart.core::String*;
abstract member-signature method noSuchMethod(dart.core::Invocation* invocation) → dynamic;
abstract member-signature get runtimeType() → dart.core::Type*;
}
class G<T extends dart.core::Object* = dynamic> extends dart.core::Object {
synthetic constructor •() → #lib::G<#lib::G::T*>*
: super dart.core::Object::•()
;
method foo7<generic-covariant-impl Q extends #lib::G::T* = #lib::G::T*>(#lib::G::foo7::Q* a, dart.core::int* b, generic-covariant-impl #lib::G::T* c) → void {}
abstract member-signature get _identityHashCode() → dart.core::int*;
abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOf(dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOfTrue(dynamic type) → dart.core::bool*;
abstract member-signature method _simpleInstanceOfFalse(dynamic type) → dart.core::bool*;
abstract member-signature operator ==(dynamic other) → dart.core::bool*;
abstract member-signature get hashCode() → dart.core::int*;
abstract member-signature method toString() → dart.core::String*;
abstract member-signature method noSuchMethod(dart.core::Invocation* invocation) → dynamic;
abstract member-signature get runtimeType() → dart.core::Type*;
}
class H<T extends dart.core::Object* = dynamic> extends #lib::G<#lib::H::T*> implements #lib::F<#lib::H::T*> {
synthetic constructor •() → #lib::H<#lib::H::T*>*

View File

@ -129,7 +129,7 @@ t2 = _Call direct [foo] (t1)
RESULT: _T {}?
------------ if9 ------------
%x = _Parameter #0 [_T (#lib::TestEnum)+?]
t1* = _Call [Object::==] (%x, _T (#lib::TestEnum, #lib::TestEnum {index: 0, #lib::_name: TestEnum.v1, }))
t1* = _Call [TestEnum::==] (%x, _T (#lib::TestEnum, #lib::TestEnum {index: 0, #lib::_name: TestEnum.v1, }))
t2 = _Call direct [foo] (_T (#lib::TestEnum, #lib::TestEnum {index: 0, #lib::_name: TestEnum.v1, }))
RESULT: _T {}?
------------ conditional1 ------------

View File

@ -6,7 +6,7 @@ import "dart:_internal" as _in;
[@vm.unboxing-info.metadata=(i)->b]static method isPrime([@vm.inferred-type.metadata=int] dynamic n) → core::bool* {
if(_in::unsafeCast<core::bool*>([@vm.direct-call.metadata=_IntegerImplementation::<] [@vm.inferred-type.metadata=dart.core::bool] n.<(2)))
return false;
for (core::int* i = 2; [@vm.direct-call.metadata=_IntegerImplementation::<=] [@vm.inferred-type.metadata=dart.core::bool (skip check)] [@vm.direct-call.metadata=_IntegerImplementation::*] [@vm.inferred-type.metadata=int (skip check)] i.{core::num::*}(i).{core::num::<=}(_in::unsafeCast<core::num*>(n)); i = [@vm.direct-call.metadata=_IntegerImplementation::+] [@vm.inferred-type.metadata=int (skip check)] i.{core::num::+}(1)) {
for (core::int* i = 2; [@vm.direct-call.metadata=_IntegerImplementation::<=] [@vm.inferred-type.metadata=dart.core::bool (skip check)] [@vm.direct-call.metadata=_IntegerImplementation::*] [@vm.inferred-type.metadata=int (skip check)] i.{core::num::*}(i).{core::num::<=}(_in::unsafeCast<core::num>(n)); i = [@vm.direct-call.metadata=_IntegerImplementation::+] [@vm.inferred-type.metadata=int (skip check)] i.{core::num::+}(1)) {
if([@vm.direct-call.metadata=_IntegerImplementation::==] [@vm.inferred-type.metadata=dart.core::bool (skip check)] [@vm.direct-call.metadata=_IntegerImplementation::%] [@vm.inferred-type.metadata=int] n.%(i).{core::Object::==}(0))
return false;
}
@ -30,7 +30,7 @@ static method run() → void {
}
}
static method main(core::List<core::String*>* args) → dynamic {
core::Stopwatch* timer = let final core::Stopwatch* #t1 = new core::Stopwatch::•() in let final void #t2 = [@vm.direct-call.metadata=Stopwatch::start] [@vm.inferred-type.metadata=!? (skip check)] #t1.{core::Stopwatch::start}() in #t1;
core::Stopwatch* timer = let final core::Stopwatch #t1 = new core::Stopwatch::•() in let final void #t2 = [@vm.direct-call.metadata=Stopwatch::start] [@vm.inferred-type.metadata=!? (skip check)] #t1.{core::Stopwatch::start}() in #t1;
for (core::int* i = 0; [@vm.direct-call.metadata=_IntegerImplementation::<] [@vm.inferred-type.metadata=dart.core::bool (skip check)] i.{core::num::<}(100); i = [@vm.direct-call.metadata=_IntegerImplementation::+] [@vm.inferred-type.metadata=int (skip check)] i.{core::num::+}(1)) {
self::run();
}

View File

@ -27,7 +27,7 @@ class _Vector extends core::Object {
[@vm.inferred-type.metadata=#lib::_Vector?]static field self::_Vector* v = new self::_Vector::•(10);
[@vm.inferred-type.metadata=dart.core::_Double?]static field core::double* x = 0.0;
static method main(core::List<core::String*>* args) → dynamic {
core::Stopwatch* timer = let final core::Stopwatch* #t3 = new core::Stopwatch::•() in let final void #t4 = [@vm.direct-call.metadata=Stopwatch::start] [@vm.inferred-type.metadata=!? (skip check)] #t3.{core::Stopwatch::start}() in #t3;
core::Stopwatch* timer = let final core::Stopwatch #t3 = new core::Stopwatch::•() in let final void #t4 = [@vm.direct-call.metadata=Stopwatch::start] [@vm.inferred-type.metadata=!? (skip check)] #t3.{core::Stopwatch::start}() in #t3;
for (core::int* i = 0; [@vm.direct-call.metadata=_IntegerImplementation::<] [@vm.inferred-type.metadata=dart.core::bool (skip check)] i.{core::num::<}(100000000); i = [@vm.direct-call.metadata=_IntegerImplementation::+] [@vm.inferred-type.metadata=int (skip check)] i.{core::num::+}(1)) {
self::x = [@vm.direct-call.metadata=_Double::+??] [@vm.inferred-type.metadata=dart.core::_Double (skip check)] [@vm.inferred-type.metadata=dart.core::_Double?] self::x.{core::double::+}([@vm.direct-call.metadata=_Vector::*??] [@vm.inferred-type.metadata=dart.core::_Double (skip check)] [@vm.inferred-type.metadata=#lib::_Vector?] self::v.{self::_Vector::*}([@vm.inferred-type.metadata=#lib::_Vector?] self::v));
}

View File

@ -22,6 +22,7 @@ abstract class Stream extends core::Object {
: super core::Object::•()
;
[@vm.procedure-attributes.metadata=methodOrSetterCalledDynamically:false,getterCalledDynamically:false,hasThisUses:false,hasNonThisUses:false,hasTearOffUses:false,methodOrSetterSelectorId:1,getterSelectorId:2] abstract method foobar((dynamic) →* void onData, {core::Function* onError = #C1}) → self::StreamSubscription*;
[@vm.procedure-attributes.metadata=methodOrSetterCalledDynamically:false,getterCalledDynamically:false,hasThisUses:false,hasNonThisUses:false,hasTearOffUses:false,methodOrSetterSelectorId:3] abstract member-signature operator ==(dynamic other) → core::bool*;
}
abstract class _StreamImpl extends self::Stream {
synthetic constructor •() → self::_StreamImpl*
@ -30,7 +31,7 @@ abstract class _StreamImpl extends self::Stream {
[@vm.procedure-attributes.metadata=methodOrSetterCalledDynamically:false,getterCalledDynamically:false,hasThisUses:false,hasTearOffUses:false,methodOrSetterSelectorId:1,getterSelectorId:2] method foobar([@vm.inferred-type.metadata=dart.core::Null? (value: null)] (dynamic) →* void onData, {[@vm.inferred-type.metadata=dart.core::Null? (value: null)] core::Function* onError = #C1}) → self::StreamSubscription* {
return [@vm.inferred-type.metadata=! (skip check)] this.{self::_StreamImpl::_createSubscription}();
}
[@vm.procedure-attributes.metadata=methodOrSetterCalledDynamically:false,getterCalledDynamically:false,hasNonThisUses:false,hasTearOffUses:false,methodOrSetterSelectorId:3,getterSelectorId:4] method _createSubscription() → self::StreamSubscription* {
[@vm.procedure-attributes.metadata=methodOrSetterCalledDynamically:false,getterCalledDynamically:false,hasNonThisUses:false,hasTearOffUses:false,methodOrSetterSelectorId:4,getterSelectorId:5] method _createSubscription() → self::StreamSubscription* {
return new self::_BufferingStreamSubscription::•();
}
}
@ -38,7 +39,7 @@ class _ControllerStream extends self::_StreamImpl {
synthetic constructor •() → self::_ControllerStream*
: super self::_StreamImpl::•()
;
[@vm.procedure-attributes.metadata=methodOrSetterCalledDynamically:false,getterCalledDynamically:false,hasNonThisUses:false,hasTearOffUses:false,methodOrSetterSelectorId:3,getterSelectorId:4] method _createSubscription() → self::StreamSubscription* {
[@vm.procedure-attributes.metadata=methodOrSetterCalledDynamically:false,getterCalledDynamically:false,hasNonThisUses:false,hasTearOffUses:false,methodOrSetterSelectorId:4,getterSelectorId:5] method _createSubscription() → self::StreamSubscription* {
return new self::_BroadcastSubscription::•();
}
}
@ -48,7 +49,7 @@ class _GeneratedStreamImpl extends self::_StreamImpl {
;
}
abstract class StreamView extends self::Stream {
[@vm.inferred-type.metadata=!] [@vm.procedure-attributes.metadata=methodOrSetterCalledDynamically:false,getterCalledDynamically:false,hasThisUses:false,hasNonThisUses:false,hasTearOffUses:false,methodOrSetterSelectorId:5,getterSelectorId:6] final field self::Stream* _stream;
[@vm.inferred-type.metadata=!] [@vm.procedure-attributes.metadata=methodOrSetterCalledDynamically:false,getterCalledDynamically:false,hasThisUses:false,hasNonThisUses:false,hasTearOffUses:false,methodOrSetterSelectorId:6,getterSelectorId:7] final field self::Stream* _stream;
constructor •([@vm.inferred-type.metadata=!] self::Stream* stream) → self::StreamView*
: self::StreamView::_stream = stream, super self::Stream::•()
;
@ -60,16 +61,16 @@ class ByteStream extends self::StreamView {
constructor •([@vm.inferred-type.metadata=!] self::Stream* stream) → self::ByteStream*
: super self::StreamView::•(stream)
;
[@vm.procedure-attributes.metadata=methodOrSetterCalledDynamically:false,getterCalledDynamically:false,hasThisUses:false,hasTearOffUses:false,methodOrSetterSelectorId:7,getterSelectorId:8] method super_foobar1([@vm.inferred-type.metadata=dart.core::Null? (value: null)] (dynamic) →* void onData) → dynamic {
[@vm.procedure-attributes.metadata=methodOrSetterCalledDynamically:false,getterCalledDynamically:false,hasThisUses:false,hasTearOffUses:false,methodOrSetterSelectorId:8,getterSelectorId:9] method super_foobar1([@vm.inferred-type.metadata=dart.core::Null? (value: null)] (dynamic) →* void onData) → dynamic {
super.{self::StreamView::foobar}(onData);
}
[@vm.procedure-attributes.metadata=methodOrSetterCalledDynamically:false,getterCalledDynamically:false,hasThisUses:false,hasTearOffUses:false,methodOrSetterSelectorId:9,getterSelectorId:10] method super_foobar2([@vm.inferred-type.metadata=dart.core::Null? (value: null)] (dynamic) →* void onData) → dynamic {
[@vm.procedure-attributes.metadata=methodOrSetterCalledDynamically:false,getterCalledDynamically:false,hasThisUses:false,hasTearOffUses:false,methodOrSetterSelectorId:10,getterSelectorId:11] method super_foobar2([@vm.inferred-type.metadata=dart.core::Null? (value: null)] (dynamic) →* void onData) → dynamic {
super.{self::StreamView::foobar}(onData);
}
[@vm.procedure-attributes.metadata=methodOrSetterCalledDynamically:false,getterCalledDynamically:false,hasThisUses:false,hasTearOffUses:false,methodOrSetterSelectorId:11,getterSelectorId:12] method super_foobar3({[@vm.inferred-type.metadata=dart.core::Null? (value: null)] (dynamic) →* void onData = #C1, [@vm.inferred-type.metadata=dart.core::Null? (value: null)] core::Function* onError = #C1}) → dynamic {
[@vm.procedure-attributes.metadata=methodOrSetterCalledDynamically:false,getterCalledDynamically:false,hasThisUses:false,hasTearOffUses:false,methodOrSetterSelectorId:12,getterSelectorId:13] method super_foobar3({[@vm.inferred-type.metadata=dart.core::Null? (value: null)] (dynamic) →* void onData = #C1, [@vm.inferred-type.metadata=dart.core::Null? (value: null)] core::Function* onError = #C1}) → dynamic {
super.{self::StreamView::foobar}(onData, onError: onError);
}
[@vm.procedure-attributes.metadata=methodOrSetterCalledDynamically:false,getterCalledDynamically:false,hasThisUses:false,hasNonThisUses:false,hasTearOffUses:false,getterSelectorId:13] get super_stream() → self::Stream*
[@vm.procedure-attributes.metadata=methodOrSetterCalledDynamically:false,getterCalledDynamically:false,hasThisUses:false,hasNonThisUses:false,hasTearOffUses:false,getterSelectorId:14] get super_stream() → self::Stream*
return [@vm.inferred-type.metadata=!] super.{self::StreamView::_stream};
}
class _HandleErrorStream extends self::Stream {
@ -100,7 +101,7 @@ static method round4({[@vm.inferred-type.metadata=dart.core::Null? (value: null)
self::ByteStream* x = new self::ByteStream::•(new self::_ControllerStream::•());
self::Stream* y = [@vm.direct-call.metadata=ByteStream::super_stream] [@vm.inferred-type.metadata=!] x.{self::ByteStream::super_stream};
self::Stream* z = [@vm.direct-call.metadata=StreamView::_stream] [@vm.inferred-type.metadata=!] x.{self::StreamView::_stream};
if([@vm.direct-call.metadata=Object::==] [@vm.inferred-type.metadata=dart.core::bool (skip check) (receiver not int)] y.{core::Object::==}(z)) {
if([@vm.direct-call.metadata=Object::==] [@vm.inferred-type.metadata=dart.core::bool (skip check)] y.{self::Stream::==}(z)) {
[@vm.direct-call.metadata=ByteStream::super_foobar2] [@vm.inferred-type.metadata=!? (skip check)] x.{self::ByteStream::super_foobar2}(onData);
}
}

View File

@ -21,7 +21,7 @@ static method testAlwaysNull([@vm.inferred-type.metadata=#lib::A?] self::A a)
static method main() → void {
final core::List<self::A> list = <self::A>[let core::String #arg1 = "foo" in let core::Null? #arg2 = null in let core::Null? #arg3 = null in new self::A::•(#arg1, #arg2, alwaysNull: #arg3), self::staticField];
{
core::Iterator<self::A*> :sync-for-iterator = [@vm.direct-call.metadata=_GrowableList::iterator] [@vm.inferred-type.metadata=dart._internal::ListIterator<InterfaceType(A*)>] list.{core::Iterable::iterator};
core::Iterator<self::A> :sync-for-iterator = [@vm.direct-call.metadata=_GrowableList::iterator] [@vm.inferred-type.metadata=dart._internal::ListIterator<InterfaceType(A)>] list.{core::Iterable::iterator};
for (; [@vm.direct-call.metadata=ListIterator::moveNext] [@vm.inferred-type.metadata=dart.core::bool (skip check)] :sync-for-iterator.{core::Iterator::moveNext}(); ) {
self::A a = [@vm.direct-call.metadata=ListIterator::current] [@vm.inferred-type.metadata=#lib::A?] :sync-for-iterator.{core::Iterator::current};
{

View File

@ -19,7 +19,7 @@ class A1 extends core::Object {
synthetic constructor •() → self::A1*
: super core::Object::•()
;
[@vm.procedure-attributes.metadata=getterCalledDynamically:false,hasThisUses:false,hasTearOffUses:false,methodOrSetterSelectorId:3,getterSelectorId:4] method call([dynamic a1 = #C1, dynamic a2 = #C1, [@vm.inferred-type.metadata=int?] dynamic a3 = #C1, [@vm.inferred-type.metadata=dart.core::_Smi?] dynamic a4 = #C1, [@vm.inferred-type.metadata=#lib::T1?] dynamic a5 = #C1]) → void {
[@vm.procedure-attributes.metadata=getterCalledDynamically:false,hasThisUses:false,hasTearOffUses:false,methodOrSetterSelectorId:3,getterSelectorId:4] method call([dynamic a1 = #C1, dynamic a2 = #C1, dynamic a3 = #C1, [@vm.inferred-type.metadata=dart.core::_Smi?] dynamic a4 = #C1, [@vm.inferred-type.metadata=#lib::T1?] dynamic a5 = #C1]) → void {
[@vm.direct-call.metadata=A1::foo] [@vm.inferred-type.metadata=!? (skip check)] this.{self::A1::foo} = _in::unsafeCast<self::T1*>(a5);
}
}
@ -42,7 +42,7 @@ class A2 extends core::Object {
synthetic constructor •() → self::A2*
: super core::Object::•()
;
[@vm.procedure-attributes.metadata=getterCalledDynamically:false,hasThisUses:false,hasTearOffUses:false,methodOrSetterSelectorId:3,getterSelectorId:4] method call([dynamic a1 = #C1, dynamic a2 = #C1, [@vm.inferred-type.metadata=int?] dynamic a3 = #C1, [@vm.inferred-type.metadata=dart.core::_Smi?] dynamic a4 = #C1, [@vm.inferred-type.metadata=dart.core::_Smi?] dynamic a5 = #C1, [@vm.inferred-type.metadata=#lib::T2?] dynamic a6 = #C1]) → void {
[@vm.procedure-attributes.metadata=getterCalledDynamically:false,hasThisUses:false,hasTearOffUses:false,methodOrSetterSelectorId:3,getterSelectorId:4] method call([dynamic a1 = #C1, dynamic a2 = #C1, dynamic a3 = #C1, [@vm.inferred-type.metadata=dart.core::_Smi?] dynamic a4 = #C1, [@vm.inferred-type.metadata=dart.core::_Smi?] dynamic a5 = #C1, [@vm.inferred-type.metadata=#lib::T2?] dynamic a6 = #C1]) → void {
[@vm.direct-call.metadata=A2::foo] [@vm.inferred-type.metadata=!? (skip check)] this.{self::A2::foo} = a6;
}
}
@ -75,7 +75,7 @@ class A3 extends core::Object {
synthetic constructor •() → self::A3*
: super core::Object::•()
;
[@vm.procedure-attributes.metadata=getterCalledDynamically:false,hasThisUses:false,hasTearOffUses:false,methodOrSetterSelectorId:3,getterSelectorId:4] method call([dynamic a1 = #C1, dynamic a2 = #C1, [@vm.inferred-type.metadata=int?] dynamic a3 = #C1, [@vm.inferred-type.metadata=dart.core::_Smi?] dynamic a4 = #C1, [@vm.inferred-type.metadata=dart.core::_Smi?] dynamic a5 = #C1, [@vm.inferred-type.metadata=dart.core::_Smi?] dynamic a6 = #C1, [@vm.inferred-type.metadata=#lib::T3?] dynamic a7 = #C1]) → void {
[@vm.procedure-attributes.metadata=getterCalledDynamically:false,hasThisUses:false,hasTearOffUses:false,methodOrSetterSelectorId:3,getterSelectorId:4] method call([dynamic a1 = #C1, dynamic a2 = #C1, dynamic a3 = #C1, [@vm.inferred-type.metadata=dart.core::_Smi?] dynamic a4 = #C1, [@vm.inferred-type.metadata=dart.core::_Smi?] dynamic a5 = #C1, [@vm.inferred-type.metadata=dart.core::_Smi?] dynamic a6 = #C1, [@vm.inferred-type.metadata=#lib::T3?] dynamic a7 = #C1]) → void {
[@vm.direct-call.metadata=A3::foo] [@vm.inferred-type.metadata=!? (skip check)] this.{self::A3::foo} = a7;
}
}
@ -98,7 +98,7 @@ class A4 extends core::Object {
synthetic constructor •() → self::A4*
: super core::Object::•()
;
[@vm.procedure-attributes.metadata=getterCalledDynamically:false,hasThisUses:false,hasTearOffUses:false,methodOrSetterSelectorId:3,getterSelectorId:4] method call([dynamic a1 = #C1, dynamic a2 = #C1, [@vm.inferred-type.metadata=int?] dynamic a3 = #C1, [@vm.inferred-type.metadata=dart.core::_Smi?] dynamic a4 = #C1, [@vm.inferred-type.metadata=dart.core::_Smi?] dynamic a5 = #C1, [@vm.inferred-type.metadata=dart.core::_Smi?] dynamic a6 = #C1, [@vm.inferred-type.metadata=dart.core::_Smi?] dynamic a7 = #C1, [@vm.inferred-type.metadata=#lib::T4?] dynamic a8 = #C1]) → void {
[@vm.procedure-attributes.metadata=getterCalledDynamically:false,hasThisUses:false,hasTearOffUses:false,methodOrSetterSelectorId:3,getterSelectorId:4] method call([dynamic a1 = #C1, dynamic a2 = #C1, dynamic a3 = #C1, [@vm.inferred-type.metadata=dart.core::_Smi?] dynamic a4 = #C1, [@vm.inferred-type.metadata=dart.core::_Smi?] dynamic a5 = #C1, [@vm.inferred-type.metadata=dart.core::_Smi?] dynamic a6 = #C1, [@vm.inferred-type.metadata=dart.core::_Smi?] dynamic a7 = #C1, [@vm.inferred-type.metadata=#lib::T4?] dynamic a8 = #C1]) → void {
[@vm.direct-call.metadata=A4::foo] [@vm.inferred-type.metadata=!? (skip check)] this.{self::A4::foo} = a8;
}
}

View File

@ -12,7 +12,7 @@ class B extends self::A {
: super self::A::•()
;
[@vm.procedure-attributes.metadata=hasThisUses:false,methodOrSetterSelectorId:1,getterSelectorId:2] method foo() → core::int*
return [@vm.direct-call.metadata=_IntegerImplementation::+] [@vm.inferred-type.metadata=! (skip check)] 1.{core::num::+}([@vm.direct-call.metadata=B::foo] [@vm.inferred-type.metadata=!? (receiver not int)] [@vm.inferred-type.metadata=#lib::B] self::knownResult().foo() as{TypeError,ForDynamic} core::num*) as{TypeError} core::int*;
return [@vm.direct-call.metadata=_IntegerImplementation::+] [@vm.inferred-type.metadata=! (skip check)] 1.{core::num::+}([@vm.direct-call.metadata=B::foo] [@vm.inferred-type.metadata=!? (receiver not int)] [@vm.inferred-type.metadata=#lib::B] self::knownResult().foo() as{TypeError,ForDynamic} core::num) as{TypeError} core::int*;
}
class TearOffDynamicMethod extends core::Object {
[@vm.procedure-attributes.metadata=methodOrSetterCalledDynamically:false,getterCalledDynamically:false,hasThisUses:false,hasNonThisUses:false,hasTearOffUses:false,methodOrSetterSelectorId:3,getterSelectorId:4] field dynamic bazz;

View File

@ -14,7 +14,7 @@ class B extends self::A {
: super self::A::•()
;
[@vm.procedure-attributes.metadata=methodOrSetterCalledDynamically:false,getterCalledDynamically:false,hasThisUses:false,hasNonThisUses:false,methodOrSetterSelectorId:1,getterSelectorId:2] method foo() → core::int*
return _in::unsafeCast<core::int*>([@vm.direct-call.metadata=_IntegerImplementation::+] [@vm.inferred-type.metadata=int (skip check)] 1.{core::num::+}(_in::unsafeCast<core::num*>([@vm.direct-call.metadata=B::bar] [@vm.inferred-type.metadata=dart.core::_Smi (value: 3) (receiver not int)] [@vm.inferred-type.metadata=#lib::B] self::knownResult().bar())));
return _in::unsafeCast<core::int*>([@vm.direct-call.metadata=_IntegerImplementation::+] [@vm.inferred-type.metadata=int (skip check)] 1.{core::num::+}(_in::unsafeCast<core::num>([@vm.direct-call.metadata=B::bar] [@vm.inferred-type.metadata=dart.core::_Smi (value: 3) (receiver not int)] [@vm.inferred-type.metadata=#lib::B] self::knownResult().bar())));
[@vm.procedure-attributes.metadata=getterCalledDynamically:false,hasThisUses:false,hasTearOffUses:false,methodOrSetterSelectorId:3,getterSelectorId:4] method bar() → core::int*
return 3;
}

View File

@ -14,14 +14,14 @@ class B extends self::A {
: super self::A::•()
;
[@vm.procedure-attributes.metadata=getterCalledDynamically:false,hasThisUses:false,hasTearOffUses:false,methodOrSetterSelectorId:1,getterSelectorId:2] method foo() → core::int*
return _in::unsafeCast<core::int*>([@vm.direct-call.metadata=_IntegerImplementation::+] [@vm.inferred-type.metadata=int (skip check)] 1.{core::num::+}(_in::unsafeCast<core::num*>([@vm.direct-call.metadata=B::foo] [@vm.inferred-type.metadata=int? (receiver not int)] [@vm.inferred-type.metadata=#lib::B] self::knownResult().foo())));
return _in::unsafeCast<core::int*>([@vm.direct-call.metadata=_IntegerImplementation::+] [@vm.inferred-type.metadata=int (skip check)] 1.{core::num::+}(_in::unsafeCast<core::num>([@vm.direct-call.metadata=B::foo] [@vm.inferred-type.metadata=int? (receiver not int)] [@vm.inferred-type.metadata=#lib::B] self::knownResult().foo())));
}
abstract class Base extends core::Object {
synthetic constructor •() → self::Base*
: super core::Object::•()
;
[@vm.procedure-attributes.metadata=methodOrSetterCalledDynamically:false,getterCalledDynamically:false,hasThisUses:false,hasNonThisUses:false,methodOrSetterSelectorId:1,getterSelectorId:2] method foo() → core::int*
return _in::unsafeCast<core::int*>([@vm.direct-call.metadata=_IntegerImplementation::+] [@vm.inferred-type.metadata=int (skip check)] 3.{core::num::+}(_in::unsafeCast<core::num*>([@vm.direct-call.metadata=B::foo] [@vm.inferred-type.metadata=int? (receiver not int)] [@vm.inferred-type.metadata=#lib::B] self::knownResult().foo())));
return _in::unsafeCast<core::int*>([@vm.direct-call.metadata=_IntegerImplementation::+] [@vm.inferred-type.metadata=int (skip check)] 3.{core::num::+}(_in::unsafeCast<core::num>([@vm.direct-call.metadata=B::foo] [@vm.inferred-type.metadata=int? (receiver not int)] [@vm.inferred-type.metadata=#lib::B] self::knownResult().foo())));
[@vm.procedure-attributes.metadata=methodOrSetterCalledDynamically:false,getterCalledDynamically:false,hasNonThisUses:false,hasTearOffUses:false,methodOrSetterSelectorId:3,getterSelectorId:4] method doCall(dynamic x) → core::int*
return [@vm.call-site-attributes.metadata=receiverType:DynamicType(dynamic)] x.call() as{TypeError,ForDynamic} core::int*;
}

View File

@ -5,6 +5,16 @@ import "dart:core" as core;
class TestAssertInitializer extends core::Object {
constructor •() → self::TestAssertInitializer*
: super core::Object::•() {}
abstract member-signature get _identityHashCode() → core::int*;
abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*;
abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*;
abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*;
abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*;
abstract member-signature operator ==(dynamic other) → core::bool*;
abstract member-signature get hashCode() → core::int*;
abstract member-signature method toString() → core::String*;
abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic;
abstract member-signature get runtimeType() → core::Type*;
}
static const field core::bool* constTrue = #C1;
static const field core::bool* constFalse = #C2;

View File

@ -140,10 +140,6 @@ config("dart_config") {
}
}
if (use_nnbd) {
defines += [ "DART_BUILT_WITH_NNBD_FLAG" ]
}
if (!is_win) {
cflags = [
"-Werror",

View File

@ -529,7 +529,7 @@ gen_snapshot_action("generate_snapshot_bin") {
isolate_snapshot_instructions,
]
args = []
if (use_nnbd) {
if (!dont_use_nnbd) {
args += [
"--enable-experiment=non-nullable",
"--null-safety",

View File

@ -35,19 +35,19 @@ List<String> stops = [];
List<String> expected = [
"$file:${LINE + 0}:17", // on "Foo" (in "new Foo()")
"$file:${LINE + 1}:11", // on "="
"list.dart:107:24", // on parameter to "contains"
"list.dart:108:23", // on "length" in "this.length"
"list.dart:109:16", // on "=" in "i = 0"
"list.dart:109:23", // on "<" in "i < length"
"list.dart:110:15", // on "[" in "this[i]"
"list.dart:105:25", // on parameter to "contains"
"list.dart:106:23", // on "length" in "this.length"
"list.dart:107:16", // on "=" in "i = 0"
"list.dart:107:23", // on "<" in "i < length"
"list.dart:108:15", // on "[" in "this[i]"
"$file:${LINE + 13}:23", // on parameter in "operator []"
"$file:${LINE + 14}:5", // on "return"
"list.dart:110:19", // on "=="
"list.dart:111:26", // on "length" in "this.length"
"list.dart:111:18", // on "!="
"list.dart:109:34", // on "++" in "i++"
"list.dart:109:23", // on "<" in "i < length"
"list.dart:115:5", // on "return"
"list.dart:108:19", // on "=="
"list.dart:109:26", // on "length" in "this.length"
"list.dart:109:18", // on "!="
"list.dart:107:34", // on "++" in "i++"
"list.dart:107:23", // on "<" in "i < length"
"list.dart:113:5", // on "return"
"$file:${LINE + 4}:5", // on "print"
"$file:${LINE + 6}:1" // on ending '}'
];

View File

@ -157,7 +157,7 @@ template("gen_vm_platform") {
}
single_root_scheme = "org-dartlang-sdk"
single_root_base = rebase_path("../../")
if (use_nnbd) {
if (!dont_use_nnbd) {
libraries_specification_uri =
"org-dartlang-sdk:///sdk_nnbd/lib/libraries.json"
} else {
@ -175,7 +175,7 @@ template("gen_vm_platform") {
"-Ddart.developer.causal_async_stacks=$allow_causal_async_stacks",
"-Ddart.isVM=true",
]
if (use_nnbd) {
if (!dont_use_nnbd) {
args += [ "--enable-experiment=non-nullable" ]
args += [ "--nnbd-agnostic" ]
}

View File

@ -5,9 +5,11 @@
_dart_root = get_path_info(".", "abspath")
declare_args() {
# Whether to use the NNBD fork of the SDK core libraries.
# TODO(#38701): Remove this when the fork has been merged back in.
use_nnbd = false
# Whether to build a Legacy SDK using Legacy core libraries.
# TODO(38701): Remove dont_use_nnbd once the NNBD SDK is stable/performant
# and there is no need to build a legacy version of the SDK for comparison
# purposes.
dont_use_nnbd = false
# Absolute path to the .git folder.
#

View File

@ -17,9 +17,7 @@
"third_party/pkg_tested/",
"tools/",
"out/ReleaseX64/dart-sdk/",
"out/ReleaseX64NNBD/dart-sdk/",
"xcodebuild/ReleaseX64/dart-sdk/",
"xcodebuild/ReleaseX64NNBD/dart-sdk/"
"xcodebuild/ReleaseX64/dart-sdk/"
],
"dart2js": [
".packages",
@ -31,7 +29,7 @@
"runtime/tests/",
"samples-dev/",
"samples/",
"sdk/",
"sdk_nnbd/",
"tests/.dart_tool/package_config.json",
"tests/angular/",
"tests/co19_2/co19_2-analyzer.status",
@ -70,9 +68,9 @@
"dart2js_nnbd": [
".packages",
".dart_tool/package_config.json",
"out/ReleaseIA32NNBD/dart-sdk/",
"out/ReleaseX64NNBD/dart-sdk/",
"out/ReleaseX64NNBD/gen/utils/dartdevc/",
"out/ReleaseIA32/dart-sdk/",
"out/ReleaseX64/dart-sdk/",
"out/ReleaseX64/gen/utils/dartdevc/",
"pkg/",
"runtime/tests/",
"samples-dev/",
@ -86,35 +84,24 @@
"tests/co19/co19-dartdevc.status",
"tests/co19/co19-kernel.status",
"tests/co19/co19-runtime.status",
"tests/co19_2/co19_2-analyzer.status",
"tests/co19_2/co19_2-co19.status",
"tests/co19_2/co19_2-dart2js.status",
"tests/co19_2/co19_2-dartdevc.status",
"tests/co19_2/co19_2-kernel.status",
"tests/co19_2/co19_2-runtime.status",
"tests/compiler/",
"tests/corelib_2/",
"tests/corelib/",
"tests/dart/",
"tests/kernel/",
"tests/language_2/",
"tests/language/",
"tests/lib_2/",
"tests/lib/",
"tests/light_unittest.dart",
"tests/search/",
"tests/standalone_2/",
"tests/ffi/",
"tests/ffi_2/",
"third_party/babel/babel.min.js",
"third_party/d8/",
"third_party/pkg/",
"third_party/pkg_tested/",
"third_party/requirejs/",
"tools/",
"xcodebuild/ReleaseIA32NNBD/dart-sdk/",
"xcodebuild/ReleaseX64NNBD/dart-sdk/",
"xcodebuild/ReleaseX64NNBD/gen/utils/dartdevc/"
"xcodebuild/ReleaseIA32/dart-sdk/",
"xcodebuild/ReleaseX64/dart-sdk/",
"xcodebuild/ReleaseX64/gen/utils/dartdevc/"
],
"dart2js_hostasserts": [
".packages",
@ -170,9 +157,9 @@
"dart2js_hostasserts_nnbd": [
".packages",
".dart_tool/package_config.json",
"out/ReleaseX64NNBD/dart",
"out/ReleaseX64NNBD/dart2js_platform.dill",
"out/ReleaseX64NNBD/dart2js_platform_strong.dill",
"out/ReleaseX64/dart",
"out/ReleaseX64/dart2js_platform.dill",
"out/ReleaseX64/dart2js_platform_strong.dill",
"pkg/",
"runtime/tests/",
"samples-dev/",
@ -187,40 +174,29 @@
"tests/co19/co19-dartdevc.status",
"tests/co19/co19-kernel.status",
"tests/co19/co19-runtime.status",
"tests/co19_2/co19_2-analyzer.status",
"tests/co19_2/co19_2-co19.status",
"tests/co19_2/co19_2-dart2js.status",
"tests/co19_2/co19_2-dartdevc.status",
"tests/co19_2/co19_2-kernel.status",
"tests/co19_2/co19_2-runtime.status",
"tests/compiler/",
"tests/corelib_2/",
"tests/corelib/",
"tests/dart/",
"tests/kernel/",
"tests/language_2/",
"tests/language/",
"tests/lib_2/",
"tests/lib/",
"tests/light_unittest.dart",
"tests/search/",
"tests/standalone_2/",
"tests/ffi/",
"third_party/d8/",
"third_party/pkg/",
"third_party/pkg_tested/",
"third_party/requirejs/",
"tools/",
"xcodebuild/ReleaseX64NNBD/dart",
"xcodebuild/ReleaseX64NNBD/dart2js_platform.dill",
"xcodebuild/ReleaseX64NNBD/dart2js_platform_strong.dill"
"xcodebuild/ReleaseX64/dart",
"xcodebuild/ReleaseX64/dart2js_platform.dill",
"xcodebuild/ReleaseX64/dart2js_platform_strong.dill"
],
"front-end": [
".packages",
".dart_tool/package_config.json",
"out/ReleaseIA32/",
"out/ReleaseX64/",
"out/ReleaseX64NNBD/",
"pkg/",
"runtime/tests/",
"samples-dev/",
@ -380,45 +356,46 @@
"pkg/vm/",
"runtime/",
"sdk/",
"sdk_nnbd/",
".dart_tool/package_config.json",
".packages",
".vpython"
],
"vm-kernel-nnbd": [
"benchmarks/",
"out/DebugIA32NNBD/",
"out/DebugX64NNBD/",
"out/DebugSIMARMNNBD/",
"out/DebugSIMARM64NNBD/",
"out/DebugSIMARM_X64NNBD/",
"out/DebugAndroidARMNNBD/",
"out/DebugAndroidARM_X64NNBD/",
"out/DebugAndroidARM64NNBD/",
"out/ReleaseIA32NNBD/",
"out/ReleaseX64NNBD/",
"out/ReleaseSIMARMNNBD/",
"out/ReleaseSIMARM64NNBD/",
"out/ReleaseSIMARM_X64NNBD/",
"out/ReleaseAndroidARMNNBD/",
"out/ReleaseAndroidARM_X64NNBD/",
"out/ReleaseAndroidARM64NNBD/",
"out/ReleaseXARM64NNBD/",
"out/ProductIA32NNBD/",
"out/ProductX64NNBD/",
"out/ProductSIMARMNNBD/",
"out/ProductSIMARM64NNBD/",
"out/ProductSIMARM_X64NNBD/",
"out/ProductAndroidARMNNBD/",
"out/ProductAndroidARM64NNBD/",
"xcodebuild/DebugIA32NNBD/",
"xcodebuild/DebugSIMARMNNBD/",
"xcodebuild/DebugSIMARM64NNBD/",
"xcodebuild/DebugX64NNBD/",
"xcodebuild/ProductX64NNBD/",
"xcodebuild/ReleaseIA32NNBD/",
"xcodebuild/ReleaseSIMARMNNBD/",
"xcodebuild/ReleaseSIMARM64NNBD/",
"xcodebuild/ReleaseX64NNBD/",
"out/DebugIA32/",
"out/DebugX64/",
"out/DebugSIMARM/",
"out/DebugSIMARM64/",
"out/DebugSIMARM_X64/",
"out/DebugAndroidARM/",
"out/DebugAndroidARM_X64/",
"out/DebugAndroidARM64/",
"out/ReleaseIA32/",
"out/ReleaseX64/",
"out/ReleaseSIMARM/",
"out/ReleaseSIMARM64/",
"out/ReleaseSIMARM_X64/",
"out/ReleaseAndroidARM/",
"out/ReleaseAndroidARM_X64/",
"out/ReleaseAndroidARM64/",
"out/ReleaseXARM64/",
"out/ProductIA32/",
"out/ProductX64/",
"out/ProductSIMARM/",
"out/ProductSIMARM64/",
"out/ProductSIMARM_X64/",
"out/ProductAndroidARM/",
"out/ProductAndroidARM64/",
"xcodebuild/DebugIA32/",
"xcodebuild/DebugSIMARM/",
"xcodebuild/DebugSIMARM64/",
"xcodebuild/DebugX64/",
"xcodebuild/ProductX64/",
"xcodebuild/ReleaseIA32/",
"xcodebuild/ReleaseSIMARM/",
"xcodebuild/ReleaseSIMARM64/",
"xcodebuild/ReleaseX64/",
"samples/",
"samples-dev/",
"tools/",
@ -435,23 +412,12 @@
"tests/co19/co19-dartdevc.status",
"tests/co19/co19-kernel.status",
"tests/co19/co19-runtime.status",
"tests/co19_2/co19_2-analyzer.status",
"tests/co19_2/co19_2-co19.status",
"tests/co19_2/co19_2-dart2js.status",
"tests/co19_2/co19_2-dartdevc.status",
"tests/co19_2/co19_2-kernel.status",
"tests/co19_2/co19_2-runtime.status",
"tests/compiler/",
"tests/corelib_2/",
"tests/dart/",
"tests/kernel/",
"tests/language_2/",
"tests/lib_2/",
"tests/light_unittest.dart",
"tests/search/",
"tests/standalone_2/",
"tests/ffi/",
"tests/ffi_2/",
"pkg/_fe_analyzer_shared/",
"pkg/async_helper/",
"pkg/build_integration/",
@ -687,7 +653,7 @@
"dart2js-options": [
"--no-null-safety",
"--libraries-spec=sdk_nnbd/lib/libraries.json",
"--platform-binaries=out/ReleaseX64NNBD/"
"--platform-binaries=out/ReleaseX64/"
],
"timeout": 240,
"host-checked": true
@ -702,7 +668,7 @@
"dart2js-options": [
"--no-null-safety",
"--libraries-spec=sdk_nnbd/lib/libraries.json",
"--platform-binaries=xcodebuild/ReleaseX64NNBD/"
"--platform-binaries=xcodebuild/ReleaseX64/"
],
"timeout": 240,
"host-checked": true
@ -1185,30 +1151,12 @@
"name": "build dart",
"script": "tools/build.py",
"arguments": [
"--nnbd",
"create_sdk",
"dartdevc_test",
"kernel_platform_files",
"runtime_kernel"
]
},
{
"name": "legacy sdk tests",
"arguments": [
"-ncfe-weak-${system}"
],
"fileset": "front-end",
"shards": 5
},
{
"name": "legacy co19_2 tests",
"arguments": [
"-ncfe-weak-${system}",
"co19_2"
],
"fileset": "front-end",
"shards": 6
},
{
"name": "weak sdk tests",
"arguments": [
@ -1452,28 +1400,10 @@
"name": "build dart",
"script": "tools/build.py",
"arguments": [
"--nnbd",
"runtime_kernel",
"dart_precompiled_runtime"
]
},
{
"name": "vm legacy tests in weak mode with asserts",
"arguments": [
"-ndartkp-weak-asserts-${system}-${mode}-${arch}"
],
"fileset": "vm-kernel-nnbd",
"shards": 6
},
{
"name": "vm legacy tests(co19_2) in weak mode with asserts",
"arguments": [
"-ndartkp-weak-asserts-${system}-${mode}-${arch}",
"co19_2"
],
"fileset": "vm-kernel-nnbd",
"shards": 10
},
{
"name": "vm nnbd tests in weak mode with asserts",
"arguments": [
@ -1817,28 +1747,10 @@
"name": "build dart",
"script": "tools/build.py",
"arguments": [
"--nnbd",
"create_sdk",
"runtime_kernel"
]
},
{
"name": "vm legacy tests in weak mode with asserts",
"arguments": [
"-ndartk-weak-asserts-${system}-${mode}-${arch}"
],
"fileset": "vm-kernel-nnbd",
"shards": 6
},
{
"name": "vm legacy tests(co19_2) in weak mode with asserts",
"arguments": [
"-ndartk-weak-asserts-${system}-${mode}-${arch}",
"co19_2"
],
"fileset": "vm-kernel-nnbd",
"shards": 6
},
{
"name": "vm nnbd test in weak mode with asserts",
"arguments": [
@ -2143,13 +2055,12 @@
"name": "build dart",
"script": "tools/build.py",
"arguments": [
"--nnbd",
"dartdevc_test"
]
},
{
"name": "check dart nnbd sdk for static errors",
"script": "out/ReleaseX64NNBD/dart-sdk/bin/dart",
"script": "out/ReleaseX64/dart-sdk/bin/dart",
"arguments": [
"--enable-experiment=non-nullable",
"pkg/dev_compiler/tool/check_nnbd_sdk.dart"
@ -2157,7 +2068,7 @@
},
{
"name": "ddc weak modular tests",
"script": "out/ReleaseX64NNBD/dart-sdk/bin/dart",
"script": "out/ReleaseX64/dart-sdk/bin/dart",
"testRunner": true,
"arguments": [
"pkg/dev_compiler/test/modular_suite_nnbd.dart",
@ -2178,26 +2089,6 @@
"shards": 6,
"fileset": "dart2js_nnbd"
},
{
"name": "ddc legacy weak tests",
"arguments": [
"-ndartdevk-weak-linux-release-chrome",
"language_2",
"corelib_2",
"lib_2"
],
"shards": 6,
"fileset": "dart2js_nnbd"
},
{
"name": "ddc legacy weak co19 tests",
"arguments": [
"-ndartdevk-weak-linux-release-chrome",
"co19_2"
],
"shards": 6,
"fileset": "dart2js_nnbd"
},
{
"name": "ddc nnbd strong tests",
"arguments": [
@ -2723,14 +2614,13 @@
"name": "build dart",
"script": "tools/build.py",
"arguments": [
"--nnbd",
"create_sdk",
"dart2js_bot"
]
},
{
"name": "check dart nnbd sdk for static errors",
"script": "out/ReleaseX64NNBD/dart-sdk/bin/dart",
"script": "out/ReleaseX64/dart-sdk/bin/dart",
"arguments": [
"--enable-experiment=non-nullable",
"pkg/dev_compiler/tool/check_nnbd_sdk.dart",
@ -2743,8 +2633,8 @@
"arguments": [
"-ndart2js-hostasserts-weak-linux-x64-d8",
"--dart2js-batch",
"language_2",
"corelib_2",
"language",
"corelib",
"dart2js_extra",
"dart2js_native",
"kernel"
@ -3128,7 +3018,6 @@
"name": "build dart",
"script": "tools/build.py",
"arguments": [
"--nnbd",
"create_sdk"
]
},
@ -3154,19 +3043,6 @@
"standalone"
]
},
{
"name": "analyze nnbd legacy weak tests enable-asserts",
"arguments": [
"-nanalyzer-asserts-weak-${system}"
]
},
{
"name": "analyze nnbd legacy weak tests enable-asserts co19_2",
"arguments": [
"-nanalyzer-asserts-weak-${system}",
"co19_2"
]
},
{
"name": "analyze nnbd strong co19 tests",
"arguments": [

View File

@ -67,11 +67,12 @@ def BuildOptions():
help='Build variants (comma-separated).',
metavar='[all,none,asan,lsan,msan,tsan,ubsan]',
default='none')
# TODO(38701): Remove this and everything that references it once the
# forked NNBD SDK is merged back in.
# TODO(38701): Remove this option once the NNBD SDK is stable/performant
# and there is no need to build a legacy version of the SDK for comparison
# purposes.
result.add_option(
"--nnbd",
help='Use the NNBD fork of the SDK.',
"--no-nnbd",
help='Build the Legacy (pre NNBD) version of the SDK.',
default=False,
action='store_true')
result.add_option(
@ -218,7 +219,7 @@ def GenerateBuildfilesIfNeeded():
return True
def RunGNIfNeeded(out_dir, target_os, mode, arch, use_nnbd, sanitizer):
def RunGNIfNeeded(out_dir, target_os, mode, arch, dont_use_nnbd, sanitizer):
if os.path.isfile(os.path.join(out_dir, 'args.gn')):
return
gn_os = 'host' if target_os == HOST_OS else target_os
@ -235,8 +236,8 @@ def RunGNIfNeeded(out_dir, target_os, mode, arch, use_nnbd, sanitizer):
gn_os,
'-v',
]
if use_nnbd:
gn_command.append('--nnbd')
if dont_use_nnbd:
gn_command.append('--no-nnbd')
process = subprocess.Popen(gn_command)
process.wait()
@ -291,13 +292,13 @@ def EnsureGomaStarted(out_dir):
# Returns a tuple (build_config, command to run, whether goma is used)
def BuildOneConfig(options, targets, target_os, mode, arch, sanitizer):
build_config = utils.GetBuildConf(mode, arch, target_os, sanitizer,
options.nnbd)
options.no_nnbd)
out_dir = utils.GetBuildRoot(HOST_OS, mode, arch, target_os, sanitizer,
options.nnbd)
options.no_nnbd)
using_goma = False
# TODO(zra): Remove auto-run of gn, replace with prompt for user to run
# gn.py manually.
RunGNIfNeeded(out_dir, target_os, mode, arch, options.nnbd, sanitizer)
RunGNIfNeeded(out_dir, target_os, mode, arch, options.no_nnbd, sanitizer)
command = ['ninja', '-C', out_dir]
if options.verbose:
command += ['-v']

View File

@ -51,10 +51,11 @@ def GetGNArgs(args):
return args.split()
# TODO(38701): Remove use_nnbd once the forked NNBD SDK is merged back in.
def GetOutDir(mode, arch, target_os, sanitizer, use_nnbd):
# TODO(38701): Remove dont_use_nnbd once the NNBD SDK is stable/performant and
# there is no need to build a legacy version of the SDK for comparison purposes.
def GetOutDir(mode, arch, target_os, sanitizer, dont_use_nnbd):
return utils.GetBuildRoot(HOST_OS, mode, arch, target_os, sanitizer,
use_nnbd)
dont_use_nnbd)
def ToCommandLine(gn_args):
@ -144,8 +145,9 @@ def UseSysroot(args, gn_args):
return True
# TODO(38701): Remove use_nnbd once the forked NNBD SDK is merged back in.
def ToGnArgs(args, mode, arch, target_os, sanitizer, use_nnbd):
# TODO(38701): Remove dont_use_nnbd once the NNBD SDK is stable/performant and
# there is no need to build a legacy version of the SDK for comparison purposes.
def ToGnArgs(args, mode, arch, target_os, sanitizer, dont_use_nnbd):
gn_args = {}
host_os = HostOsForGn(HOST_OS)
@ -266,7 +268,7 @@ def ToGnArgs(args, mode, arch, target_os, sanitizer, use_nnbd):
gn_args['dart_debug_optimization_level'] = args.debug_opt_level
gn_args['debug_optimization_level'] = args.debug_opt_level
gn_args['use_nnbd'] = use_nnbd
gn_args['dont_use_nnbd'] = dont_use_nnbd
return gn_args
@ -376,9 +378,11 @@ def parse_args(args):
help='Build variants (comma-separated).',
metavar='[all,none,asan,lsan,msan,tsan,ubsan]',
default='none')
# TODO(38701): Remove this once the forked NNBD SDK is merged back in.
# TODO(38701): Remove dont_use_nnbd once the NNBD SDK is stable/performant
# and there is no need to build a legacy version of the SDK for
# comparison purposes.
common_group.add_argument(
"--nnbd",
"--no-nnbd",
help='Use the NNBD fork of the SDK.',
default=False,
action='store_true')
@ -515,14 +519,14 @@ def Main(argv):
for arch in args.arch:
for sanitizer in args.sanitizer:
out_dir = GetOutDir(mode, arch, target_os, sanitizer,
args.nnbd)
args.no_nnbd)
# TODO(infra): Re-enable --check. Many targets fail to use
# public_deps to re-expose header files to their dependents.
# See dartbug.com/32364
command = [gn, 'gen', out_dir]
gn_args = ToCommandLine(
ToGnArgs(args, mode, arch, target_os, sanitizer,
args.nnbd))
args.no_nnbd))
gn_args += GetGNArgs(args)
if args.verbose:
print("gn gen --check in %s" % out_dir)

View File

@ -316,9 +316,11 @@ def IsCrossBuild(target_os, arch):
return ((GetArchFamily(host_arch) != GetArchFamily(arch)) or
(target_os != GuessOS()))
# TODO(38701): Remove use_nnbd once the forked NNBD SDK is merged back in.
def GetBuildConf(mode, arch, conf_os=None, sanitizer=None, use_nnbd=False):
nnbd = "NNBD" if use_nnbd else ""
# TODO(38701): Remove dont_use_nnbd once the NNBD SDK is stable/performant and
# there is no need to build a legacy version of the SDK for comparison purposes.
def GetBuildConf(mode, arch, conf_os=None, sanitizer=None, dont_use_nnbd=False):
nnbd = "Legacy" if dont_use_nnbd else ""
if conf_os == 'android':
return '%s%s%s%s' % (GetBuildMode(mode), conf_os.title(), arch.upper(),
nnbd)
@ -336,28 +338,30 @@ def GetBuildDir(host_os):
return BUILD_ROOT[host_os]
# TODO(38701): Remove use_nnbd once the forked NNBD SDK is merged back in.
# TODO(38701): Remove dont_use_nnbd once the NNBD SDK is stable/performant and
# there is no need to build a legacy version of the SDK for comparison purposes.
def GetBuildRoot(host_os,
mode=None,
arch=None,
target_os=None,
sanitizer=None,
use_nnbd=False):
dont_use_nnbd=False):
build_root = GetBuildDir(host_os)
if mode:
build_root = os.path.join(
build_root, GetBuildConf(mode, arch, target_os, sanitizer,
use_nnbd))
build_root,
GetBuildConf(mode, arch, target_os, sanitizer, dont_use_nnbd))
return build_root
# TODO(38701): Remove use_nnbd once the forked NNBD SDK is merged back in.
# TODO(38701): Remove dont_use_nnbd once the NNBD SDK is stable/performant and
# there is no need to build a legacy version of the SDK for comparison purposes.
def GetBuildSdkBin(host_os,
mode=None,
arch=None,
target_os=None,
use_nnbd=False):
build_root = GetBuildRoot(host_os, mode, arch, target_os, use_nnbd)
dont_use_nnbd=False):
build_root = GetBuildRoot(host_os, mode, arch, target_os, dont_use_nnbd)
return os.path.join(build_root, 'dart-sdk', 'bin')

View File

@ -46,10 +46,10 @@ prebuilt_dart_action("dart2js_create_snapshot_entry") {
args = [ "--output_dir=$output_dir" ]
}
if (use_nnbd) {
libraries_specification_path = "sdk_nnbd/lib/libraries.json"
} else {
if (dont_use_nnbd) {
libraries_specification_path = "sdk/lib/libraries.json"
} else {
libraries_specification_path = "sdk_nnbd/lib/libraries.json"
}
application_snapshot("dart2js") {
@ -91,7 +91,7 @@ compile_platform("compile_dart2js_platform") {
"dart:core",
]
if (use_nnbd) {
if (!dont_use_nnbd) {
args += [ "--enable-experiment=non-nullable" ]
}
}
@ -112,7 +112,7 @@ compile_platform("compile_dart2js_server_platform") {
"dart:core",
]
if (use_nnbd) {
if (!dont_use_nnbd) {
args += [ "--enable-experiment=non-nullable" ]
}
}

View File

@ -44,7 +44,7 @@ prebuilt_dart_action("generate_summary_strong") {
inputs = sdk_lib_files + analyzer_files
output = "$root_gen_dir/strong.sum"
outputs = [ output ]
if (use_nnbd) {
if (!dont_use_nnbd) {
args = [
"build-non-nullable",
rebase_path(output),

View File

@ -16,10 +16,10 @@ sdk_summary = "$target_gen_dir/ddc_sdk.sum"
sdk_outline_dill = "$root_out_dir/ddc_sdk.dill"
sdk_full_dill = "$root_out_dir/ddc_platform.dill"
if (use_nnbd) {
libraries_specification_path = "sdk_nnbd/lib/libraries.json"
} else {
if (dont_use_nnbd) {
libraries_specification_path = "sdk/lib/libraries.json"
} else {
libraries_specification_path = "sdk_nnbd/lib/libraries.json"
}
application_snapshot("dartdevc") {
@ -35,7 +35,9 @@ application_snapshot("dartdevc") {
"dartdevc.js",
]
if (use_nnbd) {
if (dont_use_nnbd) {
training_args += [ rebase_path("../../pkg/dev_compiler/bin/dartdevc.dart") ]
} else {
training_args += [
"--enable-experiment=non-nullable",
@ -45,8 +47,6 @@ application_snapshot("dartdevc") {
# should be easier to compile while we bootstrap NNBD.
rebase_path("../../tests/language_2/abstract/equal_test.dart"),
]
} else {
training_args += [ rebase_path("../../pkg/dev_compiler/bin/dartdevc.dart") ]
}
deps = [
@ -58,12 +58,12 @@ application_snapshot("dartdevc") {
}
# TODO(#38701) Cleanup after merging the forked SDK into mainline.
if (use_nnbd) {
sdk_root = "../../sdk_nnbd"
libraries_specification_path = "sdk_nnbd/lib/libraries.json"
} else {
if (dont_use_nnbd) {
sdk_root = "../../sdk"
libraries_specification_path = "sdk/lib/libraries.json"
} else {
sdk_root = "../../sdk_nnbd"
libraries_specification_path = "sdk_nnbd/lib/libraries.json"
}
sdk_lib_files = exec_script("../../tools/list_dart_files.py",
@ -154,8 +154,8 @@ prebuilt_dart_action("dartdevc_patch_sdk") {
]
# TODO(#38701) Cleanup after merging the forked SDK into mainline.
if (use_nnbd) {
args += [ "--nnbd" ]
if (dont_use_nnbd) {
args += [ "--no-nnbd" ]
}
}
@ -276,7 +276,7 @@ template("dartdevc_kernel_compile") {
}
# TODO(38701): Cleanup after merging the forked SDK into mainline.
if (use_nnbd) {
if (!dont_use_nnbd) {
args += [ "--enable-experiment=non-nullable" ]
}
}
@ -335,7 +335,7 @@ compile_platform("dartdevc_platform") {
]
# TODO(38701): Cleanup after merging the forked SDK into mainline.
if (use_nnbd) {
if (!dont_use_nnbd) {
args += [ "--enable-experiment=non-nullable" ]
}
}
@ -392,7 +392,7 @@ prebuilt_dart_action("dartdevc_kernel_sdk") {
]
# TODO(38701): Cleanup after merging the forked SDK into mainline.
if (use_nnbd) {
if (!dont_use_nnbd) {
args += [ "--enable-experiment=non-nullable" ]
}
}