@@ -2,18 +2,18 @@ library;
2
2
//
3
3
// Problems in library:
4
4
//
5
- // pkg/front_end/testcases/extension_types/implement_all.dart:33:45 : Error: Type 'void' can't be used here.
5
+ // pkg/front_end/testcases/extension_types/implement_all.dart:33:44 : Error: Type 'void' can't be used here.
6
6
// Try removing 'void' keyword or replace it with 'var', 'final', or a type.
7
- // extension type ET_Void(Never it) implements void /* Error */ {}
8
- // ^^^^
7
+ // extension type ET_Void(Null it) implements void /* Error */ {}
8
+ // ^^^^
9
9
//
10
- // pkg/front_end/testcases/extension_types/implement_all.dart:33:45 : Error: Type 'void' not found.
11
- // extension type ET_Void(Never it) implements void /* Error */ {}
12
- // ^^^^
10
+ // pkg/front_end/testcases/extension_types/implement_all.dart:33:44 : Error: Type 'void' not found.
11
+ // extension type ET_Void(Null it) implements void /* Error */ {}
12
+ // ^^^^
13
13
//
14
- // pkg/front_end/testcases/extension_types/implement_all.dart:57:50 : Error: 'Extension' isn't a type.
15
- // extension type ET_Extension(Never it) implements Extension /* Error */ {}
16
- // ^^^^^^^^^
14
+ // pkg/front_end/testcases/extension_types/implement_all.dart:57:48 : Error: 'Extension' isn't a type.
15
+ // extension type ET_Extension(int it) implements Extension /* Error */ {}
16
+ // ^^^^^^^^^
17
17
//
18
18
// pkg/front_end/testcases/extension_types/implement_all.dart:29:44: Error: The type 'Null' can't be implemented by an extension type.
19
19
// extension type ET_Null(Null it) implements Null /* Error */ {}
@@ -23,14 +23,18 @@ library;
23
23
// extension type ET_Dynamic(dynamic it) implements dynamic /* Error */ {}
24
24
// ^
25
25
//
26
- // pkg/front_end/testcases/extension_types/implement_all.dart:33:45 : Error: The type 'void' can't be implemented by an extension type.
27
- // extension type ET_Void(Never it) implements void /* Error */ {}
28
- // ^
26
+ // pkg/front_end/testcases/extension_types/implement_all.dart:33:44 : Error: The type 'void' can't be implemented by an extension type.
27
+ // extension type ET_Void(Null it) implements void /* Error */ {}
28
+ // ^
29
29
//
30
30
// pkg/front_end/testcases/extension_types/implement_all.dart:35:46: Error: The type 'Never' can't be implemented by an extension type.
31
31
// extension type ET_Never(Never it) implements Never /* Error */ {}
32
32
// ^
33
33
//
34
+ // pkg/front_end/testcases/extension_types/implement_all.dart:35:31: Error: The representation type can't be a bottom type.
35
+ // extension type ET_Never(Never it) implements Never /* Error */ {}
36
+ // ^^
37
+ //
34
38
// pkg/front_end/testcases/extension_types/implement_all.dart:37:48: Error: The type 'Object' can't be implemented by an extension type.
35
39
// extension type ET_Object(Object it) implements Object /* Error */ {}
36
40
// ^
@@ -75,9 +79,9 @@ library;
75
79
// implements FutureOr<int> /* Error */ {}
76
80
// ^
77
81
//
78
- // pkg/front_end/testcases/extension_types/implement_all.dart:57:50 : Error: The type 'Extension' can't be implemented by an extension type.
79
- // extension type ET_Extension(Never it) implements Extension /* Error */ {}
80
- // ^
82
+ // pkg/front_end/testcases/extension_types/implement_all.dart:57:48 : Error: The type 'Extension' can't be implemented by an extension type.
83
+ // extension type ET_Extension(int it) implements Extension /* Error */ {}
84
+ // ^
81
85
//
82
86
// pkg/front_end/testcases/extension_types/implement_all.dart:59:52: Error: The type variable 'T' can't be implemented by an extension type.
83
87
// extension type ET_TypeVariable<T>(T it) implements T /* Error */ {}
@@ -126,12 +130,12 @@ extension type ET_Dynamic(dynamic it) {
126
130
constructor • = self::ET_Dynamic|constructor#;
127
131
constructor tearoff • = self::ET_Dynamic|constructor#_#new#tearOff;
128
132
}
129
- extension type ET_Void(Never it) {
130
- abstract inline-class-member representation-field get it() → Never ;
133
+ extension type ET_Void(Null it) {
134
+ abstract inline-class-member representation-field get it() → Null ;
131
135
constructor • = self::ET_Void|constructor#;
132
136
constructor tearoff • = self::ET_Void|constructor#_#new#tearOff;
133
137
}
134
- extension type ET_Never(Never it) {
138
+ extension type ET_Never(invalid-type it) {
135
139
abstract inline-class-member representation-field get it() → Never;
136
140
constructor • = self::ET_Never|constructor#;
137
141
constructor tearoff • = self::ET_Never|constructor#_#new#tearOff;
@@ -176,8 +180,8 @@ extension type ET_FutureOr(FutureOr<core::int>it) {
176
180
constructor • = self::ET_FutureOr|constructor#;
177
181
constructor tearoff • = self::ET_FutureOr|constructor#_#new#tearOff;
178
182
}
179
- extension type ET_Extension(Never it) {
180
- abstract inline-class-member representation-field get it() → Never ;
183
+ extension type ET_Extension(core::int it) {
184
+ abstract inline-class-member representation-field get it() → core::int ;
181
185
constructor • = self::ET_Extension|constructor#;
182
186
constructor tearoff • = self::ET_Extension|constructor#_#new#tearOff;
183
187
}
@@ -240,17 +244,17 @@ static inline-class-member method ET_Dynamic|constructor#(dynamic it) → self::
240
244
}
241
245
static inline-class-member method ET_Dynamic|constructor#_#new#tearOff(dynamic it) → self::ET_Dynamic /* = dynamic */
242
246
return self::ET_Dynamic|constructor#(it);
243
- static inline-class-member method ET_Void|constructor#(Never it) → self::ET_Void /* = Never */ {
244
- lowered final self::ET_Void /* = Never */ #this = it;
247
+ static inline-class-member method ET_Void|constructor#(Null it) → self::ET_Void /* = Null */ {
248
+ lowered final self::ET_Void /* = Null */ #this = it;
245
249
return #this;
246
250
}
247
- static inline-class-member method ET_Void|constructor#_#new#tearOff(Never it) → self::ET_Void /* = Never */
251
+ static inline-class-member method ET_Void|constructor#_#new#tearOff(Null it) → self::ET_Void /* = Null */
248
252
return self::ET_Void|constructor#(it);
249
- static inline-class-member method ET_Never|constructor#(Never it) → self::ET_Never /* = Never */ {
250
- lowered final self::ET_Never /* = Never */ #this = it;
253
+ static inline-class-member method ET_Never|constructor#(Never it) → self::ET_Never /* = invalid-type */ {
254
+ lowered final self::ET_Never /* = invalid-type */ #this = it;
251
255
return #this;
252
256
}
253
- static inline-class-member method ET_Never|constructor#_#new#tearOff(Never it) → self::ET_Never /* = Never */
257
+ static inline-class-member method ET_Never|constructor#_#new#tearOff(Never it) → self::ET_Never /* = invalid-type */
254
258
return self::ET_Never|constructor#(it);
255
259
static inline-class-member method ET_Object|constructor#(core::Object it) → self::ET_Object /* = core::Object */ {
256
260
lowered final self::ET_Object /* = core::Object */ #this = it;
@@ -300,10 +304,10 @@ static inline-class-member method ET_FutureOr|constructor#(FutureOr<core::int>it
300
304
}
301
305
static inline-class-member method ET_FutureOr|constructor#_#new#tearOff(FutureOr<core::int>it) → self::ET_FutureOr /* = FutureOr<core::int>*/
302
306
return self::ET_FutureOr|constructor#(it);
303
- static inline-class-member method ET_Extension|constructor#_#new#tearOff(Never it) → self::ET_Extension /* = Never */
307
+ static inline-class-member method ET_Extension|constructor#_#new#tearOff(core::int it) → self::ET_Extension /* = core::int */
304
308
return self::ET_Extension|constructor#(it);
305
- static inline-class-member method ET_Extension|constructor#(Never it) → self::ET_Extension /* = Never */ {
306
- lowered final self::ET_Extension /* = Never */ #this = it;
309
+ static inline-class-member method ET_Extension|constructor#(core::int it) → self::ET_Extension /* = core::int */ {
310
+ lowered final self::ET_Extension /* = core::int */ #this = it;
307
311
return #this;
308
312
}
309
313
static inline-class-member method ET_TypeVariable|constructor#<T extends core::Object? = dynamic>(self::ET_TypeVariable|constructor#::T% it) → self::ET_TypeVariable<self::ET_TypeVariable|constructor#::T%> /* = self::ET_TypeVariable|constructor#::T% */ {
0 commit comments