Skip to content

Commit 2db5a7b

Browse files
johnniwintherCommit Queue
authored andcommitted
[cfe] Support aliased void
This supports void through type aliases as the return type of setters and index setters. Closes #61628 Change-Id: Ie2f3dad59f630deec9c535e3b1caf1595720215d Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/452402 Reviewed-by: Chloe Stefantsova <[email protected]> Commit-Queue: Johnni Winther <[email protected]>
1 parent 4c80dd1 commit 2db5a7b

36 files changed

+839
-83
lines changed

pkg/front_end/lib/src/builder/fixed_type_builder.dart

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -36,10 +36,6 @@ class FixedTypeBuilderImpl extends FixedTypeBuilder {
3636
@override
3737
String get debugName => 'FixedTypeBuilder';
3838

39-
@override
40-
// Coverage-ignore(suite): Not run.
41-
bool get isVoidType => type is VoidType;
42-
4339
@override
4440
// Coverage-ignore(suite): Not run.
4541
StringBuffer printOn(StringBuffer buffer) {

pkg/front_end/lib/src/builder/function_type_builder.dart

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -114,10 +114,6 @@ abstract class FunctionTypeBuilderImpl extends FunctionTypeBuilder {
114114
@override
115115
String get debugName => "Function";
116116

117-
@override
118-
// Coverage-ignore(suite): Not run.
119-
bool get isVoidType => false;
120-
121117
@override
122118
StringBuffer printOn(StringBuffer buffer) {
123119
if (typeParameters != null) {

pkg/front_end/lib/src/builder/invalid_type_builder.dart

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -61,10 +61,6 @@ class InvalidTypeBuilderImpl extends InvalidTypeBuilder {
6161
@override
6262
bool get isExplicit => true;
6363

64-
@override
65-
// Coverage-ignore(suite): Not run.
66-
bool get isVoidType => false;
67-
6864
@override
6965
// Coverage-ignore(suite): Not run.
7066
TypeName? get typeName => null;

pkg/front_end/lib/src/builder/named_type_builder.dart

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -205,9 +205,6 @@ abstract class NamedTypeBuilderImpl extends NamedTypeBuilder {
205205
return _declaration!;
206206
}
207207

208-
@override
209-
bool get isVoidType => false;
210-
211208
@override
212209
void bind(
213210
ProblemReporting problemReporting,

pkg/front_end/lib/src/builder/omitted_type_builder.dart

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -39,10 +39,6 @@ abstract class OmittedTypeBuilderImpl extends OmittedTypeBuilder {
3939
// Coverage-ignore(suite): Not run.
4040
Uri? get fileUri => null;
4141

42-
@override
43-
// Coverage-ignore(suite): Not run.
44-
bool get isVoidType => false;
45-
4642
@override
4743
// Coverage-ignore(suite): Not run.
4844
TypeName? get typeName => null;

pkg/front_end/lib/src/builder/record_type_builder.dart

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -107,10 +107,6 @@ abstract class RecordTypeBuilderImpl extends RecordTypeBuilder {
107107
@override
108108
String get debugName => "Record";
109109

110-
@override
111-
// Coverage-ignore(suite): Not run.
112-
bool get isVoidType => false;
113-
114110
@override
115111
StringBuffer printOn(StringBuffer buffer) {
116112
buffer.write("(");

pkg/front_end/lib/src/builder/synthesized_type_builder.dart

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -172,10 +172,6 @@ class SynthesizedTypeBuilder extends FixedTypeBuilder {
172172
// Coverage-ignore(suite): Not run.
173173
bool get isExplicit => _typeBuilder.isExplicit;
174174

175-
@override
176-
// Coverage-ignore(suite): Not run.
177-
bool get isVoidType => _typeBuilder.isVoidType;
178-
179175
@override
180176
NullabilityBuilder get nullabilityBuilder => _typeBuilder.nullabilityBuilder;
181177

pkg/front_end/lib/src/builder/type_builder.dart

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -431,8 +431,6 @@ sealed class TypeBuilder {
431431

432432
TypeBuilder withNullabilityBuilder(NullabilityBuilder nullabilityBuilder);
433433

434-
bool get isVoidType;
435-
436434
/// Register [type] as the inferred type of this type builder.
437435
///
438436
/// If this is not an [InferableTypeBuilder] this method will throw.

pkg/front_end/lib/src/builder/void_type_builder.dart

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -33,9 +33,6 @@ class VoidTypeBuilder extends FixedTypeBuilder {
3333
@override
3434
String get debugName => 'VoidTypeBuilder';
3535

36-
@override
37-
bool get isVoidType => true;
38-
3936
@override
4037
StringBuffer printOn(StringBuffer buffer) {
4138
buffer.write('void');

pkg/front_end/lib/src/fragment/field/declaration.dart

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -725,6 +725,7 @@ class RegularFieldDeclaration
725725
@override
726726
void buildSetterOutlineNode({
727727
required SourceLibraryBuilder libraryBuilder,
728+
required ProblemReporting problemReporting,
728729
required NameScheme nameScheme,
729730
required BuildNodesCallback f,
730731
required PropertyReferences? references,

0 commit comments

Comments
 (0)