1
0
mirror of https://github.com/dart-lang/sdk synced 2024-07-01 07:14:29 +00:00

[flip-modifiers]: flip the flags for sealed classes and class modifiers

Includes several updates to tests that needed to land with this flip, as well as some other tests that needed to be updated and could land separately, but are being included here to expedite things.

Removes some unnecessary experimental release versions, as well as bringing up to date the generated files, which were previously out of sync with the yaml file.

TEST=bots

Change-Id: I71a86d7a86190069b504bd27d687f62b97a7251e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/285080
Commit-Queue: Jake Macdonald <jakemac@google.com>
Reviewed-by: Alexander Markov <alexmarkov@google.com>
Reviewed-by: Johnni Winther <johnniwinther@google.com>
Reviewed-by: Nate Bosch <nbosch@google.com>
Reviewed-by: Samuel Rawlins <srawlins@google.com>
This commit is contained in:
Jake Macdonald 2023-03-10 05:27:57 +00:00 committed by Commit Queue
parent 6ca7571e2b
commit 737b6f7356
353 changed files with 2661 additions and 1829 deletions

View File

@ -11,7 +11,7 @@
enum ExperimentalFlag {
classModifiers(
name: 'class-modifiers',
isEnabledByDefault: false,
isEnabledByDefault: true,
isExpired: false,
experimentEnabledVersion: const Version(3, 0),
experimentReleasedVersion: const Version(3, 0)),
@ -133,11 +133,11 @@ enum ExperimentalFlag {
isEnabledByDefault: false,
isExpired: false,
experimentEnabledVersion: const Version(3, 0),
experimentReleasedVersion: const Version(2, 19)),
experimentReleasedVersion: const Version(3, 0)),
sealedClass(
name: 'sealed-class',
isEnabledByDefault: false,
isEnabledByDefault: true,
isExpired: false,
experimentEnabledVersion: const Version(3, 0),
experimentReleasedVersion: const Version(3, 0)),

View File

@ -5,21 +5,26 @@
/*library: nnbd=true*/
/*class: A:A,Object*/
class A implements Function {}
class /*cfe|cfe:builder.error: SubtypeOfBaseOrFinalIsNotBaseFinalOrSealed*/ A
implements /*analyzer.error: CompileTimeErrorCode.FINAL_CLASS_IMPLEMENTED_OUTSIDE_OF_LIBRARY*/
/*cfe|cfe:builder.error: FinalClassImplementedOutsideOfLibrary*/ Function {}
/*class: B:B,Object*/
class B extends Function {}
class /*cfe|cfe:builder.error: SubtypeOfBaseOrFinalIsNotBaseFinalOrSealed*/ B
extends /*analyzer.error: CompileTimeErrorCode.FINAL_CLASS_EXTENDED_OUTSIDE_OF_LIBRARY*/ /*cfe|cfe:builder.error: FinalClassExtendedOutsideOfLibrary*/ Function {}
/*cfe|cfe:builder.class: C:C,Object,_C&Object&Function*/
/*analyzer.class: C:C,Object*/
class C extends Object
class /*cfe|cfe:builder.error: SubtypeOfBaseOrFinalIsNotBaseFinalOrSealed*/ C
extends Object
with /*analyzer.error: CompileTimeErrorCode.CLASS_USED_AS_MIXIN*/
Function {}
/*cfe|cfe:builder.error: CantUseClassAsMixin*/ Function {}
// CFE hides that this is a mixin declaration since its mixed in type has been
// removed.
/*cfe|cfe:builder.class: _C&Object&Function:Object,_C&Object&Function*/
/*cfe|cfe:builder.class: D:D,Object*/
class D = Object
with /*analyzer.error: CompileTimeErrorCode.CLASS_USED_AS_MIXIN*/ Function;
class /*cfe|cfe:builder.error: SubtypeOfBaseOrFinalIsNotBaseFinalOrSealed*/ D = Object
with /*analyzer.error: CompileTimeErrorCode.CLASS_USED_AS_MIXIN*/ /*cfe|cfe:builder.error: CantUseClassAsMixin*/
Function;

View File

@ -37,9 +37,11 @@ class DeprecatedImplementsFunctionTest extends FixProcessorTest {
Future<void> test_oneName() async {
await resolveTestCode('''
// @dart = 2.19
abstract class C implements Function {}
''');
await assertHasFix('''
// @dart = 2.19
abstract class C {}
''');
}

View File

@ -140,8 +140,8 @@ class ExperimentalFeatures {
isEnabledByDefault: IsEnabledByDefault.class_modifiers,
isExpired: IsExpired.class_modifiers,
documentation: 'Class modifiers',
experimentalReleaseVersion: Version.parse('3.0.0'),
releaseVersion: null,
experimentalReleaseVersion: null,
releaseVersion: Version.parse('3.0.0'),
);
static final const_functions = ExperimentalFeature(
@ -314,7 +314,7 @@ class ExperimentalFeatures {
isEnabledByDefault: IsEnabledByDefault.records,
isExpired: IsExpired.records,
documentation: 'Records',
experimentalReleaseVersion: Version.parse('3.0.0'),
experimentalReleaseVersion: null,
releaseVersion: null,
);
@ -324,8 +324,8 @@ class ExperimentalFeatures {
isEnabledByDefault: IsEnabledByDefault.sealed_class,
isExpired: IsExpired.sealed_class,
documentation: 'Sealed class',
experimentalReleaseVersion: Version.parse('3.0.0'),
releaseVersion: null,
experimentalReleaseVersion: null,
releaseVersion: Version.parse('3.0.0'),
);
static final set_literals = ExperimentalFeature(
@ -414,7 +414,7 @@ class ExperimentalFeatures {
/// enabled by default.
class IsEnabledByDefault {
/// Default state of the experiment "class-modifiers"
static const bool class_modifiers = false;
static const bool class_modifiers = true;
/// Default state of the experiment "const-functions"
static const bool const_functions = false;
@ -468,7 +468,7 @@ class IsEnabledByDefault {
static const bool records = false;
/// Default state of the experiment "sealed-class"
static const bool sealed_class = false;
static const bool sealed_class = true;
/// Default state of the experiment "set-literals"
static const bool set_literals = true;

View File

@ -118,7 +118,7 @@ void run() {
// VM service).
//
// See https://github.com/dart-lang/sdk/issues/50230
p = project(sdkConstraint: VersionConstraint.parse('>=2.19.0 <3.0.0'));
p = project(sdkConstraint: VersionConstraint.parse('>=3.0.0-0 <4.0.0'));
p.file('main.dart', 'void main(args) { print("Record: \${(1, 2)}"); }');
ProcessResult result = await p.run([
'run',

View File

@ -61,7 +61,7 @@ class ExperimentalFlag {
static const ExperimentalFlag classModifiers = const ExperimentalFlag(
name: 'class-modifiers',
isEnabledByDefault: false,
isEnabledByDefault: true,
isExpired: false,
enabledVersion: const Version(3, 0),
experimentEnabledVersion: const Version(3, 0),
@ -201,11 +201,11 @@ class ExperimentalFlag {
isExpired: false,
enabledVersion: const Version(3, 0),
experimentEnabledVersion: const Version(3, 0),
experimentReleasedVersion: const Version(2, 19));
experimentReleasedVersion: const Version(3, 0));
static const ExperimentalFlag sealedClass = const ExperimentalFlag(
name: 'sealed-class',
isEnabledByDefault: false,
isEnabledByDefault: true,
isExpired: false,
enabledVersion: const Version(3, 0),
experimentEnabledVersion: const Version(3, 0),

View File

@ -541,7 +541,7 @@ WithBeforeExtends:
problemMessage: "The extends clause must be before the with clause."
correctionMessage: "Try moving the extends clause before the with clause."
analyzerCode: ParserErrorCode.WITH_BEFORE_EXTENDS
script: "class B {} class C {} class A with B extends C {}"
script: "mixin B {} class C {} class A with B extends C {}"
ImplementsBeforeExtends:
index: 44
@ -596,8 +596,8 @@ MultipleClauses:
analyzerCode: ParserErrorCode.MULTIPLE_CLAUSES
index: 121
script:
- "class B {} enum A implements B implements C, D { v; }"
- "class B {} enum A with B with C, D { v; }"
- "mixin B {} enum A implements B implements C, D { v; }"
- "mixin B {} enum A with B with C, D { v; }"
OutOfOrderClauses:
problemMessage: "The '#string' clause must come before the '#string2' clause."
@ -5891,6 +5891,7 @@ MixinInheritsFromNotObject:
problemMessage: "The class '#name' can't be used as a mixin because it extends a class other than 'Object'."
analyzerCode: MIXIN_INHERITS_FROM_NOT_OBJECT
script: |
// @dart=2.19
class Base {}
class Mixin extends Base {}
class C extends Base with Mixin {}

View File

@ -8,11 +8,13 @@
{
"name": "meta",
"rootUri": "../../../../../meta/",
"packageUri": "lib/"
"packageUri": "lib/",
"languageVersion": "2.12"
},
{
"name": "_fe_analyzer_shared",
"rootUri": "../../../../../_fe_analyzer_shared/lib/"
"rootUri": "../../../../../_fe_analyzer_shared/lib/",
"languageVersion": "2.17"
}
]
}
}

View File

@ -184,7 +184,7 @@ augment class Class7c {
method() {}
}
*/
class Class7c {}
mixin Class7c {}
@SequenceMacro(0)
/*class: Class7b:
@ -204,4 +204,4 @@ augment class Class7a {
method() {}
}
*/
class Class7a {}
mixin Class7a {}

View File

@ -110,10 +110,7 @@ class Class7d extends self::_Class7d&Class7b&Class7c {
method /* from org-dartlang-augmentation:/a/b/c/main.dart-17 */ method2() → dynamic {}
}
@#C2
class Class7c extends core::Object {
synthetic constructor •() → self::Class7c
: super core::Object::•()
;
class Class7c extends core::Object /*isMixinDeclaration*/ {
method /* from org-dartlang-augmentation:/a/b/c/main.dart-16 */ method() → dynamic {}
}
abstract class _Class7b&Object&Class7a = core::Object with self::Class7a /*isAnonymousMixin,hasConstConstructor*/ {
@ -131,10 +128,7 @@ class Class7b extends self::_Class7b&Object&Class7a {
method /* from org-dartlang-augmentation:/a/b/c/main.dart-15 */ method1() → dynamic {}
}
@#C2
class Class7a extends core::Object {
synthetic constructor •() → self::Class7a
: super core::Object::•()
;
class Class7a extends core::Object /*isMixinDeclaration*/ {
method /* from org-dartlang-augmentation:/a/b/c/main.dart-14 */ method() → dynamic {}
}

View File

@ -11,7 +11,8 @@
},
{
"name": "_fe_analyzer_shared",
"rootUri": "../../../../../_fe_analyzer_shared/lib/"
"rootUri": "../../../../../_fe_analyzer_shared/lib/",
"languageVersion": "2.17"
}
]
}
}

View File

@ -8,11 +8,13 @@
{
"name": "meta",
"rootUri": "../../../../../meta/",
"packageUri": "lib/"
"packageUri": "lib/",
"languageVersion": "2.12"
},
{
"name": "_fe_analyzer_shared",
"rootUri": "../../../../../_fe_analyzer_shared/lib/"
"rootUri": "../../../../../_fe_analyzer_shared/lib/",
"languageVersion": "2.17"
}
]
}
}

View File

@ -4,7 +4,7 @@
main.dart.patch: |
// Test that we can add a mixin application.
class A {}
mixin class A {}
<<<< []
==== []
class C = Object with A;

View File

@ -4,7 +4,7 @@
main.dart.patch: |
// Test that we can remove a mixin application.
class A {}
mixin class A {}
<<<< []
class C = Object with A;
==== []

View File

@ -4,7 +4,7 @@
main.dart.patch: |
// Test that we can handle a mixin application that doesn't change.
class A {}
mixin A {}
class C = Object with A;
main() {

View File

@ -2,25 +2,29 @@
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
abstract class A extends Enum { // Ok.
abstract mixin class A extends Enum {
// Error.
int get foo => index;
}
enum EA with A { element } // Error.
abstract class B implements Enum { // Ok.
abstract mixin class B implements Enum {
// Ok.
int get foo => index;
}
enum EB with B { element }
mixin M on Enum { // Ok.
mixin M on Enum {
// Ok.
int get foo => index;
}
enum EM with M { element }
mixin N implements Enum { // Ok.
mixin N implements Enum {
// Ok.
int get foo => index;
}
@ -33,7 +37,6 @@ expectEquals(x, y) {
}
main() {
expectEquals(EA.element.foo, EA.element.index);
expectEquals(EB.element.foo, EB.element.index);
expectEquals(EM.element.foo, EM.element.index);
expectEquals(EN.element.foo, EN.element.index);

View File

@ -2,14 +2,22 @@ library /*isNonNullableByDefault*/;
//
// Problems in library:
//
// pkg/front_end/testcases/enhanced_enums/enum_as_supertype.dart:9:14: Error: The class 'A' can't be used as a mixin because it extends a class other than 'Object'.
// pkg/front_end/testcases/enhanced_enums/enum_as_supertype.dart:5:32: Error: The class 'Enum' can't be extended outside of its library because it's an interface class.
// abstract mixin class A extends Enum {
// ^
//
// pkg/front_end/testcases/enhanced_enums/enum_as_supertype.dart:5:32: Error: The class 'A' can't be used as a mixin because it extends a class other than 'Object'.
// abstract mixin class A extends Enum {
// ^
//
// pkg/front_end/testcases/enhanced_enums/enum_as_supertype.dart:10:14: Error: The class 'A' can't be used as a mixin because it extends a class other than 'Object'.
// enum EA with A { element } // Error.
// ^
//
import self as self;
import "dart:core" as core;
abstract class A extends core::Enum {
abstract mixin class A extends core::Enum {
synthetic constructor •() → self::A
: super core::Enum::•()
;
@ -32,7 +40,7 @@ class EA extends self::_EA&_Enum&A /*isEnum*/ {
method _enumToString() → core::String
return "EA.${this.{core::_Enum::_name}{core::String}}";
}
abstract class B extends core::Object implements core::Enum {
abstract mixin class B extends core::Object implements core::Enum {
synthetic constructor •() → self::B
: super core::Object::•()
;
@ -101,7 +109,6 @@ static method expectEquals(dynamic x, dynamic y) → dynamic {
}
}
static method main() → dynamic {
self::expectEquals(#C3.{self::_EA&_Enum&A::foo}{core::int}, #C3.{core::_Enum::index}{core::int});
self::expectEquals(#C5.{self::_EB&_Enum&B::foo}{core::int}, #C5.{core::_Enum::index}{core::int});
self::expectEquals(#C7.{self::_EM&_Enum&M::foo}{core::int}, #C7.{core::_Enum::index}{core::int});
self::expectEquals(#C9.{self::_EN&_Enum&N::foo}{core::int}, #C9.{core::_Enum::index}{core::int});
@ -123,13 +130,13 @@ constants {
Constructor coverage from constants:
org-dartlang-testcase:///enum_as_supertype.dart:
- EA. (from org-dartlang-testcase:///enum_as_supertype.dart:9:6)
- _EA&_Enum&A. (from org-dartlang-testcase:///enum_as_supertype.dart:9:6)
- EA. (from org-dartlang-testcase:///enum_as_supertype.dart:10:6)
- _EA&_Enum&A. (from org-dartlang-testcase:///enum_as_supertype.dart:10:6)
- _Enum. (from org-dartlang-sdk:///sdk/lib/core/enum.dart)
- Object. (from org-dartlang-sdk:///sdk/lib/core/object.dart)
- EB. (from org-dartlang-testcase:///enum_as_supertype.dart:15:6)
- _EB&_Enum&B. (from org-dartlang-testcase:///enum_as_supertype.dart:15:6)
- EM. (from org-dartlang-testcase:///enum_as_supertype.dart:21:6)
- _EM&_Enum&M. (from org-dartlang-testcase:///enum_as_supertype.dart:21:6)
- EN. (from org-dartlang-testcase:///enum_as_supertype.dart:27:6)
- _EN&_Enum&N. (from org-dartlang-testcase:///enum_as_supertype.dart:27:6)
- EB. (from org-dartlang-testcase:///enum_as_supertype.dart:17:6)
- _EB&_Enum&B. (from org-dartlang-testcase:///enum_as_supertype.dart:17:6)
- EM. (from org-dartlang-testcase:///enum_as_supertype.dart:24:6)
- _EM&_Enum&M. (from org-dartlang-testcase:///enum_as_supertype.dart:24:6)
- EN. (from org-dartlang-testcase:///enum_as_supertype.dart:31:6)
- _EN&_Enum&N. (from org-dartlang-testcase:///enum_as_supertype.dart:31:6)

View File

@ -2,14 +2,22 @@ library /*isNonNullableByDefault*/;
//
// Problems in library:
//
// pkg/front_end/testcases/enhanced_enums/enum_as_supertype.dart:9:14: Error: The class 'A' can't be used as a mixin because it extends a class other than 'Object'.
// pkg/front_end/testcases/enhanced_enums/enum_as_supertype.dart:5:32: Error: The class 'Enum' can't be extended outside of its library because it's an interface class.
// abstract mixin class A extends Enum {
// ^
//
// pkg/front_end/testcases/enhanced_enums/enum_as_supertype.dart:5:32: Error: The class 'A' can't be used as a mixin because it extends a class other than 'Object'.
// abstract mixin class A extends Enum {
// ^
//
// pkg/front_end/testcases/enhanced_enums/enum_as_supertype.dart:10:14: Error: The class 'A' can't be used as a mixin because it extends a class other than 'Object'.
// enum EA with A { element } // Error.
// ^
//
import self as self;
import "dart:core" as core;
abstract class A extends core::Enum {
abstract mixin class A extends core::Enum {
synthetic constructor •() → self::A
: super core::Enum::•()
;
@ -32,7 +40,7 @@ class EA extends self::_EA&_Enum&A /*isEnum*/ {
method _enumToString() → core::String
return "EA.${this.{core::_Enum::_name}{core::String}}";
}
abstract class B extends core::Object implements core::Enum {
abstract mixin class B extends core::Object implements core::Enum {
synthetic constructor •() → self::B
: super core::Object::•()
;
@ -101,7 +109,6 @@ static method expectEquals(dynamic x, dynamic y) → dynamic {
}
}
static method main() → dynamic {
self::expectEquals(#C3.{self::_EA&_Enum&A::foo}{core::int}, #C3.{core::_Enum::index}{core::int});
self::expectEquals(#C5.{self::_EB&_Enum&B::foo}{core::int}, #C5.{core::_Enum::index}{core::int});
self::expectEquals(#C7.{self::_EM&_Enum&M::foo}{core::int}, #C7.{core::_Enum::index}{core::int});
self::expectEquals(#C9.{self::_EN&_Enum&N::foo}{core::int}, #C9.{core::_Enum::index}{core::int});
@ -123,13 +130,13 @@ constants {
Constructor coverage from constants:
org-dartlang-testcase:///enum_as_supertype.dart:
- EA. (from org-dartlang-testcase:///enum_as_supertype.dart:9:6)
- _EA&_Enum&A. (from org-dartlang-testcase:///enum_as_supertype.dart:9:6)
- EA. (from org-dartlang-testcase:///enum_as_supertype.dart:10:6)
- _EA&_Enum&A. (from org-dartlang-testcase:///enum_as_supertype.dart:10:6)
- _Enum. (from org-dartlang-sdk:///sdk/lib/core/enum.dart)
- Object. (from org-dartlang-sdk:///sdk/lib/core/object.dart)
- EB. (from org-dartlang-testcase:///enum_as_supertype.dart:15:6)
- _EB&_Enum&B. (from org-dartlang-testcase:///enum_as_supertype.dart:15:6)
- EM. (from org-dartlang-testcase:///enum_as_supertype.dart:21:6)
- _EM&_Enum&M. (from org-dartlang-testcase:///enum_as_supertype.dart:21:6)
- EN. (from org-dartlang-testcase:///enum_as_supertype.dart:27:6)
- _EN&_Enum&N. (from org-dartlang-testcase:///enum_as_supertype.dart:27:6)
- EB. (from org-dartlang-testcase:///enum_as_supertype.dart:17:6)
- _EB&_Enum&B. (from org-dartlang-testcase:///enum_as_supertype.dart:17:6)
- EM. (from org-dartlang-testcase:///enum_as_supertype.dart:24:6)
- _EM&_Enum&M. (from org-dartlang-testcase:///enum_as_supertype.dart:24:6)
- EN. (from org-dartlang-testcase:///enum_as_supertype.dart:31:6)
- _EN&_Enum&N. (from org-dartlang-testcase:///enum_as_supertype.dart:31:6)

View File

@ -1,10 +1,10 @@
abstract class A extends Enum {
abstract mixin class A extends Enum {
int get foo => index;
}
enum EA with A { element }
abstract class B implements Enum {
abstract mixin class B implements Enum {
int get foo => index;
}

View File

@ -1,8 +1,8 @@
abstract class A extends Enum {
abstract mixin class A extends Enum {
int get foo => index;
}
abstract class B implements Enum {
abstract mixin class B implements Enum {
int get foo => index;
}

View File

@ -2,14 +2,22 @@ library /*isNonNullableByDefault*/;
//
// Problems in library:
//
// pkg/front_end/testcases/enhanced_enums/enum_as_supertype.dart:9:14: Error: The class 'A' can't be used as a mixin because it extends a class other than 'Object'.
// pkg/front_end/testcases/enhanced_enums/enum_as_supertype.dart:5:32: Error: The class 'Enum' can't be extended outside of its library because it's an interface class.
// abstract mixin class A extends Enum {
// ^
//
// pkg/front_end/testcases/enhanced_enums/enum_as_supertype.dart:5:32: Error: The class 'A' can't be used as a mixin because it extends a class other than 'Object'.
// abstract mixin class A extends Enum {
// ^
//
// pkg/front_end/testcases/enhanced_enums/enum_as_supertype.dart:10:14: Error: The class 'A' can't be used as a mixin because it extends a class other than 'Object'.
// enum EA with A { element } // Error.
// ^
//
import self as self;
import "dart:core" as core;
abstract class A extends core::Enum {
abstract mixin class A extends core::Enum {
synthetic constructor •() → self::A
: super core::Enum::•()
;
@ -32,7 +40,7 @@ class EA extends self::_EA&_Enum&A /*isEnum*/ {
method _enumToString() → core::String
return "EA.${this.{core::_Enum::_name}{core::String}}";
}
abstract class B extends core::Object implements core::Enum {
abstract mixin class B extends core::Object implements core::Enum {
synthetic constructor •() → self::B
: super core::Object::•()
;
@ -101,7 +109,6 @@ static method expectEquals(dynamic x, dynamic y) → dynamic {
}
}
static method main() → dynamic {
self::expectEquals(#C3.{self::_EA&_Enum&A::foo}{core::int}, #C3.{core::_Enum::index}{core::int});
self::expectEquals(#C5.{self::_EB&_Enum&B::foo}{core::int}, #C5.{core::_Enum::index}{core::int});
self::expectEquals(#C7.{self::_EM&_Enum&M::foo}{core::int}, #C7.{core::_Enum::index}{core::int});
self::expectEquals(#C9.{self::_EN&_Enum&N::foo}{core::int}, #C9.{core::_Enum::index}{core::int});
@ -123,13 +130,13 @@ constants {
Constructor coverage from constants:
org-dartlang-testcase:///enum_as_supertype.dart:
- EA. (from org-dartlang-testcase:///enum_as_supertype.dart:9:6)
- _EA&_Enum&A. (from org-dartlang-testcase:///enum_as_supertype.dart:9:6)
- EA. (from org-dartlang-testcase:///enum_as_supertype.dart:10:6)
- _EA&_Enum&A. (from org-dartlang-testcase:///enum_as_supertype.dart:10:6)
- _Enum. (from org-dartlang-sdk:///sdk/lib/core/enum.dart)
- Object. (from org-dartlang-sdk:///sdk/lib/core/object.dart)
- EB. (from org-dartlang-testcase:///enum_as_supertype.dart:15:6)
- _EB&_Enum&B. (from org-dartlang-testcase:///enum_as_supertype.dart:15:6)
- EM. (from org-dartlang-testcase:///enum_as_supertype.dart:21:6)
- _EM&_Enum&M. (from org-dartlang-testcase:///enum_as_supertype.dart:21:6)
- EN. (from org-dartlang-testcase:///enum_as_supertype.dart:27:6)
- _EN&_Enum&N. (from org-dartlang-testcase:///enum_as_supertype.dart:27:6)
- EB. (from org-dartlang-testcase:///enum_as_supertype.dart:17:6)
- _EB&_Enum&B. (from org-dartlang-testcase:///enum_as_supertype.dart:17:6)
- EM. (from org-dartlang-testcase:///enum_as_supertype.dart:24:6)
- _EM&_Enum&M. (from org-dartlang-testcase:///enum_as_supertype.dart:24:6)
- EN. (from org-dartlang-testcase:///enum_as_supertype.dart:31:6)
- _EN&_Enum&N. (from org-dartlang-testcase:///enum_as_supertype.dart:31:6)

View File

@ -2,14 +2,22 @@ library /*isNonNullableByDefault*/;
//
// Problems in library:
//
// pkg/front_end/testcases/enhanced_enums/enum_as_supertype.dart:9:14: Error: The class 'A' can't be used as a mixin because it extends a class other than 'Object'.
// pkg/front_end/testcases/enhanced_enums/enum_as_supertype.dart:5:32: Error: The class 'Enum' can't be extended outside of its library because it's an interface class.
// abstract mixin class A extends Enum {
// ^
//
// pkg/front_end/testcases/enhanced_enums/enum_as_supertype.dart:5:32: Error: The class 'A' can't be used as a mixin because it extends a class other than 'Object'.
// abstract mixin class A extends Enum {
// ^
//
// pkg/front_end/testcases/enhanced_enums/enum_as_supertype.dart:10:14: Error: The class 'A' can't be used as a mixin because it extends a class other than 'Object'.
// enum EA with A { element } // Error.
// ^
//
import self as self;
import "dart:core" as core;
abstract class A extends core::Enum {
abstract mixin class A extends core::Enum {
synthetic constructor •() → self::A
: super core::Enum::•()
;
@ -32,7 +40,7 @@ class EA extends self::_EA&_Enum&A /*isEnum*/ {
method _enumToString() → core::String
return "EA.${this.{core::_Enum::_name}{core::String}}";
}
abstract class B extends core::Object implements core::Enum {
abstract mixin class B extends core::Object implements core::Enum {
synthetic constructor •() → self::B
: super core::Object::•()
;
@ -101,7 +109,6 @@ static method expectEquals(dynamic x, dynamic y) → dynamic {
}
}
static method main() → dynamic {
self::expectEquals(#C3.{self::_EA&_Enum&A::foo}{core::int}, #C3.{core::_Enum::index}{core::int});
self::expectEquals(#C5.{self::_EB&_Enum&B::foo}{core::int}, #C5.{core::_Enum::index}{core::int});
self::expectEquals(#C7.{self::_EM&_Enum&M::foo}{core::int}, #C7.{core::_Enum::index}{core::int});
self::expectEquals(#C9.{self::_EN&_Enum&N::foo}{core::int}, #C9.{core::_Enum::index}{core::int});
@ -123,13 +130,13 @@ constants {
Constructor coverage from constants:
org-dartlang-testcase:///enum_as_supertype.dart:
- EA. (from org-dartlang-testcase:///enum_as_supertype.dart:9:6)
- _EA&_Enum&A. (from org-dartlang-testcase:///enum_as_supertype.dart:9:6)
- EA. (from org-dartlang-testcase:///enum_as_supertype.dart:10:6)
- _EA&_Enum&A. (from org-dartlang-testcase:///enum_as_supertype.dart:10:6)
- _Enum. (from org-dartlang-sdk:///sdk/lib/core/enum.dart)
- Object. (from org-dartlang-sdk:///sdk/lib/core/object.dart)
- EB. (from org-dartlang-testcase:///enum_as_supertype.dart:15:6)
- _EB&_Enum&B. (from org-dartlang-testcase:///enum_as_supertype.dart:15:6)
- EM. (from org-dartlang-testcase:///enum_as_supertype.dart:21:6)
- _EM&_Enum&M. (from org-dartlang-testcase:///enum_as_supertype.dart:21:6)
- EN. (from org-dartlang-testcase:///enum_as_supertype.dart:27:6)
- _EN&_Enum&N. (from org-dartlang-testcase:///enum_as_supertype.dart:27:6)
- EB. (from org-dartlang-testcase:///enum_as_supertype.dart:17:6)
- _EB&_Enum&B. (from org-dartlang-testcase:///enum_as_supertype.dart:17:6)
- EM. (from org-dartlang-testcase:///enum_as_supertype.dart:24:6)
- _EM&_Enum&M. (from org-dartlang-testcase:///enum_as_supertype.dart:24:6)
- EN. (from org-dartlang-testcase:///enum_as_supertype.dart:31:6)
- _EN&_Enum&N. (from org-dartlang-testcase:///enum_as_supertype.dart:31:6)

View File

@ -2,14 +2,22 @@ library /*isNonNullableByDefault*/;
//
// Problems in library:
//
// pkg/front_end/testcases/enhanced_enums/enum_as_supertype.dart:9:14: Error: The class 'A' can't be used as a mixin because it extends a class other than 'Object'.
// pkg/front_end/testcases/enhanced_enums/enum_as_supertype.dart:5:32: Error: The class 'Enum' can't be extended outside of its library because it's an interface class.
// abstract mixin class A extends Enum {
// ^
//
// pkg/front_end/testcases/enhanced_enums/enum_as_supertype.dart:5:32: Error: The class 'A' can't be used as a mixin because it extends a class other than 'Object'.
// abstract mixin class A extends Enum {
// ^
//
// pkg/front_end/testcases/enhanced_enums/enum_as_supertype.dart:10:14: Error: The class 'A' can't be used as a mixin because it extends a class other than 'Object'.
// enum EA with A { element } // Error.
// ^
//
import self as self;
import "dart:core" as core;
abstract class A extends core::Enum {
abstract mixin class A extends core::Enum {
synthetic constructor •() → self::A
;
get foo() → core::int
@ -30,7 +38,7 @@ class EA extends self::_EA&_Enum&A /*isEnum*/ {
method _enumToString() → core::String
return "EA.${this.{core::_Enum::_name}{core::String}}";
}
abstract class B extends core::Object implements core::Enum {
abstract mixin class B extends core::Object implements core::Enum {
synthetic constructor •() → self::B
;
get foo() → core::int
@ -96,12 +104,12 @@ static method main() → dynamic
Extra constant evaluation status:
Evaluated: ListLiteral @ org-dartlang-testcase:///enum_as_supertype.dart:9:6 -> ListConstant(const <EA*>[const EA{}])
Evaluated: ConstructorInvocation @ org-dartlang-testcase:///enum_as_supertype.dart:9:18 -> InstanceConstant(const EA{})
Evaluated: ListLiteral @ org-dartlang-testcase:///enum_as_supertype.dart:15:6 -> ListConstant(const <EB*>[const EB{}])
Evaluated: ConstructorInvocation @ org-dartlang-testcase:///enum_as_supertype.dart:15:18 -> InstanceConstant(const EB{})
Evaluated: ListLiteral @ org-dartlang-testcase:///enum_as_supertype.dart:21:6 -> ListConstant(const <EM*>[const EM{}])
Evaluated: ConstructorInvocation @ org-dartlang-testcase:///enum_as_supertype.dart:21:18 -> InstanceConstant(const EM{})
Evaluated: ListLiteral @ org-dartlang-testcase:///enum_as_supertype.dart:27:6 -> ListConstant(const <EN*>[const EN{}])
Evaluated: ConstructorInvocation @ org-dartlang-testcase:///enum_as_supertype.dart:27:18 -> InstanceConstant(const EN{})
Evaluated: ListLiteral @ org-dartlang-testcase:///enum_as_supertype.dart:10:6 -> ListConstant(const <EA*>[const EA{}])
Evaluated: ConstructorInvocation @ org-dartlang-testcase:///enum_as_supertype.dart:10:18 -> InstanceConstant(const EA{})
Evaluated: ListLiteral @ org-dartlang-testcase:///enum_as_supertype.dart:17:6 -> ListConstant(const <EB*>[const EB{}])
Evaluated: ConstructorInvocation @ org-dartlang-testcase:///enum_as_supertype.dart:17:18 -> InstanceConstant(const EB{})
Evaluated: ListLiteral @ org-dartlang-testcase:///enum_as_supertype.dart:24:6 -> ListConstant(const <EM*>[const EM{}])
Evaluated: ConstructorInvocation @ org-dartlang-testcase:///enum_as_supertype.dart:24:18 -> InstanceConstant(const EM{})
Evaluated: ListLiteral @ org-dartlang-testcase:///enum_as_supertype.dart:31:6 -> ListConstant(const <EN*>[const EN{}])
Evaluated: ConstructorInvocation @ org-dartlang-testcase:///enum_as_supertype.dart:31:18 -> InstanceConstant(const EN{})
Extra constant evaluation: evaluated: 32, effectively constant: 8

View File

@ -2,14 +2,22 @@ library /*isNonNullableByDefault*/;
//
// Problems in library:
//
// pkg/front_end/testcases/enhanced_enums/enum_as_supertype.dart:9:14: Error: The class 'A' can't be used as a mixin because it extends a class other than 'Object'.
// pkg/front_end/testcases/enhanced_enums/enum_as_supertype.dart:5:32: Error: The class 'Enum' can't be extended outside of its library because it's an interface class.
// abstract mixin class A extends Enum {
// ^
//
// pkg/front_end/testcases/enhanced_enums/enum_as_supertype.dart:5:32: Error: The class 'A' can't be used as a mixin because it extends a class other than 'Object'.
// abstract mixin class A extends Enum {
// ^
//
// pkg/front_end/testcases/enhanced_enums/enum_as_supertype.dart:10:14: Error: The class 'A' can't be used as a mixin because it extends a class other than 'Object'.
// enum EA with A { element } // Error.
// ^
//
import self as self;
import "dart:core" as core;
abstract class A extends core::Enum {
abstract mixin class A extends core::Enum {
synthetic constructor •() → self::A
: super core::Enum::•()
;
@ -32,7 +40,7 @@ class EA extends self::_EA&_Enum&A /*isEnum*/ {
method _enumToString() → core::String
return "EA.${this.{core::_Enum::_name}{core::String}}";
}
abstract class B extends core::Object implements core::Enum {
abstract mixin class B extends core::Object implements core::Enum {
synthetic constructor •() → self::B
: super core::Object::•()
;
@ -101,7 +109,6 @@ static method expectEquals(dynamic x, dynamic y) → dynamic {
}
}
static method main() → dynamic {
self::expectEquals(#C3.{self::_EA&_Enum&A::foo}{core::int}, #C3.{core::_Enum::index}{core::int});
self::expectEquals(#C5.{self::_EB&_Enum&B::foo}{core::int}, #C5.{core::_Enum::index}{core::int});
self::expectEquals(#C7.{self::_EM&_Enum&M::foo}{core::int}, #C7.{core::_Enum::index}{core::int});
self::expectEquals(#C9.{self::_EN&_Enum&N::foo}{core::int}, #C9.{core::_Enum::index}{core::int});
@ -123,13 +130,13 @@ constants {
Constructor coverage from constants:
org-dartlang-testcase:///enum_as_supertype.dart:
- EA. (from org-dartlang-testcase:///enum_as_supertype.dart:9:6)
- _EA&_Enum&A. (from org-dartlang-testcase:///enum_as_supertype.dart:9:6)
- EA. (from org-dartlang-testcase:///enum_as_supertype.dart:10:6)
- _EA&_Enum&A. (from org-dartlang-testcase:///enum_as_supertype.dart:10:6)
- _Enum. (from org-dartlang-sdk:///sdk/lib/core/enum.dart)
- Object. (from org-dartlang-sdk:///sdk/lib/core/object.dart)
- EB. (from org-dartlang-testcase:///enum_as_supertype.dart:15:6)
- _EB&_Enum&B. (from org-dartlang-testcase:///enum_as_supertype.dart:15:6)
- EM. (from org-dartlang-testcase:///enum_as_supertype.dart:21:6)
- _EM&_Enum&M. (from org-dartlang-testcase:///enum_as_supertype.dart:21:6)
- EN. (from org-dartlang-testcase:///enum_as_supertype.dart:27:6)
- _EN&_Enum&N. (from org-dartlang-testcase:///enum_as_supertype.dart:27:6)
- EB. (from org-dartlang-testcase:///enum_as_supertype.dart:17:6)
- _EB&_Enum&B. (from org-dartlang-testcase:///enum_as_supertype.dart:17:6)
- EM. (from org-dartlang-testcase:///enum_as_supertype.dart:24:6)
- _EM&_Enum&M. (from org-dartlang-testcase:///enum_as_supertype.dart:24:6)
- EN. (from org-dartlang-testcase:///enum_as_supertype.dart:31:6)
- _EN&_Enum&N. (from org-dartlang-testcase:///enum_as_supertype.dart:31:6)

View File

@ -2,6 +2,10 @@ library /*isNonNullableByDefault*/;
//
// Problems in library:
//
// pkg/front_end/testcases/enhanced_enums/enum_as_supertype_error.dart:5:17: Error: The class 'Enum' can't be extended outside of its library because it's an interface class.
// class A extends Enum { // Error.
// ^
//
// pkg/front_end/testcases/enhanced_enums/enum_as_supertype_error.dart:5:7: Error: Non-abstract class 'A' has 'Enum' as a superinterface.
// class A extends Enum { // Error.
// ^

View File

@ -2,6 +2,10 @@ library /*isNonNullableByDefault*/;
//
// Problems in library:
//
// pkg/front_end/testcases/enhanced_enums/enum_as_supertype_error.dart:5:17: Error: The class 'Enum' can't be extended outside of its library because it's an interface class.
// class A extends Enum { // Error.
// ^
//
// pkg/front_end/testcases/enhanced_enums/enum_as_supertype_error.dart:5:7: Error: Non-abstract class 'A' has 'Enum' as a superinterface.
// class A extends Enum { // Error.
// ^

View File

@ -2,6 +2,10 @@ library /*isNonNullableByDefault*/;
//
// Problems in library:
//
// pkg/front_end/testcases/enhanced_enums/enum_as_supertype_error.dart:5:17: Error: The class 'Enum' can't be extended outside of its library because it's an interface class.
// class A extends Enum { // Error.
// ^
//
// pkg/front_end/testcases/enhanced_enums/enum_as_supertype_error.dart:5:7: Error: Non-abstract class 'A' has 'Enum' as a superinterface.
// class A extends Enum { // Error.
// ^

View File

@ -2,6 +2,10 @@ library /*isNonNullableByDefault*/;
//
// Problems in library:
//
// pkg/front_end/testcases/enhanced_enums/enum_as_supertype_error.dart:5:17: Error: The class 'Enum' can't be extended outside of its library because it's an interface class.
// class A extends Enum { // Error.
// ^
//
// pkg/front_end/testcases/enhanced_enums/enum_as_supertype_error.dart:5:7: Error: Non-abstract class 'A' has 'Enum' as a superinterface.
// class A extends Enum { // Error.
// ^

View File

@ -2,6 +2,10 @@ library /*isNonNullableByDefault*/;
//
// Problems in library:
//
// pkg/front_end/testcases/enhanced_enums/enum_as_supertype_error.dart:5:17: Error: The class 'Enum' can't be extended outside of its library because it's an interface class.
// class A extends Enum { // Error.
// ^
//
// pkg/front_end/testcases/enhanced_enums/enum_as_supertype_error.dart:5:7: Error: Non-abstract class 'A' has 'Enum' as a superinterface.
// class A extends Enum { // Error.
// ^

View File

@ -2,6 +2,10 @@ library /*isNonNullableByDefault*/;
//
// Problems in library:
//
// pkg/front_end/testcases/enhanced_enums/enum_as_supertype_error.dart:5:17: Error: The class 'Enum' can't be extended outside of its library because it's an interface class.
// class A extends Enum { // Error.
// ^
//
// pkg/front_end/testcases/enhanced_enums/enum_as_supertype_error.dart:5:7: Error: Non-abstract class 'A' has 'Enum' as a superinterface.
// class A extends Enum { // Error.
// ^

View File

@ -2,7 +2,7 @@
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
class A1 {
mixin class A1 {
int get hashCode => 42;
}
@ -10,7 +10,7 @@ enum E1 with A1 { // Error.
element
}
class A2 {
mixin class A2 {
int get values => 42;
}
@ -18,7 +18,7 @@ enum E2 with A2 { // Error.
element
}
class A3 {
mixin class A3 {
int get index => 42;
}
@ -26,7 +26,7 @@ enum E3 with A3 { // Error.
element
}
class A4 {
mixin class A4 {
bool operator==(Object other) => true;
}
@ -66,7 +66,7 @@ enum E8 with M8 { // Error.
element
}
abstract class A9 {
abstract mixin class A9 {
int get index;
int get hashCode;
bool operator==(Object other);

View File

@ -75,7 +75,7 @@ library /*isNonNullableByDefault*/;
import self as self;
import "dart:core" as core;
class A1 extends core::Object {
mixin class A1 extends core::Object {
synthetic constructor •() → self::A1
: super core::Object::•()
;
@ -98,7 +98,7 @@ class E1 extends self::_E1&_Enum&A1 /*isEnum*/ {
method _enumToString() → core::String
return "E1.${this.{core::_Enum::_name}{core::String}}";
}
class A2 extends core::Object {
mixin class A2 extends core::Object {
synthetic constructor •() → self::A2
: super core::Object::•()
;
@ -121,7 +121,7 @@ class E2 extends self::_E2&_Enum&A2 /*isEnum*/ {
method _enumToString() → core::String
return "E2.${this.{core::_Enum::_name}{core::String}}";
}
class A3 extends core::Object {
mixin class A3 extends core::Object {
synthetic constructor •() → self::A3
: super core::Object::•()
;
@ -144,7 +144,7 @@ class E3 extends self::_E3&_Enum&A3 /*isEnum*/ {
method _enumToString() → core::String
return "E3.${this.{core::_Enum::_name}{core::String}}";
}
class A4 extends core::Object {
mixin class A4 extends core::Object {
synthetic constructor •() → self::A4
: super core::Object::•()
;
@ -247,7 +247,7 @@ class E8 extends self::_E8&_Enum&M8 /*isEnum*/ {
method _enumToString() → core::String
return "E8.${this.{core::_Enum::_name}{core::String}}";
}
abstract class A9 extends core::Object {
abstract mixin class A9 extends core::Object {
synthetic constructor •() → self::A9
: super core::Object::•()
;

View File

@ -75,7 +75,7 @@ library /*isNonNullableByDefault*/;
import self as self;
import "dart:core" as core;
class A1 extends core::Object {
mixin class A1 extends core::Object {
synthetic constructor •() → self::A1
: super core::Object::•()
;
@ -98,7 +98,7 @@ class E1 extends self::_E1&_Enum&A1 /*isEnum*/ {
method _enumToString() → core::String
return "E1.${this.{core::_Enum::_name}{core::String}}";
}
class A2 extends core::Object {
mixin class A2 extends core::Object {
synthetic constructor •() → self::A2
: super core::Object::•()
;
@ -121,7 +121,7 @@ class E2 extends self::_E2&_Enum&A2 /*isEnum*/ {
method _enumToString() → core::String
return "E2.${this.{core::_Enum::_name}{core::String}}";
}
class A3 extends core::Object {
mixin class A3 extends core::Object {
synthetic constructor •() → self::A3
: super core::Object::•()
;
@ -144,7 +144,7 @@ class E3 extends self::_E3&_Enum&A3 /*isEnum*/ {
method _enumToString() → core::String
return "E3.${this.{core::_Enum::_name}{core::String}}";
}
class A4 extends core::Object {
mixin class A4 extends core::Object {
synthetic constructor •() → self::A4
: super core::Object::•()
;
@ -247,7 +247,7 @@ class E8 extends self::_E8&_Enum&M8 /*isEnum*/ {
method _enumToString() → core::String
return "E8.${this.{core::_Enum::_name}{core::String}}";
}
abstract class A9 extends core::Object {
abstract mixin class A9 extends core::Object {
synthetic constructor •() → self::A9
: super core::Object::•()
;

View File

@ -1,22 +1,22 @@
class A1 {
mixin class A1 {
int get hashCode => 42;
}
enum E1 with A1 { element }
class A2 {
mixin class A2 {
int get values => 42;
}
enum E2 with A2 { element }
class A3 {
mixin class A3 {
int get index => 42;
}
enum E3 with A3 { element }
class A4 {
mixin class A4 {
bool operator ==(Object other) => true;
}
@ -46,7 +46,7 @@ mixin M8 {
enum E8 with M8 { element }
abstract class A9 {
abstract mixin class A9 {
int get index;
int get hashCode;
bool operator ==(Object other);

View File

@ -1,25 +1,9 @@
abstract class A9 {
abstract mixin class A9 {
bool operator ==(Object other);
int get hashCode;
int get index;
}
class A1 {
int get hashCode => 42;
}
class A2 {
int get values => 42;
}
class A3 {
int get index => 42;
}
class A4 {
bool operator ==(Object other) => true;
}
enum E1 with A1 { element }
enum E10 with M10 { element }
@ -58,3 +42,19 @@ mixin M7 {
mixin M8 {
bool operator ==(Object other) => true;
}
mixin class A1 {
int get hashCode => 42;
}
mixin class A2 {
int get values => 42;
}
mixin class A3 {
int get index => 42;
}
mixin class A4 {
bool operator ==(Object other) => true;
}

View File

@ -75,7 +75,7 @@ library /*isNonNullableByDefault*/;
import self as self;
import "dart:core" as core;
class A1 extends core::Object {
mixin class A1 extends core::Object {
synthetic constructor •() → self::A1
: super core::Object::•()
;
@ -98,7 +98,7 @@ class E1 extends self::_E1&_Enum&A1 /*isEnum*/ {
method _enumToString() → core::String
return "E1.${this.{core::_Enum::_name}{core::String}}";
}
class A2 extends core::Object {
mixin class A2 extends core::Object {
synthetic constructor •() → self::A2
: super core::Object::•()
;
@ -121,7 +121,7 @@ class E2 extends self::_E2&_Enum&A2 /*isEnum*/ {
method _enumToString() → core::String
return "E2.${this.{core::_Enum::_name}{core::String}}";
}
class A3 extends core::Object {
mixin class A3 extends core::Object {
synthetic constructor •() → self::A3
: super core::Object::•()
;
@ -144,7 +144,7 @@ class E3 extends self::_E3&_Enum&A3 /*isEnum*/ {
method _enumToString() → core::String
return "E3.${this.{core::_Enum::_name}{core::String}}";
}
class A4 extends core::Object {
mixin class A4 extends core::Object {
synthetic constructor •() → self::A4
: super core::Object::•()
;
@ -247,7 +247,7 @@ class E8 extends self::_E8&_Enum&M8 /*isEnum*/ {
method _enumToString() → core::String
return "E8.${this.{core::_Enum::_name}{core::String}}";
}
abstract class A9 extends core::Object {
abstract mixin class A9 extends core::Object {
synthetic constructor •() → self::A9
: super core::Object::•()
;

View File

@ -75,7 +75,7 @@ library /*isNonNullableByDefault*/;
import self as self;
import "dart:core" as core;
class A1 extends core::Object {
mixin class A1 extends core::Object {
synthetic constructor •() → self::A1
: super core::Object::•()
;
@ -98,7 +98,7 @@ class E1 extends self::_E1&_Enum&A1 /*isEnum*/ {
method _enumToString() → core::String
return "E1.${this.{core::_Enum::_name}{core::String}}";
}
class A2 extends core::Object {
mixin class A2 extends core::Object {
synthetic constructor •() → self::A2
: super core::Object::•()
;
@ -121,7 +121,7 @@ class E2 extends self::_E2&_Enum&A2 /*isEnum*/ {
method _enumToString() → core::String
return "E2.${this.{core::_Enum::_name}{core::String}}";
}
class A3 extends core::Object {
mixin class A3 extends core::Object {
synthetic constructor •() → self::A3
: super core::Object::•()
;
@ -144,7 +144,7 @@ class E3 extends self::_E3&_Enum&A3 /*isEnum*/ {
method _enumToString() → core::String
return "E3.${this.{core::_Enum::_name}{core::String}}";
}
class A4 extends core::Object {
mixin class A4 extends core::Object {
synthetic constructor •() → self::A4
: super core::Object::•()
;
@ -247,7 +247,7 @@ class E8 extends self::_E8&_Enum&M8 /*isEnum*/ {
method _enumToString() → core::String
return "E8.${this.{core::_Enum::_name}{core::String}}";
}
abstract class A9 extends core::Object {
abstract mixin class A9 extends core::Object {
synthetic constructor •() → self::A9
: super core::Object::•()
;

View File

@ -75,7 +75,7 @@ library /*isNonNullableByDefault*/;
import self as self;
import "dart:core" as core;
class A1 extends core::Object {
mixin class A1 extends core::Object {
synthetic constructor •() → self::A1
;
get hashCode() → core::int
@ -96,7 +96,7 @@ class E1 extends self::_E1&_Enum&A1 /*isEnum*/ {
method _enumToString() → core::String
return "E1.${this.{core::_Enum::_name}{core::String}}";
}
class A2 extends core::Object {
mixin class A2 extends core::Object {
synthetic constructor •() → self::A2
;
get values() → core::int
@ -117,7 +117,7 @@ class E2 extends self::_E2&_Enum&A2 /*isEnum*/ {
method _enumToString() → core::String
return "E2.${this.{core::_Enum::_name}{core::String}}";
}
class A3 extends core::Object {
mixin class A3 extends core::Object {
synthetic constructor •() → self::A3
;
get index() → core::int
@ -138,7 +138,7 @@ class E3 extends self::_E3&_Enum&A3 /*isEnum*/ {
method _enumToString() → core::String
return "E3.${this.{core::_Enum::_name}{core::String}}";
}
class A4 extends core::Object {
mixin class A4 extends core::Object {
synthetic constructor •() → self::A4
;
operator ==(core::Object other) → core::bool
@ -235,7 +235,7 @@ class E8 extends self::_E8&_Enum&M8 /*isEnum*/ {
method _enumToString() → core::String
return "E8.${this.{core::_Enum::_name}{core::String}}";
}
abstract class A9 extends core::Object {
abstract mixin class A9 extends core::Object {
synthetic constructor •() → self::A9
;
abstract get index() → core::int;

View File

@ -75,7 +75,7 @@ library /*isNonNullableByDefault*/;
import self as self;
import "dart:core" as core;
class A1 extends core::Object {
mixin class A1 extends core::Object {
synthetic constructor •() → self::A1
: super core::Object::•()
;
@ -98,7 +98,7 @@ class E1 extends self::_E1&_Enum&A1 /*isEnum*/ {
method _enumToString() → core::String
return "E1.${this.{core::_Enum::_name}{core::String}}";
}
class A2 extends core::Object {
mixin class A2 extends core::Object {
synthetic constructor •() → self::A2
: super core::Object::•()
;
@ -121,7 +121,7 @@ class E2 extends self::_E2&_Enum&A2 /*isEnum*/ {
method _enumToString() → core::String
return "E2.${this.{core::_Enum::_name}{core::String}}";
}
class A3 extends core::Object {
mixin class A3 extends core::Object {
synthetic constructor •() → self::A3
: super core::Object::•()
;
@ -144,7 +144,7 @@ class E3 extends self::_E3&_Enum&A3 /*isEnum*/ {
method _enumToString() → core::String
return "E3.${this.{core::_Enum::_name}{core::String}}";
}
class A4 extends core::Object {
mixin class A4 extends core::Object {
synthetic constructor •() → self::A4
: super core::Object::•()
;
@ -247,7 +247,7 @@ class E8 extends self::_E8&_Enum&M8 /*isEnum*/ {
method _enumToString() → core::String
return "E8.${this.{core::_Enum::_name}{core::String}}";
}
abstract class A9 extends core::Object {
abstract mixin class A9 extends core::Object {
synthetic constructor •() → self::A9
: super core::Object::•()
;

View File

@ -6,7 +6,7 @@ mixin M {
String toString() => "M";
}
abstract class A {
abstract mixin class A {
String toString() => "A";
}
@ -14,9 +14,7 @@ abstract class B implements Enum {
String toString() => "B";
}
enum E1 with M {
element
}
enum E1 with M { element }
enum E2 with M {
element;
@ -30,9 +28,7 @@ enum E3 {
String toString() => "E3";
}
enum E4 implements B {
element
}
enum E4 implements B { element }
enum E5 implements B {
element;
@ -40,9 +36,7 @@ enum E5 implements B {
String toString() => "E5";
}
enum E6 with A {
element
}
enum E6 with A { element }
enum E7 with A {
element;

View File

@ -6,7 +6,7 @@ abstract class M extends core::Object /*isMixinDeclaration*/ {
method toString() → core::String
return "M";
}
abstract class A extends core::Object {
abstract mixin class A extends core::Object {
synthetic constructor •() → self::A
: super core::Object::•()
;
@ -160,12 +160,12 @@ org-dartlang-testcase:///issue49236.dart:
- _E1&_Enum&M. (from org-dartlang-testcase:///issue49236.dart:17:6)
- _Enum. (from org-dartlang-sdk:///sdk/lib/core/enum.dart)
- Object. (from org-dartlang-sdk:///sdk/lib/core/object.dart)
- E2. (from org-dartlang-testcase:///issue49236.dart:21:6)
- _E2&_Enum&M. (from org-dartlang-testcase:///issue49236.dart:21:6)
- E3. (from org-dartlang-testcase:///issue49236.dart:27:6)
- E4. (from org-dartlang-testcase:///issue49236.dart:33:6)
- E5. (from org-dartlang-testcase:///issue49236.dart:37:6)
- E6. (from org-dartlang-testcase:///issue49236.dart:43:6)
- _E6&_Enum&A. (from org-dartlang-testcase:///issue49236.dart:43:6)
- E7. (from org-dartlang-testcase:///issue49236.dart:47:6)
- _E7&_Enum&A. (from org-dartlang-testcase:///issue49236.dart:47:6)
- E2. (from org-dartlang-testcase:///issue49236.dart:19:6)
- _E2&_Enum&M. (from org-dartlang-testcase:///issue49236.dart:19:6)
- E3. (from org-dartlang-testcase:///issue49236.dart:25:6)
- E4. (from org-dartlang-testcase:///issue49236.dart:31:6)
- E5. (from org-dartlang-testcase:///issue49236.dart:33:6)
- E6. (from org-dartlang-testcase:///issue49236.dart:39:6)
- _E6&_Enum&A. (from org-dartlang-testcase:///issue49236.dart:39:6)
- E7. (from org-dartlang-testcase:///issue49236.dart:41:6)
- _E7&_Enum&A. (from org-dartlang-testcase:///issue49236.dart:41:6)

View File

@ -6,7 +6,7 @@ abstract class M extends core::Object /*isMixinDeclaration*/ {
method toString() → core::String
return "M";
}
abstract class A extends core::Object {
abstract mixin class A extends core::Object {
synthetic constructor •() → self::A
: super core::Object::•()
;
@ -160,12 +160,12 @@ org-dartlang-testcase:///issue49236.dart:
- _E1&_Enum&M. (from org-dartlang-testcase:///issue49236.dart:17:6)
- _Enum. (from org-dartlang-sdk:///sdk/lib/core/enum.dart)
- Object. (from org-dartlang-sdk:///sdk/lib/core/object.dart)
- E2. (from org-dartlang-testcase:///issue49236.dart:21:6)
- _E2&_Enum&M. (from org-dartlang-testcase:///issue49236.dart:21:6)
- E3. (from org-dartlang-testcase:///issue49236.dart:27:6)
- E4. (from org-dartlang-testcase:///issue49236.dart:33:6)
- E5. (from org-dartlang-testcase:///issue49236.dart:37:6)
- E6. (from org-dartlang-testcase:///issue49236.dart:43:6)
- _E6&_Enum&A. (from org-dartlang-testcase:///issue49236.dart:43:6)
- E7. (from org-dartlang-testcase:///issue49236.dart:47:6)
- _E7&_Enum&A. (from org-dartlang-testcase:///issue49236.dart:47:6)
- E2. (from org-dartlang-testcase:///issue49236.dart:19:6)
- _E2&_Enum&M. (from org-dartlang-testcase:///issue49236.dart:19:6)
- E3. (from org-dartlang-testcase:///issue49236.dart:25:6)
- E4. (from org-dartlang-testcase:///issue49236.dart:31:6)
- E5. (from org-dartlang-testcase:///issue49236.dart:33:6)
- E6. (from org-dartlang-testcase:///issue49236.dart:39:6)
- _E6&_Enum&A. (from org-dartlang-testcase:///issue49236.dart:39:6)
- E7. (from org-dartlang-testcase:///issue49236.dart:41:6)
- _E7&_Enum&A. (from org-dartlang-testcase:///issue49236.dart:41:6)

View File

@ -2,7 +2,7 @@ mixin M {
String toString() => "M";
}
abstract class A {
abstract mixin class A {
String toString() => "A";
}

View File

@ -1,11 +1,11 @@
abstract class A {
String toString() => "A";
}
abstract class B implements Enum {
String toString() => "B";
}
abstract mixin class A {
String toString() => "A";
}
checkEqual(x, y) {}
enum E1 with M { element }

View File

@ -6,7 +6,7 @@ abstract class M extends core::Object /*isMixinDeclaration*/ {
method toString() → core::String
return "M";
}
abstract class A extends core::Object {
abstract mixin class A extends core::Object {
synthetic constructor •() → self::A
: super core::Object::•()
;
@ -160,12 +160,12 @@ org-dartlang-testcase:///issue49236.dart:
- _E1&_Enum&M. (from org-dartlang-testcase:///issue49236.dart:17:6)
- _Enum. (from org-dartlang-sdk:///sdk/lib/core/enum.dart)
- Object. (from org-dartlang-sdk:///sdk/lib/core/object.dart)
- E2. (from org-dartlang-testcase:///issue49236.dart:21:6)
- _E2&_Enum&M. (from org-dartlang-testcase:///issue49236.dart:21:6)
- E3. (from org-dartlang-testcase:///issue49236.dart:27:6)
- E4. (from org-dartlang-testcase:///issue49236.dart:33:6)
- E5. (from org-dartlang-testcase:///issue49236.dart:37:6)
- E6. (from org-dartlang-testcase:///issue49236.dart:43:6)
- _E6&_Enum&A. (from org-dartlang-testcase:///issue49236.dart:43:6)
- E7. (from org-dartlang-testcase:///issue49236.dart:47:6)
- _E7&_Enum&A. (from org-dartlang-testcase:///issue49236.dart:47:6)
- E2. (from org-dartlang-testcase:///issue49236.dart:19:6)
- _E2&_Enum&M. (from org-dartlang-testcase:///issue49236.dart:19:6)
- E3. (from org-dartlang-testcase:///issue49236.dart:25:6)
- E4. (from org-dartlang-testcase:///issue49236.dart:31:6)
- E5. (from org-dartlang-testcase:///issue49236.dart:33:6)
- E6. (from org-dartlang-testcase:///issue49236.dart:39:6)
- _E6&_Enum&A. (from org-dartlang-testcase:///issue49236.dart:39:6)
- E7. (from org-dartlang-testcase:///issue49236.dart:41:6)
- _E7&_Enum&A. (from org-dartlang-testcase:///issue49236.dart:41:6)

View File

@ -6,7 +6,7 @@ abstract class M extends core::Object /*isMixinDeclaration*/ {
method toString() → core::String
return "M";
}
abstract class A extends core::Object {
abstract mixin class A extends core::Object {
synthetic constructor •() → self::A
: super core::Object::•()
;
@ -160,12 +160,12 @@ org-dartlang-testcase:///issue49236.dart:
- _E1&_Enum&M. (from org-dartlang-testcase:///issue49236.dart:17:6)
- _Enum. (from org-dartlang-sdk:///sdk/lib/core/enum.dart)
- Object. (from org-dartlang-sdk:///sdk/lib/core/object.dart)
- E2. (from org-dartlang-testcase:///issue49236.dart:21:6)
- _E2&_Enum&M. (from org-dartlang-testcase:///issue49236.dart:21:6)
- E3. (from org-dartlang-testcase:///issue49236.dart:27:6)
- E4. (from org-dartlang-testcase:///issue49236.dart:33:6)
- E5. (from org-dartlang-testcase:///issue49236.dart:37:6)
- E6. (from org-dartlang-testcase:///issue49236.dart:43:6)
- _E6&_Enum&A. (from org-dartlang-testcase:///issue49236.dart:43:6)
- E7. (from org-dartlang-testcase:///issue49236.dart:47:6)
- _E7&_Enum&A. (from org-dartlang-testcase:///issue49236.dart:47:6)
- E2. (from org-dartlang-testcase:///issue49236.dart:19:6)
- _E2&_Enum&M. (from org-dartlang-testcase:///issue49236.dart:19:6)
- E3. (from org-dartlang-testcase:///issue49236.dart:25:6)
- E4. (from org-dartlang-testcase:///issue49236.dart:31:6)
- E5. (from org-dartlang-testcase:///issue49236.dart:33:6)
- E6. (from org-dartlang-testcase:///issue49236.dart:39:6)
- _E6&_Enum&A. (from org-dartlang-testcase:///issue49236.dart:39:6)
- E7. (from org-dartlang-testcase:///issue49236.dart:41:6)
- _E7&_Enum&A. (from org-dartlang-testcase:///issue49236.dart:41:6)

View File

@ -6,7 +6,7 @@ abstract class M extends core::Object /*isMixinDeclaration*/ {
method toString() → core::String
;
}
abstract class A extends core::Object {
abstract mixin class A extends core::Object {
synthetic constructor •() → self::A
;
method toString() → core::String
@ -121,17 +121,17 @@ static method main() → dynamic
Extra constant evaluation status:
Evaluated: ListLiteral @ org-dartlang-testcase:///issue49236.dart:17:6 -> ListConstant(const <E1*>[const E1{}])
Evaluated: ConstructorInvocation @ org-dartlang-testcase:///issue49236.dart:18:3 -> InstanceConstant(const E1{})
Evaluated: ListLiteral @ org-dartlang-testcase:///issue49236.dart:21:6 -> ListConstant(const <E2*>[const E2{}])
Evaluated: ConstructorInvocation @ org-dartlang-testcase:///issue49236.dart:22:3 -> InstanceConstant(const E2{})
Evaluated: ListLiteral @ org-dartlang-testcase:///issue49236.dart:27:6 -> ListConstant(const <E3*>[const E3{_Enum.index: 0, _Enum._name: "element"}])
Evaluated: ConstructorInvocation @ org-dartlang-testcase:///issue49236.dart:28:3 -> InstanceConstant(const E3{_Enum.index: 0, _Enum._name: "element"})
Evaluated: ListLiteral @ org-dartlang-testcase:///issue49236.dart:33:6 -> ListConstant(const <E4*>[const E4{_Enum.index: 0, _Enum._name: "element"}])
Evaluated: ConstructorInvocation @ org-dartlang-testcase:///issue49236.dart:34:3 -> InstanceConstant(const E4{_Enum.index: 0, _Enum._name: "element"})
Evaluated: ListLiteral @ org-dartlang-testcase:///issue49236.dart:37:6 -> ListConstant(const <E5*>[const E5{_Enum.index: 0, _Enum._name: "element"}])
Evaluated: ConstructorInvocation @ org-dartlang-testcase:///issue49236.dart:38:3 -> InstanceConstant(const E5{_Enum.index: 0, _Enum._name: "element"})
Evaluated: ListLiteral @ org-dartlang-testcase:///issue49236.dart:43:6 -> ListConstant(const <E6*>[const E6{}])
Evaluated: ConstructorInvocation @ org-dartlang-testcase:///issue49236.dart:44:3 -> InstanceConstant(const E6{})
Evaluated: ListLiteral @ org-dartlang-testcase:///issue49236.dart:47:6 -> ListConstant(const <E7*>[const E7{}])
Evaluated: ConstructorInvocation @ org-dartlang-testcase:///issue49236.dart:48:3 -> InstanceConstant(const E7{})
Evaluated: ConstructorInvocation @ org-dartlang-testcase:///issue49236.dart:17:18 -> InstanceConstant(const E1{})
Evaluated: ListLiteral @ org-dartlang-testcase:///issue49236.dart:19:6 -> ListConstant(const <E2*>[const E2{}])
Evaluated: ConstructorInvocation @ org-dartlang-testcase:///issue49236.dart:20:3 -> InstanceConstant(const E2{})
Evaluated: ListLiteral @ org-dartlang-testcase:///issue49236.dart:25:6 -> ListConstant(const <E3*>[const E3{_Enum.index: 0, _Enum._name: "element"}])
Evaluated: ConstructorInvocation @ org-dartlang-testcase:///issue49236.dart:26:3 -> InstanceConstant(const E3{_Enum.index: 0, _Enum._name: "element"})
Evaluated: ListLiteral @ org-dartlang-testcase:///issue49236.dart:31:6 -> ListConstant(const <E4*>[const E4{_Enum.index: 0, _Enum._name: "element"}])
Evaluated: ConstructorInvocation @ org-dartlang-testcase:///issue49236.dart:31:24 -> InstanceConstant(const E4{_Enum.index: 0, _Enum._name: "element"})
Evaluated: ListLiteral @ org-dartlang-testcase:///issue49236.dart:33:6 -> ListConstant(const <E5*>[const E5{_Enum.index: 0, _Enum._name: "element"}])
Evaluated: ConstructorInvocation @ org-dartlang-testcase:///issue49236.dart:34:3 -> InstanceConstant(const E5{_Enum.index: 0, _Enum._name: "element"})
Evaluated: ListLiteral @ org-dartlang-testcase:///issue49236.dart:39:6 -> ListConstant(const <E6*>[const E6{}])
Evaluated: ConstructorInvocation @ org-dartlang-testcase:///issue49236.dart:39:18 -> InstanceConstant(const E6{})
Evaluated: ListLiteral @ org-dartlang-testcase:///issue49236.dart:41:6 -> ListConstant(const <E7*>[const E7{}])
Evaluated: ConstructorInvocation @ org-dartlang-testcase:///issue49236.dart:42:3 -> InstanceConstant(const E7{})
Extra constant evaluation: evaluated: 53, effectively constant: 14

View File

@ -6,7 +6,7 @@ abstract class M extends core::Object /*isMixinDeclaration*/ {
method toString() → core::String
return "M";
}
abstract class A extends core::Object {
abstract mixin class A extends core::Object {
synthetic constructor •() → self::A
: super core::Object::•()
;
@ -160,12 +160,12 @@ org-dartlang-testcase:///issue49236.dart:
- _E1&_Enum&M. (from org-dartlang-testcase:///issue49236.dart:17:6)
- _Enum. (from org-dartlang-sdk:///sdk/lib/core/enum.dart)
- Object. (from org-dartlang-sdk:///sdk/lib/core/object.dart)
- E2. (from org-dartlang-testcase:///issue49236.dart:21:6)
- _E2&_Enum&M. (from org-dartlang-testcase:///issue49236.dart:21:6)
- E3. (from org-dartlang-testcase:///issue49236.dart:27:6)
- E4. (from org-dartlang-testcase:///issue49236.dart:33:6)
- E5. (from org-dartlang-testcase:///issue49236.dart:37:6)
- E6. (from org-dartlang-testcase:///issue49236.dart:43:6)
- _E6&_Enum&A. (from org-dartlang-testcase:///issue49236.dart:43:6)
- E7. (from org-dartlang-testcase:///issue49236.dart:47:6)
- _E7&_Enum&A. (from org-dartlang-testcase:///issue49236.dart:47:6)
- E2. (from org-dartlang-testcase:///issue49236.dart:19:6)
- _E2&_Enum&M. (from org-dartlang-testcase:///issue49236.dart:19:6)
- E3. (from org-dartlang-testcase:///issue49236.dart:25:6)
- E4. (from org-dartlang-testcase:///issue49236.dart:31:6)
- E5. (from org-dartlang-testcase:///issue49236.dart:33:6)
- E6. (from org-dartlang-testcase:///issue49236.dart:39:6)
- _E6&_Enum&A. (from org-dartlang-testcase:///issue49236.dart:39:6)
- E7. (from org-dartlang-testcase:///issue49236.dart:41:6)
- _E7&_Enum&A. (from org-dartlang-testcase:///issue49236.dart:41:6)

View File

@ -6,9 +6,9 @@ typedef ContravariantUse<T> = Function(T);
typedef InvariantUse<T> = T Function(T);
class Empty {}
mixin Empty {}
class A<T> {}
mixin class A<T> {}
class B<T> extends A<Function(T)> {}

View File

@ -115,12 +115,9 @@ import "dart:core" as core;
typedef ContravariantUse<contravariant T extends core::Object? = dynamic> = (T%) → dynamic;
typedef InvariantUse<invariant T extends core::Object? = dynamic> = (T%) → T%;
class Empty extends core::Object {
synthetic constructor •() → self::Empty
: super core::Object::•()
;
abstract class Empty extends core::Object /*isMixinDeclaration*/ {
}
class A<T extends core::Object? = dynamic> extends core::Object {
mixin class A<T extends core::Object? = dynamic> extends core::Object {
synthetic constructor •() → self::A<self::A::T%>
: super core::Object::•()
;

View File

@ -115,12 +115,9 @@ import "dart:core" as core;
typedef ContravariantUse<contravariant T extends core::Object? = dynamic> = (T%) → dynamic;
typedef InvariantUse<invariant T extends core::Object? = dynamic> = (T%) → T%;
class Empty extends core::Object {
synthetic constructor •() → self::Empty
: super core::Object::•()
;
abstract class Empty extends core::Object /*isMixinDeclaration*/ {
}
class A<T extends core::Object? = dynamic> extends core::Object {
mixin class A<T extends core::Object? = dynamic> extends core::Object {
synthetic constructor •() → self::A<self::A::T%>
: super core::Object::•()
;

View File

@ -1,9 +1,8 @@
typedef ContravariantUse<T> = Function(T);
typedef InvariantUse<T> = T Function(T);
mixin Empty {}
class Empty {}
class A<T> {}
mixin class A<T> {}
class B<T> extends A<Function(T)> {}

View File

@ -1,5 +1,3 @@
class A<T> {}
class B<T> extends A<Function(T)> {}
class Bc<T> extends A<ContravariantUse<T>> {}
@ -19,8 +17,6 @@ class E<T> = A<Function(T)> with Empty;
class Ec<T> = A<ContravariantUse<T>> with Empty;
class Ei<T> = A<InvariantUse<T>> with Empty;
class Empty {}
class F<T> extends Object with A<Function(T)> {}
class Fc<T> extends Object with A<ContravariantUse<T>> {}
@ -73,5 +69,9 @@ class Jffc<T> extends A<Function(Function(ContravariantUse<T>))> {}
class Jfff<T> extends A<Function(Function(Function(T)))> {}
main() {}
mixin Empty {}
mixin class A<T> {}
typedef ContravariantUse<T> = Function(T);
typedef InvariantUse<T> = T Function(T);

View File

@ -115,12 +115,9 @@ import "dart:core" as core;
typedef ContravariantUse<contravariant T extends core::Object? = dynamic> = (T%) → dynamic;
typedef InvariantUse<invariant T extends core::Object? = dynamic> = (T%) → T%;
class Empty extends core::Object {
synthetic constructor •() → self::Empty
: super core::Object::•()
;
abstract class Empty extends core::Object /*isMixinDeclaration*/ {
}
class A<T extends core::Object? = dynamic> extends core::Object {
mixin class A<T extends core::Object? = dynamic> extends core::Object {
synthetic constructor •() → self::A<self::A::T%>
: super core::Object::•()
;

View File

@ -115,12 +115,9 @@ import "dart:core" as core;
typedef ContravariantUse<contravariant T extends core::Object? = dynamic> = (T%) → dynamic;
typedef InvariantUse<invariant T extends core::Object? = dynamic> = (T%) → T%;
class Empty extends core::Object {
synthetic constructor •() → self::Empty
: super core::Object::•()
;
abstract class Empty extends core::Object /*isMixinDeclaration*/ {
}
class A<T extends core::Object? = dynamic> extends core::Object {
mixin class A<T extends core::Object? = dynamic> extends core::Object {
synthetic constructor •() → self::A<self::A::T%>
: super core::Object::•()
;

View File

@ -115,11 +115,9 @@ import "dart:core" as core;
typedef ContravariantUse<contravariant T extends core::Object? = dynamic> = (T%) → dynamic;
typedef InvariantUse<invariant T extends core::Object? = dynamic> = (T%) → T%;
class Empty extends core::Object {
synthetic constructor •() → self::Empty
;
abstract class Empty extends core::Object /*isMixinDeclaration*/ {
}
class A<T extends core::Object? = dynamic> extends core::Object {
mixin class A<T extends core::Object? = dynamic> extends core::Object {
synthetic constructor •() → self::A<self::A::T%>
;
}

View File

@ -115,12 +115,9 @@ import "dart:core" as core;
typedef ContravariantUse<contravariant T extends core::Object? = dynamic> = (T%) → dynamic;
typedef InvariantUse<invariant T extends core::Object? = dynamic> = (T%) → T%;
class Empty extends core::Object {
synthetic constructor •() → self::Empty
: super core::Object::•()
;
abstract class Empty extends core::Object /*isMixinDeclaration*/ {
}
class A<T extends core::Object? = dynamic> extends core::Object {
mixin class A<T extends core::Object? = dynamic> extends core::Object {
synthetic constructor •() → self::A<self::A::T%>
: super core::Object::•()
;

View File

@ -2,7 +2,7 @@
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
// @dart=2.18
// @dart=2.19
base class A {}

View File

@ -2,25 +2,37 @@ library /*isNonNullableByDefault*/;
//
// Problems in library:
//
// pkg/front_end/testcases/general/base_class_declaration.dart:7:1: Error: This requires the experimental 'class-modifiers' language feature to be enabled.
// Try passing the '--enable-experiment=class-modifiers' command line option.
// pkg/front_end/testcases/general/base_class_declaration.dart:7:1: Error: The 'class-modifiers' language feature is disabled for this library.
// Try removing the `@dart=` annotation or setting the language version to 3.0 or higher.
// base class A {}
// ^^^^
// pkg/front_end/testcases/general/base_class_declaration.dart:5:1: Context: This is the annotation that opts out this library from the 'class-modifiers' language feature.
// // @dart=2.19
// ^^^^^^^^^^^^^
//
// pkg/front_end/testcases/general/base_class_declaration.dart:9:10: Error: This requires the experimental 'class-modifiers' language feature to be enabled.
// Try passing the '--enable-experiment=class-modifiers' command line option.
// pkg/front_end/testcases/general/base_class_declaration.dart:9:10: Error: The 'class-modifiers' language feature is disabled for this library.
// Try removing the `@dart=` annotation or setting the language version to 3.0 or higher.
// abstract base class B {}
// ^^^^
// pkg/front_end/testcases/general/base_class_declaration.dart:5:1: Context: This is the annotation that opts out this library from the 'class-modifiers' language feature.
// // @dart=2.19
// ^^^^^^^^^^^^^
//
// pkg/front_end/testcases/general/base_class_declaration.dart:11:1: Error: This requires the experimental 'class-modifiers' language feature to be enabled.
// Try passing the '--enable-experiment=class-modifiers' command line option.
// pkg/front_end/testcases/general/base_class_declaration.dart:11:1: Error: The 'class-modifiers' language feature is disabled for this library.
// Try removing the `@dart=` annotation or setting the language version to 3.0 or higher.
// base mixin M {}
// ^^^^
// pkg/front_end/testcases/general/base_class_declaration.dart:5:1: Context: This is the annotation that opts out this library from the 'class-modifiers' language feature.
// // @dart=2.19
// ^^^^^^^^^^^^^
//
// pkg/front_end/testcases/general/base_class_declaration.dart:12:1: Error: This requires the experimental 'class-modifiers' language feature to be enabled.
// Try passing the '--enable-experiment=class-modifiers' command line option.
// pkg/front_end/testcases/general/base_class_declaration.dart:12:1: Error: The 'class-modifiers' language feature is disabled for this library.
// Try removing the `@dart=` annotation or setting the language version to 3.0 or higher.
// base class C = Object with M;
// ^^^^
// pkg/front_end/testcases/general/base_class_declaration.dart:5:1: Context: This is the annotation that opts out this library from the 'class-modifiers' language feature.
// // @dart=2.19
// ^^^^^^^^^^^^^
//
import self as self;
import "dart:core" as core;

View File

@ -2,25 +2,37 @@ library /*isNonNullableByDefault*/;
//
// Problems in library:
//
// pkg/front_end/testcases/general/base_class_declaration.dart:7:1: Error: This requires the experimental 'class-modifiers' language feature to be enabled.
// Try passing the '--enable-experiment=class-modifiers' command line option.
// pkg/front_end/testcases/general/base_class_declaration.dart:7:1: Error: The 'class-modifiers' language feature is disabled for this library.
// Try removing the `@dart=` annotation or setting the language version to 3.0 or higher.
// base class A {}
// ^^^^
// pkg/front_end/testcases/general/base_class_declaration.dart:5:1: Context: This is the annotation that opts out this library from the 'class-modifiers' language feature.
// // @dart=2.19
// ^^^^^^^^^^^^^
//
// pkg/front_end/testcases/general/base_class_declaration.dart:9:10: Error: This requires the experimental 'class-modifiers' language feature to be enabled.
// Try passing the '--enable-experiment=class-modifiers' command line option.
// pkg/front_end/testcases/general/base_class_declaration.dart:9:10: Error: The 'class-modifiers' language feature is disabled for this library.
// Try removing the `@dart=` annotation or setting the language version to 3.0 or higher.
// abstract base class B {}
// ^^^^
// pkg/front_end/testcases/general/base_class_declaration.dart:5:1: Context: This is the annotation that opts out this library from the 'class-modifiers' language feature.
// // @dart=2.19
// ^^^^^^^^^^^^^
//
// pkg/front_end/testcases/general/base_class_declaration.dart:11:1: Error: This requires the experimental 'class-modifiers' language feature to be enabled.
// Try passing the '--enable-experiment=class-modifiers' command line option.
// pkg/front_end/testcases/general/base_class_declaration.dart:11:1: Error: The 'class-modifiers' language feature is disabled for this library.
// Try removing the `@dart=` annotation or setting the language version to 3.0 or higher.
// base mixin M {}
// ^^^^
// pkg/front_end/testcases/general/base_class_declaration.dart:5:1: Context: This is the annotation that opts out this library from the 'class-modifiers' language feature.
// // @dart=2.19
// ^^^^^^^^^^^^^
//
// pkg/front_end/testcases/general/base_class_declaration.dart:12:1: Error: This requires the experimental 'class-modifiers' language feature to be enabled.
// Try passing the '--enable-experiment=class-modifiers' command line option.
// pkg/front_end/testcases/general/base_class_declaration.dart:12:1: Error: The 'class-modifiers' language feature is disabled for this library.
// Try removing the `@dart=` annotation or setting the language version to 3.0 or higher.
// base class C = Object with M;
// ^^^^
// pkg/front_end/testcases/general/base_class_declaration.dart:5:1: Context: This is the annotation that opts out this library from the 'class-modifiers' language feature.
// // @dart=2.19
// ^^^^^^^^^^^^^
//
import self as self;
import "dart:core" as core;

View File

@ -1,6 +1,7 @@
// @dart = 2.18
// @dart = 2.19
base class A {}
abstract base class B {}
base
mixin M {}
base mixin M {}
base class C = Object with M;

View File

@ -0,0 +1,8 @@
// @dart = 2.19
abstract base class B {}
base class A {}
---- unknown chunk starts ----
base
---- unknown chunk ends ----
base class C = Object with M;
mixin M {}

View File

@ -2,25 +2,37 @@ library /*isNonNullableByDefault*/;
//
// Problems in library:
//
// pkg/front_end/testcases/general/base_class_declaration.dart:7:1: Error: This requires the experimental 'class-modifiers' language feature to be enabled.
// Try passing the '--enable-experiment=class-modifiers' command line option.
// pkg/front_end/testcases/general/base_class_declaration.dart:7:1: Error: The 'class-modifiers' language feature is disabled for this library.
// Try removing the `@dart=` annotation or setting the language version to 3.0 or higher.
// base class A {}
// ^^^^
// pkg/front_end/testcases/general/base_class_declaration.dart:5:1: Context: This is the annotation that opts out this library from the 'class-modifiers' language feature.
// // @dart=2.19
// ^^^^^^^^^^^^^
//
// pkg/front_end/testcases/general/base_class_declaration.dart:9:10: Error: This requires the experimental 'class-modifiers' language feature to be enabled.
// Try passing the '--enable-experiment=class-modifiers' command line option.
// pkg/front_end/testcases/general/base_class_declaration.dart:9:10: Error: The 'class-modifiers' language feature is disabled for this library.
// Try removing the `@dart=` annotation or setting the language version to 3.0 or higher.
// abstract base class B {}
// ^^^^
// pkg/front_end/testcases/general/base_class_declaration.dart:5:1: Context: This is the annotation that opts out this library from the 'class-modifiers' language feature.
// // @dart=2.19
// ^^^^^^^^^^^^^
//
// pkg/front_end/testcases/general/base_class_declaration.dart:11:1: Error: This requires the experimental 'class-modifiers' language feature to be enabled.
// Try passing the '--enable-experiment=class-modifiers' command line option.
// pkg/front_end/testcases/general/base_class_declaration.dart:11:1: Error: The 'class-modifiers' language feature is disabled for this library.
// Try removing the `@dart=` annotation or setting the language version to 3.0 or higher.
// base mixin M {}
// ^^^^
// pkg/front_end/testcases/general/base_class_declaration.dart:5:1: Context: This is the annotation that opts out this library from the 'class-modifiers' language feature.
// // @dart=2.19
// ^^^^^^^^^^^^^
//
// pkg/front_end/testcases/general/base_class_declaration.dart:12:1: Error: This requires the experimental 'class-modifiers' language feature to be enabled.
// Try passing the '--enable-experiment=class-modifiers' command line option.
// pkg/front_end/testcases/general/base_class_declaration.dart:12:1: Error: The 'class-modifiers' language feature is disabled for this library.
// Try removing the `@dart=` annotation or setting the language version to 3.0 or higher.
// base class C = Object with M;
// ^^^^
// pkg/front_end/testcases/general/base_class_declaration.dart:5:1: Context: This is the annotation that opts out this library from the 'class-modifiers' language feature.
// // @dart=2.19
// ^^^^^^^^^^^^^
//
import self as self;
import "dart:core" as core;

View File

@ -2,25 +2,37 @@ library /*isNonNullableByDefault*/;
//
// Problems in library:
//
// pkg/front_end/testcases/general/base_class_declaration.dart:7:1: Error: This requires the experimental 'class-modifiers' language feature to be enabled.
// Try passing the '--enable-experiment=class-modifiers' command line option.
// pkg/front_end/testcases/general/base_class_declaration.dart:7:1: Error: The 'class-modifiers' language feature is disabled for this library.
// Try removing the `@dart=` annotation or setting the language version to 3.0 or higher.
// base class A {}
// ^^^^
// pkg/front_end/testcases/general/base_class_declaration.dart:5:1: Context: This is the annotation that opts out this library from the 'class-modifiers' language feature.
// // @dart=2.19
// ^^^^^^^^^^^^^
//
// pkg/front_end/testcases/general/base_class_declaration.dart:9:10: Error: This requires the experimental 'class-modifiers' language feature to be enabled.
// Try passing the '--enable-experiment=class-modifiers' command line option.
// pkg/front_end/testcases/general/base_class_declaration.dart:9:10: Error: The 'class-modifiers' language feature is disabled for this library.
// Try removing the `@dart=` annotation or setting the language version to 3.0 or higher.
// abstract base class B {}
// ^^^^
// pkg/front_end/testcases/general/base_class_declaration.dart:5:1: Context: This is the annotation that opts out this library from the 'class-modifiers' language feature.
// // @dart=2.19
// ^^^^^^^^^^^^^
//
// pkg/front_end/testcases/general/base_class_declaration.dart:11:1: Error: This requires the experimental 'class-modifiers' language feature to be enabled.
// Try passing the '--enable-experiment=class-modifiers' command line option.
// pkg/front_end/testcases/general/base_class_declaration.dart:11:1: Error: The 'class-modifiers' language feature is disabled for this library.
// Try removing the `@dart=` annotation or setting the language version to 3.0 or higher.
// base mixin M {}
// ^^^^
// pkg/front_end/testcases/general/base_class_declaration.dart:5:1: Context: This is the annotation that opts out this library from the 'class-modifiers' language feature.
// // @dart=2.19
// ^^^^^^^^^^^^^
//
// pkg/front_end/testcases/general/base_class_declaration.dart:12:1: Error: This requires the experimental 'class-modifiers' language feature to be enabled.
// Try passing the '--enable-experiment=class-modifiers' command line option.
// pkg/front_end/testcases/general/base_class_declaration.dart:12:1: Error: The 'class-modifiers' language feature is disabled for this library.
// Try removing the `@dart=` annotation or setting the language version to 3.0 or higher.
// base class C = Object with M;
// ^^^^
// pkg/front_end/testcases/general/base_class_declaration.dart:5:1: Context: This is the annotation that opts out this library from the 'class-modifiers' language feature.
// // @dart=2.19
// ^^^^^^^^^^^^^
//
import self as self;
import "dart:core" as core;

View File

@ -2,25 +2,37 @@ library /*isNonNullableByDefault*/;
//
// Problems in library:
//
// pkg/front_end/testcases/general/base_class_declaration.dart:7:1: Error: This requires the experimental 'class-modifiers' language feature to be enabled.
// Try passing the '--enable-experiment=class-modifiers' command line option.
// pkg/front_end/testcases/general/base_class_declaration.dart:7:1: Error: The 'class-modifiers' language feature is disabled for this library.
// Try removing the `@dart=` annotation or setting the language version to 3.0 or higher.
// base class A {}
// ^^^^
// pkg/front_end/testcases/general/base_class_declaration.dart:5:1: Context: This is the annotation that opts out this library from the 'class-modifiers' language feature.
// // @dart=2.19
// ^^^^^^^^^^^^^
//
// pkg/front_end/testcases/general/base_class_declaration.dart:9:10: Error: This requires the experimental 'class-modifiers' language feature to be enabled.
// Try passing the '--enable-experiment=class-modifiers' command line option.
// pkg/front_end/testcases/general/base_class_declaration.dart:9:10: Error: The 'class-modifiers' language feature is disabled for this library.
// Try removing the `@dart=` annotation or setting the language version to 3.0 or higher.
// abstract base class B {}
// ^^^^
// pkg/front_end/testcases/general/base_class_declaration.dart:5:1: Context: This is the annotation that opts out this library from the 'class-modifiers' language feature.
// // @dart=2.19
// ^^^^^^^^^^^^^
//
// pkg/front_end/testcases/general/base_class_declaration.dart:11:1: Error: This requires the experimental 'class-modifiers' language feature to be enabled.
// Try passing the '--enable-experiment=class-modifiers' command line option.
// pkg/front_end/testcases/general/base_class_declaration.dart:11:1: Error: The 'class-modifiers' language feature is disabled for this library.
// Try removing the `@dart=` annotation or setting the language version to 3.0 or higher.
// base mixin M {}
// ^^^^
// pkg/front_end/testcases/general/base_class_declaration.dart:5:1: Context: This is the annotation that opts out this library from the 'class-modifiers' language feature.
// // @dart=2.19
// ^^^^^^^^^^^^^
//
// pkg/front_end/testcases/general/base_class_declaration.dart:12:1: Error: This requires the experimental 'class-modifiers' language feature to be enabled.
// Try passing the '--enable-experiment=class-modifiers' command line option.
// pkg/front_end/testcases/general/base_class_declaration.dart:12:1: Error: The 'class-modifiers' language feature is disabled for this library.
// Try removing the `@dart=` annotation or setting the language version to 3.0 or higher.
// base class C = Object with M;
// ^^^^
// pkg/front_end/testcases/general/base_class_declaration.dart:5:1: Context: This is the annotation that opts out this library from the 'class-modifiers' language feature.
// // @dart=2.19
// ^^^^^^^^^^^^^
//
import self as self;
import "dart:core" as core;

View File

@ -2,25 +2,37 @@ library /*isNonNullableByDefault*/;
//
// Problems in library:
//
// pkg/front_end/testcases/general/base_class_declaration.dart:7:1: Error: This requires the experimental 'class-modifiers' language feature to be enabled.
// Try passing the '--enable-experiment=class-modifiers' command line option.
// pkg/front_end/testcases/general/base_class_declaration.dart:7:1: Error: The 'class-modifiers' language feature is disabled for this library.
// Try removing the `@dart=` annotation or setting the language version to 3.0 or higher.
// base class A {}
// ^^^^
// pkg/front_end/testcases/general/base_class_declaration.dart:5:1: Context: This is the annotation that opts out this library from the 'class-modifiers' language feature.
// // @dart=2.19
// ^^^^^^^^^^^^^
//
// pkg/front_end/testcases/general/base_class_declaration.dart:9:10: Error: This requires the experimental 'class-modifiers' language feature to be enabled.
// Try passing the '--enable-experiment=class-modifiers' command line option.
// pkg/front_end/testcases/general/base_class_declaration.dart:9:10: Error: The 'class-modifiers' language feature is disabled for this library.
// Try removing the `@dart=` annotation or setting the language version to 3.0 or higher.
// abstract base class B {}
// ^^^^
// pkg/front_end/testcases/general/base_class_declaration.dart:5:1: Context: This is the annotation that opts out this library from the 'class-modifiers' language feature.
// // @dart=2.19
// ^^^^^^^^^^^^^
//
// pkg/front_end/testcases/general/base_class_declaration.dart:11:1: Error: This requires the experimental 'class-modifiers' language feature to be enabled.
// Try passing the '--enable-experiment=class-modifiers' command line option.
// pkg/front_end/testcases/general/base_class_declaration.dart:11:1: Error: The 'class-modifiers' language feature is disabled for this library.
// Try removing the `@dart=` annotation or setting the language version to 3.0 or higher.
// base mixin M {}
// ^^^^
// pkg/front_end/testcases/general/base_class_declaration.dart:5:1: Context: This is the annotation that opts out this library from the 'class-modifiers' language feature.
// // @dart=2.19
// ^^^^^^^^^^^^^
//
// pkg/front_end/testcases/general/base_class_declaration.dart:12:1: Error: This requires the experimental 'class-modifiers' language feature to be enabled.
// Try passing the '--enable-experiment=class-modifiers' command line option.
// pkg/front_end/testcases/general/base_class_declaration.dart:12:1: Error: The 'class-modifiers' language feature is disabled for this library.
// Try removing the `@dart=` annotation or setting the language version to 3.0 or higher.
// base class C = Object with M;
// ^^^^
// pkg/front_end/testcases/general/base_class_declaration.dart:5:1: Context: This is the annotation that opts out this library from the 'class-modifiers' language feature.
// // @dart=2.19
// ^^^^^^^^^^^^^
//
import self as self;
import "dart:core" as core;

View File

@ -2,13 +2,13 @@
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
class Class<T> {}
mixin class Class<T> {}
class ConcreteClass implements Class<ConcreteClass> {}
typedef F<X extends Class<X>> = Class<X>;
class G<X extends Class<X>> {}
mixin class G<X extends Class<X>> {}
class ExtendsT1 extends F {} // Error

View File

@ -62,36 +62,36 @@ library /*isNonNullableByDefault*/;
// Try specifying type arguments explicitly so that they conform to the bounds.
// class ExtendsS1 extends G {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:31:25: Error: Type argument 'dynamic' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// class ExtendsS2 extends G<dynamic> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:33:25: Error: Type argument 'Class<dynamic>' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// class ExtendsS3 extends G<Class> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:35:25: Error: Type argument 'Class<dynamic>' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// class ExtendsS4 extends G<Class<dynamic>> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:41:25: Error: Type argument 'Object' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Object' is from 'dart:core'.
@ -99,18 +99,18 @@ library /*isNonNullableByDefault*/;
// Try changing type arguments so that they conform to the bounds.
// class ExtendsS7 extends G<Object> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:43:25: Error: Type argument 'int' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// class ExtendsS8 extends G<int> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:45:31: Error: Inferred type argument 'Class<dynamic>' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'F'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
@ -172,36 +172,36 @@ library /*isNonNullableByDefault*/;
// Try specifying type arguments explicitly so that they conform to the bounds.
// class ImplementsS1 implements G {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:63:31: Error: Type argument 'dynamic' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// class ImplementsS2 implements G<dynamic> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:65:31: Error: Type argument 'Class<dynamic>' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// class ImplementsS3 implements G<Class> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:67:31: Error: Type argument 'Class<dynamic>' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// class ImplementsS4 implements G<Class<dynamic>> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:73:31: Error: Type argument 'Object' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Object' is from 'dart:core'.
@ -209,18 +209,18 @@ library /*isNonNullableByDefault*/;
// Try changing type arguments so that they conform to the bounds.
// class ImplementsS7 implements G<Object> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:75:31: Error: Type argument 'int' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// class ImplementsS8 implements G<int> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:77:19: Error: Inferred type argument 'Class<dynamic>' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'F'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
@ -337,36 +337,36 @@ library /*isNonNullableByDefault*/;
// Try specifying type arguments explicitly so that they conform to the bounds.
// enum EnumImplementsS1 implements G /* Error */ { a }
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:127:34: Error: Type argument 'dynamic' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// enum EnumImplementsS2 implements G<dynamic> /* Error */ { a }
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:129:34: Error: Type argument 'Class<dynamic>' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// enum EnumImplementsS3 implements G<Class> /* Error */ { a }
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:131:34: Error: Type argument 'Class<dynamic>' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// enum EnumImplementsS4 implements G<Class<dynamic>> /* Error */ { a }
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:137:34: Error: Type argument 'Object' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Object' is from 'dart:core'.
@ -374,18 +374,18 @@ library /*isNonNullableByDefault*/;
// Try changing type arguments so that they conform to the bounds.
// enum EnumImplementsS7 implements G<Object> /* Error */ { a }
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:139:34: Error: Type argument 'int' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// enum EnumImplementsS8 implements G<int> /* Error */ { a }
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:141:22: Error: Inferred type argument 'Class<dynamic>' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'F'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
@ -502,36 +502,36 @@ library /*isNonNullableByDefault*/;
// Try specifying type arguments explicitly so that they conform to the bounds.
// mixin MixinOnS1 on G {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:191:20: Error: Type argument 'dynamic' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// mixin MixinOnS2 on G<dynamic> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:193:20: Error: Type argument 'Class<dynamic>' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// mixin MixinOnS3 on G<Class> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:195:20: Error: Type argument 'Class<dynamic>' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// mixin MixinOnS4 on G<Class<dynamic>> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:201:20: Error: Type argument 'Object' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Object' is from 'dart:core'.
@ -539,18 +539,18 @@ library /*isNonNullableByDefault*/;
// Try changing type arguments so that they conform to the bounds.
// mixin MixinOnS7 on G<Object> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:203:20: Error: Type argument 'int' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// mixin MixinOnS8 on G<int> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:217:28: Error: Type argument 'Object' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'F'.
// - 'Object' is from 'dart:core'.
@ -577,54 +577,54 @@ library /*isNonNullableByDefault*/;
// Try changing type arguments so that they conform to the bounds.
// extension ExtensionOnS7 on G<Object> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:235:28: Error: Type argument 'int' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// extension ExtensionOnS8 on G<int> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:93:19: Error: Inferred type argument 'Class<dynamic>' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try specifying type arguments explicitly so that they conform to the bounds.
// class WithS1 with G {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:95:19: Error: Type argument 'dynamic' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// class WithS2 with G<dynamic> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:97:19: Error: Type argument 'Class<dynamic>' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// class WithS3 with G<Class> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:99:19: Error: Type argument 'Class<dynamic>' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// class WithS4 with G<Class<dynamic>> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:105:19: Error: Type argument 'Object' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Object' is from 'dart:core'.
@ -632,54 +632,54 @@ library /*isNonNullableByDefault*/;
// Try changing type arguments so that they conform to the bounds.
// class WithS7 with G<Object> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:107:19: Error: Type argument 'int' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// class WithS8 with G<int> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:157:22: Error: Inferred type argument 'Class<dynamic>' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try specifying type arguments explicitly so that they conform to the bounds.
// enum EnumWithS1 with G /* Error */ { a }
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:159:22: Error: Type argument 'dynamic' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// enum EnumWithS2 with G<dynamic> /* Error */ { a }
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:161:22: Error: Type argument 'Class<dynamic>' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// enum EnumWithS3 with G<Class> /* Error */ { a }
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:163:22: Error: Type argument 'Class<dynamic>' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// enum EnumWithS4 with G<Class<dynamic>> /* Error */ { a }
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:169:22: Error: Type argument 'Object' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Object' is from 'dart:core'.
@ -687,24 +687,24 @@ library /*isNonNullableByDefault*/;
// Try changing type arguments so that they conform to the bounds.
// enum EnumWithS7 with G<Object> /* Error */ { a }
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:171:22: Error: Type argument 'int' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// enum EnumWithS8 with G<int> /* Error */ { a }
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
import self as self;
import "dart:core" as core;
typedef F<X extends self::Class<X> = self::Class<dynamic>> = self::Class<X>;
class Class<T extends core::Object? = dynamic> extends core::Object {
mixin class Class<T extends core::Object? = dynamic> extends core::Object {
synthetic constructor •() → self::Class<self::Class::T%>
: super core::Object::•()
;
@ -714,7 +714,7 @@ class ConcreteClass extends core::Object implements self::Class<self::ConcreteCl
: super core::Object::•()
;
}
class G<X extends self::Class<self::G::X> = self::Class<dynamic>> extends core::Object {
mixin class G<X extends self::Class<self::G::X> = self::Class<dynamic>> extends core::Object {
synthetic constructor •() → self::G<self::G::X>
: super core::Object::•()
;

View File

@ -62,36 +62,36 @@ library /*isNonNullableByDefault*/;
// Try specifying type arguments explicitly so that they conform to the bounds.
// class ExtendsS1 extends G {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:31:25: Error: Type argument 'dynamic' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// class ExtendsS2 extends G<dynamic> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:33:25: Error: Type argument 'Class<dynamic>' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// class ExtendsS3 extends G<Class> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:35:25: Error: Type argument 'Class<dynamic>' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// class ExtendsS4 extends G<Class<dynamic>> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:41:25: Error: Type argument 'Object' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Object' is from 'dart:core'.
@ -99,18 +99,18 @@ library /*isNonNullableByDefault*/;
// Try changing type arguments so that they conform to the bounds.
// class ExtendsS7 extends G<Object> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:43:25: Error: Type argument 'int' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// class ExtendsS8 extends G<int> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:45:31: Error: Inferred type argument 'Class<dynamic>' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'F'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
@ -172,36 +172,36 @@ library /*isNonNullableByDefault*/;
// Try specifying type arguments explicitly so that they conform to the bounds.
// class ImplementsS1 implements G {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:63:31: Error: Type argument 'dynamic' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// class ImplementsS2 implements G<dynamic> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:65:31: Error: Type argument 'Class<dynamic>' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// class ImplementsS3 implements G<Class> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:67:31: Error: Type argument 'Class<dynamic>' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// class ImplementsS4 implements G<Class<dynamic>> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:73:31: Error: Type argument 'Object' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Object' is from 'dart:core'.
@ -209,18 +209,18 @@ library /*isNonNullableByDefault*/;
// Try changing type arguments so that they conform to the bounds.
// class ImplementsS7 implements G<Object> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:75:31: Error: Type argument 'int' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// class ImplementsS8 implements G<int> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:77:19: Error: Inferred type argument 'Class<dynamic>' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'F'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
@ -337,36 +337,36 @@ library /*isNonNullableByDefault*/;
// Try specifying type arguments explicitly so that they conform to the bounds.
// enum EnumImplementsS1 implements G /* Error */ { a }
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:127:34: Error: Type argument 'dynamic' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// enum EnumImplementsS2 implements G<dynamic> /* Error */ { a }
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:129:34: Error: Type argument 'Class<dynamic>' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// enum EnumImplementsS3 implements G<Class> /* Error */ { a }
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:131:34: Error: Type argument 'Class<dynamic>' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// enum EnumImplementsS4 implements G<Class<dynamic>> /* Error */ { a }
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:137:34: Error: Type argument 'Object' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Object' is from 'dart:core'.
@ -374,18 +374,18 @@ library /*isNonNullableByDefault*/;
// Try changing type arguments so that they conform to the bounds.
// enum EnumImplementsS7 implements G<Object> /* Error */ { a }
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:139:34: Error: Type argument 'int' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// enum EnumImplementsS8 implements G<int> /* Error */ { a }
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:141:22: Error: Inferred type argument 'Class<dynamic>' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'F'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
@ -502,36 +502,36 @@ library /*isNonNullableByDefault*/;
// Try specifying type arguments explicitly so that they conform to the bounds.
// mixin MixinOnS1 on G {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:191:20: Error: Type argument 'dynamic' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// mixin MixinOnS2 on G<dynamic> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:193:20: Error: Type argument 'Class<dynamic>' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// mixin MixinOnS3 on G<Class> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:195:20: Error: Type argument 'Class<dynamic>' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// mixin MixinOnS4 on G<Class<dynamic>> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:201:20: Error: Type argument 'Object' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Object' is from 'dart:core'.
@ -539,18 +539,18 @@ library /*isNonNullableByDefault*/;
// Try changing type arguments so that they conform to the bounds.
// mixin MixinOnS7 on G<Object> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:203:20: Error: Type argument 'int' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// mixin MixinOnS8 on G<int> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:217:28: Error: Type argument 'Object' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'F'.
// - 'Object' is from 'dart:core'.
@ -577,54 +577,54 @@ library /*isNonNullableByDefault*/;
// Try changing type arguments so that they conform to the bounds.
// extension ExtensionOnS7 on G<Object> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:235:28: Error: Type argument 'int' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// extension ExtensionOnS8 on G<int> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:93:19: Error: Inferred type argument 'Class<dynamic>' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try specifying type arguments explicitly so that they conform to the bounds.
// class WithS1 with G {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:95:19: Error: Type argument 'dynamic' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// class WithS2 with G<dynamic> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:97:19: Error: Type argument 'Class<dynamic>' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// class WithS3 with G<Class> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:99:19: Error: Type argument 'Class<dynamic>' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// class WithS4 with G<Class<dynamic>> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:105:19: Error: Type argument 'Object' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Object' is from 'dart:core'.
@ -632,54 +632,54 @@ library /*isNonNullableByDefault*/;
// Try changing type arguments so that they conform to the bounds.
// class WithS7 with G<Object> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:107:19: Error: Type argument 'int' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// class WithS8 with G<int> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:157:22: Error: Inferred type argument 'Class<dynamic>' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try specifying type arguments explicitly so that they conform to the bounds.
// enum EnumWithS1 with G /* Error */ { a }
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:159:22: Error: Type argument 'dynamic' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// enum EnumWithS2 with G<dynamic> /* Error */ { a }
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:161:22: Error: Type argument 'Class<dynamic>' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// enum EnumWithS3 with G<Class> /* Error */ { a }
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:163:22: Error: Type argument 'Class<dynamic>' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// enum EnumWithS4 with G<Class<dynamic>> /* Error */ { a }
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:169:22: Error: Type argument 'Object' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Object' is from 'dart:core'.
@ -687,24 +687,24 @@ library /*isNonNullableByDefault*/;
// Try changing type arguments so that they conform to the bounds.
// enum EnumWithS7 with G<Object> /* Error */ { a }
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:171:22: Error: Type argument 'int' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// enum EnumWithS8 with G<int> /* Error */ { a }
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
import self as self;
import "dart:core" as core;
typedef F<X extends self::Class<X> = self::Class<dynamic>> = self::Class<X>;
class Class<T extends core::Object? = dynamic> extends core::Object {
mixin class Class<T extends core::Object? = dynamic> extends core::Object {
synthetic constructor •() → self::Class<self::Class::T%>
: super core::Object::•()
;
@ -714,7 +714,7 @@ class ConcreteClass extends core::Object implements self::Class<self::ConcreteCl
: super core::Object::•()
;
}
class G<X extends self::Class<self::G::X> = self::Class<dynamic>> extends core::Object {
mixin class G<X extends self::Class<self::G::X> = self::Class<dynamic>> extends core::Object {
synthetic constructor •() → self::G<self::G::X>
: super core::Object::•()
;

View File

@ -1,10 +1,10 @@
class Class<T> {}
mixin class Class<T> {}
class ConcreteClass implements Class<ConcreteClass> {}
typedef F<X extends Class<X>> = Class<X>;
class G<X extends Class<X>> {}
mixin class G<X extends Class<X>> {}
class ExtendsT1 extends F {}

View File

@ -1,5 +1,3 @@
class Class<T> {}
class ConcreteClass implements Class<ConcreteClass> {}
class ExtendsS1 extends G {}
@ -34,8 +32,6 @@ class ExtendsT7 extends F<Object> {}
class ExtendsT8 extends F<int> {}
class G<X extends Class<X>> {}
class ImplementsS1 implements G {}
class ImplementsS2 implements G<dynamic> {}
@ -213,4 +209,9 @@ mixin MixinOnT5 on F<ConcreteClass> {}
mixin MixinOnT6 on F<Class<ConcreteClass>> {}
mixin MixinOnT7 on F<Object> {}
mixin MixinOnT8 on F<int> {}
mixin class Class<T> {}
mixin class G<X extends Class<X>> {}
typedef F<X extends Class<X>> = Class<X>;

View File

@ -62,36 +62,36 @@ library /*isNonNullableByDefault*/;
// Try specifying type arguments explicitly so that they conform to the bounds.
// class ExtendsS1 extends G {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:31:25: Error: Type argument 'dynamic' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// class ExtendsS2 extends G<dynamic> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:33:25: Error: Type argument 'Class<dynamic>' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// class ExtendsS3 extends G<Class> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:35:25: Error: Type argument 'Class<dynamic>' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// class ExtendsS4 extends G<Class<dynamic>> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:41:25: Error: Type argument 'Object' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Object' is from 'dart:core'.
@ -99,18 +99,18 @@ library /*isNonNullableByDefault*/;
// Try changing type arguments so that they conform to the bounds.
// class ExtendsS7 extends G<Object> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:43:25: Error: Type argument 'int' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// class ExtendsS8 extends G<int> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:45:31: Error: Inferred type argument 'Class<dynamic>' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'F'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
@ -172,36 +172,36 @@ library /*isNonNullableByDefault*/;
// Try specifying type arguments explicitly so that they conform to the bounds.
// class ImplementsS1 implements G {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:63:31: Error: Type argument 'dynamic' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// class ImplementsS2 implements G<dynamic> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:65:31: Error: Type argument 'Class<dynamic>' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// class ImplementsS3 implements G<Class> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:67:31: Error: Type argument 'Class<dynamic>' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// class ImplementsS4 implements G<Class<dynamic>> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:73:31: Error: Type argument 'Object' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Object' is from 'dart:core'.
@ -209,18 +209,18 @@ library /*isNonNullableByDefault*/;
// Try changing type arguments so that they conform to the bounds.
// class ImplementsS7 implements G<Object> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:75:31: Error: Type argument 'int' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// class ImplementsS8 implements G<int> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:77:19: Error: Inferred type argument 'Class<dynamic>' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'F'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
@ -337,36 +337,36 @@ library /*isNonNullableByDefault*/;
// Try specifying type arguments explicitly so that they conform to the bounds.
// enum EnumImplementsS1 implements G /* Error */ { a }
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:127:34: Error: Type argument 'dynamic' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// enum EnumImplementsS2 implements G<dynamic> /* Error */ { a }
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:129:34: Error: Type argument 'Class<dynamic>' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// enum EnumImplementsS3 implements G<Class> /* Error */ { a }
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:131:34: Error: Type argument 'Class<dynamic>' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// enum EnumImplementsS4 implements G<Class<dynamic>> /* Error */ { a }
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:137:34: Error: Type argument 'Object' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Object' is from 'dart:core'.
@ -374,18 +374,18 @@ library /*isNonNullableByDefault*/;
// Try changing type arguments so that they conform to the bounds.
// enum EnumImplementsS7 implements G<Object> /* Error */ { a }
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:139:34: Error: Type argument 'int' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// enum EnumImplementsS8 implements G<int> /* Error */ { a }
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:141:22: Error: Inferred type argument 'Class<dynamic>' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'F'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
@ -502,36 +502,36 @@ library /*isNonNullableByDefault*/;
// Try specifying type arguments explicitly so that they conform to the bounds.
// mixin MixinOnS1 on G {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:191:20: Error: Type argument 'dynamic' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// mixin MixinOnS2 on G<dynamic> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:193:20: Error: Type argument 'Class<dynamic>' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// mixin MixinOnS3 on G<Class> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:195:20: Error: Type argument 'Class<dynamic>' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// mixin MixinOnS4 on G<Class<dynamic>> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:201:20: Error: Type argument 'Object' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Object' is from 'dart:core'.
@ -539,18 +539,18 @@ library /*isNonNullableByDefault*/;
// Try changing type arguments so that they conform to the bounds.
// mixin MixinOnS7 on G<Object> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:203:20: Error: Type argument 'int' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// mixin MixinOnS8 on G<int> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:217:28: Error: Type argument 'Object' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'F'.
// - 'Object' is from 'dart:core'.
@ -577,54 +577,54 @@ library /*isNonNullableByDefault*/;
// Try changing type arguments so that they conform to the bounds.
// extension ExtensionOnS7 on G<Object> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:235:28: Error: Type argument 'int' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// extension ExtensionOnS8 on G<int> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:93:19: Error: Inferred type argument 'Class<dynamic>' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try specifying type arguments explicitly so that they conform to the bounds.
// class WithS1 with G {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:95:19: Error: Type argument 'dynamic' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// class WithS2 with G<dynamic> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:97:19: Error: Type argument 'Class<dynamic>' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// class WithS3 with G<Class> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:99:19: Error: Type argument 'Class<dynamic>' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// class WithS4 with G<Class<dynamic>> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:105:19: Error: Type argument 'Object' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Object' is from 'dart:core'.
@ -632,54 +632,54 @@ library /*isNonNullableByDefault*/;
// Try changing type arguments so that they conform to the bounds.
// class WithS7 with G<Object> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:107:19: Error: Type argument 'int' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// class WithS8 with G<int> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:157:22: Error: Inferred type argument 'Class<dynamic>' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try specifying type arguments explicitly so that they conform to the bounds.
// enum EnumWithS1 with G /* Error */ { a }
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:159:22: Error: Type argument 'dynamic' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// enum EnumWithS2 with G<dynamic> /* Error */ { a }
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:161:22: Error: Type argument 'Class<dynamic>' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// enum EnumWithS3 with G<Class> /* Error */ { a }
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:163:22: Error: Type argument 'Class<dynamic>' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// enum EnumWithS4 with G<Class<dynamic>> /* Error */ { a }
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:169:22: Error: Type argument 'Object' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Object' is from 'dart:core'.
@ -687,24 +687,24 @@ library /*isNonNullableByDefault*/;
// Try changing type arguments so that they conform to the bounds.
// enum EnumWithS7 with G<Object> /* Error */ { a }
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:171:22: Error: Type argument 'int' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// enum EnumWithS8 with G<int> /* Error */ { a }
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
import self as self;
import "dart:core" as core;
typedef F<X extends self::Class<X> = self::Class<dynamic>> = self::Class<X>;
class Class<T extends core::Object? = dynamic> extends core::Object {
mixin class Class<T extends core::Object? = dynamic> extends core::Object {
synthetic constructor •() → self::Class<self::Class::T%>
: super core::Object::•()
;
@ -714,7 +714,7 @@ class ConcreteClass extends core::Object implements self::Class<self::ConcreteCl
: super core::Object::•()
;
}
class G<X extends self::Class<self::G::X> = self::Class<dynamic>> extends core::Object {
mixin class G<X extends self::Class<self::G::X> = self::Class<dynamic>> extends core::Object {
synthetic constructor •() → self::G<self::G::X>
: super core::Object::•()
;

View File

@ -62,36 +62,36 @@ library /*isNonNullableByDefault*/;
// Try specifying type arguments explicitly so that they conform to the bounds.
// class ExtendsS1 extends G {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:31:25: Error: Type argument 'dynamic' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// class ExtendsS2 extends G<dynamic> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:33:25: Error: Type argument 'Class<dynamic>' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// class ExtendsS3 extends G<Class> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:35:25: Error: Type argument 'Class<dynamic>' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// class ExtendsS4 extends G<Class<dynamic>> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:41:25: Error: Type argument 'Object' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Object' is from 'dart:core'.
@ -99,18 +99,18 @@ library /*isNonNullableByDefault*/;
// Try changing type arguments so that they conform to the bounds.
// class ExtendsS7 extends G<Object> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:43:25: Error: Type argument 'int' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// class ExtendsS8 extends G<int> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:45:31: Error: Inferred type argument 'Class<dynamic>' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'F'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
@ -172,36 +172,36 @@ library /*isNonNullableByDefault*/;
// Try specifying type arguments explicitly so that they conform to the bounds.
// class ImplementsS1 implements G {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:63:31: Error: Type argument 'dynamic' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// class ImplementsS2 implements G<dynamic> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:65:31: Error: Type argument 'Class<dynamic>' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// class ImplementsS3 implements G<Class> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:67:31: Error: Type argument 'Class<dynamic>' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// class ImplementsS4 implements G<Class<dynamic>> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:73:31: Error: Type argument 'Object' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Object' is from 'dart:core'.
@ -209,18 +209,18 @@ library /*isNonNullableByDefault*/;
// Try changing type arguments so that they conform to the bounds.
// class ImplementsS7 implements G<Object> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:75:31: Error: Type argument 'int' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// class ImplementsS8 implements G<int> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:77:19: Error: Inferred type argument 'Class<dynamic>' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'F'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
@ -337,36 +337,36 @@ library /*isNonNullableByDefault*/;
// Try specifying type arguments explicitly so that they conform to the bounds.
// enum EnumImplementsS1 implements G /* Error */ { a }
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:127:34: Error: Type argument 'dynamic' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// enum EnumImplementsS2 implements G<dynamic> /* Error */ { a }
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:129:34: Error: Type argument 'Class<dynamic>' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// enum EnumImplementsS3 implements G<Class> /* Error */ { a }
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:131:34: Error: Type argument 'Class<dynamic>' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// enum EnumImplementsS4 implements G<Class<dynamic>> /* Error */ { a }
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:137:34: Error: Type argument 'Object' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Object' is from 'dart:core'.
@ -374,18 +374,18 @@ library /*isNonNullableByDefault*/;
// Try changing type arguments so that they conform to the bounds.
// enum EnumImplementsS7 implements G<Object> /* Error */ { a }
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:139:34: Error: Type argument 'int' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// enum EnumImplementsS8 implements G<int> /* Error */ { a }
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:141:22: Error: Inferred type argument 'Class<dynamic>' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'F'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
@ -502,36 +502,36 @@ library /*isNonNullableByDefault*/;
// Try specifying type arguments explicitly so that they conform to the bounds.
// mixin MixinOnS1 on G {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:191:20: Error: Type argument 'dynamic' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// mixin MixinOnS2 on G<dynamic> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:193:20: Error: Type argument 'Class<dynamic>' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// mixin MixinOnS3 on G<Class> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:195:20: Error: Type argument 'Class<dynamic>' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// mixin MixinOnS4 on G<Class<dynamic>> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:201:20: Error: Type argument 'Object' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Object' is from 'dart:core'.
@ -539,18 +539,18 @@ library /*isNonNullableByDefault*/;
// Try changing type arguments so that they conform to the bounds.
// mixin MixinOnS7 on G<Object> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:203:20: Error: Type argument 'int' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// mixin MixinOnS8 on G<int> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:217:28: Error: Type argument 'Object' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'F'.
// - 'Object' is from 'dart:core'.
@ -577,54 +577,54 @@ library /*isNonNullableByDefault*/;
// Try changing type arguments so that they conform to the bounds.
// extension ExtensionOnS7 on G<Object> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:235:28: Error: Type argument 'int' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// extension ExtensionOnS8 on G<int> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:93:19: Error: Inferred type argument 'Class<dynamic>' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try specifying type arguments explicitly so that they conform to the bounds.
// class WithS1 with G {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:95:19: Error: Type argument 'dynamic' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// class WithS2 with G<dynamic> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:97:19: Error: Type argument 'Class<dynamic>' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// class WithS3 with G<Class> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:99:19: Error: Type argument 'Class<dynamic>' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// class WithS4 with G<Class<dynamic>> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:105:19: Error: Type argument 'Object' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Object' is from 'dart:core'.
@ -632,54 +632,54 @@ library /*isNonNullableByDefault*/;
// Try changing type arguments so that they conform to the bounds.
// class WithS7 with G<Object> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:107:19: Error: Type argument 'int' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// class WithS8 with G<int> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:157:22: Error: Inferred type argument 'Class<dynamic>' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try specifying type arguments explicitly so that they conform to the bounds.
// enum EnumWithS1 with G /* Error */ { a }
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:159:22: Error: Type argument 'dynamic' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// enum EnumWithS2 with G<dynamic> /* Error */ { a }
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:161:22: Error: Type argument 'Class<dynamic>' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// enum EnumWithS3 with G<Class> /* Error */ { a }
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:163:22: Error: Type argument 'Class<dynamic>' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// enum EnumWithS4 with G<Class<dynamic>> /* Error */ { a }
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:169:22: Error: Type argument 'Object' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Object' is from 'dart:core'.
@ -687,24 +687,24 @@ library /*isNonNullableByDefault*/;
// Try changing type arguments so that they conform to the bounds.
// enum EnumWithS7 with G<Object> /* Error */ { a }
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:171:22: Error: Type argument 'int' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// enum EnumWithS8 with G<int> /* Error */ { a }
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
import self as self;
import "dart:core" as core;
typedef F<X extends self::Class<X> = self::Class<dynamic>> = self::Class<X>;
class Class<T extends core::Object? = dynamic> extends core::Object {
mixin class Class<T extends core::Object? = dynamic> extends core::Object {
synthetic constructor •() → self::Class<self::Class::T%>
: super core::Object::•()
;
@ -714,7 +714,7 @@ class ConcreteClass extends core::Object implements self::Class<self::ConcreteCl
: super core::Object::•()
;
}
class G<X extends self::Class<self::G::X> = self::Class<dynamic>> extends core::Object {
mixin class G<X extends self::Class<self::G::X> = self::Class<dynamic>> extends core::Object {
synthetic constructor •() → self::G<self::G::X>
: super core::Object::•()
;

View File

@ -62,36 +62,36 @@ library /*isNonNullableByDefault*/;
// Try specifying type arguments explicitly so that they conform to the bounds.
// class ExtendsS1 extends G {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:31:25: Error: Type argument 'dynamic' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// class ExtendsS2 extends G<dynamic> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:33:25: Error: Type argument 'Class<dynamic>' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// class ExtendsS3 extends G<Class> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:35:25: Error: Type argument 'Class<dynamic>' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// class ExtendsS4 extends G<Class<dynamic>> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:41:25: Error: Type argument 'Object' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Object' is from 'dart:core'.
@ -99,18 +99,18 @@ library /*isNonNullableByDefault*/;
// Try changing type arguments so that they conform to the bounds.
// class ExtendsS7 extends G<Object> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:43:25: Error: Type argument 'int' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// class ExtendsS8 extends G<int> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:45:31: Error: Inferred type argument 'Class<dynamic>' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'F'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
@ -172,36 +172,36 @@ library /*isNonNullableByDefault*/;
// Try specifying type arguments explicitly so that they conform to the bounds.
// class ImplementsS1 implements G {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:63:31: Error: Type argument 'dynamic' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// class ImplementsS2 implements G<dynamic> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:65:31: Error: Type argument 'Class<dynamic>' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// class ImplementsS3 implements G<Class> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:67:31: Error: Type argument 'Class<dynamic>' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// class ImplementsS4 implements G<Class<dynamic>> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:73:31: Error: Type argument 'Object' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Object' is from 'dart:core'.
@ -209,18 +209,18 @@ library /*isNonNullableByDefault*/;
// Try changing type arguments so that they conform to the bounds.
// class ImplementsS7 implements G<Object> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:75:31: Error: Type argument 'int' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// class ImplementsS8 implements G<int> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:77:19: Error: Inferred type argument 'Class<dynamic>' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'F'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
@ -337,36 +337,36 @@ library /*isNonNullableByDefault*/;
// Try specifying type arguments explicitly so that they conform to the bounds.
// enum EnumImplementsS1 implements G /* Error */ { a }
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:127:34: Error: Type argument 'dynamic' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// enum EnumImplementsS2 implements G<dynamic> /* Error */ { a }
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:129:34: Error: Type argument 'Class<dynamic>' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// enum EnumImplementsS3 implements G<Class> /* Error */ { a }
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:131:34: Error: Type argument 'Class<dynamic>' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// enum EnumImplementsS4 implements G<Class<dynamic>> /* Error */ { a }
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:137:34: Error: Type argument 'Object' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Object' is from 'dart:core'.
@ -374,18 +374,18 @@ library /*isNonNullableByDefault*/;
// Try changing type arguments so that they conform to the bounds.
// enum EnumImplementsS7 implements G<Object> /* Error */ { a }
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:139:34: Error: Type argument 'int' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// enum EnumImplementsS8 implements G<int> /* Error */ { a }
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:141:22: Error: Inferred type argument 'Class<dynamic>' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'F'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
@ -502,36 +502,36 @@ library /*isNonNullableByDefault*/;
// Try specifying type arguments explicitly so that they conform to the bounds.
// mixin MixinOnS1 on G {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:191:20: Error: Type argument 'dynamic' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// mixin MixinOnS2 on G<dynamic> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:193:20: Error: Type argument 'Class<dynamic>' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// mixin MixinOnS3 on G<Class> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:195:20: Error: Type argument 'Class<dynamic>' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// mixin MixinOnS4 on G<Class<dynamic>> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:201:20: Error: Type argument 'Object' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Object' is from 'dart:core'.
@ -539,18 +539,18 @@ library /*isNonNullableByDefault*/;
// Try changing type arguments so that they conform to the bounds.
// mixin MixinOnS7 on G<Object> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:203:20: Error: Type argument 'int' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// mixin MixinOnS8 on G<int> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:217:28: Error: Type argument 'Object' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'F'.
// - 'Object' is from 'dart:core'.
@ -577,54 +577,54 @@ library /*isNonNullableByDefault*/;
// Try changing type arguments so that they conform to the bounds.
// extension ExtensionOnS7 on G<Object> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:235:28: Error: Type argument 'int' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// extension ExtensionOnS8 on G<int> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:93:19: Error: Inferred type argument 'Class<dynamic>' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try specifying type arguments explicitly so that they conform to the bounds.
// class WithS1 with G {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:95:19: Error: Type argument 'dynamic' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// class WithS2 with G<dynamic> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:97:19: Error: Type argument 'Class<dynamic>' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// class WithS3 with G<Class> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:99:19: Error: Type argument 'Class<dynamic>' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// class WithS4 with G<Class<dynamic>> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:105:19: Error: Type argument 'Object' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Object' is from 'dart:core'.
@ -632,54 +632,54 @@ library /*isNonNullableByDefault*/;
// Try changing type arguments so that they conform to the bounds.
// class WithS7 with G<Object> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:107:19: Error: Type argument 'int' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// class WithS8 with G<int> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:157:22: Error: Inferred type argument 'Class<dynamic>' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try specifying type arguments explicitly so that they conform to the bounds.
// enum EnumWithS1 with G /* Error */ { a }
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:159:22: Error: Type argument 'dynamic' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// enum EnumWithS2 with G<dynamic> /* Error */ { a }
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:161:22: Error: Type argument 'Class<dynamic>' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// enum EnumWithS3 with G<Class> /* Error */ { a }
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:163:22: Error: Type argument 'Class<dynamic>' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// enum EnumWithS4 with G<Class<dynamic>> /* Error */ { a }
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:169:22: Error: Type argument 'Object' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Object' is from 'dart:core'.
@ -687,24 +687,24 @@ library /*isNonNullableByDefault*/;
// Try changing type arguments so that they conform to the bounds.
// enum EnumWithS7 with G<Object> /* Error */ { a }
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:171:22: Error: Type argument 'int' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// enum EnumWithS8 with G<int> /* Error */ { a }
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
import self as self;
import "dart:core" as core;
typedef F<X extends self::Class<X> = self::Class<dynamic>> = self::Class<X>;
class Class<T extends core::Object? = dynamic> extends core::Object {
mixin class Class<T extends core::Object? = dynamic> extends core::Object {
synthetic constructor •() → self::Class<self::Class::T%>
;
}
@ -712,7 +712,7 @@ class ConcreteClass extends core::Object implements self::Class<self::ConcreteCl
synthetic constructor •() → self::ConcreteClass
;
}
class G<X extends self::Class<self::G::X> = self::Class<dynamic>> extends core::Object {
mixin class G<X extends self::Class<self::G::X> = self::Class<dynamic>> extends core::Object {
synthetic constructor •() → self::G<self::G::X>
;
}

View File

@ -62,36 +62,36 @@ library /*isNonNullableByDefault*/;
// Try specifying type arguments explicitly so that they conform to the bounds.
// class ExtendsS1 extends G {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:31:25: Error: Type argument 'dynamic' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// class ExtendsS2 extends G<dynamic> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:33:25: Error: Type argument 'Class<dynamic>' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// class ExtendsS3 extends G<Class> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:35:25: Error: Type argument 'Class<dynamic>' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// class ExtendsS4 extends G<Class<dynamic>> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:41:25: Error: Type argument 'Object' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Object' is from 'dart:core'.
@ -99,18 +99,18 @@ library /*isNonNullableByDefault*/;
// Try changing type arguments so that they conform to the bounds.
// class ExtendsS7 extends G<Object> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:43:25: Error: Type argument 'int' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// class ExtendsS8 extends G<int> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:45:31: Error: Inferred type argument 'Class<dynamic>' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'F'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
@ -172,36 +172,36 @@ library /*isNonNullableByDefault*/;
// Try specifying type arguments explicitly so that they conform to the bounds.
// class ImplementsS1 implements G {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:63:31: Error: Type argument 'dynamic' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// class ImplementsS2 implements G<dynamic> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:65:31: Error: Type argument 'Class<dynamic>' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// class ImplementsS3 implements G<Class> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:67:31: Error: Type argument 'Class<dynamic>' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// class ImplementsS4 implements G<Class<dynamic>> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:73:31: Error: Type argument 'Object' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Object' is from 'dart:core'.
@ -209,18 +209,18 @@ library /*isNonNullableByDefault*/;
// Try changing type arguments so that they conform to the bounds.
// class ImplementsS7 implements G<Object> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:75:31: Error: Type argument 'int' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// class ImplementsS8 implements G<int> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:77:19: Error: Inferred type argument 'Class<dynamic>' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'F'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
@ -337,36 +337,36 @@ library /*isNonNullableByDefault*/;
// Try specifying type arguments explicitly so that they conform to the bounds.
// enum EnumImplementsS1 implements G /* Error */ { a }
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:127:34: Error: Type argument 'dynamic' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// enum EnumImplementsS2 implements G<dynamic> /* Error */ { a }
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:129:34: Error: Type argument 'Class<dynamic>' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// enum EnumImplementsS3 implements G<Class> /* Error */ { a }
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:131:34: Error: Type argument 'Class<dynamic>' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// enum EnumImplementsS4 implements G<Class<dynamic>> /* Error */ { a }
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:137:34: Error: Type argument 'Object' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Object' is from 'dart:core'.
@ -374,18 +374,18 @@ library /*isNonNullableByDefault*/;
// Try changing type arguments so that they conform to the bounds.
// enum EnumImplementsS7 implements G<Object> /* Error */ { a }
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:139:34: Error: Type argument 'int' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// enum EnumImplementsS8 implements G<int> /* Error */ { a }
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:141:22: Error: Inferred type argument 'Class<dynamic>' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'F'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
@ -502,36 +502,36 @@ library /*isNonNullableByDefault*/;
// Try specifying type arguments explicitly so that they conform to the bounds.
// mixin MixinOnS1 on G {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:191:20: Error: Type argument 'dynamic' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// mixin MixinOnS2 on G<dynamic> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:193:20: Error: Type argument 'Class<dynamic>' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// mixin MixinOnS3 on G<Class> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:195:20: Error: Type argument 'Class<dynamic>' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// mixin MixinOnS4 on G<Class<dynamic>> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:201:20: Error: Type argument 'Object' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Object' is from 'dart:core'.
@ -539,18 +539,18 @@ library /*isNonNullableByDefault*/;
// Try changing type arguments so that they conform to the bounds.
// mixin MixinOnS7 on G<Object> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:203:20: Error: Type argument 'int' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// mixin MixinOnS8 on G<int> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:217:28: Error: Type argument 'Object' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'F'.
// - 'Object' is from 'dart:core'.
@ -577,54 +577,54 @@ library /*isNonNullableByDefault*/;
// Try changing type arguments so that they conform to the bounds.
// extension ExtensionOnS7 on G<Object> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:235:28: Error: Type argument 'int' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// extension ExtensionOnS8 on G<int> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:93:19: Error: Inferred type argument 'Class<dynamic>' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try specifying type arguments explicitly so that they conform to the bounds.
// class WithS1 with G {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:95:19: Error: Type argument 'dynamic' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// class WithS2 with G<dynamic> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:97:19: Error: Type argument 'Class<dynamic>' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// class WithS3 with G<Class> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:99:19: Error: Type argument 'Class<dynamic>' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// class WithS4 with G<Class<dynamic>> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:105:19: Error: Type argument 'Object' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Object' is from 'dart:core'.
@ -632,54 +632,54 @@ library /*isNonNullableByDefault*/;
// Try changing type arguments so that they conform to the bounds.
// class WithS7 with G<Object> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:107:19: Error: Type argument 'int' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// class WithS8 with G<int> {} // Error
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:157:22: Error: Inferred type argument 'Class<dynamic>' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try specifying type arguments explicitly so that they conform to the bounds.
// enum EnumWithS1 with G /* Error */ { a }
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:159:22: Error: Type argument 'dynamic' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// enum EnumWithS2 with G<dynamic> /* Error */ { a }
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:161:22: Error: Type argument 'Class<dynamic>' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// enum EnumWithS3 with G<Class> /* Error */ { a }
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:163:22: Error: Type argument 'Class<dynamic>' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// enum EnumWithS4 with G<Class<dynamic>> /* Error */ { a }
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:169:22: Error: Type argument 'Object' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Object' is from 'dart:core'.
@ -687,24 +687,24 @@ library /*isNonNullableByDefault*/;
// Try changing type arguments so that they conform to the bounds.
// enum EnumWithS7 with G<Object> /* Error */ { a }
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
// pkg/front_end/testcases/general/bounds_supertypes.dart:171:22: Error: Type argument 'int' doesn't conform to the bound 'Class<X>' of the type variable 'X' on 'G'.
// - 'Class' is from 'pkg/front_end/testcases/general/bounds_supertypes.dart'.
// Try changing type arguments so that they conform to the bounds.
// enum EnumWithS8 with G<int> /* Error */ { a }
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:9: Context: This is the type variable whose bound isn't conformed to.
// class G<X extends Class<X>> {}
// ^
// pkg/front_end/testcases/general/bounds_supertypes.dart:11:15: Context: This is the type variable whose bound isn't conformed to.
// mixin class G<X extends Class<X>> {}
// ^
//
import self as self;
import "dart:core" as core;
typedef F<X extends self::Class<X> = self::Class<dynamic>> = self::Class<X>;
class Class<T extends core::Object? = dynamic> extends core::Object {
mixin class Class<T extends core::Object? = dynamic> extends core::Object {
synthetic constructor •() → self::Class<self::Class::T%>
: super core::Object::•()
;
@ -714,7 +714,7 @@ class ConcreteClass extends core::Object implements self::Class<self::ConcreteCl
: super core::Object::•()
;
}
class G<X extends self::Class<self::G::X> = self::Class<dynamic>> extends core::Object {
mixin class G<X extends self::Class<self::G::X> = self::Class<dynamic>> extends core::Object {
synthetic constructor •() → self::G<self::G::X>
: super core::Object::•()
;

View File

@ -316,7 +316,7 @@ library /*isNonNullableByDefault*/;
// ^^^^
//
// pkg/front_end/testcases/general/duplicated_declarations.dart:40:5: Error: The 'records' language feature is disabled for this library.
// Try removing the `@dart=` annotation or setting the language version to 2.19 or higher.
// Try removing the `@dart=` annotation or setting the language version to 3.0 or higher.
// C.();
// ^
// pkg/front_end/testcases/general/duplicated_declarations.dart:5:1: Context: This is the annotation that opts out this library from the 'records' language feature.

View File

@ -316,7 +316,7 @@ library /*isNonNullableByDefault*/;
// ^^^^
//
// pkg/front_end/testcases/general/duplicated_declarations.dart:40:5: Error: The 'records' language feature is disabled for this library.
// Try removing the `@dart=` annotation or setting the language version to 2.19 or higher.
// Try removing the `@dart=` annotation or setting the language version to 3.0 or higher.
// C.();
// ^
// pkg/front_end/testcases/general/duplicated_declarations.dart:5:1: Context: This is the annotation that opts out this library from the 'records' language feature.

View File

@ -316,7 +316,7 @@ library /*isNonNullableByDefault*/;
// ^^^^
//
// pkg/front_end/testcases/general/duplicated_declarations.dart:40:5: Error: The 'records' language feature is disabled for this library.
// Try removing the `@dart=` annotation or setting the language version to 2.19 or higher.
// Try removing the `@dart=` annotation or setting the language version to 3.0 or higher.
// C.();
// ^
// pkg/front_end/testcases/general/duplicated_declarations.dart:5:1: Context: This is the annotation that opts out this library from the 'records' language feature.

View File

@ -316,7 +316,7 @@ library /*isNonNullableByDefault*/;
// ^^^^
//
// pkg/front_end/testcases/general/duplicated_declarations.dart:40:5: Error: The 'records' language feature is disabled for this library.
// Try removing the `@dart=` annotation or setting the language version to 2.19 or higher.
// Try removing the `@dart=` annotation or setting the language version to 3.0 or higher.
// C.();
// ^
// pkg/front_end/testcases/general/duplicated_declarations.dart:5:1: Context: This is the annotation that opts out this library from the 'records' language feature.

View File

@ -316,7 +316,7 @@ library /*isNonNullableByDefault*/;
// ^^^^
//
// pkg/front_end/testcases/general/duplicated_declarations.dart:40:5: Error: The 'records' language feature is disabled for this library.
// Try removing the `@dart=` annotation or setting the language version to 2.19 or higher.
// Try removing the `@dart=` annotation or setting the language version to 3.0 or higher.
// C.();
// ^
// pkg/front_end/testcases/general/duplicated_declarations.dart:5:1: Context: This is the annotation that opts out this library from the 'records' language feature.

View File

@ -2,25 +2,37 @@ library /*isNonNullableByDefault*/;
//
// Problems in library:
//
// pkg/front_end/testcases/general/final_class_declaration.dart:7:1: Error: This requires the experimental 'class-modifiers' language feature to be enabled.
// Try passing the '--enable-experiment=class-modifiers' command line option.
// pkg/front_end/testcases/general/final_class_declaration.dart:7:1: Error: The 'class-modifiers' language feature is disabled for this library.
// Try removing the `@dart=` annotation or setting the language version to 3.0 or higher.
// final class A {}
// ^^^^^
// pkg/front_end/testcases/general/final_class_declaration.dart:5:1: Context: This is the annotation that opts out this library from the 'class-modifiers' language feature.
// // @dart=2.19
// ^^^^^^^^^^^^^
//
// pkg/front_end/testcases/general/final_class_declaration.dart:9:10: Error: This requires the experimental 'class-modifiers' language feature to be enabled.
// Try passing the '--enable-experiment=class-modifiers' command line option.
// pkg/front_end/testcases/general/final_class_declaration.dart:9:10: Error: The 'class-modifiers' language feature is disabled for this library.
// Try removing the `@dart=` annotation or setting the language version to 3.0 or higher.
// abstract final class B {}
// ^^^^^
// pkg/front_end/testcases/general/final_class_declaration.dart:5:1: Context: This is the annotation that opts out this library from the 'class-modifiers' language feature.
// // @dart=2.19
// ^^^^^^^^^^^^^
//
// pkg/front_end/testcases/general/final_class_declaration.dart:11:1: Error: This requires the experimental 'class-modifiers' language feature to be enabled.
// Try passing the '--enable-experiment=class-modifiers' command line option.
// pkg/front_end/testcases/general/final_class_declaration.dart:11:1: Error: The 'class-modifiers' language feature is disabled for this library.
// Try removing the `@dart=` annotation or setting the language version to 3.0 or higher.
// final mixin M {}
// ^^^^^
// pkg/front_end/testcases/general/final_class_declaration.dart:5:1: Context: This is the annotation that opts out this library from the 'class-modifiers' language feature.
// // @dart=2.19
// ^^^^^^^^^^^^^
//
// pkg/front_end/testcases/general/final_class_declaration.dart:12:1: Error: This requires the experimental 'class-modifiers' language feature to be enabled.
// Try passing the '--enable-experiment=class-modifiers' command line option.
// pkg/front_end/testcases/general/final_class_declaration.dart:12:1: Error: The 'class-modifiers' language feature is disabled for this library.
// Try removing the `@dart=` annotation or setting the language version to 3.0 or higher.
// final class C = Object with M;
// ^^^^^
// pkg/front_end/testcases/general/final_class_declaration.dart:5:1: Context: This is the annotation that opts out this library from the 'class-modifiers' language feature.
// // @dart=2.19
// ^^^^^^^^^^^^^
//
import self as self;
import "dart:core" as core;

View File

@ -2,25 +2,37 @@ library /*isNonNullableByDefault*/;
//
// Problems in library:
//
// pkg/front_end/testcases/general/final_class_declaration.dart:7:1: Error: This requires the experimental 'class-modifiers' language feature to be enabled.
// Try passing the '--enable-experiment=class-modifiers' command line option.
// pkg/front_end/testcases/general/final_class_declaration.dart:7:1: Error: The 'class-modifiers' language feature is disabled for this library.
// Try removing the `@dart=` annotation or setting the language version to 3.0 or higher.
// final class A {}
// ^^^^^
// pkg/front_end/testcases/general/final_class_declaration.dart:5:1: Context: This is the annotation that opts out this library from the 'class-modifiers' language feature.
// // @dart=2.19
// ^^^^^^^^^^^^^
//
// pkg/front_end/testcases/general/final_class_declaration.dart:9:10: Error: This requires the experimental 'class-modifiers' language feature to be enabled.
// Try passing the '--enable-experiment=class-modifiers' command line option.
// pkg/front_end/testcases/general/final_class_declaration.dart:9:10: Error: The 'class-modifiers' language feature is disabled for this library.
// Try removing the `@dart=` annotation or setting the language version to 3.0 or higher.
// abstract final class B {}
// ^^^^^
// pkg/front_end/testcases/general/final_class_declaration.dart:5:1: Context: This is the annotation that opts out this library from the 'class-modifiers' language feature.
// // @dart=2.19
// ^^^^^^^^^^^^^
//
// pkg/front_end/testcases/general/final_class_declaration.dart:11:1: Error: This requires the experimental 'class-modifiers' language feature to be enabled.
// Try passing the '--enable-experiment=class-modifiers' command line option.
// pkg/front_end/testcases/general/final_class_declaration.dart:11:1: Error: The 'class-modifiers' language feature is disabled for this library.
// Try removing the `@dart=` annotation or setting the language version to 3.0 or higher.
// final mixin M {}
// ^^^^^
// pkg/front_end/testcases/general/final_class_declaration.dart:5:1: Context: This is the annotation that opts out this library from the 'class-modifiers' language feature.
// // @dart=2.19
// ^^^^^^^^^^^^^
//
// pkg/front_end/testcases/general/final_class_declaration.dart:12:1: Error: This requires the experimental 'class-modifiers' language feature to be enabled.
// Try passing the '--enable-experiment=class-modifiers' command line option.
// pkg/front_end/testcases/general/final_class_declaration.dart:12:1: Error: The 'class-modifiers' language feature is disabled for this library.
// Try removing the `@dart=` annotation or setting the language version to 3.0 or higher.
// final class C = Object with M;
// ^^^^^
// pkg/front_end/testcases/general/final_class_declaration.dart:5:1: Context: This is the annotation that opts out this library from the 'class-modifiers' language feature.
// // @dart=2.19
// ^^^^^^^^^^^^^
//
import self as self;
import "dart:core" as core;

View File

@ -2,25 +2,37 @@ library /*isNonNullableByDefault*/;
//
// Problems in library:
//
// pkg/front_end/testcases/general/final_class_declaration.dart:7:1: Error: This requires the experimental 'class-modifiers' language feature to be enabled.
// Try passing the '--enable-experiment=class-modifiers' command line option.
// pkg/front_end/testcases/general/final_class_declaration.dart:7:1: Error: The 'class-modifiers' language feature is disabled for this library.
// Try removing the `@dart=` annotation or setting the language version to 3.0 or higher.
// final class A {}
// ^^^^^
// pkg/front_end/testcases/general/final_class_declaration.dart:5:1: Context: This is the annotation that opts out this library from the 'class-modifiers' language feature.
// // @dart=2.19
// ^^^^^^^^^^^^^
//
// pkg/front_end/testcases/general/final_class_declaration.dart:9:10: Error: This requires the experimental 'class-modifiers' language feature to be enabled.
// Try passing the '--enable-experiment=class-modifiers' command line option.
// pkg/front_end/testcases/general/final_class_declaration.dart:9:10: Error: The 'class-modifiers' language feature is disabled for this library.
// Try removing the `@dart=` annotation or setting the language version to 3.0 or higher.
// abstract final class B {}
// ^^^^^
// pkg/front_end/testcases/general/final_class_declaration.dart:5:1: Context: This is the annotation that opts out this library from the 'class-modifiers' language feature.
// // @dart=2.19
// ^^^^^^^^^^^^^
//
// pkg/front_end/testcases/general/final_class_declaration.dart:11:1: Error: This requires the experimental 'class-modifiers' language feature to be enabled.
// Try passing the '--enable-experiment=class-modifiers' command line option.
// pkg/front_end/testcases/general/final_class_declaration.dart:11:1: Error: The 'class-modifiers' language feature is disabled for this library.
// Try removing the `@dart=` annotation or setting the language version to 3.0 or higher.
// final mixin M {}
// ^^^^^
// pkg/front_end/testcases/general/final_class_declaration.dart:5:1: Context: This is the annotation that opts out this library from the 'class-modifiers' language feature.
// // @dart=2.19
// ^^^^^^^^^^^^^
//
// pkg/front_end/testcases/general/final_class_declaration.dart:12:1: Error: This requires the experimental 'class-modifiers' language feature to be enabled.
// Try passing the '--enable-experiment=class-modifiers' command line option.
// pkg/front_end/testcases/general/final_class_declaration.dart:12:1: Error: The 'class-modifiers' language feature is disabled for this library.
// Try removing the `@dart=` annotation or setting the language version to 3.0 or higher.
// final class C = Object with M;
// ^^^^^
// pkg/front_end/testcases/general/final_class_declaration.dart:5:1: Context: This is the annotation that opts out this library from the 'class-modifiers' language feature.
// // @dart=2.19
// ^^^^^^^^^^^^^
//
import self as self;
import "dart:core" as core;

View File

@ -2,25 +2,37 @@ library /*isNonNullableByDefault*/;
//
// Problems in library:
//
// pkg/front_end/testcases/general/final_class_declaration.dart:7:1: Error: This requires the experimental 'class-modifiers' language feature to be enabled.
// Try passing the '--enable-experiment=class-modifiers' command line option.
// pkg/front_end/testcases/general/final_class_declaration.dart:7:1: Error: The 'class-modifiers' language feature is disabled for this library.
// Try removing the `@dart=` annotation or setting the language version to 3.0 or higher.
// final class A {}
// ^^^^^
// pkg/front_end/testcases/general/final_class_declaration.dart:5:1: Context: This is the annotation that opts out this library from the 'class-modifiers' language feature.
// // @dart=2.19
// ^^^^^^^^^^^^^
//
// pkg/front_end/testcases/general/final_class_declaration.dart:9:10: Error: This requires the experimental 'class-modifiers' language feature to be enabled.
// Try passing the '--enable-experiment=class-modifiers' command line option.
// pkg/front_end/testcases/general/final_class_declaration.dart:9:10: Error: The 'class-modifiers' language feature is disabled for this library.
// Try removing the `@dart=` annotation or setting the language version to 3.0 or higher.
// abstract final class B {}
// ^^^^^
// pkg/front_end/testcases/general/final_class_declaration.dart:5:1: Context: This is the annotation that opts out this library from the 'class-modifiers' language feature.
// // @dart=2.19
// ^^^^^^^^^^^^^
//
// pkg/front_end/testcases/general/final_class_declaration.dart:11:1: Error: This requires the experimental 'class-modifiers' language feature to be enabled.
// Try passing the '--enable-experiment=class-modifiers' command line option.
// pkg/front_end/testcases/general/final_class_declaration.dart:11:1: Error: The 'class-modifiers' language feature is disabled for this library.
// Try removing the `@dart=` annotation or setting the language version to 3.0 or higher.
// final mixin M {}
// ^^^^^
// pkg/front_end/testcases/general/final_class_declaration.dart:5:1: Context: This is the annotation that opts out this library from the 'class-modifiers' language feature.
// // @dart=2.19
// ^^^^^^^^^^^^^
//
// pkg/front_end/testcases/general/final_class_declaration.dart:12:1: Error: This requires the experimental 'class-modifiers' language feature to be enabled.
// Try passing the '--enable-experiment=class-modifiers' command line option.
// pkg/front_end/testcases/general/final_class_declaration.dart:12:1: Error: The 'class-modifiers' language feature is disabled for this library.
// Try removing the `@dart=` annotation or setting the language version to 3.0 or higher.
// final class C = Object with M;
// ^^^^^
// pkg/front_end/testcases/general/final_class_declaration.dart:5:1: Context: This is the annotation that opts out this library from the 'class-modifiers' language feature.
// // @dart=2.19
// ^^^^^^^^^^^^^
//
import self as self;
import "dart:core" as core;

View File

@ -2,25 +2,37 @@ library /*isNonNullableByDefault*/;
//
// Problems in library:
//
// pkg/front_end/testcases/general/final_class_declaration.dart:7:1: Error: This requires the experimental 'class-modifiers' language feature to be enabled.
// Try passing the '--enable-experiment=class-modifiers' command line option.
// pkg/front_end/testcases/general/final_class_declaration.dart:7:1: Error: The 'class-modifiers' language feature is disabled for this library.
// Try removing the `@dart=` annotation or setting the language version to 3.0 or higher.
// final class A {}
// ^^^^^
// pkg/front_end/testcases/general/final_class_declaration.dart:5:1: Context: This is the annotation that opts out this library from the 'class-modifiers' language feature.
// // @dart=2.19
// ^^^^^^^^^^^^^
//
// pkg/front_end/testcases/general/final_class_declaration.dart:9:10: Error: This requires the experimental 'class-modifiers' language feature to be enabled.
// Try passing the '--enable-experiment=class-modifiers' command line option.
// pkg/front_end/testcases/general/final_class_declaration.dart:9:10: Error: The 'class-modifiers' language feature is disabled for this library.
// Try removing the `@dart=` annotation or setting the language version to 3.0 or higher.
// abstract final class B {}
// ^^^^^
// pkg/front_end/testcases/general/final_class_declaration.dart:5:1: Context: This is the annotation that opts out this library from the 'class-modifiers' language feature.
// // @dart=2.19
// ^^^^^^^^^^^^^
//
// pkg/front_end/testcases/general/final_class_declaration.dart:11:1: Error: This requires the experimental 'class-modifiers' language feature to be enabled.
// Try passing the '--enable-experiment=class-modifiers' command line option.
// pkg/front_end/testcases/general/final_class_declaration.dart:11:1: Error: The 'class-modifiers' language feature is disabled for this library.
// Try removing the `@dart=` annotation or setting the language version to 3.0 or higher.
// final mixin M {}
// ^^^^^
// pkg/front_end/testcases/general/final_class_declaration.dart:5:1: Context: This is the annotation that opts out this library from the 'class-modifiers' language feature.
// // @dart=2.19
// ^^^^^^^^^^^^^
//
// pkg/front_end/testcases/general/final_class_declaration.dart:12:1: Error: This requires the experimental 'class-modifiers' language feature to be enabled.
// Try passing the '--enable-experiment=class-modifiers' command line option.
// pkg/front_end/testcases/general/final_class_declaration.dart:12:1: Error: The 'class-modifiers' language feature is disabled for this library.
// Try removing the `@dart=` annotation or setting the language version to 3.0 or higher.
// final class C = Object with M;
// ^^^^^
// pkg/front_end/testcases/general/final_class_declaration.dart:5:1: Context: This is the annotation that opts out this library from the 'class-modifiers' language feature.
// // @dart=2.19
// ^^^^^^^^^^^^^
//
import self as self;
import "dart:core" as core;

View File

@ -2,25 +2,37 @@ library /*isNonNullableByDefault*/;
//
// Problems in library:
//
// pkg/front_end/testcases/general/final_class_declaration.dart:7:1: Error: This requires the experimental 'class-modifiers' language feature to be enabled.
// Try passing the '--enable-experiment=class-modifiers' command line option.
// pkg/front_end/testcases/general/final_class_declaration.dart:7:1: Error: The 'class-modifiers' language feature is disabled for this library.
// Try removing the `@dart=` annotation or setting the language version to 3.0 or higher.
// final class A {}
// ^^^^^
// pkg/front_end/testcases/general/final_class_declaration.dart:5:1: Context: This is the annotation that opts out this library from the 'class-modifiers' language feature.
// // @dart=2.19
// ^^^^^^^^^^^^^
//
// pkg/front_end/testcases/general/final_class_declaration.dart:9:10: Error: This requires the experimental 'class-modifiers' language feature to be enabled.
// Try passing the '--enable-experiment=class-modifiers' command line option.
// pkg/front_end/testcases/general/final_class_declaration.dart:9:10: Error: The 'class-modifiers' language feature is disabled for this library.
// Try removing the `@dart=` annotation or setting the language version to 3.0 or higher.
// abstract final class B {}
// ^^^^^
// pkg/front_end/testcases/general/final_class_declaration.dart:5:1: Context: This is the annotation that opts out this library from the 'class-modifiers' language feature.
// // @dart=2.19
// ^^^^^^^^^^^^^
//
// pkg/front_end/testcases/general/final_class_declaration.dart:11:1: Error: This requires the experimental 'class-modifiers' language feature to be enabled.
// Try passing the '--enable-experiment=class-modifiers' command line option.
// pkg/front_end/testcases/general/final_class_declaration.dart:11:1: Error: The 'class-modifiers' language feature is disabled for this library.
// Try removing the `@dart=` annotation or setting the language version to 3.0 or higher.
// final mixin M {}
// ^^^^^
// pkg/front_end/testcases/general/final_class_declaration.dart:5:1: Context: This is the annotation that opts out this library from the 'class-modifiers' language feature.
// // @dart=2.19
// ^^^^^^^^^^^^^
//
// pkg/front_end/testcases/general/final_class_declaration.dart:12:1: Error: This requires the experimental 'class-modifiers' language feature to be enabled.
// Try passing the '--enable-experiment=class-modifiers' command line option.
// pkg/front_end/testcases/general/final_class_declaration.dart:12:1: Error: The 'class-modifiers' language feature is disabled for this library.
// Try removing the `@dart=` annotation or setting the language version to 3.0 or higher.
// final class C = Object with M;
// ^^^^^
// pkg/front_end/testcases/general/final_class_declaration.dart:5:1: Context: This is the annotation that opts out this library from the 'class-modifiers' language feature.
// // @dart=2.19
// ^^^^^^^^^^^^^
//
import self as self;
import "dart:core" as core;

View File

@ -2,7 +2,7 @@
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
// @dart=2.18
// @dart=2.19
interface class A {}

View File

@ -2,25 +2,37 @@ library /*isNonNullableByDefault*/;
//
// Problems in library:
//
// pkg/front_end/testcases/general/interface_class_declaration.dart:7:1: Error: This requires the experimental 'class-modifiers' language feature to be enabled.
// Try passing the '--enable-experiment=class-modifiers' command line option.
// pkg/front_end/testcases/general/interface_class_declaration.dart:7:1: Error: The 'class-modifiers' language feature is disabled for this library.
// Try removing the `@dart=` annotation or setting the language version to 3.0 or higher.
// interface class A {}
// ^^^^^^^^^
// pkg/front_end/testcases/general/interface_class_declaration.dart:5:1: Context: This is the annotation that opts out this library from the 'class-modifiers' language feature.
// // @dart=2.19
// ^^^^^^^^^^^^^
//
// pkg/front_end/testcases/general/interface_class_declaration.dart:9:10: Error: This requires the experimental 'class-modifiers' language feature to be enabled.
// Try passing the '--enable-experiment=class-modifiers' command line option.
// pkg/front_end/testcases/general/interface_class_declaration.dart:9:10: Error: The 'class-modifiers' language feature is disabled for this library.
// Try removing the `@dart=` annotation or setting the language version to 3.0 or higher.
// abstract interface class B {}
// ^^^^^^^^^
// pkg/front_end/testcases/general/interface_class_declaration.dart:5:1: Context: This is the annotation that opts out this library from the 'class-modifiers' language feature.
// // @dart=2.19
// ^^^^^^^^^^^^^
//
// pkg/front_end/testcases/general/interface_class_declaration.dart:11:1: Error: This requires the experimental 'class-modifiers' language feature to be enabled.
// Try passing the '--enable-experiment=class-modifiers' command line option.
// pkg/front_end/testcases/general/interface_class_declaration.dart:11:1: Error: The 'class-modifiers' language feature is disabled for this library.
// Try removing the `@dart=` annotation or setting the language version to 3.0 or higher.
// interface mixin M {}
// ^^^^^^^^^
// pkg/front_end/testcases/general/interface_class_declaration.dart:5:1: Context: This is the annotation that opts out this library from the 'class-modifiers' language feature.
// // @dart=2.19
// ^^^^^^^^^^^^^
//
// pkg/front_end/testcases/general/interface_class_declaration.dart:12:1: Error: This requires the experimental 'class-modifiers' language feature to be enabled.
// Try passing the '--enable-experiment=class-modifiers' command line option.
// pkg/front_end/testcases/general/interface_class_declaration.dart:12:1: Error: The 'class-modifiers' language feature is disabled for this library.
// Try removing the `@dart=` annotation or setting the language version to 3.0 or higher.
// interface class C = Object with M;
// ^^^^^^^^^
// pkg/front_end/testcases/general/interface_class_declaration.dart:5:1: Context: This is the annotation that opts out this library from the 'class-modifiers' language feature.
// // @dart=2.19
// ^^^^^^^^^^^^^
//
import self as self;
import "dart:core" as core;

View File

@ -2,25 +2,37 @@ library /*isNonNullableByDefault*/;
//
// Problems in library:
//
// pkg/front_end/testcases/general/interface_class_declaration.dart:7:1: Error: This requires the experimental 'class-modifiers' language feature to be enabled.
// Try passing the '--enable-experiment=class-modifiers' command line option.
// pkg/front_end/testcases/general/interface_class_declaration.dart:7:1: Error: The 'class-modifiers' language feature is disabled for this library.
// Try removing the `@dart=` annotation or setting the language version to 3.0 or higher.
// interface class A {}
// ^^^^^^^^^
// pkg/front_end/testcases/general/interface_class_declaration.dart:5:1: Context: This is the annotation that opts out this library from the 'class-modifiers' language feature.
// // @dart=2.19
// ^^^^^^^^^^^^^
//
// pkg/front_end/testcases/general/interface_class_declaration.dart:9:10: Error: This requires the experimental 'class-modifiers' language feature to be enabled.
// Try passing the '--enable-experiment=class-modifiers' command line option.
// pkg/front_end/testcases/general/interface_class_declaration.dart:9:10: Error: The 'class-modifiers' language feature is disabled for this library.
// Try removing the `@dart=` annotation or setting the language version to 3.0 or higher.
// abstract interface class B {}
// ^^^^^^^^^
// pkg/front_end/testcases/general/interface_class_declaration.dart:5:1: Context: This is the annotation that opts out this library from the 'class-modifiers' language feature.
// // @dart=2.19
// ^^^^^^^^^^^^^
//
// pkg/front_end/testcases/general/interface_class_declaration.dart:11:1: Error: This requires the experimental 'class-modifiers' language feature to be enabled.
// Try passing the '--enable-experiment=class-modifiers' command line option.
// pkg/front_end/testcases/general/interface_class_declaration.dart:11:1: Error: The 'class-modifiers' language feature is disabled for this library.
// Try removing the `@dart=` annotation or setting the language version to 3.0 or higher.
// interface mixin M {}
// ^^^^^^^^^
// pkg/front_end/testcases/general/interface_class_declaration.dart:5:1: Context: This is the annotation that opts out this library from the 'class-modifiers' language feature.
// // @dart=2.19
// ^^^^^^^^^^^^^
//
// pkg/front_end/testcases/general/interface_class_declaration.dart:12:1: Error: This requires the experimental 'class-modifiers' language feature to be enabled.
// Try passing the '--enable-experiment=class-modifiers' command line option.
// pkg/front_end/testcases/general/interface_class_declaration.dart:12:1: Error: The 'class-modifiers' language feature is disabled for this library.
// Try removing the `@dart=` annotation or setting the language version to 3.0 or higher.
// interface class C = Object with M;
// ^^^^^^^^^
// pkg/front_end/testcases/general/interface_class_declaration.dart:5:1: Context: This is the annotation that opts out this library from the 'class-modifiers' language feature.
// // @dart=2.19
// ^^^^^^^^^^^^^
//
import self as self;
import "dart:core" as core;

View File

@ -1,6 +1,7 @@
// @dart = 2.18
// @dart = 2.19
interface class A {}
abstract interface class B {}
interface
mixin M {}
interface mixin M {}
interface class C = Object with M;

View File

@ -0,0 +1,8 @@
// @dart = 2.19
abstract interface class B {}
interface class A {}
---- unknown chunk starts ----
interface
---- unknown chunk ends ----
interface class C = Object with M;
mixin M {}

View File

@ -2,25 +2,37 @@ library /*isNonNullableByDefault*/;
//
// Problems in library:
//
// pkg/front_end/testcases/general/interface_class_declaration.dart:7:1: Error: This requires the experimental 'class-modifiers' language feature to be enabled.
// Try passing the '--enable-experiment=class-modifiers' command line option.
// pkg/front_end/testcases/general/interface_class_declaration.dart:7:1: Error: The 'class-modifiers' language feature is disabled for this library.
// Try removing the `@dart=` annotation or setting the language version to 3.0 or higher.
// interface class A {}
// ^^^^^^^^^
// pkg/front_end/testcases/general/interface_class_declaration.dart:5:1: Context: This is the annotation that opts out this library from the 'class-modifiers' language feature.
// // @dart=2.19
// ^^^^^^^^^^^^^
//
// pkg/front_end/testcases/general/interface_class_declaration.dart:9:10: Error: This requires the experimental 'class-modifiers' language feature to be enabled.
// Try passing the '--enable-experiment=class-modifiers' command line option.
// pkg/front_end/testcases/general/interface_class_declaration.dart:9:10: Error: The 'class-modifiers' language feature is disabled for this library.
// Try removing the `@dart=` annotation or setting the language version to 3.0 or higher.
// abstract interface class B {}
// ^^^^^^^^^
// pkg/front_end/testcases/general/interface_class_declaration.dart:5:1: Context: This is the annotation that opts out this library from the 'class-modifiers' language feature.
// // @dart=2.19
// ^^^^^^^^^^^^^
//
// pkg/front_end/testcases/general/interface_class_declaration.dart:11:1: Error: This requires the experimental 'class-modifiers' language feature to be enabled.
// Try passing the '--enable-experiment=class-modifiers' command line option.
// pkg/front_end/testcases/general/interface_class_declaration.dart:11:1: Error: The 'class-modifiers' language feature is disabled for this library.
// Try removing the `@dart=` annotation or setting the language version to 3.0 or higher.
// interface mixin M {}
// ^^^^^^^^^
// pkg/front_end/testcases/general/interface_class_declaration.dart:5:1: Context: This is the annotation that opts out this library from the 'class-modifiers' language feature.
// // @dart=2.19
// ^^^^^^^^^^^^^
//
// pkg/front_end/testcases/general/interface_class_declaration.dart:12:1: Error: This requires the experimental 'class-modifiers' language feature to be enabled.
// Try passing the '--enable-experiment=class-modifiers' command line option.
// pkg/front_end/testcases/general/interface_class_declaration.dart:12:1: Error: The 'class-modifiers' language feature is disabled for this library.
// Try removing the `@dart=` annotation or setting the language version to 3.0 or higher.
// interface class C = Object with M;
// ^^^^^^^^^
// pkg/front_end/testcases/general/interface_class_declaration.dart:5:1: Context: This is the annotation that opts out this library from the 'class-modifiers' language feature.
// // @dart=2.19
// ^^^^^^^^^^^^^
//
import self as self;
import "dart:core" as core;

View File

@ -2,25 +2,37 @@ library /*isNonNullableByDefault*/;
//
// Problems in library:
//
// pkg/front_end/testcases/general/interface_class_declaration.dart:7:1: Error: This requires the experimental 'class-modifiers' language feature to be enabled.
// Try passing the '--enable-experiment=class-modifiers' command line option.
// pkg/front_end/testcases/general/interface_class_declaration.dart:7:1: Error: The 'class-modifiers' language feature is disabled for this library.
// Try removing the `@dart=` annotation or setting the language version to 3.0 or higher.
// interface class A {}
// ^^^^^^^^^
// pkg/front_end/testcases/general/interface_class_declaration.dart:5:1: Context: This is the annotation that opts out this library from the 'class-modifiers' language feature.
// // @dart=2.19
// ^^^^^^^^^^^^^
//
// pkg/front_end/testcases/general/interface_class_declaration.dart:9:10: Error: This requires the experimental 'class-modifiers' language feature to be enabled.
// Try passing the '--enable-experiment=class-modifiers' command line option.
// pkg/front_end/testcases/general/interface_class_declaration.dart:9:10: Error: The 'class-modifiers' language feature is disabled for this library.
// Try removing the `@dart=` annotation or setting the language version to 3.0 or higher.
// abstract interface class B {}
// ^^^^^^^^^
// pkg/front_end/testcases/general/interface_class_declaration.dart:5:1: Context: This is the annotation that opts out this library from the 'class-modifiers' language feature.
// // @dart=2.19
// ^^^^^^^^^^^^^
//
// pkg/front_end/testcases/general/interface_class_declaration.dart:11:1: Error: This requires the experimental 'class-modifiers' language feature to be enabled.
// Try passing the '--enable-experiment=class-modifiers' command line option.
// pkg/front_end/testcases/general/interface_class_declaration.dart:11:1: Error: The 'class-modifiers' language feature is disabled for this library.
// Try removing the `@dart=` annotation or setting the language version to 3.0 or higher.
// interface mixin M {}
// ^^^^^^^^^
// pkg/front_end/testcases/general/interface_class_declaration.dart:5:1: Context: This is the annotation that opts out this library from the 'class-modifiers' language feature.
// // @dart=2.19
// ^^^^^^^^^^^^^
//
// pkg/front_end/testcases/general/interface_class_declaration.dart:12:1: Error: This requires the experimental 'class-modifiers' language feature to be enabled.
// Try passing the '--enable-experiment=class-modifiers' command line option.
// pkg/front_end/testcases/general/interface_class_declaration.dart:12:1: Error: The 'class-modifiers' language feature is disabled for this library.
// Try removing the `@dart=` annotation or setting the language version to 3.0 or higher.
// interface class C = Object with M;
// ^^^^^^^^^
// pkg/front_end/testcases/general/interface_class_declaration.dart:5:1: Context: This is the annotation that opts out this library from the 'class-modifiers' language feature.
// // @dart=2.19
// ^^^^^^^^^^^^^
//
import self as self;
import "dart:core" as core;

View File

@ -2,25 +2,37 @@ library /*isNonNullableByDefault*/;
//
// Problems in library:
//
// pkg/front_end/testcases/general/interface_class_declaration.dart:7:1: Error: This requires the experimental 'class-modifiers' language feature to be enabled.
// Try passing the '--enable-experiment=class-modifiers' command line option.
// pkg/front_end/testcases/general/interface_class_declaration.dart:7:1: Error: The 'class-modifiers' language feature is disabled for this library.
// Try removing the `@dart=` annotation or setting the language version to 3.0 or higher.
// interface class A {}
// ^^^^^^^^^
// pkg/front_end/testcases/general/interface_class_declaration.dart:5:1: Context: This is the annotation that opts out this library from the 'class-modifiers' language feature.
// // @dart=2.19
// ^^^^^^^^^^^^^
//
// pkg/front_end/testcases/general/interface_class_declaration.dart:9:10: Error: This requires the experimental 'class-modifiers' language feature to be enabled.
// Try passing the '--enable-experiment=class-modifiers' command line option.
// pkg/front_end/testcases/general/interface_class_declaration.dart:9:10: Error: The 'class-modifiers' language feature is disabled for this library.
// Try removing the `@dart=` annotation or setting the language version to 3.0 or higher.
// abstract interface class B {}
// ^^^^^^^^^
// pkg/front_end/testcases/general/interface_class_declaration.dart:5:1: Context: This is the annotation that opts out this library from the 'class-modifiers' language feature.
// // @dart=2.19
// ^^^^^^^^^^^^^
//
// pkg/front_end/testcases/general/interface_class_declaration.dart:11:1: Error: This requires the experimental 'class-modifiers' language feature to be enabled.
// Try passing the '--enable-experiment=class-modifiers' command line option.
// pkg/front_end/testcases/general/interface_class_declaration.dart:11:1: Error: The 'class-modifiers' language feature is disabled for this library.
// Try removing the `@dart=` annotation or setting the language version to 3.0 or higher.
// interface mixin M {}
// ^^^^^^^^^
// pkg/front_end/testcases/general/interface_class_declaration.dart:5:1: Context: This is the annotation that opts out this library from the 'class-modifiers' language feature.
// // @dart=2.19
// ^^^^^^^^^^^^^
//
// pkg/front_end/testcases/general/interface_class_declaration.dart:12:1: Error: This requires the experimental 'class-modifiers' language feature to be enabled.
// Try passing the '--enable-experiment=class-modifiers' command line option.
// pkg/front_end/testcases/general/interface_class_declaration.dart:12:1: Error: The 'class-modifiers' language feature is disabled for this library.
// Try removing the `@dart=` annotation or setting the language version to 3.0 or higher.
// interface class C = Object with M;
// ^^^^^^^^^
// pkg/front_end/testcases/general/interface_class_declaration.dart:5:1: Context: This is the annotation that opts out this library from the 'class-modifiers' language feature.
// // @dart=2.19
// ^^^^^^^^^^^^^
//
import self as self;
import "dart:core" as core;

View File

@ -2,25 +2,37 @@ library /*isNonNullableByDefault*/;
//
// Problems in library:
//
// pkg/front_end/testcases/general/interface_class_declaration.dart:7:1: Error: This requires the experimental 'class-modifiers' language feature to be enabled.
// Try passing the '--enable-experiment=class-modifiers' command line option.
// pkg/front_end/testcases/general/interface_class_declaration.dart:7:1: Error: The 'class-modifiers' language feature is disabled for this library.
// Try removing the `@dart=` annotation or setting the language version to 3.0 or higher.
// interface class A {}
// ^^^^^^^^^
// pkg/front_end/testcases/general/interface_class_declaration.dart:5:1: Context: This is the annotation that opts out this library from the 'class-modifiers' language feature.
// // @dart=2.19
// ^^^^^^^^^^^^^
//
// pkg/front_end/testcases/general/interface_class_declaration.dart:9:10: Error: This requires the experimental 'class-modifiers' language feature to be enabled.
// Try passing the '--enable-experiment=class-modifiers' command line option.
// pkg/front_end/testcases/general/interface_class_declaration.dart:9:10: Error: The 'class-modifiers' language feature is disabled for this library.
// Try removing the `@dart=` annotation or setting the language version to 3.0 or higher.
// abstract interface class B {}
// ^^^^^^^^^
// pkg/front_end/testcases/general/interface_class_declaration.dart:5:1: Context: This is the annotation that opts out this library from the 'class-modifiers' language feature.
// // @dart=2.19
// ^^^^^^^^^^^^^
//
// pkg/front_end/testcases/general/interface_class_declaration.dart:11:1: Error: This requires the experimental 'class-modifiers' language feature to be enabled.
// Try passing the '--enable-experiment=class-modifiers' command line option.
// pkg/front_end/testcases/general/interface_class_declaration.dart:11:1: Error: The 'class-modifiers' language feature is disabled for this library.
// Try removing the `@dart=` annotation or setting the language version to 3.0 or higher.
// interface mixin M {}
// ^^^^^^^^^
// pkg/front_end/testcases/general/interface_class_declaration.dart:5:1: Context: This is the annotation that opts out this library from the 'class-modifiers' language feature.
// // @dart=2.19
// ^^^^^^^^^^^^^
//
// pkg/front_end/testcases/general/interface_class_declaration.dart:12:1: Error: This requires the experimental 'class-modifiers' language feature to be enabled.
// Try passing the '--enable-experiment=class-modifiers' command line option.
// pkg/front_end/testcases/general/interface_class_declaration.dart:12:1: Error: The 'class-modifiers' language feature is disabled for this library.
// Try removing the `@dart=` annotation or setting the language version to 3.0 or higher.
// interface class C = Object with M;
// ^^^^^^^^^
// pkg/front_end/testcases/general/interface_class_declaration.dart:5:1: Context: This is the annotation that opts out this library from the 'class-modifiers' language feature.
// // @dart=2.19
// ^^^^^^^^^^^^^
//
import self as self;
import "dart:core" as core;

View File

@ -2,6 +2,8 @@
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
// @dart=2.19
mixin class A {}
abstract mixin class B {}

View File

@ -2,20 +2,29 @@ library /*isNonNullableByDefault*/;
//
// Problems in library:
//
// pkg/front_end/testcases/general/mixin_class_declaration.dart:5:1: Error: This requires the experimental 'class-modifiers' language feature to be enabled.
// Try passing the '--enable-experiment=class-modifiers' command line option.
// pkg/front_end/testcases/general/mixin_class_declaration.dart:7:1: Error: The 'class-modifiers' language feature is disabled for this library.
// Try removing the `@dart=` annotation or setting the language version to 3.0 or higher.
// mixin class A {}
// ^^^^^
// pkg/front_end/testcases/general/mixin_class_declaration.dart:5:1: Context: This is the annotation that opts out this library from the 'class-modifiers' language feature.
// // @dart=2.19
// ^^^^^^^^^^^^^
//
// pkg/front_end/testcases/general/mixin_class_declaration.dart:7:10: Error: This requires the experimental 'class-modifiers' language feature to be enabled.
// Try passing the '--enable-experiment=class-modifiers' command line option.
// pkg/front_end/testcases/general/mixin_class_declaration.dart:9:10: Error: The 'class-modifiers' language feature is disabled for this library.
// Try removing the `@dart=` annotation or setting the language version to 3.0 or higher.
// abstract mixin class B {}
// ^^^^^
// pkg/front_end/testcases/general/mixin_class_declaration.dart:5:1: Context: This is the annotation that opts out this library from the 'class-modifiers' language feature.
// // @dart=2.19
// ^^^^^^^^^^^^^
//
// pkg/front_end/testcases/general/mixin_class_declaration.dart:10:1: Error: This requires the experimental 'class-modifiers' language feature to be enabled.
// Try passing the '--enable-experiment=class-modifiers' command line option.
// pkg/front_end/testcases/general/mixin_class_declaration.dart:12:1: Error: The 'class-modifiers' language feature is disabled for this library.
// Try removing the `@dart=` annotation or setting the language version to 3.0 or higher.
// mixin class C = Object with M;
// ^^^^^
// pkg/front_end/testcases/general/mixin_class_declaration.dart:5:1: Context: This is the annotation that opts out this library from the 'class-modifiers' language feature.
// // @dart=2.19
// ^^^^^^^^^^^^^
//
import self as self;
import "dart:core" as core;

View File

@ -2,20 +2,29 @@ library /*isNonNullableByDefault*/;
//
// Problems in library:
//
// pkg/front_end/testcases/general/mixin_class_declaration.dart:5:1: Error: This requires the experimental 'class-modifiers' language feature to be enabled.
// Try passing the '--enable-experiment=class-modifiers' command line option.
// pkg/front_end/testcases/general/mixin_class_declaration.dart:7:1: Error: The 'class-modifiers' language feature is disabled for this library.
// Try removing the `@dart=` annotation or setting the language version to 3.0 or higher.
// mixin class A {}
// ^^^^^
// pkg/front_end/testcases/general/mixin_class_declaration.dart:5:1: Context: This is the annotation that opts out this library from the 'class-modifiers' language feature.
// // @dart=2.19
// ^^^^^^^^^^^^^
//
// pkg/front_end/testcases/general/mixin_class_declaration.dart:7:10: Error: This requires the experimental 'class-modifiers' language feature to be enabled.
// Try passing the '--enable-experiment=class-modifiers' command line option.
// pkg/front_end/testcases/general/mixin_class_declaration.dart:9:10: Error: The 'class-modifiers' language feature is disabled for this library.
// Try removing the `@dart=` annotation or setting the language version to 3.0 or higher.
// abstract mixin class B {}
// ^^^^^
// pkg/front_end/testcases/general/mixin_class_declaration.dart:5:1: Context: This is the annotation that opts out this library from the 'class-modifiers' language feature.
// // @dart=2.19
// ^^^^^^^^^^^^^
//
// pkg/front_end/testcases/general/mixin_class_declaration.dart:10:1: Error: This requires the experimental 'class-modifiers' language feature to be enabled.
// Try passing the '--enable-experiment=class-modifiers' command line option.
// pkg/front_end/testcases/general/mixin_class_declaration.dart:12:1: Error: The 'class-modifiers' language feature is disabled for this library.
// Try removing the `@dart=` annotation or setting the language version to 3.0 or higher.
// mixin class C = Object with M;
// ^^^^^
// pkg/front_end/testcases/general/mixin_class_declaration.dart:5:1: Context: This is the annotation that opts out this library from the 'class-modifiers' language feature.
// // @dart=2.19
// ^^^^^^^^^^^^^
//
import self as self;
import "dart:core" as core;

View File

@ -1,3 +1,4 @@
// @dart = 2.19
mixin class A {}
abstract mixin class B {}

View File

@ -1,3 +1,4 @@
// @dart = 2.19
abstract mixin class B {}
mixin M {}

Some files were not shown because too many files have changed in this diff Show More