Skip to content
This repository was archived by the owner on Feb 25, 2025. It is now read-only.

Commit e8e0d5a

Browse files
author
Dart CI
committed
Version 2.10.0-83.0.dev
Merge commit '8805a3f9c727603573a5ff57bd39a76d7a87f2ae' into 'dev'
2 parents 1cda3ff + 8805a3f commit e8e0d5a

31 files changed

+1215
-375
lines changed

pkg/front_end/lib/src/fasta/incremental_compiler.dart

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -884,15 +884,16 @@ class IncrementalCompiler implements IncrementalKernelGenerator {
884884
if (previousSource == null || previousSource.isEmpty) {
885885
return null;
886886
}
887-
String before = textualOutline(previousSource);
887+
String before = textualOutline(previousSource, performModelling: true);
888888
if (before == null) {
889889
return null;
890890
}
891891
String now;
892892
FileSystemEntity entity =
893893
c.options.fileSystem.entityForUri(builder.fileUri);
894894
if (await entity.exists()) {
895-
now = textualOutline(await entity.readAsBytes());
895+
now =
896+
textualOutline(await entity.readAsBytes(), performModelling: true);
896897
}
897898
if (before != now) {
898899
return null;

pkg/front_end/lib/src/fasta/source/source_class_builder.dart

Lines changed: 18 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -591,11 +591,24 @@ class SourceClassBuilder extends ClassBuilderImpl
591591
});
592592

593593
constructors.local.forEach((String name, MemberBuilder builder) {
594-
if (builder is ConstructorBuilder &&
595-
!builder.isExternal &&
596-
builder.formals != null) {
597-
libraryBuilder.checkInitializersInFormals(
598-
builder.formals, typeEnvironment);
594+
if (builder is ConstructorBuilder) {
595+
if (!builder.isExternal && builder.formals != null) {
596+
libraryBuilder.checkInitializersInFormals(
597+
builder.formals, typeEnvironment);
598+
}
599+
} else if (builder is RedirectingFactoryBuilder) {
600+
// Default values are not required on redirecting factory constructors.
601+
} else if (builder is ProcedureBuilder) {
602+
assert(builder.isFactory, "Unexpected constructor $builder.");
603+
if (!builder.isExternal && builder.formals != null) {
604+
libraryBuilder.checkInitializersInFormals(
605+
builder.formals, typeEnvironment);
606+
}
607+
} else {
608+
assert(
609+
// This is a synthesized constructor.
610+
builder is DillMemberBuilder && builder.member is Constructor,
611+
"Unexpected constructor $builder.");
599612
}
600613
});
601614
}

pkg/front_end/test/spell_checking_list_tests.txt

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -89,6 +89,7 @@ causal
8989
cb
9090
cc
9191
ccc
92+
cell
9293
charcode
9394
charset
9495
checkme
@@ -136,6 +137,7 @@ contract
136137
conversion
137138
conversions
138139
coo
140+
corners
139141
costly
140142
cov
141143
cp
@@ -465,6 +467,7 @@ outbound
465467
overlay
466468
pack
467469
paging
470+
paint
468471
party
469472
pause
470473
paused
@@ -543,6 +546,7 @@ retains
543546
rev
544547
risky
545548
row
549+
rows
546550
runtimes
547551
say
548552
scans

pkg/front_end/testcases/incremental_initialize_from_dill/flutter_widget_transform_const.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ worlds:
4242
}
4343

4444
class Boz extends Widget {
45-
factory Boz({bool createNew}) {
45+
factory Boz({required bool createNew}) {
4646
if (createNew) {
4747
return new Boz._();
4848
} else {

pkg/front_end/testcases/incremental_initialize_from_dill/flutter_widget_transform_const.yaml.world.1.expect

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,7 @@ library from "org-dartlang-test:///foo.dart" as foo {
6666
const constructor _({wid::_Location? $creationLocationd_0dea112b090073317d4}) → foo::Boz
6767
: super fra::Widget::•($creationLocationd_0dea112b090073317d4: $creationLocationd_0dea112b090073317d4)
6868
;
69-
static factory •({dart.core::bool createNew = #C1, wid::_Location? $creationLocationd_0dea112b090073317d4}) → foo::Boz {
69+
static factory •({required dart.core::bool createNew = #C1, wid::_Location? $creationLocationd_0dea112b090073317d4}) → foo::Boz {
7070
if(createNew) {
7171
return new foo::Boz::_($creationLocationd_0dea112b090073317d4: $creationLocationd_0dea112b090073317d4);
7272
}
@@ -99,7 +99,7 @@ constants {
9999
#C9 = wid::_Location {file:#C2, line:#C8, column:#C4, name:#C1, parameterLocations:#C5}
100100
#C10 = foo::Baz {_location:#C9}
101101
#C11 = 9.0
102-
#C12 = 119.0
102+
#C12 = 128.0
103103
#C13 = wid::_Location {file:#C2, line:#C11, column:#C12, name:#C1, parameterLocations:#C5}
104104
#C14 = foo::Boz {_location:#C13}
105105
#C15 = "org-dartlang-test:///main.dart"

pkg/front_end/testcases/incremental_initialize_from_dill/flutter_widget_transform_const.yaml.world.2.expect

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,7 @@ library from "org-dartlang-test:///foo.dart" as foo {
6666
const constructor _({wid::_Location? $creationLocationd_0dea112b090073317d4}) → foo::Boz
6767
: super fra::Widget::•($creationLocationd_0dea112b090073317d4: $creationLocationd_0dea112b090073317d4)
6868
;
69-
static factory •({dart.core::bool createNew = #C1, wid::_Location? $creationLocationd_0dea112b090073317d4}) → foo::Boz {
69+
static factory •({required dart.core::bool createNew = #C1, wid::_Location? $creationLocationd_0dea112b090073317d4}) → foo::Boz {
7070
if(createNew) {
7171
return new foo::Boz::_($creationLocationd_0dea112b090073317d4: $creationLocationd_0dea112b090073317d4);
7272
}
@@ -93,7 +93,7 @@ constants {
9393
#C9 = wid::_Location {file:#C2, line:#C8, column:#C4, name:#C1, parameterLocations:#C5}
9494
#C10 = foo::Baz {_location:#C9}
9595
#C11 = 9.0
96-
#C12 = 119.0
96+
#C12 = 128.0
9797
#C13 = wid::_Location {file:#C2, line:#C11, column:#C12, name:#C1, parameterLocations:#C5}
9898
#C14 = foo::Boz {_location:#C13}
9999
}

pkg/front_end/testcases/incremental_initialize_from_dill/flutter_widget_transform_const.yaml.world.3.expect

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,7 @@ library from "org-dartlang-test:///foo.dart" as foo {
6666
const constructor _({wid::_Location? $creationLocationd_0dea112b090073317d4}) → foo::Boz
6767
: super fra::Widget::•($creationLocationd_0dea112b090073317d4: $creationLocationd_0dea112b090073317d4)
6868
;
69-
static factory •({dart.core::bool createNew = #C1, wid::_Location? $creationLocationd_0dea112b090073317d4}) → foo::Boz {
69+
static factory •({required dart.core::bool createNew = #C1, wid::_Location? $creationLocationd_0dea112b090073317d4}) → foo::Boz {
7070
if(createNew) {
7171
return new foo::Boz::_($creationLocationd_0dea112b090073317d4: $creationLocationd_0dea112b090073317d4);
7272
}
@@ -99,7 +99,7 @@ constants {
9999
#C9 = wid::_Location {file:#C2, line:#C8, column:#C4, name:#C1, parameterLocations:#C5}
100100
#C10 = foo::Baz {_location:#C9}
101101
#C11 = 9.0
102-
#C12 = 119.0
102+
#C12 = 128.0
103103
#C13 = wid::_Location {file:#C2, line:#C11, column:#C12, name:#C1, parameterLocations:#C5}
104104
#C14 = foo::Boz {_location:#C13}
105105
#C15 = "org-dartlang-test:///main.dart"
Lines changed: 86 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,86 @@
1+
# Copyright (c) 2020, the Dart project authors. Please see the AUTHORS file
2+
# for details. All rights reserved. Use of this source code is governed by a
3+
# BSD-style license that can be found in the LICENSE.md file.
4+
5+
# Re-ordering things is OK.
6+
7+
type: newworld
8+
worlds:
9+
- entry: main.dart
10+
experiments: alternative-invalidation-strategy
11+
sources:
12+
main.dart: |
13+
import 'lib.dart';
14+
class A {
15+
int a() {
16+
return 42;
17+
}
18+
int b() {
19+
return 2;
20+
}
21+
}
22+
lib.dart: |
23+
class B {
24+
int a() {
25+
return 42;
26+
}
27+
int b() {
28+
return 2;
29+
}
30+
}
31+
class C {
32+
int a() {
33+
return 42;
34+
}
35+
int b() {
36+
return 2;
37+
}
38+
}
39+
expectedLibraryCount: 2
40+
41+
- entry: main.dart
42+
experiments: alternative-invalidation-strategy
43+
worldType: updated
44+
expectInitializeFromDill: false
45+
invalidate:
46+
- main.dart
47+
sources:
48+
main.dart: |
49+
import 'lib.dart';
50+
class A {
51+
int b() {
52+
return 42;
53+
}
54+
int a() {
55+
return 2;
56+
}
57+
}
58+
expectedLibraryCount: 2
59+
expectsRebuildBodiesOnly: true
60+
61+
- entry: main.dart
62+
experiments: alternative-invalidation-strategy
63+
worldType: updated
64+
expectInitializeFromDill: false
65+
invalidate:
66+
- lib.dart
67+
sources:
68+
lib.dart: |
69+
class C {
70+
int b() {
71+
return 1;
72+
}
73+
int a() {
74+
return 2;
75+
}
76+
}
77+
class B {
78+
int b() {
79+
return 3;
80+
}
81+
int a() {
82+
return 4;
83+
}
84+
}
85+
expectedLibraryCount: 2
86+
expectsRebuildBodiesOnly: true
Lines changed: 72 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,72 @@
1+
main = <No Member>;
2+
library from "org-dartlang-test:///lib.dart" as lib {
3+
4+
class B extends dart.core::Object {
5+
synthetic constructor •() → lib::B*
6+
: super dart.core::Object::•()
7+
;
8+
method a() → dart.core::int* {
9+
return 42;
10+
}
11+
method b() → dart.core::int* {
12+
return 2;
13+
}
14+
abstract member-signature get _identityHashCode() → dart.core::int*; -> dart.core::Object::_identityHashCode
15+
abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → dart.core::bool*; -> dart.core::Object::_instanceOf
16+
abstract member-signature method _simpleInstanceOf(dynamic type) → dart.core::bool*; -> dart.core::Object::_simpleInstanceOf
17+
abstract member-signature method _simpleInstanceOfTrue(dynamic type) → dart.core::bool*; -> dart.core::Object::_simpleInstanceOfTrue
18+
abstract member-signature method _simpleInstanceOfFalse(dynamic type) → dart.core::bool*; -> dart.core::Object::_simpleInstanceOfFalse
19+
abstract member-signature operator ==(dynamic other) → dart.core::bool*; -> dart.core::Object::==
20+
abstract member-signature get hashCode() → dart.core::int*; -> dart.core::Object::hashCode
21+
abstract member-signature method toString() → dart.core::String*; -> dart.core::Object::toString
22+
abstract member-signature method noSuchMethod(dart.core::Invocation* invocation) → dynamic; -> dart.core::Object::noSuchMethod
23+
abstract member-signature get runtimeType() → dart.core::Type*; -> dart.core::Object::runtimeType
24+
}
25+
class C extends dart.core::Object {
26+
synthetic constructor •() → lib::C*
27+
: super dart.core::Object::•()
28+
;
29+
method a() → dart.core::int* {
30+
return 42;
31+
}
32+
method b() → dart.core::int* {
33+
return 2;
34+
}
35+
abstract member-signature get _identityHashCode() → dart.core::int*; -> dart.core::Object::_identityHashCode
36+
abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → dart.core::bool*; -> dart.core::Object::_instanceOf
37+
abstract member-signature method _simpleInstanceOf(dynamic type) → dart.core::bool*; -> dart.core::Object::_simpleInstanceOf
38+
abstract member-signature method _simpleInstanceOfTrue(dynamic type) → dart.core::bool*; -> dart.core::Object::_simpleInstanceOfTrue
39+
abstract member-signature method _simpleInstanceOfFalse(dynamic type) → dart.core::bool*; -> dart.core::Object::_simpleInstanceOfFalse
40+
abstract member-signature operator ==(dynamic other) → dart.core::bool*; -> dart.core::Object::==
41+
abstract member-signature get hashCode() → dart.core::int*; -> dart.core::Object::hashCode
42+
abstract member-signature method toString() → dart.core::String*; -> dart.core::Object::toString
43+
abstract member-signature method noSuchMethod(dart.core::Invocation* invocation) → dynamic; -> dart.core::Object::noSuchMethod
44+
abstract member-signature get runtimeType() → dart.core::Type*; -> dart.core::Object::runtimeType
45+
}
46+
}
47+
library from "org-dartlang-test:///main.dart" as main {
48+
49+
import "org-dartlang-test:///lib.dart";
50+
51+
class A extends dart.core::Object {
52+
synthetic constructor •() → main::A*
53+
: super dart.core::Object::•()
54+
;
55+
method a() → dart.core::int* {
56+
return 42;
57+
}
58+
method b() → dart.core::int* {
59+
return 2;
60+
}
61+
abstract member-signature get _identityHashCode() → dart.core::int*; -> dart.core::Object::_identityHashCode
62+
abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → dart.core::bool*; -> dart.core::Object::_instanceOf
63+
abstract member-signature method _simpleInstanceOf(dynamic type) → dart.core::bool*; -> dart.core::Object::_simpleInstanceOf
64+
abstract member-signature method _simpleInstanceOfTrue(dynamic type) → dart.core::bool*; -> dart.core::Object::_simpleInstanceOfTrue
65+
abstract member-signature method _simpleInstanceOfFalse(dynamic type) → dart.core::bool*; -> dart.core::Object::_simpleInstanceOfFalse
66+
abstract member-signature operator ==(dynamic other) → dart.core::bool*; -> dart.core::Object::==
67+
abstract member-signature get hashCode() → dart.core::int*; -> dart.core::Object::hashCode
68+
abstract member-signature method toString() → dart.core::String*; -> dart.core::Object::toString
69+
abstract member-signature method noSuchMethod(dart.core::Invocation* invocation) → dynamic; -> dart.core::Object::noSuchMethod
70+
abstract member-signature get runtimeType() → dart.core::Type*; -> dart.core::Object::runtimeType
71+
}
72+
}
Lines changed: 72 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,72 @@
1+
main = <No Member>;
2+
library from "org-dartlang-test:///lib.dart" as lib {
3+
4+
class B extends dart.core::Object {
5+
synthetic constructor •() → lib::B*
6+
: super dart.core::Object::•()
7+
;
8+
method a() → dart.core::int* {
9+
return 42;
10+
}
11+
method b() → dart.core::int* {
12+
return 2;
13+
}
14+
abstract member-signature get _identityHashCode() → dart.core::int*; -> dart.core::Object::_identityHashCode
15+
abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → dart.core::bool*; -> dart.core::Object::_instanceOf
16+
abstract member-signature method _simpleInstanceOf(dynamic type) → dart.core::bool*; -> dart.core::Object::_simpleInstanceOf
17+
abstract member-signature method _simpleInstanceOfTrue(dynamic type) → dart.core::bool*; -> dart.core::Object::_simpleInstanceOfTrue
18+
abstract member-signature method _simpleInstanceOfFalse(dynamic type) → dart.core::bool*; -> dart.core::Object::_simpleInstanceOfFalse
19+
abstract member-signature operator ==(dynamic other) → dart.core::bool*; -> dart.core::Object::==
20+
abstract member-signature get hashCode() → dart.core::int*; -> dart.core::Object::hashCode
21+
abstract member-signature method toString() → dart.core::String*; -> dart.core::Object::toString
22+
abstract member-signature method noSuchMethod(dart.core::Invocation* invocation) → dynamic; -> dart.core::Object::noSuchMethod
23+
abstract member-signature get runtimeType() → dart.core::Type*; -> dart.core::Object::runtimeType
24+
}
25+
class C extends dart.core::Object {
26+
synthetic constructor •() → lib::C*
27+
: super dart.core::Object::•()
28+
;
29+
method a() → dart.core::int* {
30+
return 42;
31+
}
32+
method b() → dart.core::int* {
33+
return 2;
34+
}
35+
abstract member-signature get _identityHashCode() → dart.core::int*; -> dart.core::Object::_identityHashCode
36+
abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → dart.core::bool*; -> dart.core::Object::_instanceOf
37+
abstract member-signature method _simpleInstanceOf(dynamic type) → dart.core::bool*; -> dart.core::Object::_simpleInstanceOf
38+
abstract member-signature method _simpleInstanceOfTrue(dynamic type) → dart.core::bool*; -> dart.core::Object::_simpleInstanceOfTrue
39+
abstract member-signature method _simpleInstanceOfFalse(dynamic type) → dart.core::bool*; -> dart.core::Object::_simpleInstanceOfFalse
40+
abstract member-signature operator ==(dynamic other) → dart.core::bool*; -> dart.core::Object::==
41+
abstract member-signature get hashCode() → dart.core::int*; -> dart.core::Object::hashCode
42+
abstract member-signature method toString() → dart.core::String*; -> dart.core::Object::toString
43+
abstract member-signature method noSuchMethod(dart.core::Invocation* invocation) → dynamic; -> dart.core::Object::noSuchMethod
44+
abstract member-signature get runtimeType() → dart.core::Type*; -> dart.core::Object::runtimeType
45+
}
46+
}
47+
library from "org-dartlang-test:///main.dart" as main {
48+
49+
import "org-dartlang-test:///lib.dart";
50+
51+
class A extends dart.core::Object {
52+
synthetic constructor •() → main::A*
53+
: super dart.core::Object::•()
54+
;
55+
method b() → dart.core::int* {
56+
return 42;
57+
}
58+
method a() → dart.core::int* {
59+
return 2;
60+
}
61+
abstract member-signature get _identityHashCode() → dart.core::int*; -> dart.core::Object::_identityHashCode
62+
abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → dart.core::bool*; -> dart.core::Object::_instanceOf
63+
abstract member-signature method _simpleInstanceOf(dynamic type) → dart.core::bool*; -> dart.core::Object::_simpleInstanceOf
64+
abstract member-signature method _simpleInstanceOfTrue(dynamic type) → dart.core::bool*; -> dart.core::Object::_simpleInstanceOfTrue
65+
abstract member-signature method _simpleInstanceOfFalse(dynamic type) → dart.core::bool*; -> dart.core::Object::_simpleInstanceOfFalse
66+
abstract member-signature operator ==(dynamic other) → dart.core::bool*; -> dart.core::Object::==
67+
abstract member-signature get hashCode() → dart.core::int*; -> dart.core::Object::hashCode
68+
abstract member-signature method toString() → dart.core::String*; -> dart.core::Object::toString
69+
abstract member-signature method noSuchMethod(dart.core::Invocation* invocation) → dynamic; -> dart.core::Object::noSuchMethod
70+
abstract member-signature get runtimeType() → dart.core::Type*; -> dart.core::Object::runtimeType
71+
}
72+
}

0 commit comments

Comments
 (0)