[flip-modifiers] CFE test golden file changes from class to mixin.
Change-Id: I58fa6ea3c34dec65e9cc754aeeffbe779314bd3c Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/286958 Commit-Queue: Kallen Tu <kallentu@google.com> Reviewed-by: Johnni Winther <johnniwinther@google.com>
This commit is contained in:
@@ -4,6 +4,7 @@
|
||||
|
||||
enum E1 {
|
||||
element;
|
||||
|
||||
final int element = 42; // Error.
|
||||
}
|
||||
|
||||
@@ -42,7 +43,7 @@ enum E7 {
|
||||
static void set element(E7 value) {}
|
||||
}
|
||||
|
||||
class A8 {
|
||||
mixin A8 {
|
||||
void set element(dynamic value) {}
|
||||
}
|
||||
|
||||
@@ -50,7 +51,7 @@ enum E8 with A8 {
|
||||
element // Error.
|
||||
}
|
||||
|
||||
class A9 {
|
||||
mixin A9 {
|
||||
int element = 42;
|
||||
}
|
||||
|
||||
@@ -58,7 +59,7 @@ enum E9 with A9 {
|
||||
element // Error.
|
||||
}
|
||||
|
||||
class A10 {
|
||||
mixin A10 {
|
||||
void element() {}
|
||||
}
|
||||
|
||||
|
||||
@@ -2,70 +2,70 @@ library /*isNonNullableByDefault*/;
|
||||
//
|
||||
// Problems in library:
|
||||
//
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:7:13: Error: 'element' is already declared in this scope.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:8:13: Error: 'element' is already declared in this scope.
|
||||
// final int element = 42; // Error.
|
||||
// ^^^^^^^
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:6:3: Context: Previous declaration of 'element'.
|
||||
// element;
|
||||
// ^^^^^^^
|
||||
//
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:12:3: Error: 'element' is already declared in this scope.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:13:3: Error: 'element' is already declared in this scope.
|
||||
// element; // Error.
|
||||
// ^^^^^^^
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:11:3: Context: Previous declaration of 'element'.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:12:3: Context: Previous declaration of 'element'.
|
||||
// element,
|
||||
// ^^^^^^^
|
||||
//
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:18:8: Error: 'element' is already declared in this scope.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:19:8: Error: 'element' is already declared in this scope.
|
||||
// void element() {} // Error.
|
||||
// ^^^^^^^
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:16:3: Context: Previous declaration of 'element'.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:17:3: Context: Previous declaration of 'element'.
|
||||
// element;
|
||||
// ^^^^^^^
|
||||
//
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:24:15: Error: 'element' is already declared in this scope.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:25:15: Error: 'element' is already declared in this scope.
|
||||
// static void element() {} // Error.
|
||||
// ^^^^^^^
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:22:3: Context: Previous declaration of 'element'.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:23:3: Context: Previous declaration of 'element'.
|
||||
// element;
|
||||
// ^^^^^^^
|
||||
//
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:30:14: Error: 'element' is already declared in this scope.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:31:14: Error: 'element' is already declared in this scope.
|
||||
// static int element = 42; // Error.
|
||||
// ^^^^^^^
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:28:3: Context: Previous declaration of 'element'.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:29:3: Context: Previous declaration of 'element'.
|
||||
// element;
|
||||
// ^^^^^^^
|
||||
//
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:34:3: Error: This static member conflicts with an instance member.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:35:3: Error: This static member conflicts with an instance member.
|
||||
// element; // Error.
|
||||
// ^^^^^^^
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:36:12: Context: This is the instance member.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:37:12: Context: This is the instance member.
|
||||
// void set element(E6 value) {}
|
||||
// ^^^^^^^
|
||||
//
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:50:3: Error: Can't declare a member that conflicts with an inherited one.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:51:3: Error: Can't declare a member that conflicts with an inherited one.
|
||||
// element // Error.
|
||||
// ^^^^^^^
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:46:12: Context: This is the inherited member.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:47:12: Context: This is the inherited member.
|
||||
// void set element(dynamic value) {}
|
||||
// ^^^^^^^
|
||||
//
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:58:3: Error: Can't declare a member that conflicts with an inherited one.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:59:3: Error: Can't declare a member that conflicts with an inherited one.
|
||||
// element // Error.
|
||||
// ^^^^^^^
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:54:7: Context: This is the inherited member.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:55:7: Context: This is the inherited member.
|
||||
// int element = 42;
|
||||
// ^^^^^^^
|
||||
//
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:66:3: Error: Can't declare a member that conflicts with an inherited one.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:67:3: Error: Can't declare a member that conflicts with an inherited one.
|
||||
// element // Error.
|
||||
// ^^^^^^^
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:62:8: Context: This is the inherited member.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:63:8: Context: This is the inherited member.
|
||||
// void element() {}
|
||||
// ^^^^^^^
|
||||
//
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:57:6: Error: A constant constructor can't call a non-constant super constructor.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:58:6: Error: A constant constructor can't call a non-constant super constructor.
|
||||
// enum E9 with A9 {
|
||||
// ^
|
||||
//
|
||||
@@ -137,10 +137,7 @@ class E7 extends core::_Enum /*isEnum*/ {
|
||||
return "E7.${this.{core::_Enum::_name}{core::String}}";
|
||||
static set element(self::E7 value) → void {}
|
||||
}
|
||||
class A8 extends core::Object {
|
||||
synthetic constructor •() → self::A8
|
||||
: super core::Object::•()
|
||||
;
|
||||
abstract class A8 extends core::Object /*isMixinDeclaration*/ {
|
||||
set element(dynamic value) → void {}
|
||||
}
|
||||
abstract class _E8&_Enum&A8 = core::_Enum with self::A8 /*isAnonymousMixin,hasConstConstructor*/ {
|
||||
@@ -159,11 +156,8 @@ class E8 extends self::_E8&_Enum&A8 /*isEnum*/ {
|
||||
method _enumToString() → core::String
|
||||
return "E8.${this.{core::_Enum::_name}{core::String}}";
|
||||
}
|
||||
class A9 extends core::Object {
|
||||
abstract class A9 extends core::Object /*isMixinDeclaration*/ {
|
||||
field core::int element = 42;
|
||||
synthetic constructor •() → self::A9
|
||||
: super core::Object::•()
|
||||
;
|
||||
}
|
||||
abstract class _E9&_Enum&A9 = core::_Enum with self::A9 /*isAnonymousMixin*/ {
|
||||
synthetic constructor •(core::int index, core::String _name) → self::_E9&_Enum&A9
|
||||
@@ -183,10 +177,7 @@ class E9 extends self::_E9&_Enum&A9 /*isEnum*/ {
|
||||
method _enumToString() → core::String
|
||||
return "E9.${this.{core::_Enum::_name}{core::String}}";
|
||||
}
|
||||
class A10 extends core::Object {
|
||||
synthetic constructor •() → self::A10
|
||||
: super core::Object::•()
|
||||
;
|
||||
abstract class A10 extends core::Object /*isMixinDeclaration*/ {
|
||||
method element() → void {}
|
||||
}
|
||||
abstract class _E10&_Enum&A10 = core::_Enum with self::A10 /*isAnonymousMixin,hasConstConstructor*/ {
|
||||
@@ -229,13 +220,13 @@ constants {
|
||||
|
||||
Constructor coverage from constants:
|
||||
org-dartlang-testcase:///conflicting_elements.dart:
|
||||
- E2. (from org-dartlang-testcase:///conflicting_elements.dart:10:6)
|
||||
- E2. (from org-dartlang-testcase:///conflicting_elements.dart:11:6)
|
||||
- _Enum. (from org-dartlang-sdk:///sdk/lib/core/enum.dart)
|
||||
- Object. (from org-dartlang-sdk:///sdk/lib/core/object.dart)
|
||||
- E6. (from org-dartlang-testcase:///conflicting_elements.dart:33:6)
|
||||
- E7. (from org-dartlang-testcase:///conflicting_elements.dart:39:6)
|
||||
- E8. (from org-dartlang-testcase:///conflicting_elements.dart:49:6)
|
||||
- _E8&_Enum&A8. (from org-dartlang-testcase:///conflicting_elements.dart:49:6)
|
||||
- E9. (from org-dartlang-testcase:///conflicting_elements.dart:57:6)
|
||||
- E10. (from org-dartlang-testcase:///conflicting_elements.dart:65:6)
|
||||
- _E10&_Enum&A10. (from org-dartlang-testcase:///conflicting_elements.dart:65:6)
|
||||
- E6. (from org-dartlang-testcase:///conflicting_elements.dart:34:6)
|
||||
- E7. (from org-dartlang-testcase:///conflicting_elements.dart:40:6)
|
||||
- E8. (from org-dartlang-testcase:///conflicting_elements.dart:50:6)
|
||||
- _E8&_Enum&A8. (from org-dartlang-testcase:///conflicting_elements.dart:50:6)
|
||||
- E9. (from org-dartlang-testcase:///conflicting_elements.dart:58:6)
|
||||
- E10. (from org-dartlang-testcase:///conflicting_elements.dart:66:6)
|
||||
- _E10&_Enum&A10. (from org-dartlang-testcase:///conflicting_elements.dart:66:6)
|
||||
|
||||
+29
-38
@@ -2,70 +2,70 @@ library /*isNonNullableByDefault*/;
|
||||
//
|
||||
// Problems in library:
|
||||
//
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:7:13: Error: 'element' is already declared in this scope.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:8:13: Error: 'element' is already declared in this scope.
|
||||
// final int element = 42; // Error.
|
||||
// ^^^^^^^
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:6:3: Context: Previous declaration of 'element'.
|
||||
// element;
|
||||
// ^^^^^^^
|
||||
//
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:12:3: Error: 'element' is already declared in this scope.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:13:3: Error: 'element' is already declared in this scope.
|
||||
// element; // Error.
|
||||
// ^^^^^^^
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:11:3: Context: Previous declaration of 'element'.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:12:3: Context: Previous declaration of 'element'.
|
||||
// element,
|
||||
// ^^^^^^^
|
||||
//
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:18:8: Error: 'element' is already declared in this scope.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:19:8: Error: 'element' is already declared in this scope.
|
||||
// void element() {} // Error.
|
||||
// ^^^^^^^
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:16:3: Context: Previous declaration of 'element'.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:17:3: Context: Previous declaration of 'element'.
|
||||
// element;
|
||||
// ^^^^^^^
|
||||
//
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:24:15: Error: 'element' is already declared in this scope.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:25:15: Error: 'element' is already declared in this scope.
|
||||
// static void element() {} // Error.
|
||||
// ^^^^^^^
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:22:3: Context: Previous declaration of 'element'.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:23:3: Context: Previous declaration of 'element'.
|
||||
// element;
|
||||
// ^^^^^^^
|
||||
//
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:30:14: Error: 'element' is already declared in this scope.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:31:14: Error: 'element' is already declared in this scope.
|
||||
// static int element = 42; // Error.
|
||||
// ^^^^^^^
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:28:3: Context: Previous declaration of 'element'.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:29:3: Context: Previous declaration of 'element'.
|
||||
// element;
|
||||
// ^^^^^^^
|
||||
//
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:34:3: Error: This static member conflicts with an instance member.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:35:3: Error: This static member conflicts with an instance member.
|
||||
// element; // Error.
|
||||
// ^^^^^^^
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:36:12: Context: This is the instance member.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:37:12: Context: This is the instance member.
|
||||
// void set element(E6 value) {}
|
||||
// ^^^^^^^
|
||||
//
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:50:3: Error: Can't declare a member that conflicts with an inherited one.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:51:3: Error: Can't declare a member that conflicts with an inherited one.
|
||||
// element // Error.
|
||||
// ^^^^^^^
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:46:12: Context: This is the inherited member.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:47:12: Context: This is the inherited member.
|
||||
// void set element(dynamic value) {}
|
||||
// ^^^^^^^
|
||||
//
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:58:3: Error: Can't declare a member that conflicts with an inherited one.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:59:3: Error: Can't declare a member that conflicts with an inherited one.
|
||||
// element // Error.
|
||||
// ^^^^^^^
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:54:7: Context: This is the inherited member.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:55:7: Context: This is the inherited member.
|
||||
// int element = 42;
|
||||
// ^^^^^^^
|
||||
//
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:66:3: Error: Can't declare a member that conflicts with an inherited one.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:67:3: Error: Can't declare a member that conflicts with an inherited one.
|
||||
// element // Error.
|
||||
// ^^^^^^^
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:62:8: Context: This is the inherited member.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:63:8: Context: This is the inherited member.
|
||||
// void element() {}
|
||||
// ^^^^^^^
|
||||
//
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:57:6: Error: A constant constructor can't call a non-constant super constructor.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:58:6: Error: A constant constructor can't call a non-constant super constructor.
|
||||
// enum E9 with A9 {
|
||||
// ^
|
||||
//
|
||||
@@ -137,10 +137,7 @@ class E7 extends core::_Enum /*isEnum*/ {
|
||||
return "E7.${this.{core::_Enum::_name}{core::String}}";
|
||||
static set element(self::E7 value) → void {}
|
||||
}
|
||||
class A8 extends core::Object {
|
||||
synthetic constructor •() → self::A8
|
||||
: super core::Object::•()
|
||||
;
|
||||
abstract class A8 extends core::Object /*isMixinDeclaration*/ {
|
||||
set element(dynamic value) → void {}
|
||||
}
|
||||
abstract class _E8&_Enum&A8 extends core::_Enum implements self::A8 /*isAnonymousMixin,isEliminatedMixin,hasConstConstructor*/ {
|
||||
@@ -158,11 +155,8 @@ class E8 extends self::_E8&_Enum&A8 /*isEnum*/ {
|
||||
method _enumToString() → core::String
|
||||
return "E8.${this.{core::_Enum::_name}{core::String}}";
|
||||
}
|
||||
class A9 extends core::Object {
|
||||
abstract class A9 extends core::Object /*isMixinDeclaration*/ {
|
||||
field core::int element = 42;
|
||||
synthetic constructor •() → self::A9
|
||||
: super core::Object::•()
|
||||
;
|
||||
}
|
||||
abstract class _E9&_Enum&A9 extends core::_Enum implements self::A9 /*isAnonymousMixin,isEliminatedMixin*/ {
|
||||
field core::int element = 42;
|
||||
@@ -179,10 +173,7 @@ class E9 extends self::_E9&_Enum&A9 /*isEnum*/ {
|
||||
method _enumToString() → core::String
|
||||
return "E9.${this.{core::_Enum::_name}{core::String}}";
|
||||
}
|
||||
class A10 extends core::Object {
|
||||
synthetic constructor •() → self::A10
|
||||
: super core::Object::•()
|
||||
;
|
||||
abstract class A10 extends core::Object /*isMixinDeclaration*/ {
|
||||
method element() → void {}
|
||||
}
|
||||
abstract class _E10&_Enum&A10 extends core::_Enum implements self::A10 /*isAnonymousMixin,isEliminatedMixin,hasConstConstructor*/ {
|
||||
@@ -224,13 +215,13 @@ constants {
|
||||
|
||||
Constructor coverage from constants:
|
||||
org-dartlang-testcase:///conflicting_elements.dart:
|
||||
- E2. (from org-dartlang-testcase:///conflicting_elements.dart:10:6)
|
||||
- E2. (from org-dartlang-testcase:///conflicting_elements.dart:11:6)
|
||||
- _Enum. (from org-dartlang-sdk:///sdk/lib/core/enum.dart)
|
||||
- Object. (from org-dartlang-sdk:///sdk/lib/core/object.dart)
|
||||
- E6. (from org-dartlang-testcase:///conflicting_elements.dart:33:6)
|
||||
- E7. (from org-dartlang-testcase:///conflicting_elements.dart:39:6)
|
||||
- E8. (from org-dartlang-testcase:///conflicting_elements.dart:49:6)
|
||||
- _E8&_Enum&A8. (from org-dartlang-testcase:///conflicting_elements.dart:49:6)
|
||||
- E9. (from org-dartlang-testcase:///conflicting_elements.dart:57:6)
|
||||
- E10. (from org-dartlang-testcase:///conflicting_elements.dart:65:6)
|
||||
- _E10&_Enum&A10. (from org-dartlang-testcase:///conflicting_elements.dart:65:6)
|
||||
- E6. (from org-dartlang-testcase:///conflicting_elements.dart:34:6)
|
||||
- E7. (from org-dartlang-testcase:///conflicting_elements.dart:40:6)
|
||||
- E8. (from org-dartlang-testcase:///conflicting_elements.dart:50:6)
|
||||
- _E8&_Enum&A8. (from org-dartlang-testcase:///conflicting_elements.dart:50:6)
|
||||
- E9. (from org-dartlang-testcase:///conflicting_elements.dart:58:6)
|
||||
- E10. (from org-dartlang-testcase:///conflicting_elements.dart:66:6)
|
||||
- _E10&_Enum&A10. (from org-dartlang-testcase:///conflicting_elements.dart:66:6)
|
||||
|
||||
+3
-3
@@ -39,19 +39,19 @@ enum E7 {
|
||||
static void set element(E7 value) {}
|
||||
}
|
||||
|
||||
class A8 {
|
||||
mixin A8 {
|
||||
void set element(dynamic value) {}
|
||||
}
|
||||
|
||||
enum E8 with A8 { element }
|
||||
|
||||
class A9 {
|
||||
mixin A9 {
|
||||
int element = 42;
|
||||
}
|
||||
|
||||
enum E9 with A9 { element }
|
||||
|
||||
class A10 {
|
||||
mixin A10 {
|
||||
void element() {}
|
||||
}
|
||||
|
||||
|
||||
+9
-12
@@ -1,15 +1,3 @@
|
||||
class A10 {
|
||||
void element() {}
|
||||
}
|
||||
|
||||
class A8 {
|
||||
void set element(dynamic value) {}
|
||||
}
|
||||
|
||||
class A9 {
|
||||
int element = 42;
|
||||
}
|
||||
|
||||
enum E1 {
|
||||
element;
|
||||
|
||||
@@ -58,3 +46,12 @@ enum E8 with A8 { element }
|
||||
enum E9 with A9 { element }
|
||||
|
||||
main() {}
|
||||
mixin A10 {
|
||||
void element() {}
|
||||
}
|
||||
mixin A8 {
|
||||
void set element(dynamic value) {}
|
||||
}
|
||||
mixin A9 {
|
||||
int element = 42;
|
||||
}
|
||||
|
||||
@@ -2,70 +2,70 @@ library /*isNonNullableByDefault*/;
|
||||
//
|
||||
// Problems in library:
|
||||
//
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:7:13: Error: 'element' is already declared in this scope.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:8:13: Error: 'element' is already declared in this scope.
|
||||
// final int element = 42; // Error.
|
||||
// ^^^^^^^
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:6:3: Context: Previous declaration of 'element'.
|
||||
// element;
|
||||
// ^^^^^^^
|
||||
//
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:12:3: Error: 'element' is already declared in this scope.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:13:3: Error: 'element' is already declared in this scope.
|
||||
// element; // Error.
|
||||
// ^^^^^^^
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:11:3: Context: Previous declaration of 'element'.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:12:3: Context: Previous declaration of 'element'.
|
||||
// element,
|
||||
// ^^^^^^^
|
||||
//
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:18:8: Error: 'element' is already declared in this scope.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:19:8: Error: 'element' is already declared in this scope.
|
||||
// void element() {} // Error.
|
||||
// ^^^^^^^
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:16:3: Context: Previous declaration of 'element'.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:17:3: Context: Previous declaration of 'element'.
|
||||
// element;
|
||||
// ^^^^^^^
|
||||
//
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:24:15: Error: 'element' is already declared in this scope.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:25:15: Error: 'element' is already declared in this scope.
|
||||
// static void element() {} // Error.
|
||||
// ^^^^^^^
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:22:3: Context: Previous declaration of 'element'.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:23:3: Context: Previous declaration of 'element'.
|
||||
// element;
|
||||
// ^^^^^^^
|
||||
//
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:30:14: Error: 'element' is already declared in this scope.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:31:14: Error: 'element' is already declared in this scope.
|
||||
// static int element = 42; // Error.
|
||||
// ^^^^^^^
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:28:3: Context: Previous declaration of 'element'.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:29:3: Context: Previous declaration of 'element'.
|
||||
// element;
|
||||
// ^^^^^^^
|
||||
//
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:34:3: Error: This static member conflicts with an instance member.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:35:3: Error: This static member conflicts with an instance member.
|
||||
// element; // Error.
|
||||
// ^^^^^^^
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:36:12: Context: This is the instance member.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:37:12: Context: This is the instance member.
|
||||
// void set element(E6 value) {}
|
||||
// ^^^^^^^
|
||||
//
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:50:3: Error: Can't declare a member that conflicts with an inherited one.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:51:3: Error: Can't declare a member that conflicts with an inherited one.
|
||||
// element // Error.
|
||||
// ^^^^^^^
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:46:12: Context: This is the inherited member.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:47:12: Context: This is the inherited member.
|
||||
// void set element(dynamic value) {}
|
||||
// ^^^^^^^
|
||||
//
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:58:3: Error: Can't declare a member that conflicts with an inherited one.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:59:3: Error: Can't declare a member that conflicts with an inherited one.
|
||||
// element // Error.
|
||||
// ^^^^^^^
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:54:7: Context: This is the inherited member.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:55:7: Context: This is the inherited member.
|
||||
// int element = 42;
|
||||
// ^^^^^^^
|
||||
//
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:66:3: Error: Can't declare a member that conflicts with an inherited one.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:67:3: Error: Can't declare a member that conflicts with an inherited one.
|
||||
// element // Error.
|
||||
// ^^^^^^^
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:62:8: Context: This is the inherited member.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:63:8: Context: This is the inherited member.
|
||||
// void element() {}
|
||||
// ^^^^^^^
|
||||
//
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:57:6: Error: A constant constructor can't call a non-constant super constructor.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:58:6: Error: A constant constructor can't call a non-constant super constructor.
|
||||
// enum E9 with A9 {
|
||||
// ^
|
||||
//
|
||||
@@ -137,10 +137,7 @@ class E7 extends core::_Enum /*isEnum*/ {
|
||||
return "E7.${this.{core::_Enum::_name}{core::String}}";
|
||||
static set element(self::E7 value) → void {}
|
||||
}
|
||||
class A8 extends core::Object {
|
||||
synthetic constructor •() → self::A8
|
||||
: super core::Object::•()
|
||||
;
|
||||
abstract class A8 extends core::Object /*isMixinDeclaration*/ {
|
||||
set element(dynamic value) → void {}
|
||||
}
|
||||
abstract class _E8&_Enum&A8 = core::_Enum with self::A8 /*isAnonymousMixin,hasConstConstructor*/ {
|
||||
@@ -159,11 +156,8 @@ class E8 extends self::_E8&_Enum&A8 /*isEnum*/ {
|
||||
method _enumToString() → core::String
|
||||
return "E8.${this.{core::_Enum::_name}{core::String}}";
|
||||
}
|
||||
class A9 extends core::Object {
|
||||
abstract class A9 extends core::Object /*isMixinDeclaration*/ {
|
||||
field core::int element = 42;
|
||||
synthetic constructor •() → self::A9
|
||||
: super core::Object::•()
|
||||
;
|
||||
}
|
||||
abstract class _E9&_Enum&A9 = core::_Enum with self::A9 /*isAnonymousMixin*/ {
|
||||
synthetic constructor •(core::int index, core::String _name) → self::_E9&_Enum&A9
|
||||
@@ -183,10 +177,7 @@ class E9 extends self::_E9&_Enum&A9 /*isEnum*/ {
|
||||
method _enumToString() → core::String
|
||||
return "E9.${this.{core::_Enum::_name}{core::String}}";
|
||||
}
|
||||
class A10 extends core::Object {
|
||||
synthetic constructor •() → self::A10
|
||||
: super core::Object::•()
|
||||
;
|
||||
abstract class A10 extends core::Object /*isMixinDeclaration*/ {
|
||||
method element() → void {}
|
||||
}
|
||||
abstract class _E10&_Enum&A10 = core::_Enum with self::A10 /*isAnonymousMixin,hasConstConstructor*/ {
|
||||
@@ -229,13 +220,13 @@ constants {
|
||||
|
||||
Constructor coverage from constants:
|
||||
org-dartlang-testcase:///conflicting_elements.dart:
|
||||
- E2. (from org-dartlang-testcase:///conflicting_elements.dart:10:6)
|
||||
- E2. (from org-dartlang-testcase:///conflicting_elements.dart:11:6)
|
||||
- _Enum. (from org-dartlang-sdk:///sdk/lib/core/enum.dart)
|
||||
- Object. (from org-dartlang-sdk:///sdk/lib/core/object.dart)
|
||||
- E6. (from org-dartlang-testcase:///conflicting_elements.dart:33:6)
|
||||
- E7. (from org-dartlang-testcase:///conflicting_elements.dart:39:6)
|
||||
- E8. (from org-dartlang-testcase:///conflicting_elements.dart:49:6)
|
||||
- _E8&_Enum&A8. (from org-dartlang-testcase:///conflicting_elements.dart:49:6)
|
||||
- E9. (from org-dartlang-testcase:///conflicting_elements.dart:57:6)
|
||||
- E10. (from org-dartlang-testcase:///conflicting_elements.dart:65:6)
|
||||
- _E10&_Enum&A10. (from org-dartlang-testcase:///conflicting_elements.dart:65:6)
|
||||
- E6. (from org-dartlang-testcase:///conflicting_elements.dart:34:6)
|
||||
- E7. (from org-dartlang-testcase:///conflicting_elements.dart:40:6)
|
||||
- E8. (from org-dartlang-testcase:///conflicting_elements.dart:50:6)
|
||||
- _E8&_Enum&A8. (from org-dartlang-testcase:///conflicting_elements.dart:50:6)
|
||||
- E9. (from org-dartlang-testcase:///conflicting_elements.dart:58:6)
|
||||
- E10. (from org-dartlang-testcase:///conflicting_elements.dart:66:6)
|
||||
- _E10&_Enum&A10. (from org-dartlang-testcase:///conflicting_elements.dart:66:6)
|
||||
|
||||
+29
-38
@@ -2,70 +2,70 @@ library /*isNonNullableByDefault*/;
|
||||
//
|
||||
// Problems in library:
|
||||
//
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:7:13: Error: 'element' is already declared in this scope.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:8:13: Error: 'element' is already declared in this scope.
|
||||
// final int element = 42; // Error.
|
||||
// ^^^^^^^
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:6:3: Context: Previous declaration of 'element'.
|
||||
// element;
|
||||
// ^^^^^^^
|
||||
//
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:12:3: Error: 'element' is already declared in this scope.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:13:3: Error: 'element' is already declared in this scope.
|
||||
// element; // Error.
|
||||
// ^^^^^^^
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:11:3: Context: Previous declaration of 'element'.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:12:3: Context: Previous declaration of 'element'.
|
||||
// element,
|
||||
// ^^^^^^^
|
||||
//
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:18:8: Error: 'element' is already declared in this scope.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:19:8: Error: 'element' is already declared in this scope.
|
||||
// void element() {} // Error.
|
||||
// ^^^^^^^
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:16:3: Context: Previous declaration of 'element'.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:17:3: Context: Previous declaration of 'element'.
|
||||
// element;
|
||||
// ^^^^^^^
|
||||
//
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:24:15: Error: 'element' is already declared in this scope.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:25:15: Error: 'element' is already declared in this scope.
|
||||
// static void element() {} // Error.
|
||||
// ^^^^^^^
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:22:3: Context: Previous declaration of 'element'.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:23:3: Context: Previous declaration of 'element'.
|
||||
// element;
|
||||
// ^^^^^^^
|
||||
//
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:30:14: Error: 'element' is already declared in this scope.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:31:14: Error: 'element' is already declared in this scope.
|
||||
// static int element = 42; // Error.
|
||||
// ^^^^^^^
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:28:3: Context: Previous declaration of 'element'.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:29:3: Context: Previous declaration of 'element'.
|
||||
// element;
|
||||
// ^^^^^^^
|
||||
//
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:34:3: Error: This static member conflicts with an instance member.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:35:3: Error: This static member conflicts with an instance member.
|
||||
// element; // Error.
|
||||
// ^^^^^^^
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:36:12: Context: This is the instance member.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:37:12: Context: This is the instance member.
|
||||
// void set element(E6 value) {}
|
||||
// ^^^^^^^
|
||||
//
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:50:3: Error: Can't declare a member that conflicts with an inherited one.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:51:3: Error: Can't declare a member that conflicts with an inherited one.
|
||||
// element // Error.
|
||||
// ^^^^^^^
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:46:12: Context: This is the inherited member.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:47:12: Context: This is the inherited member.
|
||||
// void set element(dynamic value) {}
|
||||
// ^^^^^^^
|
||||
//
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:58:3: Error: Can't declare a member that conflicts with an inherited one.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:59:3: Error: Can't declare a member that conflicts with an inherited one.
|
||||
// element // Error.
|
||||
// ^^^^^^^
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:54:7: Context: This is the inherited member.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:55:7: Context: This is the inherited member.
|
||||
// int element = 42;
|
||||
// ^^^^^^^
|
||||
//
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:66:3: Error: Can't declare a member that conflicts with an inherited one.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:67:3: Error: Can't declare a member that conflicts with an inherited one.
|
||||
// element // Error.
|
||||
// ^^^^^^^
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:62:8: Context: This is the inherited member.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:63:8: Context: This is the inherited member.
|
||||
// void element() {}
|
||||
// ^^^^^^^
|
||||
//
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:57:6: Error: A constant constructor can't call a non-constant super constructor.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:58:6: Error: A constant constructor can't call a non-constant super constructor.
|
||||
// enum E9 with A9 {
|
||||
// ^
|
||||
//
|
||||
@@ -137,10 +137,7 @@ class E7 extends core::_Enum /*isEnum*/ {
|
||||
return "E7.${this.{core::_Enum::_name}{core::String}}";
|
||||
static set element(self::E7 value) → void {}
|
||||
}
|
||||
class A8 extends core::Object {
|
||||
synthetic constructor •() → self::A8
|
||||
: super core::Object::•()
|
||||
;
|
||||
abstract class A8 extends core::Object /*isMixinDeclaration*/ {
|
||||
set element(dynamic value) → void {}
|
||||
}
|
||||
abstract class _E8&_Enum&A8 = core::_Enum with self::A8 /*isAnonymousMixin,hasConstConstructor*/ {
|
||||
@@ -159,11 +156,8 @@ class E8 extends self::_E8&_Enum&A8 /*isEnum*/ {
|
||||
method _enumToString() → core::String
|
||||
return "E8.${this.{core::_Enum::_name}{core::String}}";
|
||||
}
|
||||
class A9 extends core::Object {
|
||||
abstract class A9 extends core::Object /*isMixinDeclaration*/ {
|
||||
field core::int element = 42;
|
||||
synthetic constructor •() → self::A9
|
||||
: super core::Object::•()
|
||||
;
|
||||
}
|
||||
abstract class _E9&_Enum&A9 = core::_Enum with self::A9 /*isAnonymousMixin*/ {
|
||||
synthetic constructor •(core::int index, core::String _name) → self::_E9&_Enum&A9
|
||||
@@ -183,10 +177,7 @@ class E9 extends self::_E9&_Enum&A9 /*isEnum*/ {
|
||||
method _enumToString() → core::String
|
||||
return "E9.${this.{core::_Enum::_name}{core::String}}";
|
||||
}
|
||||
class A10 extends core::Object {
|
||||
synthetic constructor •() → self::A10
|
||||
: super core::Object::•()
|
||||
;
|
||||
abstract class A10 extends core::Object /*isMixinDeclaration*/ {
|
||||
method element() → void {}
|
||||
}
|
||||
abstract class _E10&_Enum&A10 = core::_Enum with self::A10 /*isAnonymousMixin,hasConstConstructor*/ {
|
||||
@@ -229,13 +220,13 @@ constants {
|
||||
|
||||
Constructor coverage from constants:
|
||||
org-dartlang-testcase:///conflicting_elements.dart:
|
||||
- E2. (from org-dartlang-testcase:///conflicting_elements.dart:10:6)
|
||||
- E2. (from org-dartlang-testcase:///conflicting_elements.dart:11:6)
|
||||
- _Enum. (from org-dartlang-sdk:///sdk/lib/core/enum.dart)
|
||||
- Object. (from org-dartlang-sdk:///sdk/lib/core/object.dart)
|
||||
- E6. (from org-dartlang-testcase:///conflicting_elements.dart:33:6)
|
||||
- E7. (from org-dartlang-testcase:///conflicting_elements.dart:39:6)
|
||||
- E8. (from org-dartlang-testcase:///conflicting_elements.dart:49:6)
|
||||
- _E8&_Enum&A8. (from org-dartlang-testcase:///conflicting_elements.dart:49:6)
|
||||
- E9. (from org-dartlang-testcase:///conflicting_elements.dart:57:6)
|
||||
- E10. (from org-dartlang-testcase:///conflicting_elements.dart:65:6)
|
||||
- _E10&_Enum&A10. (from org-dartlang-testcase:///conflicting_elements.dart:65:6)
|
||||
- E6. (from org-dartlang-testcase:///conflicting_elements.dart:34:6)
|
||||
- E7. (from org-dartlang-testcase:///conflicting_elements.dart:40:6)
|
||||
- E8. (from org-dartlang-testcase:///conflicting_elements.dart:50:6)
|
||||
- _E8&_Enum&A8. (from org-dartlang-testcase:///conflicting_elements.dart:50:6)
|
||||
- E9. (from org-dartlang-testcase:///conflicting_elements.dart:58:6)
|
||||
- E10. (from org-dartlang-testcase:///conflicting_elements.dart:66:6)
|
||||
- _E10&_Enum&A10. (from org-dartlang-testcase:///conflicting_elements.dart:66:6)
|
||||
|
||||
+35
-41
@@ -2,66 +2,66 @@ library /*isNonNullableByDefault*/;
|
||||
//
|
||||
// Problems in library:
|
||||
//
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:7:13: Error: 'element' is already declared in this scope.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:8:13: Error: 'element' is already declared in this scope.
|
||||
// final int element = 42; // Error.
|
||||
// ^^^^^^^
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:6:3: Context: Previous declaration of 'element'.
|
||||
// element;
|
||||
// ^^^^^^^
|
||||
//
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:12:3: Error: 'element' is already declared in this scope.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:13:3: Error: 'element' is already declared in this scope.
|
||||
// element; // Error.
|
||||
// ^^^^^^^
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:11:3: Context: Previous declaration of 'element'.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:12:3: Context: Previous declaration of 'element'.
|
||||
// element,
|
||||
// ^^^^^^^
|
||||
//
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:18:8: Error: 'element' is already declared in this scope.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:19:8: Error: 'element' is already declared in this scope.
|
||||
// void element() {} // Error.
|
||||
// ^^^^^^^
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:16:3: Context: Previous declaration of 'element'.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:17:3: Context: Previous declaration of 'element'.
|
||||
// element;
|
||||
// ^^^^^^^
|
||||
//
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:24:15: Error: 'element' is already declared in this scope.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:25:15: Error: 'element' is already declared in this scope.
|
||||
// static void element() {} // Error.
|
||||
// ^^^^^^^
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:22:3: Context: Previous declaration of 'element'.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:23:3: Context: Previous declaration of 'element'.
|
||||
// element;
|
||||
// ^^^^^^^
|
||||
//
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:30:14: Error: 'element' is already declared in this scope.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:31:14: Error: 'element' is already declared in this scope.
|
||||
// static int element = 42; // Error.
|
||||
// ^^^^^^^
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:28:3: Context: Previous declaration of 'element'.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:29:3: Context: Previous declaration of 'element'.
|
||||
// element;
|
||||
// ^^^^^^^
|
||||
//
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:34:3: Error: This static member conflicts with an instance member.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:35:3: Error: This static member conflicts with an instance member.
|
||||
// element; // Error.
|
||||
// ^^^^^^^
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:36:12: Context: This is the instance member.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:37:12: Context: This is the instance member.
|
||||
// void set element(E6 value) {}
|
||||
// ^^^^^^^
|
||||
//
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:50:3: Error: Can't declare a member that conflicts with an inherited one.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:51:3: Error: Can't declare a member that conflicts with an inherited one.
|
||||
// element // Error.
|
||||
// ^^^^^^^
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:46:12: Context: This is the inherited member.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:47:12: Context: This is the inherited member.
|
||||
// void set element(dynamic value) {}
|
||||
// ^^^^^^^
|
||||
//
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:58:3: Error: Can't declare a member that conflicts with an inherited one.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:59:3: Error: Can't declare a member that conflicts with an inherited one.
|
||||
// element // Error.
|
||||
// ^^^^^^^
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:54:7: Context: This is the inherited member.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:55:7: Context: This is the inherited member.
|
||||
// int element = 42;
|
||||
// ^^^^^^^
|
||||
//
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:66:3: Error: Can't declare a member that conflicts with an inherited one.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:67:3: Error: Can't declare a member that conflicts with an inherited one.
|
||||
// element // Error.
|
||||
// ^^^^^^^
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:62:8: Context: This is the inherited member.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:63:8: Context: This is the inherited member.
|
||||
// void element() {}
|
||||
// ^^^^^^^
|
||||
//
|
||||
@@ -137,9 +137,7 @@ class E7 extends core::_Enum /*isEnum*/ {
|
||||
static set element(self::E7 value) → void
|
||||
;
|
||||
}
|
||||
class A8 extends core::Object {
|
||||
synthetic constructor •() → self::A8
|
||||
;
|
||||
abstract class A8 extends core::Object /*isMixinDeclaration*/ {
|
||||
set element(dynamic value) → void
|
||||
;
|
||||
}
|
||||
@@ -158,10 +156,8 @@ class E8 extends self::_E8&_Enum&A8 /*isEnum*/ {
|
||||
method _enumToString() → core::String
|
||||
return "E8.${this.{core::_Enum::_name}{core::String}}";
|
||||
}
|
||||
class A9 extends core::Object {
|
||||
abstract class A9 extends core::Object /*isMixinDeclaration*/ {
|
||||
field core::int element;
|
||||
synthetic constructor •() → self::A9
|
||||
;
|
||||
}
|
||||
abstract class _E9&_Enum&A9 = core::_Enum with self::A9 /*isAnonymousMixin*/ {
|
||||
synthetic constructor •(core::int index, core::String _name) → self::_E9&_Enum&A9
|
||||
@@ -180,9 +176,7 @@ class E9 extends self::_E9&_Enum&A9 /*isEnum*/ {
|
||||
method _enumToString() → core::String
|
||||
return "E9.${this.{core::_Enum::_name}{core::String}}";
|
||||
}
|
||||
class A10 extends core::Object {
|
||||
synthetic constructor •() → self::A10
|
||||
;
|
||||
abstract class A10 extends core::Object /*isMixinDeclaration*/ {
|
||||
method element() → void
|
||||
;
|
||||
}
|
||||
@@ -207,19 +201,19 @@ static method main() → dynamic
|
||||
|
||||
Extra constant evaluation status:
|
||||
Evaluated: ListLiteral @ org-dartlang-testcase:///conflicting_elements.dart:5:6 -> ListConstant(const <E1*>[])
|
||||
Evaluated: ListLiteral @ org-dartlang-testcase:///conflicting_elements.dart:10:6 -> ListConstant(const <E2*>[const E2{_Enum.index: 0, _Enum._name: "element"}])
|
||||
Evaluated: ConstructorInvocation @ org-dartlang-testcase:///conflicting_elements.dart:11:3 -> InstanceConstant(const E2{_Enum.index: 0, _Enum._name: "element"})
|
||||
Evaluated: ListLiteral @ org-dartlang-testcase:///conflicting_elements.dart:15:6 -> ListConstant(const <E3*>[])
|
||||
Evaluated: ListLiteral @ org-dartlang-testcase:///conflicting_elements.dart:21:6 -> ListConstant(const <E4*>[])
|
||||
Evaluated: ListLiteral @ org-dartlang-testcase:///conflicting_elements.dart:27:6 -> ListConstant(const <E5*>[])
|
||||
Evaluated: ListLiteral @ org-dartlang-testcase:///conflicting_elements.dart:33:6 -> ListConstant(const <E6*>[const E6{_Enum.index: 0, _Enum._name: "element"}])
|
||||
Evaluated: ConstructorInvocation @ org-dartlang-testcase:///conflicting_elements.dart:34:3 -> InstanceConstant(const E6{_Enum.index: 0, _Enum._name: "element"})
|
||||
Evaluated: ListLiteral @ org-dartlang-testcase:///conflicting_elements.dart:39:6 -> ListConstant(const <E7*>[const E7{_Enum.index: 0, _Enum._name: "element"}])
|
||||
Evaluated: ConstructorInvocation @ org-dartlang-testcase:///conflicting_elements.dart:40:3 -> InstanceConstant(const E7{_Enum.index: 0, _Enum._name: "element"})
|
||||
Evaluated: ListLiteral @ org-dartlang-testcase:///conflicting_elements.dart:49:6 -> ListConstant(const <E8*>[const E8{}])
|
||||
Evaluated: ConstructorInvocation @ org-dartlang-testcase:///conflicting_elements.dart:50:3 -> InstanceConstant(const E8{})
|
||||
Evaluated: ListLiteral @ org-dartlang-testcase:///conflicting_elements.dart:57:6 -> ListConstant(const <E9*>[const E9{}])
|
||||
Evaluated: ConstructorInvocation @ org-dartlang-testcase:///conflicting_elements.dart:58:3 -> InstanceConstant(const E9{})
|
||||
Evaluated: ListLiteral @ org-dartlang-testcase:///conflicting_elements.dart:65:6 -> ListConstant(const <E10*>[const E10{}])
|
||||
Evaluated: ConstructorInvocation @ org-dartlang-testcase:///conflicting_elements.dart:66:3 -> InstanceConstant(const E10{})
|
||||
Evaluated: ListLiteral @ org-dartlang-testcase:///conflicting_elements.dart:11:6 -> ListConstant(const <E2*>[const E2{_Enum.index: 0, _Enum._name: "element"}])
|
||||
Evaluated: ConstructorInvocation @ org-dartlang-testcase:///conflicting_elements.dart:12:3 -> InstanceConstant(const E2{_Enum.index: 0, _Enum._name: "element"})
|
||||
Evaluated: ListLiteral @ org-dartlang-testcase:///conflicting_elements.dart:16:6 -> ListConstant(const <E3*>[])
|
||||
Evaluated: ListLiteral @ org-dartlang-testcase:///conflicting_elements.dart:22:6 -> ListConstant(const <E4*>[])
|
||||
Evaluated: ListLiteral @ org-dartlang-testcase:///conflicting_elements.dart:28:6 -> ListConstant(const <E5*>[])
|
||||
Evaluated: ListLiteral @ org-dartlang-testcase:///conflicting_elements.dart:34:6 -> ListConstant(const <E6*>[const E6{_Enum.index: 0, _Enum._name: "element"}])
|
||||
Evaluated: ConstructorInvocation @ org-dartlang-testcase:///conflicting_elements.dart:35:3 -> InstanceConstant(const E6{_Enum.index: 0, _Enum._name: "element"})
|
||||
Evaluated: ListLiteral @ org-dartlang-testcase:///conflicting_elements.dart:40:6 -> ListConstant(const <E7*>[const E7{_Enum.index: 0, _Enum._name: "element"}])
|
||||
Evaluated: ConstructorInvocation @ org-dartlang-testcase:///conflicting_elements.dart:41:3 -> InstanceConstant(const E7{_Enum.index: 0, _Enum._name: "element"})
|
||||
Evaluated: ListLiteral @ org-dartlang-testcase:///conflicting_elements.dart:50:6 -> ListConstant(const <E8*>[const E8{}])
|
||||
Evaluated: ConstructorInvocation @ org-dartlang-testcase:///conflicting_elements.dart:51:3 -> InstanceConstant(const E8{})
|
||||
Evaluated: ListLiteral @ org-dartlang-testcase:///conflicting_elements.dart:58:6 -> ListConstant(const <E9*>[const E9{}])
|
||||
Evaluated: ConstructorInvocation @ org-dartlang-testcase:///conflicting_elements.dart:59:3 -> InstanceConstant(const E9{})
|
||||
Evaluated: ListLiteral @ org-dartlang-testcase:///conflicting_elements.dart:66:6 -> ListConstant(const <E10*>[const E10{}])
|
||||
Evaluated: ConstructorInvocation @ org-dartlang-testcase:///conflicting_elements.dart:67:3 -> InstanceConstant(const E10{})
|
||||
Extra constant evaluation: evaluated: 72, effectively constant: 16
|
||||
|
||||
+29
-38
@@ -2,70 +2,70 @@ library /*isNonNullableByDefault*/;
|
||||
//
|
||||
// Problems in library:
|
||||
//
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:7:13: Error: 'element' is already declared in this scope.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:8:13: Error: 'element' is already declared in this scope.
|
||||
// final int element = 42; // Error.
|
||||
// ^^^^^^^
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:6:3: Context: Previous declaration of 'element'.
|
||||
// element;
|
||||
// ^^^^^^^
|
||||
//
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:12:3: Error: 'element' is already declared in this scope.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:13:3: Error: 'element' is already declared in this scope.
|
||||
// element; // Error.
|
||||
// ^^^^^^^
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:11:3: Context: Previous declaration of 'element'.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:12:3: Context: Previous declaration of 'element'.
|
||||
// element,
|
||||
// ^^^^^^^
|
||||
//
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:18:8: Error: 'element' is already declared in this scope.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:19:8: Error: 'element' is already declared in this scope.
|
||||
// void element() {} // Error.
|
||||
// ^^^^^^^
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:16:3: Context: Previous declaration of 'element'.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:17:3: Context: Previous declaration of 'element'.
|
||||
// element;
|
||||
// ^^^^^^^
|
||||
//
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:24:15: Error: 'element' is already declared in this scope.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:25:15: Error: 'element' is already declared in this scope.
|
||||
// static void element() {} // Error.
|
||||
// ^^^^^^^
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:22:3: Context: Previous declaration of 'element'.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:23:3: Context: Previous declaration of 'element'.
|
||||
// element;
|
||||
// ^^^^^^^
|
||||
//
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:30:14: Error: 'element' is already declared in this scope.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:31:14: Error: 'element' is already declared in this scope.
|
||||
// static int element = 42; // Error.
|
||||
// ^^^^^^^
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:28:3: Context: Previous declaration of 'element'.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:29:3: Context: Previous declaration of 'element'.
|
||||
// element;
|
||||
// ^^^^^^^
|
||||
//
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:34:3: Error: This static member conflicts with an instance member.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:35:3: Error: This static member conflicts with an instance member.
|
||||
// element; // Error.
|
||||
// ^^^^^^^
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:36:12: Context: This is the instance member.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:37:12: Context: This is the instance member.
|
||||
// void set element(E6 value) {}
|
||||
// ^^^^^^^
|
||||
//
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:50:3: Error: Can't declare a member that conflicts with an inherited one.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:51:3: Error: Can't declare a member that conflicts with an inherited one.
|
||||
// element // Error.
|
||||
// ^^^^^^^
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:46:12: Context: This is the inherited member.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:47:12: Context: This is the inherited member.
|
||||
// void set element(dynamic value) {}
|
||||
// ^^^^^^^
|
||||
//
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:58:3: Error: Can't declare a member that conflicts with an inherited one.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:59:3: Error: Can't declare a member that conflicts with an inherited one.
|
||||
// element // Error.
|
||||
// ^^^^^^^
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:54:7: Context: This is the inherited member.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:55:7: Context: This is the inherited member.
|
||||
// int element = 42;
|
||||
// ^^^^^^^
|
||||
//
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:66:3: Error: Can't declare a member that conflicts with an inherited one.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:67:3: Error: Can't declare a member that conflicts with an inherited one.
|
||||
// element // Error.
|
||||
// ^^^^^^^
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:62:8: Context: This is the inherited member.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:63:8: Context: This is the inherited member.
|
||||
// void element() {}
|
||||
// ^^^^^^^
|
||||
//
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:57:6: Error: A constant constructor can't call a non-constant super constructor.
|
||||
// pkg/front_end/testcases/enhanced_enums/conflicting_elements.dart:58:6: Error: A constant constructor can't call a non-constant super constructor.
|
||||
// enum E9 with A9 {
|
||||
// ^
|
||||
//
|
||||
@@ -137,10 +137,7 @@ class E7 extends core::_Enum /*isEnum*/ {
|
||||
return "E7.${this.{core::_Enum::_name}{core::String}}";
|
||||
static set element(self::E7 value) → void {}
|
||||
}
|
||||
class A8 extends core::Object {
|
||||
synthetic constructor •() → self::A8
|
||||
: super core::Object::•()
|
||||
;
|
||||
abstract class A8 extends core::Object /*isMixinDeclaration*/ {
|
||||
set element(dynamic value) → void {}
|
||||
}
|
||||
abstract class _E8&_Enum&A8 extends core::_Enum implements self::A8 /*isAnonymousMixin,isEliminatedMixin,hasConstConstructor*/ {
|
||||
@@ -158,11 +155,8 @@ class E8 extends self::_E8&_Enum&A8 /*isEnum*/ {
|
||||
method _enumToString() → core::String
|
||||
return "E8.${this.{core::_Enum::_name}{core::String}}";
|
||||
}
|
||||
class A9 extends core::Object {
|
||||
abstract class A9 extends core::Object /*isMixinDeclaration*/ {
|
||||
field core::int element = 42;
|
||||
synthetic constructor •() → self::A9
|
||||
: super core::Object::•()
|
||||
;
|
||||
}
|
||||
abstract class _E9&_Enum&A9 extends core::_Enum implements self::A9 /*isAnonymousMixin,isEliminatedMixin*/ {
|
||||
field core::int element = 42;
|
||||
@@ -179,10 +173,7 @@ class E9 extends self::_E9&_Enum&A9 /*isEnum*/ {
|
||||
method _enumToString() → core::String
|
||||
return "E9.${this.{core::_Enum::_name}{core::String}}";
|
||||
}
|
||||
class A10 extends core::Object {
|
||||
synthetic constructor •() → self::A10
|
||||
: super core::Object::•()
|
||||
;
|
||||
abstract class A10 extends core::Object /*isMixinDeclaration*/ {
|
||||
method element() → void {}
|
||||
}
|
||||
abstract class _E10&_Enum&A10 extends core::_Enum implements self::A10 /*isAnonymousMixin,isEliminatedMixin,hasConstConstructor*/ {
|
||||
@@ -224,13 +215,13 @@ constants {
|
||||
|
||||
Constructor coverage from constants:
|
||||
org-dartlang-testcase:///conflicting_elements.dart:
|
||||
- E2. (from org-dartlang-testcase:///conflicting_elements.dart:10:6)
|
||||
- E2. (from org-dartlang-testcase:///conflicting_elements.dart:11:6)
|
||||
- _Enum. (from org-dartlang-sdk:///sdk/lib/core/enum.dart)
|
||||
- Object. (from org-dartlang-sdk:///sdk/lib/core/object.dart)
|
||||
- E6. (from org-dartlang-testcase:///conflicting_elements.dart:33:6)
|
||||
- E7. (from org-dartlang-testcase:///conflicting_elements.dart:39:6)
|
||||
- E8. (from org-dartlang-testcase:///conflicting_elements.dart:49:6)
|
||||
- _E8&_Enum&A8. (from org-dartlang-testcase:///conflicting_elements.dart:49:6)
|
||||
- E9. (from org-dartlang-testcase:///conflicting_elements.dart:57:6)
|
||||
- E10. (from org-dartlang-testcase:///conflicting_elements.dart:65:6)
|
||||
- _E10&_Enum&A10. (from org-dartlang-testcase:///conflicting_elements.dart:65:6)
|
||||
- E6. (from org-dartlang-testcase:///conflicting_elements.dart:34:6)
|
||||
- E7. (from org-dartlang-testcase:///conflicting_elements.dart:40:6)
|
||||
- E8. (from org-dartlang-testcase:///conflicting_elements.dart:50:6)
|
||||
- _E8&_Enum&A8. (from org-dartlang-testcase:///conflicting_elements.dart:50:6)
|
||||
- E9. (from org-dartlang-testcase:///conflicting_elements.dart:58:6)
|
||||
- E10. (from org-dartlang-testcase:///conflicting_elements.dart:66:6)
|
||||
- _E10&_Enum&A10. (from org-dartlang-testcase:///conflicting_elements.dart:66:6)
|
||||
|
||||
@@ -2,25 +2,25 @@
|
||||
// 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 A {
|
||||
mixin M1 {
|
||||
String get foo => "foo";
|
||||
}
|
||||
|
||||
class B {
|
||||
mixin M2 {
|
||||
int bar() => 42;
|
||||
}
|
||||
|
||||
mixin M {
|
||||
mixin M3 {
|
||||
void set callOnAssignment(void Function() f) {
|
||||
f();
|
||||
}
|
||||
}
|
||||
|
||||
enum E1 with A { one, two }
|
||||
enum E1 with M1 { one, two }
|
||||
|
||||
enum E2 with A, B { one, two }
|
||||
enum E2 with M1, M2 { one, two }
|
||||
|
||||
enum E3 with M { one, two }
|
||||
enum E3 with M3 { one, two }
|
||||
|
||||
expectEquals(x, y) {
|
||||
if (x != y) {
|
||||
|
||||
@@ -2,79 +2,73 @@ library /*isNonNullableByDefault*/;
|
||||
import self as self;
|
||||
import "dart:core" as core;
|
||||
|
||||
class A extends core::Object {
|
||||
synthetic constructor •() → self::A
|
||||
: super core::Object::•()
|
||||
;
|
||||
abstract class M1 extends core::Object /*isMixinDeclaration*/ {
|
||||
get foo() → core::String
|
||||
return "foo";
|
||||
}
|
||||
class B extends core::Object {
|
||||
synthetic constructor •() → self::B
|
||||
: super core::Object::•()
|
||||
;
|
||||
abstract class M2 extends core::Object /*isMixinDeclaration*/ {
|
||||
method bar() → core::int
|
||||
return 42;
|
||||
}
|
||||
abstract class M extends core::Object /*isMixinDeclaration*/ {
|
||||
abstract class M3 extends core::Object /*isMixinDeclaration*/ {
|
||||
set callOnAssignment(() → void f) → void {
|
||||
f(){() → void};
|
||||
}
|
||||
}
|
||||
abstract class _E1&_Enum&A = core::_Enum with self::A /*isAnonymousMixin,hasConstConstructor*/ {
|
||||
const synthetic constructor •(core::int index, core::String _name) → self::_E1&_Enum&A
|
||||
abstract class _E1&_Enum&M1 = core::_Enum with self::M1 /*isAnonymousMixin,hasConstConstructor*/ {
|
||||
const synthetic constructor •(core::int index, core::String _name) → self::_E1&_Enum&M1
|
||||
: super core::_Enum::•(index, _name)
|
||||
;
|
||||
mixin-super-stub get foo() → core::String
|
||||
return super.{self::A::foo};
|
||||
return super.{self::M1::foo};
|
||||
}
|
||||
class E1 extends self::_E1&_Enum&A /*isEnum*/ {
|
||||
class E1 extends self::_E1&_Enum&M1 /*isEnum*/ {
|
||||
static const field core::List<self::E1> values = #C7;
|
||||
enum-element static const field self::E1 one = #C3;
|
||||
enum-element static const field self::E1 two = #C6;
|
||||
const constructor •(core::int #index, core::String #name) → self::E1
|
||||
: super self::_E1&_Enum&A::•(#index, #name)
|
||||
: super self::_E1&_Enum&M1::•(#index, #name)
|
||||
;
|
||||
method _enumToString() → core::String
|
||||
return "E1.${this.{core::_Enum::_name}{core::String}}";
|
||||
}
|
||||
abstract class _E2&_Enum&A = core::_Enum with self::A /*isAnonymousMixin,hasConstConstructor*/ {
|
||||
const synthetic constructor •(core::int index, core::String _name) → self::_E2&_Enum&A
|
||||
abstract class _E2&_Enum&M1 = core::_Enum with self::M1 /*isAnonymousMixin,hasConstConstructor*/ {
|
||||
const synthetic constructor •(core::int index, core::String _name) → self::_E2&_Enum&M1
|
||||
: super core::_Enum::•(index, _name)
|
||||
;
|
||||
mixin-super-stub get foo() → core::String
|
||||
return super.{self::A::foo};
|
||||
return super.{self::M1::foo};
|
||||
}
|
||||
abstract class _E2&_Enum&A&B = self::_E2&_Enum&A with self::B /*isAnonymousMixin,hasConstConstructor*/ {
|
||||
const synthetic constructor •(core::int index, core::String _name) → self::_E2&_Enum&A&B
|
||||
: super self::_E2&_Enum&A::•(index, _name)
|
||||
abstract class _E2&_Enum&M1&M2 = self::_E2&_Enum&M1 with self::M2 /*isAnonymousMixin,hasConstConstructor*/ {
|
||||
const synthetic constructor •(core::int index, core::String _name) → self::_E2&_Enum&M1&M2
|
||||
: super self::_E2&_Enum&M1::•(index, _name)
|
||||
;
|
||||
mixin-super-stub method bar() → core::int
|
||||
return super.{self::B::bar}();
|
||||
return super.{self::M2::bar}();
|
||||
}
|
||||
class E2 extends self::_E2&_Enum&A&B /*isEnum*/ {
|
||||
class E2 extends self::_E2&_Enum&M1&M2 /*isEnum*/ {
|
||||
static const field core::List<self::E2> values = #C10;
|
||||
enum-element static const field self::E2 one = #C8;
|
||||
enum-element static const field self::E2 two = #C9;
|
||||
const constructor •(core::int #index, core::String #name) → self::E2
|
||||
: super self::_E2&_Enum&A&B::•(#index, #name)
|
||||
: super self::_E2&_Enum&M1&M2::•(#index, #name)
|
||||
;
|
||||
method _enumToString() → core::String
|
||||
return "E2.${this.{core::_Enum::_name}{core::String}}";
|
||||
}
|
||||
abstract class _E3&_Enum&M = core::_Enum with self::M /*isAnonymousMixin,hasConstConstructor*/ {
|
||||
const synthetic constructor •(core::int index, core::String _name) → self::_E3&_Enum&M
|
||||
abstract class _E3&_Enum&M3 = core::_Enum with self::M3 /*isAnonymousMixin,hasConstConstructor*/ {
|
||||
const synthetic constructor •(core::int index, core::String _name) → self::_E3&_Enum&M3
|
||||
: super core::_Enum::•(index, _name)
|
||||
;
|
||||
mixin-super-stub set callOnAssignment(() → void f) → void
|
||||
return super.{self::M::callOnAssignment} = f;
|
||||
return super.{self::M3::callOnAssignment} = f;
|
||||
}
|
||||
class E3 extends self::_E3&_Enum&M /*isEnum*/ {
|
||||
class E3 extends self::_E3&_Enum&M3 /*isEnum*/ {
|
||||
static const field core::List<self::E3> values = #C13;
|
||||
enum-element static const field self::E3 one = #C11;
|
||||
enum-element static const field self::E3 two = #C12;
|
||||
const constructor •(core::int #index, core::String #name) → self::E3
|
||||
: super self::_E3&_Enum&M::•(#index, #name)
|
||||
: super self::_E3&_Enum&M3::•(#index, #name)
|
||||
;
|
||||
method _enumToString() → core::String
|
||||
return "E3.${this.{core::_Enum::_name}{core::String}}";
|
||||
@@ -96,14 +90,14 @@ static method throwOnCall() → void {
|
||||
throw 42;
|
||||
}
|
||||
static method main() → dynamic {
|
||||
self::expectEquals(#C3.{self::_E1&_Enum&A::foo}{core::String}, "foo");
|
||||
self::expectEquals(#C6.{self::_E1&_Enum&A::foo}{core::String}, "foo");
|
||||
self::expectEquals(#C8.{self::_E2&_Enum&A::foo}{core::String}, "foo");
|
||||
self::expectEquals(#C9.{self::_E2&_Enum&A::foo}{core::String}, "foo");
|
||||
self::expectEquals(#C8.{self::_E2&_Enum&A&B::bar}(){() → core::int}, "bar");
|
||||
self::expectEquals(#C9.{self::_E2&_Enum&A&B::bar}(){() → core::int}, "bar");
|
||||
self::expectThrows(#C11.{self::_E3&_Enum&M::callOnAssignment} = #C14);
|
||||
self::expectThrows(#C12.{self::_E3&_Enum&M::callOnAssignment} = #C14);
|
||||
self::expectEquals(#C3.{self::_E1&_Enum&M1::foo}{core::String}, "foo");
|
||||
self::expectEquals(#C6.{self::_E1&_Enum&M1::foo}{core::String}, "foo");
|
||||
self::expectEquals(#C8.{self::_E2&_Enum&M1::foo}{core::String}, "foo");
|
||||
self::expectEquals(#C9.{self::_E2&_Enum&M1::foo}{core::String}, "foo");
|
||||
self::expectEquals(#C8.{self::_E2&_Enum&M1&M2::bar}(){() → core::int}, "bar");
|
||||
self::expectEquals(#C9.{self::_E2&_Enum&M1&M2::bar}(){() → core::int}, "bar");
|
||||
self::expectThrows(#C11.{self::_E3&_Enum&M3::callOnAssignment} = #C14);
|
||||
self::expectThrows(#C12.{self::_E3&_Enum&M3::callOnAssignment} = #C14);
|
||||
}
|
||||
|
||||
constants {
|
||||
@@ -127,11 +121,11 @@ constants {
|
||||
Constructor coverage from constants:
|
||||
org-dartlang-testcase:///simple_mixins.dart:
|
||||
- E1. (from org-dartlang-testcase:///simple_mixins.dart:19:6)
|
||||
- _E1&_Enum&A. (from org-dartlang-testcase:///simple_mixins.dart:19:6)
|
||||
- _E1&_Enum&M1. (from org-dartlang-testcase:///simple_mixins.dart:19: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:///simple_mixins.dart:21:6)
|
||||
- _E2&_Enum&A&B. (from org-dartlang-testcase:///simple_mixins.dart:21:6)
|
||||
- _E2&_Enum&A. (from org-dartlang-testcase:///simple_mixins.dart:21:6)
|
||||
- _E2&_Enum&M1&M2. (from org-dartlang-testcase:///simple_mixins.dart:21:6)
|
||||
- _E2&_Enum&M1. (from org-dartlang-testcase:///simple_mixins.dart:21:6)
|
||||
- E3. (from org-dartlang-testcase:///simple_mixins.dart:23:6)
|
||||
- _E3&_Enum&M. (from org-dartlang-testcase:///simple_mixins.dart:23:6)
|
||||
- _E3&_Enum&M3. (from org-dartlang-testcase:///simple_mixins.dart:23:6)
|
||||
|
||||
+30
-36
@@ -2,80 +2,74 @@ library /*isNonNullableByDefault*/;
|
||||
import self as self;
|
||||
import "dart:core" as core;
|
||||
|
||||
class A extends core::Object {
|
||||
synthetic constructor •() → self::A
|
||||
: super core::Object::•()
|
||||
;
|
||||
abstract class M1 extends core::Object /*isMixinDeclaration*/ {
|
||||
get foo() → core::String
|
||||
return "foo";
|
||||
}
|
||||
class B extends core::Object {
|
||||
synthetic constructor •() → self::B
|
||||
: super core::Object::•()
|
||||
;
|
||||
abstract class M2 extends core::Object /*isMixinDeclaration*/ {
|
||||
method bar() → core::int
|
||||
return 42;
|
||||
}
|
||||
abstract class M extends core::Object /*isMixinDeclaration*/ {
|
||||
abstract class M3 extends core::Object /*isMixinDeclaration*/ {
|
||||
set callOnAssignment(() → void f) → void {
|
||||
f(){() → void};
|
||||
}
|
||||
}
|
||||
abstract class _E1&_Enum&A extends core::_Enum implements self::A /*isAnonymousMixin,isEliminatedMixin,hasConstConstructor*/ {
|
||||
const synthetic constructor •(core::int index, core::String _name) → self::_E1&_Enum&A
|
||||
abstract class _E1&_Enum&M1 extends core::_Enum implements self::M1 /*isAnonymousMixin,isEliminatedMixin,hasConstConstructor*/ {
|
||||
const synthetic constructor •(core::int index, core::String _name) → self::_E1&_Enum&M1
|
||||
: super core::_Enum::•(index, _name)
|
||||
;
|
||||
get foo() → core::String
|
||||
return "foo";
|
||||
}
|
||||
class E1 extends self::_E1&_Enum&A /*isEnum*/ {
|
||||
class E1 extends self::_E1&_Enum&M1 /*isEnum*/ {
|
||||
static const field core::List<self::E1> values = #C7;
|
||||
enum-element static const field self::E1 one = #C3;
|
||||
enum-element static const field self::E1 two = #C6;
|
||||
const constructor •(core::int #index, core::String #name) → self::E1
|
||||
: super self::_E1&_Enum&A::•(#index, #name)
|
||||
: super self::_E1&_Enum&M1::•(#index, #name)
|
||||
;
|
||||
method _enumToString() → core::String
|
||||
return "E1.${this.{core::_Enum::_name}{core::String}}";
|
||||
}
|
||||
abstract class _E2&_Enum&A extends core::_Enum implements self::A /*isAnonymousMixin,isEliminatedMixin,hasConstConstructor*/ {
|
||||
const synthetic constructor •(core::int index, core::String _name) → self::_E2&_Enum&A
|
||||
abstract class _E2&_Enum&M1 extends core::_Enum implements self::M1 /*isAnonymousMixin,isEliminatedMixin,hasConstConstructor*/ {
|
||||
const synthetic constructor •(core::int index, core::String _name) → self::_E2&_Enum&M1
|
||||
: super core::_Enum::•(index, _name)
|
||||
;
|
||||
get foo() → core::String
|
||||
return "foo";
|
||||
}
|
||||
abstract class _E2&_Enum&A&B extends self::_E2&_Enum&A implements self::B /*isAnonymousMixin,isEliminatedMixin,hasConstConstructor*/ {
|
||||
const synthetic constructor •(core::int index, core::String _name) → self::_E2&_Enum&A&B
|
||||
: super self::_E2&_Enum&A::•(index, _name)
|
||||
abstract class _E2&_Enum&M1&M2 extends self::_E2&_Enum&M1 implements self::M2 /*isAnonymousMixin,isEliminatedMixin,hasConstConstructor*/ {
|
||||
const synthetic constructor •(core::int index, core::String _name) → self::_E2&_Enum&M1&M2
|
||||
: super self::_E2&_Enum&M1::•(index, _name)
|
||||
;
|
||||
method bar() → core::int
|
||||
return 42;
|
||||
}
|
||||
class E2 extends self::_E2&_Enum&A&B /*isEnum*/ {
|
||||
class E2 extends self::_E2&_Enum&M1&M2 /*isEnum*/ {
|
||||
static const field core::List<self::E2> values = #C10;
|
||||
enum-element static const field self::E2 one = #C8;
|
||||
enum-element static const field self::E2 two = #C9;
|
||||
const constructor •(core::int #index, core::String #name) → self::E2
|
||||
: super self::_E2&_Enum&A&B::•(#index, #name)
|
||||
: super self::_E2&_Enum&M1&M2::•(#index, #name)
|
||||
;
|
||||
method _enumToString() → core::String
|
||||
return "E2.${this.{core::_Enum::_name}{core::String}}";
|
||||
}
|
||||
abstract class _E3&_Enum&M extends core::_Enum implements self::M /*isAnonymousMixin,isEliminatedMixin,hasConstConstructor*/ {
|
||||
const synthetic constructor •(core::int index, core::String _name) → self::_E3&_Enum&M
|
||||
abstract class _E3&_Enum&M3 extends core::_Enum implements self::M3 /*isAnonymousMixin,isEliminatedMixin,hasConstConstructor*/ {
|
||||
const synthetic constructor •(core::int index, core::String _name) → self::_E3&_Enum&M3
|
||||
: super core::_Enum::•(index, _name)
|
||||
;
|
||||
set callOnAssignment(() → void f) → void {
|
||||
f(){() → void};
|
||||
}
|
||||
}
|
||||
class E3 extends self::_E3&_Enum&M /*isEnum*/ {
|
||||
class E3 extends self::_E3&_Enum&M3 /*isEnum*/ {
|
||||
static const field core::List<self::E3> values = #C13;
|
||||
enum-element static const field self::E3 one = #C11;
|
||||
enum-element static const field self::E3 two = #C12;
|
||||
const constructor •(core::int #index, core::String #name) → self::E3
|
||||
: super self::_E3&_Enum&M::•(#index, #name)
|
||||
: super self::_E3&_Enum&M3::•(#index, #name)
|
||||
;
|
||||
method _enumToString() → core::String
|
||||
return "E3.${this.{core::_Enum::_name}{core::String}}";
|
||||
@@ -97,14 +91,14 @@ static method throwOnCall() → void {
|
||||
throw 42;
|
||||
}
|
||||
static method main() → dynamic {
|
||||
self::expectEquals(#C3.{self::_E1&_Enum&A::foo}{core::String}, "foo");
|
||||
self::expectEquals(#C6.{self::_E1&_Enum&A::foo}{core::String}, "foo");
|
||||
self::expectEquals(#C8.{self::_E2&_Enum&A::foo}{core::String}, "foo");
|
||||
self::expectEquals(#C9.{self::_E2&_Enum&A::foo}{core::String}, "foo");
|
||||
self::expectEquals(#C8.{self::_E2&_Enum&A&B::bar}(){() → core::int}, "bar");
|
||||
self::expectEquals(#C9.{self::_E2&_Enum&A&B::bar}(){() → core::int}, "bar");
|
||||
self::expectThrows(#C11.{self::_E3&_Enum&M::callOnAssignment} = #C14);
|
||||
self::expectThrows(#C12.{self::_E3&_Enum&M::callOnAssignment} = #C14);
|
||||
self::expectEquals(#C3.{self::_E1&_Enum&M1::foo}{core::String}, "foo");
|
||||
self::expectEquals(#C6.{self::_E1&_Enum&M1::foo}{core::String}, "foo");
|
||||
self::expectEquals(#C8.{self::_E2&_Enum&M1::foo}{core::String}, "foo");
|
||||
self::expectEquals(#C9.{self::_E2&_Enum&M1::foo}{core::String}, "foo");
|
||||
self::expectEquals(#C8.{self::_E2&_Enum&M1&M2::bar}(){() → core::int}, "bar");
|
||||
self::expectEquals(#C9.{self::_E2&_Enum&M1&M2::bar}(){() → core::int}, "bar");
|
||||
self::expectThrows(#C11.{self::_E3&_Enum&M3::callOnAssignment} = #C14);
|
||||
self::expectThrows(#C12.{self::_E3&_Enum&M3::callOnAssignment} = #C14);
|
||||
}
|
||||
|
||||
constants {
|
||||
@@ -128,11 +122,11 @@ constants {
|
||||
Constructor coverage from constants:
|
||||
org-dartlang-testcase:///simple_mixins.dart:
|
||||
- E1. (from org-dartlang-testcase:///simple_mixins.dart:19:6)
|
||||
- _E1&_Enum&A. (from org-dartlang-testcase:///simple_mixins.dart:19:6)
|
||||
- _E1&_Enum&M1. (from org-dartlang-testcase:///simple_mixins.dart:19: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:///simple_mixins.dart:21:6)
|
||||
- _E2&_Enum&A&B. (from org-dartlang-testcase:///simple_mixins.dart:21:6)
|
||||
- _E2&_Enum&A. (from org-dartlang-testcase:///simple_mixins.dart:21:6)
|
||||
- _E2&_Enum&M1&M2. (from org-dartlang-testcase:///simple_mixins.dart:21:6)
|
||||
- _E2&_Enum&M1. (from org-dartlang-testcase:///simple_mixins.dart:21:6)
|
||||
- E3. (from org-dartlang-testcase:///simple_mixins.dart:23:6)
|
||||
- _E3&_Enum&M. (from org-dartlang-testcase:///simple_mixins.dart:23:6)
|
||||
- _E3&_Enum&M3. (from org-dartlang-testcase:///simple_mixins.dart:23:6)
|
||||
|
||||
@@ -1,20 +1,18 @@
|
||||
class A {
|
||||
mixin M1 {
|
||||
String get foo => "foo";
|
||||
}
|
||||
|
||||
class B {
|
||||
mixin M2 {
|
||||
int bar() => 42;
|
||||
}
|
||||
|
||||
mixin M {
|
||||
mixin M3 {
|
||||
void set callOnAssignment(void Function() f) {}
|
||||
}
|
||||
|
||||
enum E1 with A { one, two }
|
||||
enum E1 with M1 { one, two }
|
||||
|
||||
enum E2 with A, B { one, two }
|
||||
enum E2 with M1, M2 { one, two }
|
||||
|
||||
enum E3 with M { one, two }
|
||||
enum E3 with M3 { one, two }
|
||||
|
||||
expectEquals(x, y) {}
|
||||
expectThrows(void Function() f) {}
|
||||
|
||||
+10
-12
@@ -1,21 +1,19 @@
|
||||
class A {
|
||||
String get foo => "foo";
|
||||
}
|
||||
enum E1 with M1 { one, two }
|
||||
|
||||
class B {
|
||||
int bar() => 42;
|
||||
}
|
||||
enum E2 with M1, M2 { one, two }
|
||||
|
||||
enum E1 with A { one, two }
|
||||
|
||||
enum E2 with A, B { one, two }
|
||||
|
||||
enum E3 with M { one, two }
|
||||
enum E3 with M3 { one, two }
|
||||
|
||||
expectEquals(x, y) {}
|
||||
expectThrows(void Function() f) {}
|
||||
main() {}
|
||||
mixin M {
|
||||
mixin M1 {
|
||||
String get foo => "foo";
|
||||
}
|
||||
mixin M2 {
|
||||
int bar() => 42;
|
||||
}
|
||||
mixin M3 {
|
||||
void set callOnAssignment(void Function() f) {}
|
||||
}
|
||||
void throwOnCall() {}
|
||||
|
||||
@@ -2,79 +2,73 @@ library /*isNonNullableByDefault*/;
|
||||
import self as self;
|
||||
import "dart:core" as core;
|
||||
|
||||
class A extends core::Object {
|
||||
synthetic constructor •() → self::A
|
||||
: super core::Object::•()
|
||||
;
|
||||
abstract class M1 extends core::Object /*isMixinDeclaration*/ {
|
||||
get foo() → core::String
|
||||
return "foo";
|
||||
}
|
||||
class B extends core::Object {
|
||||
synthetic constructor •() → self::B
|
||||
: super core::Object::•()
|
||||
;
|
||||
abstract class M2 extends core::Object /*isMixinDeclaration*/ {
|
||||
method bar() → core::int
|
||||
return 42;
|
||||
}
|
||||
abstract class M extends core::Object /*isMixinDeclaration*/ {
|
||||
abstract class M3 extends core::Object /*isMixinDeclaration*/ {
|
||||
set callOnAssignment(() → void f) → void {
|
||||
f(){() → void};
|
||||
}
|
||||
}
|
||||
abstract class _E1&_Enum&A = core::_Enum with self::A /*isAnonymousMixin,hasConstConstructor*/ {
|
||||
const synthetic constructor •(core::int index, core::String _name) → self::_E1&_Enum&A
|
||||
abstract class _E1&_Enum&M1 = core::_Enum with self::M1 /*isAnonymousMixin,hasConstConstructor*/ {
|
||||
const synthetic constructor •(core::int index, core::String _name) → self::_E1&_Enum&M1
|
||||
: super core::_Enum::•(index, _name)
|
||||
;
|
||||
mixin-super-stub get foo() → core::String
|
||||
return super.{self::A::foo};
|
||||
return super.{self::M1::foo};
|
||||
}
|
||||
class E1 extends self::_E1&_Enum&A /*isEnum*/ {
|
||||
class E1 extends self::_E1&_Enum&M1 /*isEnum*/ {
|
||||
static const field core::List<self::E1> values = #C7;
|
||||
enum-element static const field self::E1 one = #C3;
|
||||
enum-element static const field self::E1 two = #C6;
|
||||
const constructor •(core::int #index, core::String #name) → self::E1
|
||||
: super self::_E1&_Enum&A::•(#index, #name)
|
||||
: super self::_E1&_Enum&M1::•(#index, #name)
|
||||
;
|
||||
method _enumToString() → core::String
|
||||
return "E1.${this.{core::_Enum::_name}{core::String}}";
|
||||
}
|
||||
abstract class _E2&_Enum&A = core::_Enum with self::A /*isAnonymousMixin,hasConstConstructor*/ {
|
||||
const synthetic constructor •(core::int index, core::String _name) → self::_E2&_Enum&A
|
||||
abstract class _E2&_Enum&M1 = core::_Enum with self::M1 /*isAnonymousMixin,hasConstConstructor*/ {
|
||||
const synthetic constructor •(core::int index, core::String _name) → self::_E2&_Enum&M1
|
||||
: super core::_Enum::•(index, _name)
|
||||
;
|
||||
mixin-super-stub get foo() → core::String
|
||||
return super.{self::A::foo};
|
||||
return super.{self::M1::foo};
|
||||
}
|
||||
abstract class _E2&_Enum&A&B = self::_E2&_Enum&A with self::B /*isAnonymousMixin,hasConstConstructor*/ {
|
||||
const synthetic constructor •(core::int index, core::String _name) → self::_E2&_Enum&A&B
|
||||
: super self::_E2&_Enum&A::•(index, _name)
|
||||
abstract class _E2&_Enum&M1&M2 = self::_E2&_Enum&M1 with self::M2 /*isAnonymousMixin,hasConstConstructor*/ {
|
||||
const synthetic constructor •(core::int index, core::String _name) → self::_E2&_Enum&M1&M2
|
||||
: super self::_E2&_Enum&M1::•(index, _name)
|
||||
;
|
||||
mixin-super-stub method bar() → core::int
|
||||
return super.{self::B::bar}();
|
||||
return super.{self::M2::bar}();
|
||||
}
|
||||
class E2 extends self::_E2&_Enum&A&B /*isEnum*/ {
|
||||
class E2 extends self::_E2&_Enum&M1&M2 /*isEnum*/ {
|
||||
static const field core::List<self::E2> values = #C10;
|
||||
enum-element static const field self::E2 one = #C8;
|
||||
enum-element static const field self::E2 two = #C9;
|
||||
const constructor •(core::int #index, core::String #name) → self::E2
|
||||
: super self::_E2&_Enum&A&B::•(#index, #name)
|
||||
: super self::_E2&_Enum&M1&M2::•(#index, #name)
|
||||
;
|
||||
method _enumToString() → core::String
|
||||
return "E2.${this.{core::_Enum::_name}{core::String}}";
|
||||
}
|
||||
abstract class _E3&_Enum&M = core::_Enum with self::M /*isAnonymousMixin,hasConstConstructor*/ {
|
||||
const synthetic constructor •(core::int index, core::String _name) → self::_E3&_Enum&M
|
||||
abstract class _E3&_Enum&M3 = core::_Enum with self::M3 /*isAnonymousMixin,hasConstConstructor*/ {
|
||||
const synthetic constructor •(core::int index, core::String _name) → self::_E3&_Enum&M3
|
||||
: super core::_Enum::•(index, _name)
|
||||
;
|
||||
mixin-super-stub set callOnAssignment(() → void f) → void
|
||||
return super.{self::M::callOnAssignment} = f;
|
||||
return super.{self::M3::callOnAssignment} = f;
|
||||
}
|
||||
class E3 extends self::_E3&_Enum&M /*isEnum*/ {
|
||||
class E3 extends self::_E3&_Enum&M3 /*isEnum*/ {
|
||||
static const field core::List<self::E3> values = #C13;
|
||||
enum-element static const field self::E3 one = #C11;
|
||||
enum-element static const field self::E3 two = #C12;
|
||||
const constructor •(core::int #index, core::String #name) → self::E3
|
||||
: super self::_E3&_Enum&M::•(#index, #name)
|
||||
: super self::_E3&_Enum&M3::•(#index, #name)
|
||||
;
|
||||
method _enumToString() → core::String
|
||||
return "E3.${this.{core::_Enum::_name}{core::String}}";
|
||||
@@ -96,14 +90,14 @@ static method throwOnCall() → void {
|
||||
throw 42;
|
||||
}
|
||||
static method main() → dynamic {
|
||||
self::expectEquals(#C3.{self::_E1&_Enum&A::foo}{core::String}, "foo");
|
||||
self::expectEquals(#C6.{self::_E1&_Enum&A::foo}{core::String}, "foo");
|
||||
self::expectEquals(#C8.{self::_E2&_Enum&A::foo}{core::String}, "foo");
|
||||
self::expectEquals(#C9.{self::_E2&_Enum&A::foo}{core::String}, "foo");
|
||||
self::expectEquals(#C8.{self::_E2&_Enum&A&B::bar}(){() → core::int}, "bar");
|
||||
self::expectEquals(#C9.{self::_E2&_Enum&A&B::bar}(){() → core::int}, "bar");
|
||||
self::expectThrows(#C11.{self::_E3&_Enum&M::callOnAssignment} = #C14);
|
||||
self::expectThrows(#C12.{self::_E3&_Enum&M::callOnAssignment} = #C14);
|
||||
self::expectEquals(#C3.{self::_E1&_Enum&M1::foo}{core::String}, "foo");
|
||||
self::expectEquals(#C6.{self::_E1&_Enum&M1::foo}{core::String}, "foo");
|
||||
self::expectEquals(#C8.{self::_E2&_Enum&M1::foo}{core::String}, "foo");
|
||||
self::expectEquals(#C9.{self::_E2&_Enum&M1::foo}{core::String}, "foo");
|
||||
self::expectEquals(#C8.{self::_E2&_Enum&M1&M2::bar}(){() → core::int}, "bar");
|
||||
self::expectEquals(#C9.{self::_E2&_Enum&M1&M2::bar}(){() → core::int}, "bar");
|
||||
self::expectThrows(#C11.{self::_E3&_Enum&M3::callOnAssignment} = #C14);
|
||||
self::expectThrows(#C12.{self::_E3&_Enum&M3::callOnAssignment} = #C14);
|
||||
}
|
||||
|
||||
constants {
|
||||
@@ -127,11 +121,11 @@ constants {
|
||||
Constructor coverage from constants:
|
||||
org-dartlang-testcase:///simple_mixins.dart:
|
||||
- E1. (from org-dartlang-testcase:///simple_mixins.dart:19:6)
|
||||
- _E1&_Enum&A. (from org-dartlang-testcase:///simple_mixins.dart:19:6)
|
||||
- _E1&_Enum&M1. (from org-dartlang-testcase:///simple_mixins.dart:19: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:///simple_mixins.dart:21:6)
|
||||
- _E2&_Enum&A&B. (from org-dartlang-testcase:///simple_mixins.dart:21:6)
|
||||
- _E2&_Enum&A. (from org-dartlang-testcase:///simple_mixins.dart:21:6)
|
||||
- _E2&_Enum&M1&M2. (from org-dartlang-testcase:///simple_mixins.dart:21:6)
|
||||
- _E2&_Enum&M1. (from org-dartlang-testcase:///simple_mixins.dart:21:6)
|
||||
- E3. (from org-dartlang-testcase:///simple_mixins.dart:23:6)
|
||||
- _E3&_Enum&M. (from org-dartlang-testcase:///simple_mixins.dart:23:6)
|
||||
- _E3&_Enum&M3. (from org-dartlang-testcase:///simple_mixins.dart:23:6)
|
||||
|
||||
@@ -2,79 +2,73 @@ library /*isNonNullableByDefault*/;
|
||||
import self as self;
|
||||
import "dart:core" as core;
|
||||
|
||||
class A extends core::Object {
|
||||
synthetic constructor •() → self::A
|
||||
: super core::Object::•()
|
||||
;
|
||||
abstract class M1 extends core::Object /*isMixinDeclaration*/ {
|
||||
get foo() → core::String
|
||||
return "foo";
|
||||
}
|
||||
class B extends core::Object {
|
||||
synthetic constructor •() → self::B
|
||||
: super core::Object::•()
|
||||
;
|
||||
abstract class M2 extends core::Object /*isMixinDeclaration*/ {
|
||||
method bar() → core::int
|
||||
return 42;
|
||||
}
|
||||
abstract class M extends core::Object /*isMixinDeclaration*/ {
|
||||
abstract class M3 extends core::Object /*isMixinDeclaration*/ {
|
||||
set callOnAssignment(() → void f) → void {
|
||||
f(){() → void};
|
||||
}
|
||||
}
|
||||
abstract class _E1&_Enum&A = core::_Enum with self::A /*isAnonymousMixin,hasConstConstructor*/ {
|
||||
const synthetic constructor •(core::int index, core::String _name) → self::_E1&_Enum&A
|
||||
abstract class _E1&_Enum&M1 = core::_Enum with self::M1 /*isAnonymousMixin,hasConstConstructor*/ {
|
||||
const synthetic constructor •(core::int index, core::String _name) → self::_E1&_Enum&M1
|
||||
: super core::_Enum::•(index, _name)
|
||||
;
|
||||
mixin-super-stub get foo() → core::String
|
||||
return super.{self::A::foo};
|
||||
return super.{self::M1::foo};
|
||||
}
|
||||
class E1 extends self::_E1&_Enum&A /*isEnum*/ {
|
||||
class E1 extends self::_E1&_Enum&M1 /*isEnum*/ {
|
||||
static const field core::List<self::E1> values = #C7;
|
||||
enum-element static const field self::E1 one = #C3;
|
||||
enum-element static const field self::E1 two = #C6;
|
||||
const constructor •(core::int #index, core::String #name) → self::E1
|
||||
: super self::_E1&_Enum&A::•(#index, #name)
|
||||
: super self::_E1&_Enum&M1::•(#index, #name)
|
||||
;
|
||||
method _enumToString() → core::String
|
||||
return "E1.${this.{core::_Enum::_name}{core::String}}";
|
||||
}
|
||||
abstract class _E2&_Enum&A = core::_Enum with self::A /*isAnonymousMixin,hasConstConstructor*/ {
|
||||
const synthetic constructor •(core::int index, core::String _name) → self::_E2&_Enum&A
|
||||
abstract class _E2&_Enum&M1 = core::_Enum with self::M1 /*isAnonymousMixin,hasConstConstructor*/ {
|
||||
const synthetic constructor •(core::int index, core::String _name) → self::_E2&_Enum&M1
|
||||
: super core::_Enum::•(index, _name)
|
||||
;
|
||||
mixin-super-stub get foo() → core::String
|
||||
return super.{self::A::foo};
|
||||
return super.{self::M1::foo};
|
||||
}
|
||||
abstract class _E2&_Enum&A&B = self::_E2&_Enum&A with self::B /*isAnonymousMixin,hasConstConstructor*/ {
|
||||
const synthetic constructor •(core::int index, core::String _name) → self::_E2&_Enum&A&B
|
||||
: super self::_E2&_Enum&A::•(index, _name)
|
||||
abstract class _E2&_Enum&M1&M2 = self::_E2&_Enum&M1 with self::M2 /*isAnonymousMixin,hasConstConstructor*/ {
|
||||
const synthetic constructor •(core::int index, core::String _name) → self::_E2&_Enum&M1&M2
|
||||
: super self::_E2&_Enum&M1::•(index, _name)
|
||||
;
|
||||
mixin-super-stub method bar() → core::int
|
||||
return super.{self::B::bar}();
|
||||
return super.{self::M2::bar}();
|
||||
}
|
||||
class E2 extends self::_E2&_Enum&A&B /*isEnum*/ {
|
||||
class E2 extends self::_E2&_Enum&M1&M2 /*isEnum*/ {
|
||||
static const field core::List<self::E2> values = #C10;
|
||||
enum-element static const field self::E2 one = #C8;
|
||||
enum-element static const field self::E2 two = #C9;
|
||||
const constructor •(core::int #index, core::String #name) → self::E2
|
||||
: super self::_E2&_Enum&A&B::•(#index, #name)
|
||||
: super self::_E2&_Enum&M1&M2::•(#index, #name)
|
||||
;
|
||||
method _enumToString() → core::String
|
||||
return "E2.${this.{core::_Enum::_name}{core::String}}";
|
||||
}
|
||||
abstract class _E3&_Enum&M = core::_Enum with self::M /*isAnonymousMixin,hasConstConstructor*/ {
|
||||
const synthetic constructor •(core::int index, core::String _name) → self::_E3&_Enum&M
|
||||
abstract class _E3&_Enum&M3 = core::_Enum with self::M3 /*isAnonymousMixin,hasConstConstructor*/ {
|
||||
const synthetic constructor •(core::int index, core::String _name) → self::_E3&_Enum&M3
|
||||
: super core::_Enum::•(index, _name)
|
||||
;
|
||||
mixin-super-stub set callOnAssignment(() → void f) → void
|
||||
return super.{self::M::callOnAssignment} = f;
|
||||
return super.{self::M3::callOnAssignment} = f;
|
||||
}
|
||||
class E3 extends self::_E3&_Enum&M /*isEnum*/ {
|
||||
class E3 extends self::_E3&_Enum&M3 /*isEnum*/ {
|
||||
static const field core::List<self::E3> values = #C13;
|
||||
enum-element static const field self::E3 one = #C11;
|
||||
enum-element static const field self::E3 two = #C12;
|
||||
const constructor •(core::int #index, core::String #name) → self::E3
|
||||
: super self::_E3&_Enum&M::•(#index, #name)
|
||||
: super self::_E3&_Enum&M3::•(#index, #name)
|
||||
;
|
||||
method _enumToString() → core::String
|
||||
return "E3.${this.{core::_Enum::_name}{core::String}}";
|
||||
@@ -96,14 +90,14 @@ static method throwOnCall() → void {
|
||||
throw 42;
|
||||
}
|
||||
static method main() → dynamic {
|
||||
self::expectEquals(#C3.{self::_E1&_Enum&A::foo}{core::String}, "foo");
|
||||
self::expectEquals(#C6.{self::_E1&_Enum&A::foo}{core::String}, "foo");
|
||||
self::expectEquals(#C8.{self::_E2&_Enum&A::foo}{core::String}, "foo");
|
||||
self::expectEquals(#C9.{self::_E2&_Enum&A::foo}{core::String}, "foo");
|
||||
self::expectEquals(#C8.{self::_E2&_Enum&A&B::bar}(){() → core::int}, "bar");
|
||||
self::expectEquals(#C9.{self::_E2&_Enum&A&B::bar}(){() → core::int}, "bar");
|
||||
self::expectThrows(#C11.{self::_E3&_Enum&M::callOnAssignment} = #C14);
|
||||
self::expectThrows(#C12.{self::_E3&_Enum&M::callOnAssignment} = #C14);
|
||||
self::expectEquals(#C3.{self::_E1&_Enum&M1::foo}{core::String}, "foo");
|
||||
self::expectEquals(#C6.{self::_E1&_Enum&M1::foo}{core::String}, "foo");
|
||||
self::expectEquals(#C8.{self::_E2&_Enum&M1::foo}{core::String}, "foo");
|
||||
self::expectEquals(#C9.{self::_E2&_Enum&M1::foo}{core::String}, "foo");
|
||||
self::expectEquals(#C8.{self::_E2&_Enum&M1&M2::bar}(){() → core::int}, "bar");
|
||||
self::expectEquals(#C9.{self::_E2&_Enum&M1&M2::bar}(){() → core::int}, "bar");
|
||||
self::expectThrows(#C11.{self::_E3&_Enum&M3::callOnAssignment} = #C14);
|
||||
self::expectThrows(#C12.{self::_E3&_Enum&M3::callOnAssignment} = #C14);
|
||||
}
|
||||
|
||||
constants {
|
||||
@@ -127,11 +121,11 @@ constants {
|
||||
Constructor coverage from constants:
|
||||
org-dartlang-testcase:///simple_mixins.dart:
|
||||
- E1. (from org-dartlang-testcase:///simple_mixins.dart:19:6)
|
||||
- _E1&_Enum&A. (from org-dartlang-testcase:///simple_mixins.dart:19:6)
|
||||
- _E1&_Enum&M1. (from org-dartlang-testcase:///simple_mixins.dart:19: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:///simple_mixins.dart:21:6)
|
||||
- _E2&_Enum&A&B. (from org-dartlang-testcase:///simple_mixins.dart:21:6)
|
||||
- _E2&_Enum&A. (from org-dartlang-testcase:///simple_mixins.dart:21:6)
|
||||
- _E2&_Enum&M1&M2. (from org-dartlang-testcase:///simple_mixins.dart:21:6)
|
||||
- _E2&_Enum&M1. (from org-dartlang-testcase:///simple_mixins.dart:21:6)
|
||||
- E3. (from org-dartlang-testcase:///simple_mixins.dart:23:6)
|
||||
- _E3&_Enum&M. (from org-dartlang-testcase:///simple_mixins.dart:23:6)
|
||||
- _E3&_Enum&M3. (from org-dartlang-testcase:///simple_mixins.dart:23:6)
|
||||
|
||||
@@ -2,30 +2,26 @@ library /*isNonNullableByDefault*/;
|
||||
import self as self;
|
||||
import "dart:core" as core;
|
||||
|
||||
class A extends core::Object {
|
||||
synthetic constructor •() → self::A
|
||||
;
|
||||
abstract class M1 extends core::Object /*isMixinDeclaration*/ {
|
||||
get foo() → core::String
|
||||
;
|
||||
}
|
||||
class B extends core::Object {
|
||||
synthetic constructor •() → self::B
|
||||
;
|
||||
abstract class M2 extends core::Object /*isMixinDeclaration*/ {
|
||||
method bar() → core::int
|
||||
;
|
||||
}
|
||||
abstract class M extends core::Object /*isMixinDeclaration*/ {
|
||||
abstract class M3 extends core::Object /*isMixinDeclaration*/ {
|
||||
set callOnAssignment(() → void f) → void
|
||||
;
|
||||
}
|
||||
abstract class _E1&_Enum&A = core::_Enum with self::A /*isAnonymousMixin,hasConstConstructor*/ {
|
||||
const synthetic constructor •(core::int index, core::String _name) → self::_E1&_Enum&A
|
||||
abstract class _E1&_Enum&M1 = core::_Enum with self::M1 /*isAnonymousMixin,hasConstConstructor*/ {
|
||||
const synthetic constructor •(core::int index, core::String _name) → self::_E1&_Enum&M1
|
||||
: super core::_Enum::•(index, _name)
|
||||
;
|
||||
mixin-super-stub get foo() → core::String
|
||||
return super.{self::A::foo};
|
||||
return super.{self::M1::foo};
|
||||
}
|
||||
class E1 extends self::_E1&_Enum&A /*isEnum*/ {
|
||||
class E1 extends self::_E1&_Enum&M1 /*isEnum*/ {
|
||||
static const field core::List<self::E1> values = const <self::E1>[self::E1::one, self::E1::two];
|
||||
enum-element static const field self::E1 one = const self::E1::•(0, "one");
|
||||
enum-element static const field self::E1 two = const self::E1::•(1, "two");
|
||||
@@ -34,21 +30,21 @@ class E1 extends self::_E1&_Enum&A /*isEnum*/ {
|
||||
method _enumToString() → core::String
|
||||
return "E1.${this.{core::_Enum::_name}{core::String}}";
|
||||
}
|
||||
abstract class _E2&_Enum&A = core::_Enum with self::A /*isAnonymousMixin,hasConstConstructor*/ {
|
||||
const synthetic constructor •(core::int index, core::String _name) → self::_E2&_Enum&A
|
||||
abstract class _E2&_Enum&M1 = core::_Enum with self::M1 /*isAnonymousMixin,hasConstConstructor*/ {
|
||||
const synthetic constructor •(core::int index, core::String _name) → self::_E2&_Enum&M1
|
||||
: super core::_Enum::•(index, _name)
|
||||
;
|
||||
mixin-super-stub get foo() → core::String
|
||||
return super.{self::A::foo};
|
||||
return super.{self::M1::foo};
|
||||
}
|
||||
abstract class _E2&_Enum&A&B = self::_E2&_Enum&A with self::B /*isAnonymousMixin,hasConstConstructor*/ {
|
||||
const synthetic constructor •(core::int index, core::String _name) → self::_E2&_Enum&A&B
|
||||
: super self::_E2&_Enum&A::•(index, _name)
|
||||
abstract class _E2&_Enum&M1&M2 = self::_E2&_Enum&M1 with self::M2 /*isAnonymousMixin,hasConstConstructor*/ {
|
||||
const synthetic constructor •(core::int index, core::String _name) → self::_E2&_Enum&M1&M2
|
||||
: super self::_E2&_Enum&M1::•(index, _name)
|
||||
;
|
||||
mixin-super-stub method bar() → core::int
|
||||
return super.{self::B::bar}();
|
||||
return super.{self::M2::bar}();
|
||||
}
|
||||
class E2 extends self::_E2&_Enum&A&B /*isEnum*/ {
|
||||
class E2 extends self::_E2&_Enum&M1&M2 /*isEnum*/ {
|
||||
static const field core::List<self::E2> values = const <self::E2>[self::E2::one, self::E2::two];
|
||||
enum-element static const field self::E2 one = const self::E2::•(0, "one");
|
||||
enum-element static const field self::E2 two = const self::E2::•(1, "two");
|
||||
@@ -57,14 +53,14 @@ class E2 extends self::_E2&_Enum&A&B /*isEnum*/ {
|
||||
method _enumToString() → core::String
|
||||
return "E2.${this.{core::_Enum::_name}{core::String}}";
|
||||
}
|
||||
abstract class _E3&_Enum&M = core::_Enum with self::M /*isAnonymousMixin,hasConstConstructor*/ {
|
||||
const synthetic constructor •(core::int index, core::String _name) → self::_E3&_Enum&M
|
||||
abstract class _E3&_Enum&M3 = core::_Enum with self::M3 /*isAnonymousMixin,hasConstConstructor*/ {
|
||||
const synthetic constructor •(core::int index, core::String _name) → self::_E3&_Enum&M3
|
||||
: super core::_Enum::•(index, _name)
|
||||
;
|
||||
mixin-super-stub set callOnAssignment(() → void f) → void
|
||||
return super.{self::M::callOnAssignment} = f;
|
||||
return super.{self::M3::callOnAssignment} = f;
|
||||
}
|
||||
class E3 extends self::_E3&_Enum&M /*isEnum*/ {
|
||||
class E3 extends self::_E3&_Enum&M3 /*isEnum*/ {
|
||||
static const field core::List<self::E3> values = const <self::E3>[self::E3::one, self::E3::two];
|
||||
enum-element static const field self::E3 one = const self::E3::•(0, "one");
|
||||
enum-element static const field self::E3 two = const self::E3::•(1, "two");
|
||||
@@ -85,12 +81,12 @@ static method main() → dynamic
|
||||
|
||||
Extra constant evaluation status:
|
||||
Evaluated: ListLiteral @ org-dartlang-testcase:///simple_mixins.dart:19:6 -> ListConstant(const <E1*>[const E1{}, const E1{}])
|
||||
Evaluated: ConstructorInvocation @ org-dartlang-testcase:///simple_mixins.dart:19:18 -> InstanceConstant(const E1{})
|
||||
Evaluated: ConstructorInvocation @ org-dartlang-testcase:///simple_mixins.dart:19:23 -> InstanceConstant(const E1{})
|
||||
Evaluated: ConstructorInvocation @ org-dartlang-testcase:///simple_mixins.dart:19:19 -> InstanceConstant(const E1{})
|
||||
Evaluated: ConstructorInvocation @ org-dartlang-testcase:///simple_mixins.dart:19:24 -> InstanceConstant(const E1{})
|
||||
Evaluated: ListLiteral @ org-dartlang-testcase:///simple_mixins.dart:21:6 -> ListConstant(const <E2*>[const E2{}, const E2{}])
|
||||
Evaluated: ConstructorInvocation @ org-dartlang-testcase:///simple_mixins.dart:21:21 -> InstanceConstant(const E2{})
|
||||
Evaluated: ConstructorInvocation @ org-dartlang-testcase:///simple_mixins.dart:21:26 -> InstanceConstant(const E2{})
|
||||
Evaluated: ConstructorInvocation @ org-dartlang-testcase:///simple_mixins.dart:21:23 -> InstanceConstant(const E2{})
|
||||
Evaluated: ConstructorInvocation @ org-dartlang-testcase:///simple_mixins.dart:21:28 -> InstanceConstant(const E2{})
|
||||
Evaluated: ListLiteral @ org-dartlang-testcase:///simple_mixins.dart:23:6 -> ListConstant(const <E3*>[const E3{}, const E3{}])
|
||||
Evaluated: ConstructorInvocation @ org-dartlang-testcase:///simple_mixins.dart:23:18 -> InstanceConstant(const E3{})
|
||||
Evaluated: ConstructorInvocation @ org-dartlang-testcase:///simple_mixins.dart:23:23 -> InstanceConstant(const E3{})
|
||||
Evaluated: ConstructorInvocation @ org-dartlang-testcase:///simple_mixins.dart:23:19 -> InstanceConstant(const E3{})
|
||||
Evaluated: ConstructorInvocation @ org-dartlang-testcase:///simple_mixins.dart:23:24 -> InstanceConstant(const E3{})
|
||||
Extra constant evaluation: evaluated: 31, effectively constant: 9
|
||||
|
||||
@@ -2,80 +2,74 @@ library /*isNonNullableByDefault*/;
|
||||
import self as self;
|
||||
import "dart:core" as core;
|
||||
|
||||
class A extends core::Object {
|
||||
synthetic constructor •() → self::A
|
||||
: super core::Object::•()
|
||||
;
|
||||
abstract class M1 extends core::Object /*isMixinDeclaration*/ {
|
||||
get foo() → core::String
|
||||
return "foo";
|
||||
}
|
||||
class B extends core::Object {
|
||||
synthetic constructor •() → self::B
|
||||
: super core::Object::•()
|
||||
;
|
||||
abstract class M2 extends core::Object /*isMixinDeclaration*/ {
|
||||
method bar() → core::int
|
||||
return 42;
|
||||
}
|
||||
abstract class M extends core::Object /*isMixinDeclaration*/ {
|
||||
abstract class M3 extends core::Object /*isMixinDeclaration*/ {
|
||||
set callOnAssignment(() → void f) → void {
|
||||
f(){() → void};
|
||||
}
|
||||
}
|
||||
abstract class _E1&_Enum&A extends core::_Enum implements self::A /*isAnonymousMixin,isEliminatedMixin,hasConstConstructor*/ {
|
||||
const synthetic constructor •(core::int index, core::String _name) → self::_E1&_Enum&A
|
||||
abstract class _E1&_Enum&M1 extends core::_Enum implements self::M1 /*isAnonymousMixin,isEliminatedMixin,hasConstConstructor*/ {
|
||||
const synthetic constructor •(core::int index, core::String _name) → self::_E1&_Enum&M1
|
||||
: super core::_Enum::•(index, _name)
|
||||
;
|
||||
get foo() → core::String
|
||||
return "foo";
|
||||
}
|
||||
class E1 extends self::_E1&_Enum&A /*isEnum*/ {
|
||||
class E1 extends self::_E1&_Enum&M1 /*isEnum*/ {
|
||||
static const field core::List<self::E1> values = #C7;
|
||||
enum-element static const field self::E1 one = #C3;
|
||||
enum-element static const field self::E1 two = #C6;
|
||||
const constructor •(core::int #index, core::String #name) → self::E1
|
||||
: super self::_E1&_Enum&A::•(#index, #name)
|
||||
: super self::_E1&_Enum&M1::•(#index, #name)
|
||||
;
|
||||
method _enumToString() → core::String
|
||||
return "E1.${this.{core::_Enum::_name}{core::String}}";
|
||||
}
|
||||
abstract class _E2&_Enum&A extends core::_Enum implements self::A /*isAnonymousMixin,isEliminatedMixin,hasConstConstructor*/ {
|
||||
const synthetic constructor •(core::int index, core::String _name) → self::_E2&_Enum&A
|
||||
abstract class _E2&_Enum&M1 extends core::_Enum implements self::M1 /*isAnonymousMixin,isEliminatedMixin,hasConstConstructor*/ {
|
||||
const synthetic constructor •(core::int index, core::String _name) → self::_E2&_Enum&M1
|
||||
: super core::_Enum::•(index, _name)
|
||||
;
|
||||
get foo() → core::String
|
||||
return "foo";
|
||||
}
|
||||
abstract class _E2&_Enum&A&B extends self::_E2&_Enum&A implements self::B /*isAnonymousMixin,isEliminatedMixin,hasConstConstructor*/ {
|
||||
const synthetic constructor •(core::int index, core::String _name) → self::_E2&_Enum&A&B
|
||||
: super self::_E2&_Enum&A::•(index, _name)
|
||||
abstract class _E2&_Enum&M1&M2 extends self::_E2&_Enum&M1 implements self::M2 /*isAnonymousMixin,isEliminatedMixin,hasConstConstructor*/ {
|
||||
const synthetic constructor •(core::int index, core::String _name) → self::_E2&_Enum&M1&M2
|
||||
: super self::_E2&_Enum&M1::•(index, _name)
|
||||
;
|
||||
method bar() → core::int
|
||||
return 42;
|
||||
}
|
||||
class E2 extends self::_E2&_Enum&A&B /*isEnum*/ {
|
||||
class E2 extends self::_E2&_Enum&M1&M2 /*isEnum*/ {
|
||||
static const field core::List<self::E2> values = #C10;
|
||||
enum-element static const field self::E2 one = #C8;
|
||||
enum-element static const field self::E2 two = #C9;
|
||||
const constructor •(core::int #index, core::String #name) → self::E2
|
||||
: super self::_E2&_Enum&A&B::•(#index, #name)
|
||||
: super self::_E2&_Enum&M1&M2::•(#index, #name)
|
||||
;
|
||||
method _enumToString() → core::String
|
||||
return "E2.${this.{core::_Enum::_name}{core::String}}";
|
||||
}
|
||||
abstract class _E3&_Enum&M extends core::_Enum implements self::M /*isAnonymousMixin,isEliminatedMixin,hasConstConstructor*/ {
|
||||
const synthetic constructor •(core::int index, core::String _name) → self::_E3&_Enum&M
|
||||
abstract class _E3&_Enum&M3 extends core::_Enum implements self::M3 /*isAnonymousMixin,isEliminatedMixin,hasConstConstructor*/ {
|
||||
const synthetic constructor •(core::int index, core::String _name) → self::_E3&_Enum&M3
|
||||
: super core::_Enum::•(index, _name)
|
||||
;
|
||||
set callOnAssignment(() → void f) → void {
|
||||
f(){() → void};
|
||||
}
|
||||
}
|
||||
class E3 extends self::_E3&_Enum&M /*isEnum*/ {
|
||||
class E3 extends self::_E3&_Enum&M3 /*isEnum*/ {
|
||||
static const field core::List<self::E3> values = #C13;
|
||||
enum-element static const field self::E3 one = #C11;
|
||||
enum-element static const field self::E3 two = #C12;
|
||||
const constructor •(core::int #index, core::String #name) → self::E3
|
||||
: super self::_E3&_Enum&M::•(#index, #name)
|
||||
: super self::_E3&_Enum&M3::•(#index, #name)
|
||||
;
|
||||
method _enumToString() → core::String
|
||||
return "E3.${this.{core::_Enum::_name}{core::String}}";
|
||||
@@ -97,14 +91,14 @@ static method throwOnCall() → void {
|
||||
throw 42;
|
||||
}
|
||||
static method main() → dynamic {
|
||||
self::expectEquals(#C3.{self::_E1&_Enum&A::foo}{core::String}, "foo");
|
||||
self::expectEquals(#C6.{self::_E1&_Enum&A::foo}{core::String}, "foo");
|
||||
self::expectEquals(#C8.{self::_E2&_Enum&A::foo}{core::String}, "foo");
|
||||
self::expectEquals(#C9.{self::_E2&_Enum&A::foo}{core::String}, "foo");
|
||||
self::expectEquals(#C8.{self::_E2&_Enum&A&B::bar}(){() → core::int}, "bar");
|
||||
self::expectEquals(#C9.{self::_E2&_Enum&A&B::bar}(){() → core::int}, "bar");
|
||||
self::expectThrows(#C11.{self::_E3&_Enum&M::callOnAssignment} = #C14);
|
||||
self::expectThrows(#C12.{self::_E3&_Enum&M::callOnAssignment} = #C14);
|
||||
self::expectEquals(#C3.{self::_E1&_Enum&M1::foo}{core::String}, "foo");
|
||||
self::expectEquals(#C6.{self::_E1&_Enum&M1::foo}{core::String}, "foo");
|
||||
self::expectEquals(#C8.{self::_E2&_Enum&M1::foo}{core::String}, "foo");
|
||||
self::expectEquals(#C9.{self::_E2&_Enum&M1::foo}{core::String}, "foo");
|
||||
self::expectEquals(#C8.{self::_E2&_Enum&M1&M2::bar}(){() → core::int}, "bar");
|
||||
self::expectEquals(#C9.{self::_E2&_Enum&M1&M2::bar}(){() → core::int}, "bar");
|
||||
self::expectThrows(#C11.{self::_E3&_Enum&M3::callOnAssignment} = #C14);
|
||||
self::expectThrows(#C12.{self::_E3&_Enum&M3::callOnAssignment} = #C14);
|
||||
}
|
||||
|
||||
constants {
|
||||
@@ -128,11 +122,11 @@ constants {
|
||||
Constructor coverage from constants:
|
||||
org-dartlang-testcase:///simple_mixins.dart:
|
||||
- E1. (from org-dartlang-testcase:///simple_mixins.dart:19:6)
|
||||
- _E1&_Enum&A. (from org-dartlang-testcase:///simple_mixins.dart:19:6)
|
||||
- _E1&_Enum&M1. (from org-dartlang-testcase:///simple_mixins.dart:19: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:///simple_mixins.dart:21:6)
|
||||
- _E2&_Enum&A&B. (from org-dartlang-testcase:///simple_mixins.dart:21:6)
|
||||
- _E2&_Enum&A. (from org-dartlang-testcase:///simple_mixins.dart:21:6)
|
||||
- _E2&_Enum&M1&M2. (from org-dartlang-testcase:///simple_mixins.dart:21:6)
|
||||
- _E2&_Enum&M1. (from org-dartlang-testcase:///simple_mixins.dart:21:6)
|
||||
- E3. (from org-dartlang-testcase:///simple_mixins.dart:23:6)
|
||||
- _E3&_Enum&M. (from org-dartlang-testcase:///simple_mixins.dart:23:6)
|
||||
- _E3&_Enum&M3. (from org-dartlang-testcase:///simple_mixins.dart:23:6)
|
||||
|
||||
@@ -10,7 +10,7 @@ class _FailingTest {
|
||||
const _FailingTest();
|
||||
}
|
||||
|
||||
class MyTest {
|
||||
mixin MyTest {
|
||||
@failingTest
|
||||
void foo() {}
|
||||
}
|
||||
|
||||
@@ -10,10 +10,7 @@ class _FailingTest extends core::Object /*hasConstConstructor*/ {
|
||||
: super core::Object::•()
|
||||
;
|
||||
}
|
||||
class MyTest extends core::Object {
|
||||
synthetic constructor •() → self::MyTest
|
||||
: super core::Object::•()
|
||||
;
|
||||
abstract class MyTest extends core::Object /*isMixinDeclaration*/ {
|
||||
@#C1
|
||||
method foo() → void {}
|
||||
}
|
||||
|
||||
@@ -10,10 +10,7 @@ class _FailingTest extends core::Object /*hasConstConstructor*/ {
|
||||
: super core::Object::•()
|
||||
;
|
||||
}
|
||||
class MyTest extends core::Object {
|
||||
synthetic constructor •() → self::MyTest
|
||||
: super core::Object::•()
|
||||
;
|
||||
abstract class MyTest extends core::Object /*isMixinDeclaration*/ {
|
||||
@#C1
|
||||
method foo() → void {}
|
||||
}
|
||||
|
||||
@@ -6,7 +6,7 @@ class _FailingTest {
|
||||
const _FailingTest();
|
||||
}
|
||||
|
||||
class MyTest {
|
||||
mixin MyTest {
|
||||
@failingTest
|
||||
void foo() {}
|
||||
}
|
||||
|
||||
@@ -7,11 +7,6 @@ bool _hasAnnotationInstance(DeclarationMirror declaration, instance) =>
|
||||
});
|
||||
bool _hasFailingTestAnnotation(MethodMirror method) {}
|
||||
|
||||
class MyTest {
|
||||
@failingTest
|
||||
void foo() {}
|
||||
}
|
||||
|
||||
class MyTest2 extends Object with MyTest {}
|
||||
|
||||
class _FailingTest {
|
||||
@@ -20,3 +15,7 @@ class _FailingTest {
|
||||
|
||||
const _FailingTest failingTest = const _FailingTest();
|
||||
main() {}
|
||||
mixin MyTest {
|
||||
@failingTest
|
||||
void foo() {}
|
||||
}
|
||||
|
||||
@@ -10,10 +10,7 @@ class _FailingTest extends core::Object /*hasConstConstructor*/ {
|
||||
: super core::Object::•()
|
||||
;
|
||||
}
|
||||
class MyTest extends core::Object {
|
||||
synthetic constructor •() → self::MyTest
|
||||
: super core::Object::•()
|
||||
;
|
||||
abstract class MyTest extends core::Object /*isMixinDeclaration*/ {
|
||||
@#C1
|
||||
method foo() → void {}
|
||||
}
|
||||
|
||||
@@ -10,10 +10,7 @@ class _FailingTest extends core::Object /*hasConstConstructor*/ {
|
||||
: super core::Object::•()
|
||||
;
|
||||
}
|
||||
class MyTest extends core::Object {
|
||||
synthetic constructor •() → self::MyTest
|
||||
: super core::Object::•()
|
||||
;
|
||||
abstract class MyTest extends core::Object /*isMixinDeclaration*/ {
|
||||
@#C1
|
||||
method foo() → void {}
|
||||
}
|
||||
|
||||
@@ -10,9 +10,7 @@ class _FailingTest extends core::Object /*hasConstConstructor*/ {
|
||||
: super core::Object::•()
|
||||
;
|
||||
}
|
||||
class MyTest extends core::Object {
|
||||
synthetic constructor •() → self::MyTest
|
||||
;
|
||||
abstract class MyTest extends core::Object /*isMixinDeclaration*/ {
|
||||
@self::failingTest
|
||||
method foo() → void
|
||||
;
|
||||
|
||||
@@ -10,10 +10,7 @@ class _FailingTest extends core::Object /*hasConstConstructor*/ {
|
||||
: super core::Object::•()
|
||||
;
|
||||
}
|
||||
class MyTest extends core::Object {
|
||||
synthetic constructor •() → self::MyTest
|
||||
: super core::Object::•()
|
||||
;
|
||||
abstract class MyTest extends core::Object /*isMixinDeclaration*/ {
|
||||
@#C1
|
||||
method foo() → void {}
|
||||
}
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
|
||||
// See http://dartbug.com/34511 for details.
|
||||
|
||||
class A<X> {}
|
||||
mixin A<X> {}
|
||||
|
||||
class B<Z> extends Object with A<Z Function()> {}
|
||||
|
||||
|
||||
@@ -2,10 +2,7 @@ library /*isNonNullableByDefault*/;
|
||||
import self as self;
|
||||
import "dart:core" as core;
|
||||
|
||||
class A<X extends core::Object? = dynamic> extends core::Object {
|
||||
synthetic constructor •() → self::A<self::A::X%>
|
||||
: super core::Object::•()
|
||||
;
|
||||
abstract class A<X extends core::Object? = dynamic> extends core::Object /*isMixinDeclaration*/ {
|
||||
}
|
||||
abstract class _B&Object&A<Z extends core::Object? = dynamic> = core::Object with self::A<() → self::_B&Object&A::Z%> /*isAnonymousMixin,hasConstConstructor*/ {
|
||||
const synthetic constructor •() → self::_B&Object&A<self::_B&Object&A::Z%>
|
||||
|
||||
@@ -2,10 +2,7 @@ library /*isNonNullableByDefault*/;
|
||||
import self as self;
|
||||
import "dart:core" as core;
|
||||
|
||||
class A<X extends core::Object? = dynamic> extends core::Object {
|
||||
synthetic constructor •() → self::A<self::A::X%>
|
||||
: super core::Object::•()
|
||||
;
|
||||
abstract class A<X extends core::Object? = dynamic> extends core::Object /*isMixinDeclaration*/ {
|
||||
}
|
||||
abstract class _B&Object&A<Z extends core::Object? = dynamic> extends core::Object implements self::A<() → self::_B&Object&A::Z%> /*isAnonymousMixin,isEliminatedMixin,hasConstConstructor*/ {
|
||||
const synthetic constructor •() → self::_B&Object&A<self::_B&Object&A::Z%>
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
class A<X> {}
|
||||
mixin A<X> {}
|
||||
|
||||
class B<Z> extends Object with A<Z Function()> {}
|
||||
|
||||
|
||||
@@ -1,5 +1,4 @@
|
||||
class A<X> {}
|
||||
|
||||
class B<Z> extends Object with A<Z Function()> {}
|
||||
|
||||
main() {}
|
||||
mixin A<X> {}
|
||||
|
||||
@@ -2,10 +2,7 @@ library /*isNonNullableByDefault*/;
|
||||
import self as self;
|
||||
import "dart:core" as core;
|
||||
|
||||
class A<X extends core::Object? = dynamic> extends core::Object {
|
||||
synthetic constructor •() → self::A<self::A::X%>
|
||||
: super core::Object::•()
|
||||
;
|
||||
abstract class A<X extends core::Object? = dynamic> extends core::Object /*isMixinDeclaration*/ {
|
||||
}
|
||||
abstract class _B&Object&A<Z extends core::Object? = dynamic> = core::Object with self::A<() → self::_B&Object&A::Z%> /*isAnonymousMixin,hasConstConstructor*/ {
|
||||
const synthetic constructor •() → self::_B&Object&A<self::_B&Object&A::Z%>
|
||||
|
||||
@@ -2,10 +2,7 @@ library /*isNonNullableByDefault*/;
|
||||
import self as self;
|
||||
import "dart:core" as core;
|
||||
|
||||
class A<X extends core::Object? = dynamic> extends core::Object {
|
||||
synthetic constructor •() → self::A<self::A::X%>
|
||||
: super core::Object::•()
|
||||
;
|
||||
abstract class A<X extends core::Object? = dynamic> extends core::Object /*isMixinDeclaration*/ {
|
||||
}
|
||||
abstract class _B&Object&A<Z extends core::Object? = dynamic> = core::Object with self::A<() → self::_B&Object&A::Z%> /*isAnonymousMixin,hasConstConstructor*/ {
|
||||
const synthetic constructor •() → self::_B&Object&A<self::_B&Object&A::Z%>
|
||||
|
||||
@@ -2,9 +2,7 @@ library /*isNonNullableByDefault*/;
|
||||
import self as self;
|
||||
import "dart:core" as core;
|
||||
|
||||
class A<X extends core::Object? = dynamic> extends core::Object {
|
||||
synthetic constructor •() → self::A<self::A::X%>
|
||||
;
|
||||
abstract class A<X extends core::Object? = dynamic> extends core::Object /*isMixinDeclaration*/ {
|
||||
}
|
||||
abstract class _B&Object&A<Z extends core::Object? = dynamic> = core::Object with self::A<() → self::_B&Object&A::Z%> /*isAnonymousMixin,hasConstConstructor*/ {
|
||||
const synthetic constructor •() → self::_B&Object&A<self::_B&Object&A::Z%>
|
||||
|
||||
@@ -2,10 +2,7 @@ library /*isNonNullableByDefault*/;
|
||||
import self as self;
|
||||
import "dart:core" as core;
|
||||
|
||||
class A<X extends core::Object? = dynamic> extends core::Object {
|
||||
synthetic constructor •() → self::A<self::A::X%>
|
||||
: super core::Object::•()
|
||||
;
|
||||
abstract class A<X extends core::Object? = dynamic> extends core::Object /*isMixinDeclaration*/ {
|
||||
}
|
||||
abstract class _B&Object&A<Z extends core::Object? = dynamic> extends core::Object implements self::A<() → self::_B&Object&A::Z%> /*isAnonymousMixin,isEliminatedMixin,hasConstConstructor*/ {
|
||||
const synthetic constructor •() → self::_B&Object&A<self::_B&Object&A::Z%>
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
|
||||
// The case 'm1' covers function types with some missing parts.
|
||||
|
||||
class Am1<X, Y> {}
|
||||
mixin Am1<X, Y> {}
|
||||
|
||||
class Bm1<Z> extends Object with Am1<Function(int), Z> {}
|
||||
|
||||
@@ -61,7 +61,7 @@ class Wm1<Z> = Object
|
||||
// The case 'm2' covers function types with some missing parts that should be
|
||||
// checked against a bound.
|
||||
|
||||
class Am2<X extends Function(), Y> {}
|
||||
mixin Am2<X extends Function(), Y> {}
|
||||
|
||||
// Compile-time error: type argument is not a subtype.
|
||||
class Bm2<Z> extends Object with Am2<Function(int), Z> {}
|
||||
@@ -143,7 +143,7 @@ typedef TdJ = Function(Function Function);
|
||||
|
||||
typedef TdK = Function(Function Function() Function) Function();
|
||||
|
||||
class Am3<L, Y> {}
|
||||
mixin Am3<L, Y> {}
|
||||
|
||||
class Bm3<Z> extends Object with Am3<TdB, Z> {}
|
||||
|
||||
|
||||
@@ -37,7 +37,7 @@ library /*isNonNullableByDefault*/;
|
||||
// class Bm2<Z> extends Object with Am2<Function(int), Z> {}
|
||||
// ^
|
||||
// pkg/front_end/testcases/general/clone_function_type.dart:64:11: Context: This is the type variable whose bound isn't conformed to.
|
||||
// class Am2<X extends Function(), Y> {}
|
||||
// mixin Am2<X extends Function(), Y> {}
|
||||
// ^
|
||||
//
|
||||
// pkg/front_end/testcases/general/clone_function_type.dart:70:34: Error: Type argument 'dynamic Function(int)' doesn't conform to the bound 'dynamic Function()' of the type variable 'X' on 'Am2'.
|
||||
@@ -45,7 +45,7 @@ library /*isNonNullableByDefault*/;
|
||||
// class Cm2<Z> extends Object with Am2<Function(int x), Z> {}
|
||||
// ^
|
||||
// pkg/front_end/testcases/general/clone_function_type.dart:64:11: Context: This is the type variable whose bound isn't conformed to.
|
||||
// class Am2<X extends Function(), Y> {}
|
||||
// mixin Am2<X extends Function(), Y> {}
|
||||
// ^
|
||||
//
|
||||
// pkg/front_end/testcases/general/clone_function_type.dart:86:34: Error: Type argument 'Function' doesn't conform to the bound 'dynamic Function()' of the type variable 'X' on 'Am2'.
|
||||
@@ -54,7 +54,7 @@ library /*isNonNullableByDefault*/;
|
||||
// class Jm2<Z> extends Object with Am2<Function, Z> {}
|
||||
// ^
|
||||
// pkg/front_end/testcases/general/clone_function_type.dart:64:11: Context: This is the type variable whose bound isn't conformed to.
|
||||
// class Am2<X extends Function(), Y> {}
|
||||
// mixin Am2<X extends Function(), Y> {}
|
||||
// ^
|
||||
//
|
||||
// pkg/front_end/testcases/general/clone_function_type.dart:89:34: Error: Type argument 'dynamic Function(Function)' doesn't conform to the bound 'dynamic Function()' of the type variable 'X' on 'Am2'.
|
||||
@@ -63,7 +63,7 @@ library /*isNonNullableByDefault*/;
|
||||
// class Km2<Z> extends Object with Am2<Function(Function Function), Z> {}
|
||||
// ^
|
||||
// pkg/front_end/testcases/general/clone_function_type.dart:64:11: Context: This is the type variable whose bound isn't conformed to.
|
||||
// class Am2<X extends Function(), Y> {}
|
||||
// mixin Am2<X extends Function(), Y> {}
|
||||
// ^
|
||||
//
|
||||
// pkg/front_end/testcases/general/clone_function_type.dart:95:28: Error: Type argument 'dynamic Function(int)' doesn't conform to the bound 'dynamic Function()' of the type variable 'X' on 'Am2'.
|
||||
@@ -71,7 +71,7 @@ library /*isNonNullableByDefault*/;
|
||||
// class Mm2<Z> = Object with Am2<Function(int), Z>;
|
||||
// ^
|
||||
// pkg/front_end/testcases/general/clone_function_type.dart:64:11: Context: This is the type variable whose bound isn't conformed to.
|
||||
// class Am2<X extends Function(), Y> {}
|
||||
// mixin Am2<X extends Function(), Y> {}
|
||||
// ^
|
||||
//
|
||||
// pkg/front_end/testcases/general/clone_function_type.dart:98:28: Error: Type argument 'dynamic Function(int)' doesn't conform to the bound 'dynamic Function()' of the type variable 'X' on 'Am2'.
|
||||
@@ -79,7 +79,7 @@ library /*isNonNullableByDefault*/;
|
||||
// class Nm2<Z> = Object with Am2<Function(int x), Z>;
|
||||
// ^
|
||||
// pkg/front_end/testcases/general/clone_function_type.dart:64:11: Context: This is the type variable whose bound isn't conformed to.
|
||||
// class Am2<X extends Function(), Y> {}
|
||||
// mixin Am2<X extends Function(), Y> {}
|
||||
// ^
|
||||
//
|
||||
// pkg/front_end/testcases/general/clone_function_type.dart:114:28: Error: Type argument 'Function' doesn't conform to the bound 'dynamic Function()' of the type variable 'X' on 'Am2'.
|
||||
@@ -88,7 +88,7 @@ library /*isNonNullableByDefault*/;
|
||||
// class Um2<Z> = Object with Am2<Function, Z>;
|
||||
// ^
|
||||
// pkg/front_end/testcases/general/clone_function_type.dart:64:11: Context: This is the type variable whose bound isn't conformed to.
|
||||
// class Am2<X extends Function(), Y> {}
|
||||
// mixin Am2<X extends Function(), Y> {}
|
||||
// ^
|
||||
//
|
||||
// pkg/front_end/testcases/general/clone_function_type.dart:117:28: Error: Type argument 'dynamic Function(Function)' doesn't conform to the bound 'dynamic Function()' of the type variable 'X' on 'Am2'.
|
||||
@@ -97,7 +97,7 @@ library /*isNonNullableByDefault*/;
|
||||
// class Vm2<Z> = Object with Am2<Function(Function Function), Z>;
|
||||
// ^
|
||||
// pkg/front_end/testcases/general/clone_function_type.dart:64:11: Context: This is the type variable whose bound isn't conformed to.
|
||||
// class Am2<X extends Function(), Y> {}
|
||||
// mixin Am2<X extends Function(), Y> {}
|
||||
// ^
|
||||
//
|
||||
import self as self;
|
||||
@@ -113,10 +113,7 @@ typedef TdH = ([core::int]) → dynamic;
|
||||
typedef TdI = ([core::int]) → dynamic;
|
||||
typedef TdJ = (core::Function) → dynamic;
|
||||
typedef TdK = () → (() → core::Function) → dynamic;
|
||||
class Am1<X extends core::Object? = dynamic, Y extends core::Object? = dynamic> extends core::Object {
|
||||
synthetic constructor •() → self::Am1<self::Am1::X%, self::Am1::Y%>
|
||||
: super core::Object::•()
|
||||
;
|
||||
abstract class Am1<X extends core::Object? = dynamic, Y extends core::Object? = dynamic> extends core::Object /*isMixinDeclaration*/ {
|
||||
}
|
||||
abstract class _Bm1&Object&Am1<Z extends core::Object? = dynamic> = core::Object with self::Am1<(core::int) → dynamic, self::_Bm1&Object&Am1::Z%> /*isAnonymousMixin,hasConstConstructor*/ {
|
||||
const synthetic constructor •() → self::_Bm1&Object&Am1<self::_Bm1&Object&Am1::Z%>
|
||||
@@ -283,10 +280,7 @@ class Wm1<Z extends core::Object? = dynamic> = core::Object with self::Am1<()
|
||||
: super core::Object::•()
|
||||
;
|
||||
}
|
||||
class Am2<X extends () → dynamic, Y extends core::Object? = dynamic> extends core::Object {
|
||||
synthetic constructor •() → self::Am2<self::Am2::X, self::Am2::Y%>
|
||||
: super core::Object::•()
|
||||
;
|
||||
abstract class Am2<X extends () → dynamic, Y extends core::Object? = dynamic> extends core::Object /*isMixinDeclaration*/ {
|
||||
}
|
||||
abstract class _Bm2&Object&Am2<Z extends core::Object? = dynamic> = core::Object with self::Am2<(core::int) → dynamic, self::_Bm2&Object&Am2::Z%> /*isAnonymousMixin,hasConstConstructor*/ {
|
||||
const synthetic constructor •() → self::_Bm2&Object&Am2<self::_Bm2&Object&Am2::Z%>
|
||||
@@ -453,10 +447,7 @@ class Wm2<Z extends core::Object? = dynamic> = core::Object with self::Am2<()
|
||||
: super core::Object::•()
|
||||
;
|
||||
}
|
||||
class Am3<L extends core::Object? = dynamic, Y extends core::Object? = dynamic> extends core::Object {
|
||||
synthetic constructor •() → self::Am3<self::Am3::L%, self::Am3::Y%>
|
||||
: super core::Object::•()
|
||||
;
|
||||
abstract class Am3<L extends core::Object? = dynamic, Y extends core::Object? = dynamic> extends core::Object /*isMixinDeclaration*/ {
|
||||
}
|
||||
abstract class _Bm3&Object&Am3<Z extends core::Object? = dynamic> = core::Object with self::Am3<(core::int) → dynamic, self::_Bm3&Object&Am3::Z%> /*isAnonymousMixin,hasConstConstructor*/ {
|
||||
const synthetic constructor •() → self::_Bm3&Object&Am3<self::_Bm3&Object&Am3::Z%>
|
||||
|
||||
+11
-20
@@ -37,7 +37,7 @@ library /*isNonNullableByDefault*/;
|
||||
// class Bm2<Z> extends Object with Am2<Function(int), Z> {}
|
||||
// ^
|
||||
// pkg/front_end/testcases/general/clone_function_type.dart:64:11: Context: This is the type variable whose bound isn't conformed to.
|
||||
// class Am2<X extends Function(), Y> {}
|
||||
// mixin Am2<X extends Function(), Y> {}
|
||||
// ^
|
||||
//
|
||||
// pkg/front_end/testcases/general/clone_function_type.dart:70:34: Error: Type argument 'dynamic Function(int)' doesn't conform to the bound 'dynamic Function()' of the type variable 'X' on 'Am2'.
|
||||
@@ -45,7 +45,7 @@ library /*isNonNullableByDefault*/;
|
||||
// class Cm2<Z> extends Object with Am2<Function(int x), Z> {}
|
||||
// ^
|
||||
// pkg/front_end/testcases/general/clone_function_type.dart:64:11: Context: This is the type variable whose bound isn't conformed to.
|
||||
// class Am2<X extends Function(), Y> {}
|
||||
// mixin Am2<X extends Function(), Y> {}
|
||||
// ^
|
||||
//
|
||||
// pkg/front_end/testcases/general/clone_function_type.dart:86:34: Error: Type argument 'Function' doesn't conform to the bound 'dynamic Function()' of the type variable 'X' on 'Am2'.
|
||||
@@ -54,7 +54,7 @@ library /*isNonNullableByDefault*/;
|
||||
// class Jm2<Z> extends Object with Am2<Function, Z> {}
|
||||
// ^
|
||||
// pkg/front_end/testcases/general/clone_function_type.dart:64:11: Context: This is the type variable whose bound isn't conformed to.
|
||||
// class Am2<X extends Function(), Y> {}
|
||||
// mixin Am2<X extends Function(), Y> {}
|
||||
// ^
|
||||
//
|
||||
// pkg/front_end/testcases/general/clone_function_type.dart:89:34: Error: Type argument 'dynamic Function(Function)' doesn't conform to the bound 'dynamic Function()' of the type variable 'X' on 'Am2'.
|
||||
@@ -63,7 +63,7 @@ library /*isNonNullableByDefault*/;
|
||||
// class Km2<Z> extends Object with Am2<Function(Function Function), Z> {}
|
||||
// ^
|
||||
// pkg/front_end/testcases/general/clone_function_type.dart:64:11: Context: This is the type variable whose bound isn't conformed to.
|
||||
// class Am2<X extends Function(), Y> {}
|
||||
// mixin Am2<X extends Function(), Y> {}
|
||||
// ^
|
||||
//
|
||||
// pkg/front_end/testcases/general/clone_function_type.dart:95:28: Error: Type argument 'dynamic Function(int)' doesn't conform to the bound 'dynamic Function()' of the type variable 'X' on 'Am2'.
|
||||
@@ -71,7 +71,7 @@ library /*isNonNullableByDefault*/;
|
||||
// class Mm2<Z> = Object with Am2<Function(int), Z>;
|
||||
// ^
|
||||
// pkg/front_end/testcases/general/clone_function_type.dart:64:11: Context: This is the type variable whose bound isn't conformed to.
|
||||
// class Am2<X extends Function(), Y> {}
|
||||
// mixin Am2<X extends Function(), Y> {}
|
||||
// ^
|
||||
//
|
||||
// pkg/front_end/testcases/general/clone_function_type.dart:98:28: Error: Type argument 'dynamic Function(int)' doesn't conform to the bound 'dynamic Function()' of the type variable 'X' on 'Am2'.
|
||||
@@ -79,7 +79,7 @@ library /*isNonNullableByDefault*/;
|
||||
// class Nm2<Z> = Object with Am2<Function(int x), Z>;
|
||||
// ^
|
||||
// pkg/front_end/testcases/general/clone_function_type.dart:64:11: Context: This is the type variable whose bound isn't conformed to.
|
||||
// class Am2<X extends Function(), Y> {}
|
||||
// mixin Am2<X extends Function(), Y> {}
|
||||
// ^
|
||||
//
|
||||
// pkg/front_end/testcases/general/clone_function_type.dart:114:28: Error: Type argument 'Function' doesn't conform to the bound 'dynamic Function()' of the type variable 'X' on 'Am2'.
|
||||
@@ -88,7 +88,7 @@ library /*isNonNullableByDefault*/;
|
||||
// class Um2<Z> = Object with Am2<Function, Z>;
|
||||
// ^
|
||||
// pkg/front_end/testcases/general/clone_function_type.dart:64:11: Context: This is the type variable whose bound isn't conformed to.
|
||||
// class Am2<X extends Function(), Y> {}
|
||||
// mixin Am2<X extends Function(), Y> {}
|
||||
// ^
|
||||
//
|
||||
// pkg/front_end/testcases/general/clone_function_type.dart:117:28: Error: Type argument 'dynamic Function(Function)' doesn't conform to the bound 'dynamic Function()' of the type variable 'X' on 'Am2'.
|
||||
@@ -97,7 +97,7 @@ library /*isNonNullableByDefault*/;
|
||||
// class Vm2<Z> = Object with Am2<Function(Function Function), Z>;
|
||||
// ^
|
||||
// pkg/front_end/testcases/general/clone_function_type.dart:64:11: Context: This is the type variable whose bound isn't conformed to.
|
||||
// class Am2<X extends Function(), Y> {}
|
||||
// mixin Am2<X extends Function(), Y> {}
|
||||
// ^
|
||||
//
|
||||
import self as self;
|
||||
@@ -113,10 +113,7 @@ typedef TdH = ([core::int]) → dynamic;
|
||||
typedef TdI = ([core::int]) → dynamic;
|
||||
typedef TdJ = (core::Function) → dynamic;
|
||||
typedef TdK = () → (() → core::Function) → dynamic;
|
||||
class Am1<X extends core::Object? = dynamic, Y extends core::Object? = dynamic> extends core::Object {
|
||||
synthetic constructor •() → self::Am1<self::Am1::X%, self::Am1::Y%>
|
||||
: super core::Object::•()
|
||||
;
|
||||
abstract class Am1<X extends core::Object? = dynamic, Y extends core::Object? = dynamic> extends core::Object /*isMixinDeclaration*/ {
|
||||
}
|
||||
abstract class _Bm1&Object&Am1<Z extends core::Object? = dynamic> extends core::Object implements self::Am1<(core::int) → dynamic, self::_Bm1&Object&Am1::Z%> /*isAnonymousMixin,isEliminatedMixin,hasConstConstructor*/ {
|
||||
const synthetic constructor •() → self::_Bm1&Object&Am1<self::_Bm1&Object&Am1::Z%>
|
||||
@@ -283,10 +280,7 @@ class Wm1<Z extends core::Object? = dynamic> extends core::Object implements sel
|
||||
: super core::Object::•()
|
||||
;
|
||||
}
|
||||
class Am2<X extends () → dynamic, Y extends core::Object? = dynamic> extends core::Object {
|
||||
synthetic constructor •() → self::Am2<self::Am2::X, self::Am2::Y%>
|
||||
: super core::Object::•()
|
||||
;
|
||||
abstract class Am2<X extends () → dynamic, Y extends core::Object? = dynamic> extends core::Object /*isMixinDeclaration*/ {
|
||||
}
|
||||
abstract class _Bm2&Object&Am2<Z extends core::Object? = dynamic> extends core::Object implements self::Am2<(core::int) → dynamic, self::_Bm2&Object&Am2::Z%> /*isAnonymousMixin,isEliminatedMixin,hasConstConstructor*/ {
|
||||
const synthetic constructor •() → self::_Bm2&Object&Am2<self::_Bm2&Object&Am2::Z%>
|
||||
@@ -453,10 +447,7 @@ class Wm2<Z extends core::Object? = dynamic> extends core::Object implements sel
|
||||
: super core::Object::•()
|
||||
;
|
||||
}
|
||||
class Am3<L extends core::Object? = dynamic, Y extends core::Object? = dynamic> extends core::Object {
|
||||
synthetic constructor •() → self::Am3<self::Am3::L%, self::Am3::Y%>
|
||||
: super core::Object::•()
|
||||
;
|
||||
abstract class Am3<L extends core::Object? = dynamic, Y extends core::Object? = dynamic> extends core::Object /*isMixinDeclaration*/ {
|
||||
}
|
||||
abstract class _Bm3&Object&Am3<Z extends core::Object? = dynamic> extends core::Object implements self::Am3<(core::int) → dynamic, self::_Bm3&Object&Am3::Z%> /*isAnonymousMixin,isEliminatedMixin,hasConstConstructor*/ {
|
||||
const synthetic constructor •() → self::_Bm3&Object&Am3<self::_Bm3&Object&Am3::Z%>
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
class Am1<X, Y> {}
|
||||
mixin Am1<X, Y> {}
|
||||
class Bm1<Z> extends Object with Am1<Function(int), Z> {}
|
||||
class Cm1<Z> extends Object with Am1<Function(int x), Z> {}
|
||||
class Dm1<Z> extends Object with Am1<int Function(), Z> {}
|
||||
@@ -21,7 +21,7 @@ class Tm1<Z> = Object with Am1<Function([int x]), Z>;
|
||||
class Um1<Z> = Object with Am1<Function, Z>;
|
||||
class Vm1<Z> = Object with Am1<Function(Function Function), Z>;
|
||||
class Wm1<Z> = Object with Am1<Function(Function Function() Function) Function(), Z>;
|
||||
class Am2<X extends Function(), Y> {}
|
||||
mixin Am2<X extends Function(), Y> {}
|
||||
class Bm2<Z> extends Object with Am2<Function(int), Z> {}
|
||||
class Cm2<Z> extends Object with Am2<Function(int x), Z> {}
|
||||
class Dm2<Z> extends Object with Am2<int Function(), Z> {}
|
||||
@@ -54,7 +54,7 @@ typedef TdH = Function([int]);
|
||||
typedef TdI = Function([int x]);
|
||||
typedef TdJ = Function(Function Function);
|
||||
typedef TdK = Function(Function Function() Function) Function();
|
||||
class Am3<L, Y> {}
|
||||
mixin Am3<L, Y> {}
|
||||
class Bm3<Z> extends Object with Am3<TdB, Z> {}
|
||||
class Cm3<Z> extends Object with Am3<TdC, Z> {}
|
||||
class Dm3<Z> extends Object with Am3<TdD, Z> {}
|
||||
|
||||
@@ -37,7 +37,7 @@ library /*isNonNullableByDefault*/;
|
||||
// class Bm2<Z> extends Object with Am2<Function(int), Z> {}
|
||||
// ^
|
||||
// pkg/front_end/testcases/general/clone_function_type.dart:64:11: Context: This is the type variable whose bound isn't conformed to.
|
||||
// class Am2<X extends Function(), Y> {}
|
||||
// mixin Am2<X extends Function(), Y> {}
|
||||
// ^
|
||||
//
|
||||
// pkg/front_end/testcases/general/clone_function_type.dart:70:34: Error: Type argument 'dynamic Function(int)' doesn't conform to the bound 'dynamic Function()' of the type variable 'X' on 'Am2'.
|
||||
@@ -45,7 +45,7 @@ library /*isNonNullableByDefault*/;
|
||||
// class Cm2<Z> extends Object with Am2<Function(int x), Z> {}
|
||||
// ^
|
||||
// pkg/front_end/testcases/general/clone_function_type.dart:64:11: Context: This is the type variable whose bound isn't conformed to.
|
||||
// class Am2<X extends Function(), Y> {}
|
||||
// mixin Am2<X extends Function(), Y> {}
|
||||
// ^
|
||||
//
|
||||
// pkg/front_end/testcases/general/clone_function_type.dart:86:34: Error: Type argument 'Function' doesn't conform to the bound 'dynamic Function()' of the type variable 'X' on 'Am2'.
|
||||
@@ -54,7 +54,7 @@ library /*isNonNullableByDefault*/;
|
||||
// class Jm2<Z> extends Object with Am2<Function, Z> {}
|
||||
// ^
|
||||
// pkg/front_end/testcases/general/clone_function_type.dart:64:11: Context: This is the type variable whose bound isn't conformed to.
|
||||
// class Am2<X extends Function(), Y> {}
|
||||
// mixin Am2<X extends Function(), Y> {}
|
||||
// ^
|
||||
//
|
||||
// pkg/front_end/testcases/general/clone_function_type.dart:89:34: Error: Type argument 'dynamic Function(Function)' doesn't conform to the bound 'dynamic Function()' of the type variable 'X' on 'Am2'.
|
||||
@@ -63,7 +63,7 @@ library /*isNonNullableByDefault*/;
|
||||
// class Km2<Z> extends Object with Am2<Function(Function Function), Z> {}
|
||||
// ^
|
||||
// pkg/front_end/testcases/general/clone_function_type.dart:64:11: Context: This is the type variable whose bound isn't conformed to.
|
||||
// class Am2<X extends Function(), Y> {}
|
||||
// mixin Am2<X extends Function(), Y> {}
|
||||
// ^
|
||||
//
|
||||
// pkg/front_end/testcases/general/clone_function_type.dart:95:28: Error: Type argument 'dynamic Function(int)' doesn't conform to the bound 'dynamic Function()' of the type variable 'X' on 'Am2'.
|
||||
@@ -71,7 +71,7 @@ library /*isNonNullableByDefault*/;
|
||||
// class Mm2<Z> = Object with Am2<Function(int), Z>;
|
||||
// ^
|
||||
// pkg/front_end/testcases/general/clone_function_type.dart:64:11: Context: This is the type variable whose bound isn't conformed to.
|
||||
// class Am2<X extends Function(), Y> {}
|
||||
// mixin Am2<X extends Function(), Y> {}
|
||||
// ^
|
||||
//
|
||||
// pkg/front_end/testcases/general/clone_function_type.dart:98:28: Error: Type argument 'dynamic Function(int)' doesn't conform to the bound 'dynamic Function()' of the type variable 'X' on 'Am2'.
|
||||
@@ -79,7 +79,7 @@ library /*isNonNullableByDefault*/;
|
||||
// class Nm2<Z> = Object with Am2<Function(int x), Z>;
|
||||
// ^
|
||||
// pkg/front_end/testcases/general/clone_function_type.dart:64:11: Context: This is the type variable whose bound isn't conformed to.
|
||||
// class Am2<X extends Function(), Y> {}
|
||||
// mixin Am2<X extends Function(), Y> {}
|
||||
// ^
|
||||
//
|
||||
// pkg/front_end/testcases/general/clone_function_type.dart:114:28: Error: Type argument 'Function' doesn't conform to the bound 'dynamic Function()' of the type variable 'X' on 'Am2'.
|
||||
@@ -88,7 +88,7 @@ library /*isNonNullableByDefault*/;
|
||||
// class Um2<Z> = Object with Am2<Function, Z>;
|
||||
// ^
|
||||
// pkg/front_end/testcases/general/clone_function_type.dart:64:11: Context: This is the type variable whose bound isn't conformed to.
|
||||
// class Am2<X extends Function(), Y> {}
|
||||
// mixin Am2<X extends Function(), Y> {}
|
||||
// ^
|
||||
//
|
||||
// pkg/front_end/testcases/general/clone_function_type.dart:117:28: Error: Type argument 'dynamic Function(Function)' doesn't conform to the bound 'dynamic Function()' of the type variable 'X' on 'Am2'.
|
||||
@@ -97,7 +97,7 @@ library /*isNonNullableByDefault*/;
|
||||
// class Vm2<Z> = Object with Am2<Function(Function Function), Z>;
|
||||
// ^
|
||||
// pkg/front_end/testcases/general/clone_function_type.dart:64:11: Context: This is the type variable whose bound isn't conformed to.
|
||||
// class Am2<X extends Function(), Y> {}
|
||||
// mixin Am2<X extends Function(), Y> {}
|
||||
// ^
|
||||
//
|
||||
import self as self;
|
||||
@@ -113,10 +113,7 @@ typedef TdH = ([core::int]) → dynamic;
|
||||
typedef TdI = ([core::int]) → dynamic;
|
||||
typedef TdJ = (core::Function) → dynamic;
|
||||
typedef TdK = () → (() → core::Function) → dynamic;
|
||||
class Am1<X extends core::Object? = dynamic, Y extends core::Object? = dynamic> extends core::Object {
|
||||
synthetic constructor •() → self::Am1<self::Am1::X%, self::Am1::Y%>
|
||||
: super core::Object::•()
|
||||
;
|
||||
abstract class Am1<X extends core::Object? = dynamic, Y extends core::Object? = dynamic> extends core::Object /*isMixinDeclaration*/ {
|
||||
}
|
||||
abstract class _Bm1&Object&Am1<Z extends core::Object? = dynamic> = core::Object with self::Am1<(core::int) → dynamic, self::_Bm1&Object&Am1::Z%> /*isAnonymousMixin,hasConstConstructor*/ {
|
||||
const synthetic constructor •() → self::_Bm1&Object&Am1<self::_Bm1&Object&Am1::Z%>
|
||||
@@ -283,10 +280,7 @@ class Wm1<Z extends core::Object? = dynamic> = core::Object with self::Am1<()
|
||||
: super core::Object::•()
|
||||
;
|
||||
}
|
||||
class Am2<X extends () → dynamic, Y extends core::Object? = dynamic> extends core::Object {
|
||||
synthetic constructor •() → self::Am2<self::Am2::X, self::Am2::Y%>
|
||||
: super core::Object::•()
|
||||
;
|
||||
abstract class Am2<X extends () → dynamic, Y extends core::Object? = dynamic> extends core::Object /*isMixinDeclaration*/ {
|
||||
}
|
||||
abstract class _Bm2&Object&Am2<Z extends core::Object? = dynamic> = core::Object with self::Am2<(core::int) → dynamic, self::_Bm2&Object&Am2::Z%> /*isAnonymousMixin,hasConstConstructor*/ {
|
||||
const synthetic constructor •() → self::_Bm2&Object&Am2<self::_Bm2&Object&Am2::Z%>
|
||||
@@ -453,10 +447,7 @@ class Wm2<Z extends core::Object? = dynamic> = core::Object with self::Am2<()
|
||||
: super core::Object::•()
|
||||
;
|
||||
}
|
||||
class Am3<L extends core::Object? = dynamic, Y extends core::Object? = dynamic> extends core::Object {
|
||||
synthetic constructor •() → self::Am3<self::Am3::L%, self::Am3::Y%>
|
||||
: super core::Object::•()
|
||||
;
|
||||
abstract class Am3<L extends core::Object? = dynamic, Y extends core::Object? = dynamic> extends core::Object /*isMixinDeclaration*/ {
|
||||
}
|
||||
abstract class _Bm3&Object&Am3<Z extends core::Object? = dynamic> = core::Object with self::Am3<(core::int) → dynamic, self::_Bm3&Object&Am3::Z%> /*isAnonymousMixin,hasConstConstructor*/ {
|
||||
const synthetic constructor •() → self::_Bm3&Object&Am3<self::_Bm3&Object&Am3::Z%>
|
||||
|
||||
@@ -37,7 +37,7 @@ library /*isNonNullableByDefault*/;
|
||||
// class Bm2<Z> extends Object with Am2<Function(int), Z> {}
|
||||
// ^
|
||||
// pkg/front_end/testcases/general/clone_function_type.dart:64:11: Context: This is the type variable whose bound isn't conformed to.
|
||||
// class Am2<X extends Function(), Y> {}
|
||||
// mixin Am2<X extends Function(), Y> {}
|
||||
// ^
|
||||
//
|
||||
// pkg/front_end/testcases/general/clone_function_type.dart:70:34: Error: Type argument 'dynamic Function(int)' doesn't conform to the bound 'dynamic Function()' of the type variable 'X' on 'Am2'.
|
||||
@@ -45,7 +45,7 @@ library /*isNonNullableByDefault*/;
|
||||
// class Cm2<Z> extends Object with Am2<Function(int x), Z> {}
|
||||
// ^
|
||||
// pkg/front_end/testcases/general/clone_function_type.dart:64:11: Context: This is the type variable whose bound isn't conformed to.
|
||||
// class Am2<X extends Function(), Y> {}
|
||||
// mixin Am2<X extends Function(), Y> {}
|
||||
// ^
|
||||
//
|
||||
// pkg/front_end/testcases/general/clone_function_type.dart:86:34: Error: Type argument 'Function' doesn't conform to the bound 'dynamic Function()' of the type variable 'X' on 'Am2'.
|
||||
@@ -54,7 +54,7 @@ library /*isNonNullableByDefault*/;
|
||||
// class Jm2<Z> extends Object with Am2<Function, Z> {}
|
||||
// ^
|
||||
// pkg/front_end/testcases/general/clone_function_type.dart:64:11: Context: This is the type variable whose bound isn't conformed to.
|
||||
// class Am2<X extends Function(), Y> {}
|
||||
// mixin Am2<X extends Function(), Y> {}
|
||||
// ^
|
||||
//
|
||||
// pkg/front_end/testcases/general/clone_function_type.dart:89:34: Error: Type argument 'dynamic Function(Function)' doesn't conform to the bound 'dynamic Function()' of the type variable 'X' on 'Am2'.
|
||||
@@ -63,7 +63,7 @@ library /*isNonNullableByDefault*/;
|
||||
// class Km2<Z> extends Object with Am2<Function(Function Function), Z> {}
|
||||
// ^
|
||||
// pkg/front_end/testcases/general/clone_function_type.dart:64:11: Context: This is the type variable whose bound isn't conformed to.
|
||||
// class Am2<X extends Function(), Y> {}
|
||||
// mixin Am2<X extends Function(), Y> {}
|
||||
// ^
|
||||
//
|
||||
// pkg/front_end/testcases/general/clone_function_type.dart:95:28: Error: Type argument 'dynamic Function(int)' doesn't conform to the bound 'dynamic Function()' of the type variable 'X' on 'Am2'.
|
||||
@@ -71,7 +71,7 @@ library /*isNonNullableByDefault*/;
|
||||
// class Mm2<Z> = Object with Am2<Function(int), Z>;
|
||||
// ^
|
||||
// pkg/front_end/testcases/general/clone_function_type.dart:64:11: Context: This is the type variable whose bound isn't conformed to.
|
||||
// class Am2<X extends Function(), Y> {}
|
||||
// mixin Am2<X extends Function(), Y> {}
|
||||
// ^
|
||||
//
|
||||
// pkg/front_end/testcases/general/clone_function_type.dart:98:28: Error: Type argument 'dynamic Function(int)' doesn't conform to the bound 'dynamic Function()' of the type variable 'X' on 'Am2'.
|
||||
@@ -79,7 +79,7 @@ library /*isNonNullableByDefault*/;
|
||||
// class Nm2<Z> = Object with Am2<Function(int x), Z>;
|
||||
// ^
|
||||
// pkg/front_end/testcases/general/clone_function_type.dart:64:11: Context: This is the type variable whose bound isn't conformed to.
|
||||
// class Am2<X extends Function(), Y> {}
|
||||
// mixin Am2<X extends Function(), Y> {}
|
||||
// ^
|
||||
//
|
||||
// pkg/front_end/testcases/general/clone_function_type.dart:114:28: Error: Type argument 'Function' doesn't conform to the bound 'dynamic Function()' of the type variable 'X' on 'Am2'.
|
||||
@@ -88,7 +88,7 @@ library /*isNonNullableByDefault*/;
|
||||
// class Um2<Z> = Object with Am2<Function, Z>;
|
||||
// ^
|
||||
// pkg/front_end/testcases/general/clone_function_type.dart:64:11: Context: This is the type variable whose bound isn't conformed to.
|
||||
// class Am2<X extends Function(), Y> {}
|
||||
// mixin Am2<X extends Function(), Y> {}
|
||||
// ^
|
||||
//
|
||||
// pkg/front_end/testcases/general/clone_function_type.dart:117:28: Error: Type argument 'dynamic Function(Function)' doesn't conform to the bound 'dynamic Function()' of the type variable 'X' on 'Am2'.
|
||||
@@ -97,7 +97,7 @@ library /*isNonNullableByDefault*/;
|
||||
// class Vm2<Z> = Object with Am2<Function(Function Function), Z>;
|
||||
// ^
|
||||
// pkg/front_end/testcases/general/clone_function_type.dart:64:11: Context: This is the type variable whose bound isn't conformed to.
|
||||
// class Am2<X extends Function(), Y> {}
|
||||
// mixin Am2<X extends Function(), Y> {}
|
||||
// ^
|
||||
//
|
||||
import self as self;
|
||||
@@ -113,10 +113,7 @@ typedef TdH = ([core::int]) → dynamic;
|
||||
typedef TdI = ([core::int]) → dynamic;
|
||||
typedef TdJ = (core::Function) → dynamic;
|
||||
typedef TdK = () → (() → core::Function) → dynamic;
|
||||
class Am1<X extends core::Object? = dynamic, Y extends core::Object? = dynamic> extends core::Object {
|
||||
synthetic constructor •() → self::Am1<self::Am1::X%, self::Am1::Y%>
|
||||
: super core::Object::•()
|
||||
;
|
||||
abstract class Am1<X extends core::Object? = dynamic, Y extends core::Object? = dynamic> extends core::Object /*isMixinDeclaration*/ {
|
||||
}
|
||||
abstract class _Bm1&Object&Am1<Z extends core::Object? = dynamic> = core::Object with self::Am1<(core::int) → dynamic, self::_Bm1&Object&Am1::Z%> /*isAnonymousMixin,hasConstConstructor*/ {
|
||||
const synthetic constructor •() → self::_Bm1&Object&Am1<self::_Bm1&Object&Am1::Z%>
|
||||
@@ -283,10 +280,7 @@ class Wm1<Z extends core::Object? = dynamic> = core::Object with self::Am1<()
|
||||
: super core::Object::•()
|
||||
;
|
||||
}
|
||||
class Am2<X extends () → dynamic, Y extends core::Object? = dynamic> extends core::Object {
|
||||
synthetic constructor •() → self::Am2<self::Am2::X, self::Am2::Y%>
|
||||
: super core::Object::•()
|
||||
;
|
||||
abstract class Am2<X extends () → dynamic, Y extends core::Object? = dynamic> extends core::Object /*isMixinDeclaration*/ {
|
||||
}
|
||||
abstract class _Bm2&Object&Am2<Z extends core::Object? = dynamic> = core::Object with self::Am2<(core::int) → dynamic, self::_Bm2&Object&Am2::Z%> /*isAnonymousMixin,hasConstConstructor*/ {
|
||||
const synthetic constructor •() → self::_Bm2&Object&Am2<self::_Bm2&Object&Am2::Z%>
|
||||
@@ -453,10 +447,7 @@ class Wm2<Z extends core::Object? = dynamic> = core::Object with self::Am2<()
|
||||
: super core::Object::•()
|
||||
;
|
||||
}
|
||||
class Am3<L extends core::Object? = dynamic, Y extends core::Object? = dynamic> extends core::Object {
|
||||
synthetic constructor •() → self::Am3<self::Am3::L%, self::Am3::Y%>
|
||||
: super core::Object::•()
|
||||
;
|
||||
abstract class Am3<L extends core::Object? = dynamic, Y extends core::Object? = dynamic> extends core::Object /*isMixinDeclaration*/ {
|
||||
}
|
||||
abstract class _Bm3&Object&Am3<Z extends core::Object? = dynamic> = core::Object with self::Am3<(core::int) → dynamic, self::_Bm3&Object&Am3::Z%> /*isAnonymousMixin,hasConstConstructor*/ {
|
||||
const synthetic constructor •() → self::_Bm3&Object&Am3<self::_Bm3&Object&Am3::Z%>
|
||||
|
||||
@@ -37,7 +37,7 @@ library /*isNonNullableByDefault*/;
|
||||
// class Bm2<Z> extends Object with Am2<Function(int), Z> {}
|
||||
// ^
|
||||
// pkg/front_end/testcases/general/clone_function_type.dart:64:11: Context: This is the type variable whose bound isn't conformed to.
|
||||
// class Am2<X extends Function(), Y> {}
|
||||
// mixin Am2<X extends Function(), Y> {}
|
||||
// ^
|
||||
//
|
||||
// pkg/front_end/testcases/general/clone_function_type.dart:70:34: Error: Type argument 'dynamic Function(int)' doesn't conform to the bound 'dynamic Function()' of the type variable 'X' on 'Am2'.
|
||||
@@ -45,7 +45,7 @@ library /*isNonNullableByDefault*/;
|
||||
// class Cm2<Z> extends Object with Am2<Function(int x), Z> {}
|
||||
// ^
|
||||
// pkg/front_end/testcases/general/clone_function_type.dart:64:11: Context: This is the type variable whose bound isn't conformed to.
|
||||
// class Am2<X extends Function(), Y> {}
|
||||
// mixin Am2<X extends Function(), Y> {}
|
||||
// ^
|
||||
//
|
||||
// pkg/front_end/testcases/general/clone_function_type.dart:86:34: Error: Type argument 'Function' doesn't conform to the bound 'dynamic Function()' of the type variable 'X' on 'Am2'.
|
||||
@@ -54,7 +54,7 @@ library /*isNonNullableByDefault*/;
|
||||
// class Jm2<Z> extends Object with Am2<Function, Z> {}
|
||||
// ^
|
||||
// pkg/front_end/testcases/general/clone_function_type.dart:64:11: Context: This is the type variable whose bound isn't conformed to.
|
||||
// class Am2<X extends Function(), Y> {}
|
||||
// mixin Am2<X extends Function(), Y> {}
|
||||
// ^
|
||||
//
|
||||
// pkg/front_end/testcases/general/clone_function_type.dart:89:34: Error: Type argument 'dynamic Function(Function)' doesn't conform to the bound 'dynamic Function()' of the type variable 'X' on 'Am2'.
|
||||
@@ -63,7 +63,7 @@ library /*isNonNullableByDefault*/;
|
||||
// class Km2<Z> extends Object with Am2<Function(Function Function), Z> {}
|
||||
// ^
|
||||
// pkg/front_end/testcases/general/clone_function_type.dart:64:11: Context: This is the type variable whose bound isn't conformed to.
|
||||
// class Am2<X extends Function(), Y> {}
|
||||
// mixin Am2<X extends Function(), Y> {}
|
||||
// ^
|
||||
//
|
||||
// pkg/front_end/testcases/general/clone_function_type.dart:95:28: Error: Type argument 'dynamic Function(int)' doesn't conform to the bound 'dynamic Function()' of the type variable 'X' on 'Am2'.
|
||||
@@ -71,7 +71,7 @@ library /*isNonNullableByDefault*/;
|
||||
// class Mm2<Z> = Object with Am2<Function(int), Z>;
|
||||
// ^
|
||||
// pkg/front_end/testcases/general/clone_function_type.dart:64:11: Context: This is the type variable whose bound isn't conformed to.
|
||||
// class Am2<X extends Function(), Y> {}
|
||||
// mixin Am2<X extends Function(), Y> {}
|
||||
// ^
|
||||
//
|
||||
// pkg/front_end/testcases/general/clone_function_type.dart:98:28: Error: Type argument 'dynamic Function(int)' doesn't conform to the bound 'dynamic Function()' of the type variable 'X' on 'Am2'.
|
||||
@@ -79,7 +79,7 @@ library /*isNonNullableByDefault*/;
|
||||
// class Nm2<Z> = Object with Am2<Function(int x), Z>;
|
||||
// ^
|
||||
// pkg/front_end/testcases/general/clone_function_type.dart:64:11: Context: This is the type variable whose bound isn't conformed to.
|
||||
// class Am2<X extends Function(), Y> {}
|
||||
// mixin Am2<X extends Function(), Y> {}
|
||||
// ^
|
||||
//
|
||||
// pkg/front_end/testcases/general/clone_function_type.dart:114:28: Error: Type argument 'Function' doesn't conform to the bound 'dynamic Function()' of the type variable 'X' on 'Am2'.
|
||||
@@ -88,7 +88,7 @@ library /*isNonNullableByDefault*/;
|
||||
// class Um2<Z> = Object with Am2<Function, Z>;
|
||||
// ^
|
||||
// pkg/front_end/testcases/general/clone_function_type.dart:64:11: Context: This is the type variable whose bound isn't conformed to.
|
||||
// class Am2<X extends Function(), Y> {}
|
||||
// mixin Am2<X extends Function(), Y> {}
|
||||
// ^
|
||||
//
|
||||
// pkg/front_end/testcases/general/clone_function_type.dart:117:28: Error: Type argument 'dynamic Function(Function)' doesn't conform to the bound 'dynamic Function()' of the type variable 'X' on 'Am2'.
|
||||
@@ -97,7 +97,7 @@ library /*isNonNullableByDefault*/;
|
||||
// class Vm2<Z> = Object with Am2<Function(Function Function), Z>;
|
||||
// ^
|
||||
// pkg/front_end/testcases/general/clone_function_type.dart:64:11: Context: This is the type variable whose bound isn't conformed to.
|
||||
// class Am2<X extends Function(), Y> {}
|
||||
// mixin Am2<X extends Function(), Y> {}
|
||||
// ^
|
||||
//
|
||||
import self as self;
|
||||
@@ -113,9 +113,7 @@ typedef TdH = ([core::int]) → dynamic;
|
||||
typedef TdI = ([core::int]) → dynamic;
|
||||
typedef TdJ = (core::Function) → dynamic;
|
||||
typedef TdK = () → (() → core::Function) → dynamic;
|
||||
class Am1<X extends core::Object? = dynamic, Y extends core::Object? = dynamic> extends core::Object {
|
||||
synthetic constructor •() → self::Am1<self::Am1::X%, self::Am1::Y%>
|
||||
;
|
||||
abstract class Am1<X extends core::Object? = dynamic, Y extends core::Object? = dynamic> extends core::Object /*isMixinDeclaration*/ {
|
||||
}
|
||||
abstract class _Bm1&Object&Am1<Z extends core::Object? = dynamic> = core::Object with self::Am1<(core::int) → dynamic, self::_Bm1&Object&Am1::Z%> /*isAnonymousMixin,hasConstConstructor*/ {
|
||||
const synthetic constructor •() → self::_Bm1&Object&Am1<self::_Bm1&Object&Am1::Z%>
|
||||
@@ -271,9 +269,7 @@ class Wm1<Z extends core::Object? = dynamic> = core::Object with self::Am1<()
|
||||
: super core::Object::•()
|
||||
;
|
||||
}
|
||||
class Am2<X extends () → dynamic, Y extends core::Object? = dynamic> extends core::Object {
|
||||
synthetic constructor •() → self::Am2<self::Am2::X, self::Am2::Y%>
|
||||
;
|
||||
abstract class Am2<X extends () → dynamic, Y extends core::Object? = dynamic> extends core::Object /*isMixinDeclaration*/ {
|
||||
}
|
||||
abstract class _Bm2&Object&Am2<Z extends core::Object? = dynamic> = core::Object with self::Am2<(core::int) → dynamic, self::_Bm2&Object&Am2::Z%> /*isAnonymousMixin,hasConstConstructor*/ {
|
||||
const synthetic constructor •() → self::_Bm2&Object&Am2<self::_Bm2&Object&Am2::Z%>
|
||||
@@ -429,9 +425,7 @@ class Wm2<Z extends core::Object? = dynamic> = core::Object with self::Am2<()
|
||||
: super core::Object::•()
|
||||
;
|
||||
}
|
||||
class Am3<L extends core::Object? = dynamic, Y extends core::Object? = dynamic> extends core::Object {
|
||||
synthetic constructor •() → self::Am3<self::Am3::L%, self::Am3::Y%>
|
||||
;
|
||||
abstract class Am3<L extends core::Object? = dynamic, Y extends core::Object? = dynamic> extends core::Object /*isMixinDeclaration*/ {
|
||||
}
|
||||
abstract class _Bm3&Object&Am3<Z extends core::Object? = dynamic> = core::Object with self::Am3<(core::int) → dynamic, self::_Bm3&Object&Am3::Z%> /*isAnonymousMixin,hasConstConstructor*/ {
|
||||
const synthetic constructor •() → self::_Bm3&Object&Am3<self::_Bm3&Object&Am3::Z%>
|
||||
|
||||
@@ -37,7 +37,7 @@ library /*isNonNullableByDefault*/;
|
||||
// class Bm2<Z> extends Object with Am2<Function(int), Z> {}
|
||||
// ^
|
||||
// pkg/front_end/testcases/general/clone_function_type.dart:64:11: Context: This is the type variable whose bound isn't conformed to.
|
||||
// class Am2<X extends Function(), Y> {}
|
||||
// mixin Am2<X extends Function(), Y> {}
|
||||
// ^
|
||||
//
|
||||
// pkg/front_end/testcases/general/clone_function_type.dart:70:34: Error: Type argument 'dynamic Function(int)' doesn't conform to the bound 'dynamic Function()' of the type variable 'X' on 'Am2'.
|
||||
@@ -45,7 +45,7 @@ library /*isNonNullableByDefault*/;
|
||||
// class Cm2<Z> extends Object with Am2<Function(int x), Z> {}
|
||||
// ^
|
||||
// pkg/front_end/testcases/general/clone_function_type.dart:64:11: Context: This is the type variable whose bound isn't conformed to.
|
||||
// class Am2<X extends Function(), Y> {}
|
||||
// mixin Am2<X extends Function(), Y> {}
|
||||
// ^
|
||||
//
|
||||
// pkg/front_end/testcases/general/clone_function_type.dart:86:34: Error: Type argument 'Function' doesn't conform to the bound 'dynamic Function()' of the type variable 'X' on 'Am2'.
|
||||
@@ -54,7 +54,7 @@ library /*isNonNullableByDefault*/;
|
||||
// class Jm2<Z> extends Object with Am2<Function, Z> {}
|
||||
// ^
|
||||
// pkg/front_end/testcases/general/clone_function_type.dart:64:11: Context: This is the type variable whose bound isn't conformed to.
|
||||
// class Am2<X extends Function(), Y> {}
|
||||
// mixin Am2<X extends Function(), Y> {}
|
||||
// ^
|
||||
//
|
||||
// pkg/front_end/testcases/general/clone_function_type.dart:89:34: Error: Type argument 'dynamic Function(Function)' doesn't conform to the bound 'dynamic Function()' of the type variable 'X' on 'Am2'.
|
||||
@@ -63,7 +63,7 @@ library /*isNonNullableByDefault*/;
|
||||
// class Km2<Z> extends Object with Am2<Function(Function Function), Z> {}
|
||||
// ^
|
||||
// pkg/front_end/testcases/general/clone_function_type.dart:64:11: Context: This is the type variable whose bound isn't conformed to.
|
||||
// class Am2<X extends Function(), Y> {}
|
||||
// mixin Am2<X extends Function(), Y> {}
|
||||
// ^
|
||||
//
|
||||
// pkg/front_end/testcases/general/clone_function_type.dart:95:28: Error: Type argument 'dynamic Function(int)' doesn't conform to the bound 'dynamic Function()' of the type variable 'X' on 'Am2'.
|
||||
@@ -71,7 +71,7 @@ library /*isNonNullableByDefault*/;
|
||||
// class Mm2<Z> = Object with Am2<Function(int), Z>;
|
||||
// ^
|
||||
// pkg/front_end/testcases/general/clone_function_type.dart:64:11: Context: This is the type variable whose bound isn't conformed to.
|
||||
// class Am2<X extends Function(), Y> {}
|
||||
// mixin Am2<X extends Function(), Y> {}
|
||||
// ^
|
||||
//
|
||||
// pkg/front_end/testcases/general/clone_function_type.dart:98:28: Error: Type argument 'dynamic Function(int)' doesn't conform to the bound 'dynamic Function()' of the type variable 'X' on 'Am2'.
|
||||
@@ -79,7 +79,7 @@ library /*isNonNullableByDefault*/;
|
||||
// class Nm2<Z> = Object with Am2<Function(int x), Z>;
|
||||
// ^
|
||||
// pkg/front_end/testcases/general/clone_function_type.dart:64:11: Context: This is the type variable whose bound isn't conformed to.
|
||||
// class Am2<X extends Function(), Y> {}
|
||||
// mixin Am2<X extends Function(), Y> {}
|
||||
// ^
|
||||
//
|
||||
// pkg/front_end/testcases/general/clone_function_type.dart:114:28: Error: Type argument 'Function' doesn't conform to the bound 'dynamic Function()' of the type variable 'X' on 'Am2'.
|
||||
@@ -88,7 +88,7 @@ library /*isNonNullableByDefault*/;
|
||||
// class Um2<Z> = Object with Am2<Function, Z>;
|
||||
// ^
|
||||
// pkg/front_end/testcases/general/clone_function_type.dart:64:11: Context: This is the type variable whose bound isn't conformed to.
|
||||
// class Am2<X extends Function(), Y> {}
|
||||
// mixin Am2<X extends Function(), Y> {}
|
||||
// ^
|
||||
//
|
||||
// pkg/front_end/testcases/general/clone_function_type.dart:117:28: Error: Type argument 'dynamic Function(Function)' doesn't conform to the bound 'dynamic Function()' of the type variable 'X' on 'Am2'.
|
||||
@@ -97,7 +97,7 @@ library /*isNonNullableByDefault*/;
|
||||
// class Vm2<Z> = Object with Am2<Function(Function Function), Z>;
|
||||
// ^
|
||||
// pkg/front_end/testcases/general/clone_function_type.dart:64:11: Context: This is the type variable whose bound isn't conformed to.
|
||||
// class Am2<X extends Function(), Y> {}
|
||||
// mixin Am2<X extends Function(), Y> {}
|
||||
// ^
|
||||
//
|
||||
import self as self;
|
||||
@@ -113,10 +113,7 @@ typedef TdH = ([core::int]) → dynamic;
|
||||
typedef TdI = ([core::int]) → dynamic;
|
||||
typedef TdJ = (core::Function) → dynamic;
|
||||
typedef TdK = () → (() → core::Function) → dynamic;
|
||||
class Am1<X extends core::Object? = dynamic, Y extends core::Object? = dynamic> extends core::Object {
|
||||
synthetic constructor •() → self::Am1<self::Am1::X%, self::Am1::Y%>
|
||||
: super core::Object::•()
|
||||
;
|
||||
abstract class Am1<X extends core::Object? = dynamic, Y extends core::Object? = dynamic> extends core::Object /*isMixinDeclaration*/ {
|
||||
}
|
||||
abstract class _Bm1&Object&Am1<Z extends core::Object? = dynamic> extends core::Object implements self::Am1<(core::int) → dynamic, self::_Bm1&Object&Am1::Z%> /*isAnonymousMixin,isEliminatedMixin,hasConstConstructor*/ {
|
||||
const synthetic constructor •() → self::_Bm1&Object&Am1<self::_Bm1&Object&Am1::Z%>
|
||||
@@ -283,10 +280,7 @@ class Wm1<Z extends core::Object? = dynamic> extends core::Object implements sel
|
||||
: super core::Object::•()
|
||||
;
|
||||
}
|
||||
class Am2<X extends () → dynamic, Y extends core::Object? = dynamic> extends core::Object {
|
||||
synthetic constructor •() → self::Am2<self::Am2::X, self::Am2::Y%>
|
||||
: super core::Object::•()
|
||||
;
|
||||
abstract class Am2<X extends () → dynamic, Y extends core::Object? = dynamic> extends core::Object /*isMixinDeclaration*/ {
|
||||
}
|
||||
abstract class _Bm2&Object&Am2<Z extends core::Object? = dynamic> extends core::Object implements self::Am2<(core::int) → dynamic, self::_Bm2&Object&Am2::Z%> /*isAnonymousMixin,isEliminatedMixin,hasConstConstructor*/ {
|
||||
const synthetic constructor •() → self::_Bm2&Object&Am2<self::_Bm2&Object&Am2::Z%>
|
||||
@@ -453,10 +447,7 @@ class Wm2<Z extends core::Object? = dynamic> extends core::Object implements sel
|
||||
: super core::Object::•()
|
||||
;
|
||||
}
|
||||
class Am3<L extends core::Object? = dynamic, Y extends core::Object? = dynamic> extends core::Object {
|
||||
synthetic constructor •() → self::Am3<self::Am3::L%, self::Am3::Y%>
|
||||
: super core::Object::•()
|
||||
;
|
||||
abstract class Am3<L extends core::Object? = dynamic, Y extends core::Object? = dynamic> extends core::Object /*isMixinDeclaration*/ {
|
||||
}
|
||||
abstract class _Bm3&Object&Am3<Z extends core::Object? = dynamic> extends core::Object implements self::Am3<(core::int) → dynamic, self::_Bm3&Object&Am3::Z%> /*isAnonymousMixin,isEliminatedMixin,hasConstConstructor*/ {
|
||||
const synthetic constructor •() → self::_Bm3&Object&Am3<self::_Bm3&Object&Am3::Z%>
|
||||
|
||||
+1
-1
@@ -9,7 +9,7 @@ class A {
|
||||
void foo(covariant num x) {}
|
||||
}
|
||||
|
||||
class B {
|
||||
mixin B {
|
||||
void foo(num x) {}
|
||||
}
|
||||
|
||||
|
||||
+1
-4
@@ -8,10 +8,7 @@ class A extends core::Object {
|
||||
;
|
||||
method foo(covariant-by-declaration core::num x) → void {}
|
||||
}
|
||||
class B extends core::Object {
|
||||
synthetic constructor •() → self::B
|
||||
: super core::Object::•()
|
||||
;
|
||||
abstract class B extends core::Object /*isMixinDeclaration*/ {
|
||||
method foo(core::num x) → void {}
|
||||
}
|
||||
class C extends core::Object {
|
||||
|
||||
+1
-4
@@ -8,10 +8,7 @@ class A extends core::Object {
|
||||
;
|
||||
method foo(covariant-by-declaration core::num x) → void {}
|
||||
}
|
||||
class B extends core::Object {
|
||||
synthetic constructor •() → self::B
|
||||
: super core::Object::•()
|
||||
;
|
||||
abstract class B extends core::Object /*isMixinDeclaration*/ {
|
||||
method foo(core::num x) → void {}
|
||||
}
|
||||
class C extends core::Object {
|
||||
|
||||
+1
-1
@@ -2,7 +2,7 @@ class A {
|
||||
void foo(covariant num x) {}
|
||||
}
|
||||
|
||||
class B {
|
||||
mixin B {
|
||||
void foo(num x) {}
|
||||
}
|
||||
|
||||
|
||||
+3
-4
@@ -2,10 +2,6 @@ class A {
|
||||
void foo(covariant num x) {}
|
||||
}
|
||||
|
||||
class B {
|
||||
void foo(num x) {}
|
||||
}
|
||||
|
||||
class C {
|
||||
void foo(num x) {}
|
||||
}
|
||||
@@ -15,3 +11,6 @@ class D extends A with B implements C {
|
||||
}
|
||||
|
||||
main() {}
|
||||
mixin B {
|
||||
void foo(num x) {}
|
||||
}
|
||||
|
||||
+1
-4
@@ -8,10 +8,7 @@ class A extends core::Object {
|
||||
;
|
||||
method foo(covariant-by-declaration core::num x) → void {}
|
||||
}
|
||||
class B extends core::Object {
|
||||
synthetic constructor •() → self::B
|
||||
: super core::Object::•()
|
||||
;
|
||||
abstract class B extends core::Object /*isMixinDeclaration*/ {
|
||||
method foo(core::num x) → void {}
|
||||
}
|
||||
class C extends core::Object {
|
||||
|
||||
+1
-4
@@ -8,10 +8,7 @@ class A extends core::Object {
|
||||
;
|
||||
method foo(covariant-by-declaration core::num x) → void {}
|
||||
}
|
||||
class B extends core::Object {
|
||||
synthetic constructor •() → self::B
|
||||
: super core::Object::•()
|
||||
;
|
||||
abstract class B extends core::Object /*isMixinDeclaration*/ {
|
||||
method foo(core::num x) → void {}
|
||||
}
|
||||
class C extends core::Object {
|
||||
|
||||
+1
-3
@@ -8,9 +8,7 @@ class A extends core::Object {
|
||||
method foo(covariant-by-declaration core::num x) → void
|
||||
;
|
||||
}
|
||||
class B extends core::Object {
|
||||
synthetic constructor •() → self::B
|
||||
;
|
||||
abstract class B extends core::Object /*isMixinDeclaration*/ {
|
||||
method foo(core::num x) → void
|
||||
;
|
||||
}
|
||||
|
||||
+1
-4
@@ -8,10 +8,7 @@ class A extends core::Object {
|
||||
;
|
||||
method foo(covariant-by-declaration core::num x) → void {}
|
||||
}
|
||||
class B extends core::Object {
|
||||
synthetic constructor •() → self::B
|
||||
: super core::Object::•()
|
||||
;
|
||||
abstract class B extends core::Object /*isMixinDeclaration*/ {
|
||||
method foo(core::num x) → void {}
|
||||
}
|
||||
class C extends core::Object {
|
||||
|
||||
@@ -7,7 +7,7 @@ abstract class A1 {
|
||||
void extendedInterfaceMember();
|
||||
}
|
||||
|
||||
abstract class A2 {
|
||||
mixin A2 {
|
||||
void mixedInClassMember() {}
|
||||
void mixedInInterfaceMember();
|
||||
}
|
||||
@@ -42,7 +42,7 @@ class B5 extends B4 {}
|
||||
|
||||
class B6 extends B3 implements B1, B2 {}
|
||||
|
||||
abstract class C1 {
|
||||
mixin C1 {
|
||||
void mixedInAndImplementedClassMember() {}
|
||||
void mixedInAndImplementedInterfaceMember();
|
||||
}
|
||||
|
||||
@@ -103,10 +103,7 @@ abstract class A1 extends core::Object {
|
||||
method extendedClassMember() → void {}
|
||||
abstract method extendedInterfaceMember() → void;
|
||||
}
|
||||
abstract class A2 extends core::Object {
|
||||
synthetic constructor •() → self::A2
|
||||
: super core::Object::•()
|
||||
;
|
||||
abstract class A2 extends core::Object /*isMixinDeclaration*/ {
|
||||
method mixedInClassMember() → void {}
|
||||
abstract method mixedInInterfaceMember() → void;
|
||||
}
|
||||
@@ -177,10 +174,7 @@ class B6 extends self::B3 implements self::B1, self::B2 {
|
||||
: super self::B3::•()
|
||||
;
|
||||
}
|
||||
abstract class C1 extends core::Object {
|
||||
synthetic constructor •() → self::C1
|
||||
: super core::Object::•()
|
||||
;
|
||||
abstract class C1 extends core::Object /*isMixinDeclaration*/ {
|
||||
method mixedInAndImplementedClassMember() → void {}
|
||||
abstract method mixedInAndImplementedInterfaceMember() → void;
|
||||
}
|
||||
|
||||
@@ -103,10 +103,7 @@ abstract class A1 extends core::Object {
|
||||
method extendedClassMember() → void {}
|
||||
abstract method extendedInterfaceMember() → void;
|
||||
}
|
||||
abstract class A2 extends core::Object {
|
||||
synthetic constructor •() → self::A2
|
||||
: super core::Object::•()
|
||||
;
|
||||
abstract class A2 extends core::Object /*isMixinDeclaration*/ {
|
||||
method mixedInClassMember() → void {}
|
||||
abstract method mixedInInterfaceMember() → void;
|
||||
}
|
||||
@@ -175,10 +172,7 @@ class B6 extends self::B3 implements self::B1, self::B2 {
|
||||
: super self::B3::•()
|
||||
;
|
||||
}
|
||||
abstract class C1 extends core::Object {
|
||||
synthetic constructor •() → self::C1
|
||||
: super core::Object::•()
|
||||
;
|
||||
abstract class C1 extends core::Object /*isMixinDeclaration*/ {
|
||||
method mixedInAndImplementedClassMember() → void {}
|
||||
abstract method mixedInAndImplementedInterfaceMember() → void;
|
||||
}
|
||||
|
||||
@@ -3,7 +3,7 @@ abstract class A1 {
|
||||
void extendedInterfaceMember();
|
||||
}
|
||||
|
||||
abstract class A2 {
|
||||
mixin A2 {
|
||||
void mixedInClassMember() {}
|
||||
void mixedInInterfaceMember();
|
||||
}
|
||||
@@ -38,7 +38,7 @@ class B5 extends B4 {}
|
||||
|
||||
class B6 extends B3 implements B1, B2 {}
|
||||
|
||||
abstract class C1 {
|
||||
mixin C1 {
|
||||
void mixedInAndImplementedClassMember() {}
|
||||
void mixedInAndImplementedInterfaceMember();
|
||||
}
|
||||
|
||||
@@ -3,11 +3,6 @@ abstract class A1 {
|
||||
void extendedInterfaceMember();
|
||||
}
|
||||
|
||||
abstract class A2 {
|
||||
void mixedInClassMember() {}
|
||||
void mixedInInterfaceMember();
|
||||
}
|
||||
|
||||
abstract class A3 extends A1 with A2 {
|
||||
void declaredClassMember() {}
|
||||
void declaredInterfaceMember();
|
||||
@@ -32,11 +27,6 @@ abstract class B3 {
|
||||
|
||||
abstract class B4 extends B3 implements B1, B2 {}
|
||||
|
||||
abstract class C1 {
|
||||
void mixedInAndImplementedClassMember() {}
|
||||
void mixedInAndImplementedInterfaceMember();
|
||||
}
|
||||
|
||||
abstract class C3 with C1 implements C2 {}
|
||||
|
||||
class A6 extends A1 implements A1 {}
|
||||
@@ -55,3 +45,11 @@ class C4 extends C3 {}
|
||||
class C5 with C1 implements C2 {}
|
||||
|
||||
main() {}
|
||||
mixin A2 {
|
||||
void mixedInClassMember() {}
|
||||
void mixedInInterfaceMember();
|
||||
}
|
||||
mixin C1 {
|
||||
void mixedInAndImplementedClassMember() {}
|
||||
void mixedInAndImplementedInterfaceMember();
|
||||
}
|
||||
|
||||
@@ -103,10 +103,7 @@ abstract class A1 extends core::Object {
|
||||
method extendedClassMember() → void {}
|
||||
abstract method extendedInterfaceMember() → void;
|
||||
}
|
||||
abstract class A2 extends core::Object {
|
||||
synthetic constructor •() → self::A2
|
||||
: super core::Object::•()
|
||||
;
|
||||
abstract class A2 extends core::Object /*isMixinDeclaration*/ {
|
||||
method mixedInClassMember() → void {}
|
||||
abstract method mixedInInterfaceMember() → void;
|
||||
}
|
||||
@@ -177,10 +174,7 @@ class B6 extends self::B3 implements self::B1, self::B2 {
|
||||
: super self::B3::•()
|
||||
;
|
||||
}
|
||||
abstract class C1 extends core::Object {
|
||||
synthetic constructor •() → self::C1
|
||||
: super core::Object::•()
|
||||
;
|
||||
abstract class C1 extends core::Object /*isMixinDeclaration*/ {
|
||||
method mixedInAndImplementedClassMember() → void {}
|
||||
abstract method mixedInAndImplementedInterfaceMember() → void;
|
||||
}
|
||||
|
||||
@@ -103,10 +103,7 @@ abstract class A1 extends core::Object {
|
||||
method extendedClassMember() → void {}
|
||||
abstract method extendedInterfaceMember() → void;
|
||||
}
|
||||
abstract class A2 extends core::Object {
|
||||
synthetic constructor •() → self::A2
|
||||
: super core::Object::•()
|
||||
;
|
||||
abstract class A2 extends core::Object /*isMixinDeclaration*/ {
|
||||
method mixedInClassMember() → void {}
|
||||
abstract method mixedInInterfaceMember() → void;
|
||||
}
|
||||
@@ -177,10 +174,7 @@ class B6 extends self::B3 implements self::B1, self::B2 {
|
||||
: super self::B3::•()
|
||||
;
|
||||
}
|
||||
abstract class C1 extends core::Object {
|
||||
synthetic constructor •() → self::C1
|
||||
: super core::Object::•()
|
||||
;
|
||||
abstract class C1 extends core::Object /*isMixinDeclaration*/ {
|
||||
method mixedInAndImplementedClassMember() → void {}
|
||||
abstract method mixedInAndImplementedInterfaceMember() → void;
|
||||
}
|
||||
|
||||
@@ -103,9 +103,7 @@ abstract class A1 extends core::Object {
|
||||
;
|
||||
abstract method extendedInterfaceMember() → void;
|
||||
}
|
||||
abstract class A2 extends core::Object {
|
||||
synthetic constructor •() → self::A2
|
||||
;
|
||||
abstract class A2 extends core::Object /*isMixinDeclaration*/ {
|
||||
method mixedInClassMember() → void
|
||||
;
|
||||
abstract method mixedInInterfaceMember() → void;
|
||||
@@ -173,9 +171,7 @@ class B6 extends self::B3 implements self::B1, self::B2 {
|
||||
synthetic constructor •() → self::B6
|
||||
;
|
||||
}
|
||||
abstract class C1 extends core::Object {
|
||||
synthetic constructor •() → self::C1
|
||||
;
|
||||
abstract class C1 extends core::Object /*isMixinDeclaration*/ {
|
||||
method mixedInAndImplementedClassMember() → void
|
||||
;
|
||||
abstract method mixedInAndImplementedInterfaceMember() → void;
|
||||
|
||||
@@ -103,10 +103,7 @@ abstract class A1 extends core::Object {
|
||||
method extendedClassMember() → void {}
|
||||
abstract method extendedInterfaceMember() → void;
|
||||
}
|
||||
abstract class A2 extends core::Object {
|
||||
synthetic constructor •() → self::A2
|
||||
: super core::Object::•()
|
||||
;
|
||||
abstract class A2 extends core::Object /*isMixinDeclaration*/ {
|
||||
method mixedInClassMember() → void {}
|
||||
abstract method mixedInInterfaceMember() → void;
|
||||
}
|
||||
@@ -175,10 +172,7 @@ class B6 extends self::B3 implements self::B1, self::B2 {
|
||||
: super self::B3::•()
|
||||
;
|
||||
}
|
||||
abstract class C1 extends core::Object {
|
||||
synthetic constructor •() → self::C1
|
||||
: super core::Object::•()
|
||||
;
|
||||
abstract class C1 extends core::Object /*isMixinDeclaration*/ {
|
||||
method mixedInAndImplementedClassMember() → void {}
|
||||
abstract method mixedInAndImplementedInterfaceMember() → void;
|
||||
}
|
||||
|
||||
@@ -10,7 +10,7 @@ class A {
|
||||
A(bool this.v1, num this.v2);
|
||||
}
|
||||
|
||||
class M1 {
|
||||
mixin M1 {
|
||||
num v2 = -1;
|
||||
}
|
||||
|
||||
|
||||
@@ -9,11 +9,8 @@ class A extends core::Object {
|
||||
: self::A::v1 = v1, self::A::v2 = v2, super core::Object::•()
|
||||
;
|
||||
}
|
||||
class M1 extends core::Object {
|
||||
abstract class M1 extends core::Object /*isMixinDeclaration*/ {
|
||||
field core::num v2 = 1.{core::int::unary-}(){() → core::int};
|
||||
synthetic constructor •() → self::M1
|
||||
: super core::Object::•()
|
||||
;
|
||||
}
|
||||
class C = self::A with self::M1 {
|
||||
synthetic constructor •(core::bool v1, core::num v2) → self::C
|
||||
|
||||
+1
-4
@@ -9,11 +9,8 @@ class A extends core::Object {
|
||||
: self::A::v1 = v1, self::A::v2 = v2, super core::Object::•()
|
||||
;
|
||||
}
|
||||
class M1 extends core::Object {
|
||||
abstract class M1 extends core::Object /*isMixinDeclaration*/ {
|
||||
field core::num v2 = 1.{core::int::unary-}(){() → core::int};
|
||||
synthetic constructor •() → self::M1
|
||||
: super core::Object::•()
|
||||
;
|
||||
}
|
||||
class C extends self::A implements self::M1 /*isEliminatedMixin*/ {
|
||||
field core::num v2 = 1.{core::int::unary-}(){() → core::int};
|
||||
|
||||
@@ -4,10 +4,9 @@ class A {
|
||||
A(bool this.v1, num this.v2);
|
||||
}
|
||||
|
||||
class M1 {
|
||||
mixin M1 {
|
||||
num v2 = -1;
|
||||
}
|
||||
|
||||
class C = A with M1;
|
||||
main() {}
|
||||
expect(expected, actual) {}
|
||||
|
||||
+3
-5
@@ -5,10 +5,8 @@ class A {
|
||||
}
|
||||
|
||||
class C = A with M1;
|
||||
|
||||
class M1 {
|
||||
num v2 = -1;
|
||||
}
|
||||
|
||||
expect(expected, actual) {}
|
||||
main() {}
|
||||
mixin M1 {
|
||||
num v2 = -1;
|
||||
}
|
||||
|
||||
@@ -9,11 +9,8 @@ class A extends core::Object {
|
||||
: self::A::v1 = v1, self::A::v2 = v2, super core::Object::•()
|
||||
;
|
||||
}
|
||||
class M1 extends core::Object {
|
||||
abstract class M1 extends core::Object /*isMixinDeclaration*/ {
|
||||
field core::num v2 = 1.{core::int::unary-}(){() → core::int};
|
||||
synthetic constructor •() → self::M1
|
||||
: super core::Object::•()
|
||||
;
|
||||
}
|
||||
class C = self::A with self::M1 {
|
||||
synthetic constructor •(core::bool v1, core::num v2) → self::C
|
||||
|
||||
@@ -9,11 +9,8 @@ class A extends core::Object {
|
||||
: self::A::v1 = v1, self::A::v2 = v2, super core::Object::•()
|
||||
;
|
||||
}
|
||||
class M1 extends core::Object {
|
||||
abstract class M1 extends core::Object /*isMixinDeclaration*/ {
|
||||
field core::num v2 = 1.{core::int::unary-}(){() → core::int};
|
||||
synthetic constructor •() → self::M1
|
||||
: super core::Object::•()
|
||||
;
|
||||
}
|
||||
class C = self::A with self::M1 {
|
||||
synthetic constructor •(core::bool v1, core::num v2) → self::C
|
||||
|
||||
@@ -8,10 +8,8 @@ class A extends core::Object {
|
||||
constructor •(core::bool v1, core::num v2) → self::A
|
||||
;
|
||||
}
|
||||
class M1 extends core::Object {
|
||||
abstract class M1 extends core::Object /*isMixinDeclaration*/ {
|
||||
field core::num v2;
|
||||
synthetic constructor •() → self::M1
|
||||
;
|
||||
}
|
||||
class C = self::A with self::M1 {
|
||||
synthetic constructor •(core::bool v1, core::num v2) → self::C
|
||||
|
||||
+1
-4
@@ -9,11 +9,8 @@ class A extends core::Object {
|
||||
: self::A::v1 = v1, self::A::v2 = v2, super core::Object::•()
|
||||
;
|
||||
}
|
||||
class M1 extends core::Object {
|
||||
abstract class M1 extends core::Object /*isMixinDeclaration*/ {
|
||||
field core::num v2 = 1.{core::int::unary-}(){() → core::int};
|
||||
synthetic constructor •() → self::M1
|
||||
: super core::Object::•()
|
||||
;
|
||||
}
|
||||
class C extends self::A implements self::M1 /*isEliminatedMixin*/ {
|
||||
field core::num v2 = 1.{core::int::unary-}(){() → core::int};
|
||||
|
||||
@@ -6,7 +6,7 @@ abstract class A<T> {
|
||||
foo(T x);
|
||||
}
|
||||
|
||||
abstract class B<T> implements A<T> {}
|
||||
mixin B<T> implements A<T> {}
|
||||
|
||||
class C {
|
||||
foo(num x) {}
|
||||
|
||||
@@ -8,10 +8,7 @@ abstract class A<T extends core::Object? = dynamic> extends core::Object {
|
||||
;
|
||||
abstract method foo(covariant-by-class self::A::T% x) → dynamic;
|
||||
}
|
||||
abstract class B<T extends core::Object? = dynamic> extends core::Object implements self::A<self::B::T%> {
|
||||
synthetic constructor •() → self::B<self::B::T%>
|
||||
: super core::Object::•()
|
||||
;
|
||||
abstract class B<T extends core::Object? = dynamic> extends core::Object implements self::A<self::B::T%> /*isMixinDeclaration*/ {
|
||||
}
|
||||
class C extends core::Object {
|
||||
synthetic constructor •() → self::C
|
||||
|
||||
@@ -8,10 +8,7 @@ abstract class A<T extends core::Object? = dynamic> extends core::Object {
|
||||
;
|
||||
abstract method foo(covariant-by-class self::A::T% x) → dynamic;
|
||||
}
|
||||
abstract class B<T extends core::Object? = dynamic> extends core::Object implements self::A<self::B::T%> {
|
||||
synthetic constructor •() → self::B<self::B::T%>
|
||||
: super core::Object::•()
|
||||
;
|
||||
abstract class B<T extends core::Object? = dynamic> extends core::Object implements self::A<self::B::T%> /*isMixinDeclaration*/ {
|
||||
}
|
||||
class C extends core::Object {
|
||||
synthetic constructor •() → self::C
|
||||
|
||||
@@ -2,7 +2,7 @@ abstract class A<T> {
|
||||
foo(T x);
|
||||
}
|
||||
|
||||
abstract class B<T> implements A<T> {}
|
||||
mixin B<T> implements A<T> {}
|
||||
|
||||
class C {
|
||||
foo(num x) {}
|
||||
|
||||
+1
-2
@@ -2,8 +2,6 @@ abstract class A<T> {
|
||||
foo(T x);
|
||||
}
|
||||
|
||||
abstract class B<T> implements A<T> {}
|
||||
|
||||
class C {
|
||||
foo(num x) {}
|
||||
}
|
||||
@@ -12,3 +10,4 @@ class D<T extends num> extends C with B<T> {}
|
||||
|
||||
class E<T extends num> = C with B<T>;
|
||||
main() {}
|
||||
mixin B<T> implements A<T> {}
|
||||
|
||||
@@ -8,10 +8,7 @@ abstract class A<T extends core::Object? = dynamic> extends core::Object {
|
||||
;
|
||||
abstract method foo(covariant-by-class self::A::T% x) → dynamic;
|
||||
}
|
||||
abstract class B<T extends core::Object? = dynamic> extends core::Object implements self::A<self::B::T%> {
|
||||
synthetic constructor •() → self::B<self::B::T%>
|
||||
: super core::Object::•()
|
||||
;
|
||||
abstract class B<T extends core::Object? = dynamic> extends core::Object implements self::A<self::B::T%> /*isMixinDeclaration*/ {
|
||||
}
|
||||
class C extends core::Object {
|
||||
synthetic constructor •() → self::C
|
||||
|
||||
@@ -8,10 +8,7 @@ abstract class A<T extends core::Object? = dynamic> extends core::Object {
|
||||
;
|
||||
abstract method foo(covariant-by-class self::A::T% x) → dynamic;
|
||||
}
|
||||
abstract class B<T extends core::Object? = dynamic> extends core::Object implements self::A<self::B::T%> {
|
||||
synthetic constructor •() → self::B<self::B::T%>
|
||||
: super core::Object::•()
|
||||
;
|
||||
abstract class B<T extends core::Object? = dynamic> extends core::Object implements self::A<self::B::T%> /*isMixinDeclaration*/ {
|
||||
}
|
||||
class C extends core::Object {
|
||||
synthetic constructor •() → self::C
|
||||
|
||||
@@ -7,9 +7,7 @@ abstract class A<T extends core::Object? = dynamic> extends core::Object {
|
||||
;
|
||||
abstract method foo(covariant-by-class self::A::T% x) → dynamic;
|
||||
}
|
||||
abstract class B<T extends core::Object? = dynamic> extends core::Object implements self::A<self::B::T%> {
|
||||
synthetic constructor •() → self::B<self::B::T%>
|
||||
;
|
||||
abstract class B<T extends core::Object? = dynamic> extends core::Object implements self::A<self::B::T%> /*isMixinDeclaration*/ {
|
||||
}
|
||||
class C extends core::Object {
|
||||
synthetic constructor •() → self::C
|
||||
|
||||
@@ -8,10 +8,7 @@ abstract class A<T extends core::Object? = dynamic> extends core::Object {
|
||||
;
|
||||
abstract method foo(covariant-by-class self::A::T% x) → dynamic;
|
||||
}
|
||||
abstract class B<T extends core::Object? = dynamic> extends core::Object implements self::A<self::B::T%> {
|
||||
synthetic constructor •() → self::B<self::B::T%>
|
||||
: super core::Object::•()
|
||||
;
|
||||
abstract class B<T extends core::Object? = dynamic> extends core::Object implements self::A<self::B::T%> /*isMixinDeclaration*/ {
|
||||
}
|
||||
class C extends core::Object {
|
||||
synthetic constructor •() → self::C
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
|
||||
abstract class Base {}
|
||||
|
||||
abstract class MixinA<T> {
|
||||
mixin MixinA<T> {
|
||||
T method(Object t);
|
||||
}
|
||||
|
||||
@@ -18,11 +18,11 @@ abstract class Map<K, V> {
|
||||
V operator [](Object key);
|
||||
}
|
||||
|
||||
abstract class MapMixin<K, V> implements Map<K, V> {
|
||||
mixin MapMixin<K, V> implements Map<K, V> {
|
||||
V operator [](Object key);
|
||||
}
|
||||
|
||||
abstract class UnmodifiableMapMixin<K, V> implements Map<K, V> {}
|
||||
mixin UnmodifiableMapMixin<K, V> implements Map<K, V> {}
|
||||
|
||||
class YamlMap extends YamlNode with MapMixin, UnmodifiableMapMixin {
|
||||
operator [](key) {}
|
||||
|
||||
@@ -7,10 +7,7 @@ abstract class Base extends core::Object {
|
||||
: super core::Object::•()
|
||||
;
|
||||
}
|
||||
abstract class MixinA<T extends core::Object? = dynamic> extends core::Object {
|
||||
synthetic constructor •() → self::MixinA<self::MixinA::T%>
|
||||
: super core::Object::•()
|
||||
;
|
||||
abstract class MixinA<T extends core::Object? = dynamic> extends core::Object /*isMixinDeclaration*/ {
|
||||
abstract method method(core::Object t) → self::MixinA::T%;
|
||||
}
|
||||
abstract class _Class&Base&MixinA = self::Base with self::MixinA<dynamic> /*isAnonymousMixin*/ {
|
||||
@@ -36,16 +33,10 @@ abstract class Map<K extends core::Object? = dynamic, V extends core::Object? =
|
||||
;
|
||||
abstract operator [](core::Object key) → self::Map::V%;
|
||||
}
|
||||
abstract class MapMixin<K extends core::Object? = dynamic, V extends core::Object? = dynamic> extends core::Object implements self::Map<self::MapMixin::K%, self::MapMixin::V%> {
|
||||
synthetic constructor •() → self::MapMixin<self::MapMixin::K%, self::MapMixin::V%>
|
||||
: super core::Object::•()
|
||||
;
|
||||
abstract class MapMixin<K extends core::Object? = dynamic, V extends core::Object? = dynamic> extends core::Object implements self::Map<self::MapMixin::K%, self::MapMixin::V%> /*isMixinDeclaration*/ {
|
||||
abstract operator [](core::Object key) → self::MapMixin::V%;
|
||||
}
|
||||
abstract class UnmodifiableMapMixin<K extends core::Object? = dynamic, V extends core::Object? = dynamic> extends core::Object implements self::Map<self::UnmodifiableMapMixin::K%, self::UnmodifiableMapMixin::V%> {
|
||||
synthetic constructor •() → self::UnmodifiableMapMixin<self::UnmodifiableMapMixin::K%, self::UnmodifiableMapMixin::V%>
|
||||
: super core::Object::•()
|
||||
;
|
||||
abstract class UnmodifiableMapMixin<K extends core::Object? = dynamic, V extends core::Object? = dynamic> extends core::Object implements self::Map<self::UnmodifiableMapMixin::K%, self::UnmodifiableMapMixin::V%> /*isMixinDeclaration*/ {
|
||||
}
|
||||
abstract class _YamlMap&YamlNode&MapMixin = self::YamlNode with self::MapMixin<dynamic, dynamic> /*isAnonymousMixin*/ {
|
||||
synthetic constructor •() → self::_YamlMap&YamlNode&MapMixin
|
||||
|
||||
+3
-12
@@ -7,10 +7,7 @@ abstract class Base extends core::Object {
|
||||
: super core::Object::•()
|
||||
;
|
||||
}
|
||||
abstract class MixinA<T extends core::Object? = dynamic> extends core::Object {
|
||||
synthetic constructor •() → self::MixinA<self::MixinA::T%>
|
||||
: super core::Object::•()
|
||||
;
|
||||
abstract class MixinA<T extends core::Object? = dynamic> extends core::Object /*isMixinDeclaration*/ {
|
||||
abstract method method(core::Object t) → self::MixinA::T%;
|
||||
}
|
||||
abstract class _Class&Base&MixinA extends self::Base implements self::MixinA<dynamic> /*isAnonymousMixin,isEliminatedMixin*/ {
|
||||
@@ -36,16 +33,10 @@ abstract class Map<K extends core::Object? = dynamic, V extends core::Object? =
|
||||
;
|
||||
abstract operator [](core::Object key) → self::Map::V%;
|
||||
}
|
||||
abstract class MapMixin<K extends core::Object? = dynamic, V extends core::Object? = dynamic> extends core::Object implements self::Map<self::MapMixin::K%, self::MapMixin::V%> {
|
||||
synthetic constructor •() → self::MapMixin<self::MapMixin::K%, self::MapMixin::V%>
|
||||
: super core::Object::•()
|
||||
;
|
||||
abstract class MapMixin<K extends core::Object? = dynamic, V extends core::Object? = dynamic> extends core::Object implements self::Map<self::MapMixin::K%, self::MapMixin::V%> /*isMixinDeclaration*/ {
|
||||
abstract operator [](core::Object key) → self::MapMixin::V%;
|
||||
}
|
||||
abstract class UnmodifiableMapMixin<K extends core::Object? = dynamic, V extends core::Object? = dynamic> extends core::Object implements self::Map<self::UnmodifiableMapMixin::K%, self::UnmodifiableMapMixin::V%> {
|
||||
synthetic constructor •() → self::UnmodifiableMapMixin<self::UnmodifiableMapMixin::K%, self::UnmodifiableMapMixin::V%>
|
||||
: super core::Object::•()
|
||||
;
|
||||
abstract class UnmodifiableMapMixin<K extends core::Object? = dynamic, V extends core::Object? = dynamic> extends core::Object implements self::Map<self::UnmodifiableMapMixin::K%, self::UnmodifiableMapMixin::V%> /*isMixinDeclaration*/ {
|
||||
}
|
||||
abstract class _YamlMap&YamlNode&MapMixin extends self::YamlNode implements self::MapMixin<dynamic, dynamic> /*isAnonymousMixin,isEliminatedMixin*/ {
|
||||
synthetic constructor •() → self::_YamlMap&YamlNode&MapMixin
|
||||
|
||||
+3
-4
@@ -1,6 +1,6 @@
|
||||
abstract class Base {}
|
||||
|
||||
abstract class MixinA<T> {
|
||||
mixin MixinA<T> {
|
||||
T method(Object t);
|
||||
}
|
||||
|
||||
@@ -14,11 +14,10 @@ abstract class Map<K, V> {
|
||||
V operator [](Object key);
|
||||
}
|
||||
|
||||
abstract class MapMixin<K, V> implements Map<K, V> {
|
||||
mixin MapMixin<K, V> implements Map<K, V> {
|
||||
V operator [](Object key);
|
||||
}
|
||||
|
||||
abstract class UnmodifiableMapMixin<K, V> implements Map<K, V> {}
|
||||
mixin UnmodifiableMapMixin<K, V> implements Map<K, V> {}
|
||||
|
||||
class YamlMap extends YamlNode with MapMixin, UnmodifiableMapMixin {
|
||||
operator [](key) {}
|
||||
|
||||
+7
-10
@@ -8,16 +8,6 @@ abstract class Map<K, V> {
|
||||
V operator [](Object key);
|
||||
}
|
||||
|
||||
abstract class MapMixin<K, V> implements Map<K, V> {
|
||||
V operator [](Object key);
|
||||
}
|
||||
|
||||
abstract class MixinA<T> {
|
||||
T method(Object t);
|
||||
}
|
||||
|
||||
abstract class UnmodifiableMapMixin<K, V> implements Map<K, V> {}
|
||||
|
||||
abstract class YamlNode {}
|
||||
|
||||
class YamlMap extends YamlNode with MapMixin, UnmodifiableMapMixin {
|
||||
@@ -25,3 +15,10 @@ class YamlMap extends YamlNode with MapMixin, UnmodifiableMapMixin {
|
||||
}
|
||||
|
||||
main() {}
|
||||
mixin MapMixin<K, V> implements Map<K, V> {
|
||||
V operator [](Object key);
|
||||
}
|
||||
mixin MixinA<T> {
|
||||
T method(Object t);
|
||||
}
|
||||
mixin UnmodifiableMapMixin<K, V> implements Map<K, V> {}
|
||||
|
||||
@@ -7,10 +7,7 @@ abstract class Base extends core::Object {
|
||||
: super core::Object::•()
|
||||
;
|
||||
}
|
||||
abstract class MixinA<T extends core::Object? = dynamic> extends core::Object {
|
||||
synthetic constructor •() → self::MixinA<self::MixinA::T%>
|
||||
: super core::Object::•()
|
||||
;
|
||||
abstract class MixinA<T extends core::Object? = dynamic> extends core::Object /*isMixinDeclaration*/ {
|
||||
abstract method method(core::Object t) → self::MixinA::T%;
|
||||
}
|
||||
abstract class _Class&Base&MixinA = self::Base with self::MixinA<dynamic> /*isAnonymousMixin*/ {
|
||||
@@ -36,16 +33,10 @@ abstract class Map<K extends core::Object? = dynamic, V extends core::Object? =
|
||||
;
|
||||
abstract operator [](core::Object key) → self::Map::V%;
|
||||
}
|
||||
abstract class MapMixin<K extends core::Object? = dynamic, V extends core::Object? = dynamic> extends core::Object implements self::Map<self::MapMixin::K%, self::MapMixin::V%> {
|
||||
synthetic constructor •() → self::MapMixin<self::MapMixin::K%, self::MapMixin::V%>
|
||||
: super core::Object::•()
|
||||
;
|
||||
abstract class MapMixin<K extends core::Object? = dynamic, V extends core::Object? = dynamic> extends core::Object implements self::Map<self::MapMixin::K%, self::MapMixin::V%> /*isMixinDeclaration*/ {
|
||||
abstract operator [](core::Object key) → self::MapMixin::V%;
|
||||
}
|
||||
abstract class UnmodifiableMapMixin<K extends core::Object? = dynamic, V extends core::Object? = dynamic> extends core::Object implements self::Map<self::UnmodifiableMapMixin::K%, self::UnmodifiableMapMixin::V%> {
|
||||
synthetic constructor •() → self::UnmodifiableMapMixin<self::UnmodifiableMapMixin::K%, self::UnmodifiableMapMixin::V%>
|
||||
: super core::Object::•()
|
||||
;
|
||||
abstract class UnmodifiableMapMixin<K extends core::Object? = dynamic, V extends core::Object? = dynamic> extends core::Object implements self::Map<self::UnmodifiableMapMixin::K%, self::UnmodifiableMapMixin::V%> /*isMixinDeclaration*/ {
|
||||
}
|
||||
abstract class _YamlMap&YamlNode&MapMixin = self::YamlNode with self::MapMixin<dynamic, dynamic> /*isAnonymousMixin*/ {
|
||||
synthetic constructor •() → self::_YamlMap&YamlNode&MapMixin
|
||||
|
||||
+3
-12
@@ -7,10 +7,7 @@ abstract class Base extends core::Object {
|
||||
: super core::Object::•()
|
||||
;
|
||||
}
|
||||
abstract class MixinA<T extends core::Object? = dynamic> extends core::Object {
|
||||
synthetic constructor •() → self::MixinA<self::MixinA::T%>
|
||||
: super core::Object::•()
|
||||
;
|
||||
abstract class MixinA<T extends core::Object? = dynamic> extends core::Object /*isMixinDeclaration*/ {
|
||||
abstract method method(core::Object t) → self::MixinA::T%;
|
||||
}
|
||||
abstract class _Class&Base&MixinA = self::Base with self::MixinA<dynamic> /*isAnonymousMixin*/ {
|
||||
@@ -36,16 +33,10 @@ abstract class Map<K extends core::Object? = dynamic, V extends core::Object? =
|
||||
;
|
||||
abstract operator [](core::Object key) → self::Map::V%;
|
||||
}
|
||||
abstract class MapMixin<K extends core::Object? = dynamic, V extends core::Object? = dynamic> extends core::Object implements self::Map<self::MapMixin::K%, self::MapMixin::V%> {
|
||||
synthetic constructor •() → self::MapMixin<self::MapMixin::K%, self::MapMixin::V%>
|
||||
: super core::Object::•()
|
||||
;
|
||||
abstract class MapMixin<K extends core::Object? = dynamic, V extends core::Object? = dynamic> extends core::Object implements self::Map<self::MapMixin::K%, self::MapMixin::V%> /*isMixinDeclaration*/ {
|
||||
abstract operator [](core::Object key) → self::MapMixin::V%;
|
||||
}
|
||||
abstract class UnmodifiableMapMixin<K extends core::Object? = dynamic, V extends core::Object? = dynamic> extends core::Object implements self::Map<self::UnmodifiableMapMixin::K%, self::UnmodifiableMapMixin::V%> {
|
||||
synthetic constructor •() → self::UnmodifiableMapMixin<self::UnmodifiableMapMixin::K%, self::UnmodifiableMapMixin::V%>
|
||||
: super core::Object::•()
|
||||
;
|
||||
abstract class UnmodifiableMapMixin<K extends core::Object? = dynamic, V extends core::Object? = dynamic> extends core::Object implements self::Map<self::UnmodifiableMapMixin::K%, self::UnmodifiableMapMixin::V%> /*isMixinDeclaration*/ {
|
||||
}
|
||||
abstract class _YamlMap&YamlNode&MapMixin = self::YamlNode with self::MapMixin<dynamic, dynamic> /*isAnonymousMixin*/ {
|
||||
synthetic constructor •() → self::_YamlMap&YamlNode&MapMixin
|
||||
|
||||
+3
-9
@@ -6,9 +6,7 @@ abstract class Base extends core::Object {
|
||||
synthetic constructor •() → self::Base
|
||||
;
|
||||
}
|
||||
abstract class MixinA<T extends core::Object? = dynamic> extends core::Object {
|
||||
synthetic constructor •() → self::MixinA<self::MixinA::T%>
|
||||
;
|
||||
abstract class MixinA<T extends core::Object? = dynamic> extends core::Object /*isMixinDeclaration*/ {
|
||||
abstract method method(core::Object t) → self::MixinA::T%;
|
||||
}
|
||||
abstract class _Class&Base&MixinA = self::Base with self::MixinA<dynamic> /*isAnonymousMixin*/ {
|
||||
@@ -32,14 +30,10 @@ abstract class Map<K extends core::Object? = dynamic, V extends core::Object? =
|
||||
;
|
||||
abstract operator [](core::Object key) → self::Map::V%;
|
||||
}
|
||||
abstract class MapMixin<K extends core::Object? = dynamic, V extends core::Object? = dynamic> extends core::Object implements self::Map<self::MapMixin::K%, self::MapMixin::V%> {
|
||||
synthetic constructor •() → self::MapMixin<self::MapMixin::K%, self::MapMixin::V%>
|
||||
;
|
||||
abstract class MapMixin<K extends core::Object? = dynamic, V extends core::Object? = dynamic> extends core::Object implements self::Map<self::MapMixin::K%, self::MapMixin::V%> /*isMixinDeclaration*/ {
|
||||
abstract operator [](core::Object key) → self::MapMixin::V%;
|
||||
}
|
||||
abstract class UnmodifiableMapMixin<K extends core::Object? = dynamic, V extends core::Object? = dynamic> extends core::Object implements self::Map<self::UnmodifiableMapMixin::K%, self::UnmodifiableMapMixin::V%> {
|
||||
synthetic constructor •() → self::UnmodifiableMapMixin<self::UnmodifiableMapMixin::K%, self::UnmodifiableMapMixin::V%>
|
||||
;
|
||||
abstract class UnmodifiableMapMixin<K extends core::Object? = dynamic, V extends core::Object? = dynamic> extends core::Object implements self::Map<self::UnmodifiableMapMixin::K%, self::UnmodifiableMapMixin::V%> /*isMixinDeclaration*/ {
|
||||
}
|
||||
abstract class _YamlMap&YamlNode&MapMixin = self::YamlNode with self::MapMixin<dynamic, dynamic> /*isAnonymousMixin*/ {
|
||||
synthetic constructor •() → self::_YamlMap&YamlNode&MapMixin
|
||||
|
||||
+3
-12
@@ -7,10 +7,7 @@ abstract class Base extends core::Object {
|
||||
: super core::Object::•()
|
||||
;
|
||||
}
|
||||
abstract class MixinA<T extends core::Object? = dynamic> extends core::Object {
|
||||
synthetic constructor •() → self::MixinA<self::MixinA::T%>
|
||||
: super core::Object::•()
|
||||
;
|
||||
abstract class MixinA<T extends core::Object? = dynamic> extends core::Object /*isMixinDeclaration*/ {
|
||||
abstract method method(core::Object t) → self::MixinA::T%;
|
||||
}
|
||||
abstract class _Class&Base&MixinA extends self::Base implements self::MixinA<dynamic> /*isAnonymousMixin,isEliminatedMixin*/ {
|
||||
@@ -36,16 +33,10 @@ abstract class Map<K extends core::Object? = dynamic, V extends core::Object? =
|
||||
;
|
||||
abstract operator [](core::Object key) → self::Map::V%;
|
||||
}
|
||||
abstract class MapMixin<K extends core::Object? = dynamic, V extends core::Object? = dynamic> extends core::Object implements self::Map<self::MapMixin::K%, self::MapMixin::V%> {
|
||||
synthetic constructor •() → self::MapMixin<self::MapMixin::K%, self::MapMixin::V%>
|
||||
: super core::Object::•()
|
||||
;
|
||||
abstract class MapMixin<K extends core::Object? = dynamic, V extends core::Object? = dynamic> extends core::Object implements self::Map<self::MapMixin::K%, self::MapMixin::V%> /*isMixinDeclaration*/ {
|
||||
abstract operator [](core::Object key) → self::MapMixin::V%;
|
||||
}
|
||||
abstract class UnmodifiableMapMixin<K extends core::Object? = dynamic, V extends core::Object? = dynamic> extends core::Object implements self::Map<self::UnmodifiableMapMixin::K%, self::UnmodifiableMapMixin::V%> {
|
||||
synthetic constructor •() → self::UnmodifiableMapMixin<self::UnmodifiableMapMixin::K%, self::UnmodifiableMapMixin::V%>
|
||||
: super core::Object::•()
|
||||
;
|
||||
abstract class UnmodifiableMapMixin<K extends core::Object? = dynamic, V extends core::Object? = dynamic> extends core::Object implements self::Map<self::UnmodifiableMapMixin::K%, self::UnmodifiableMapMixin::V%> /*isMixinDeclaration*/ {
|
||||
}
|
||||
abstract class _YamlMap&YamlNode&MapMixin extends self::YamlNode implements self::MapMixin<dynamic, dynamic> /*isAnonymousMixin,isEliminatedMixin*/ {
|
||||
synthetic constructor •() → self::_YamlMap&YamlNode&MapMixin
|
||||
|
||||
@@ -2,5 +2,6 @@
|
||||
// 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 A<Q> {}
|
||||
class B<X> extends Object with A<void Function<Y extends X>()> {}
|
||||
mixin A<Q> {}
|
||||
|
||||
class B<X> extends Object with A<void Function<Y extends X>()> {}
|
||||
|
||||
@@ -2,17 +2,14 @@ library /*isNonNullableByDefault*/;
|
||||
//
|
||||
// Problems in library:
|
||||
//
|
||||
// pkg/front_end/testcases/general/issue38944.dart:6:7: Error: Can't use implicitly 'out' variable 'X' in an 'inout' position in supertype 'A'.
|
||||
// pkg/front_end/testcases/general/issue38944.dart:7:7: Error: Can't use implicitly 'out' variable 'X' in an 'inout' position in supertype 'A'.
|
||||
// class B<X> extends Object with A<void Function<Y extends X>()> {}
|
||||
// ^
|
||||
//
|
||||
import self as self;
|
||||
import "dart:core" as core;
|
||||
|
||||
class A<Q extends core::Object? = dynamic> extends core::Object {
|
||||
synthetic constructor •() → self::A<self::A::Q%>
|
||||
: super core::Object::•()
|
||||
;
|
||||
abstract class A<Q extends core::Object? = dynamic> extends core::Object /*isMixinDeclaration*/ {
|
||||
}
|
||||
abstract class _B&Object&A<X extends core::Object? = dynamic> extends core::Object /*isAnonymousMixin,hasConstConstructor*/ {
|
||||
const synthetic constructor •() → self::_B&Object&A<self::_B&Object&A::X%>
|
||||
|
||||
@@ -2,17 +2,14 @@ library /*isNonNullableByDefault*/;
|
||||
//
|
||||
// Problems in library:
|
||||
//
|
||||
// pkg/front_end/testcases/general/issue38944.dart:6:7: Error: Can't use implicitly 'out' variable 'X' in an 'inout' position in supertype 'A'.
|
||||
// pkg/front_end/testcases/general/issue38944.dart:7:7: Error: Can't use implicitly 'out' variable 'X' in an 'inout' position in supertype 'A'.
|
||||
// class B<X> extends Object with A<void Function<Y extends X>()> {}
|
||||
// ^
|
||||
//
|
||||
import self as self;
|
||||
import "dart:core" as core;
|
||||
|
||||
class A<Q extends core::Object? = dynamic> extends core::Object {
|
||||
synthetic constructor •() → self::A<self::A::Q%>
|
||||
: super core::Object::•()
|
||||
;
|
||||
abstract class A<Q extends core::Object? = dynamic> extends core::Object /*isMixinDeclaration*/ {
|
||||
}
|
||||
abstract class _B&Object&A<X extends core::Object? = dynamic> extends core::Object /*isAnonymousMixin,hasConstConstructor*/ {
|
||||
const synthetic constructor •() → self::_B&Object&A<self::_B&Object&A::X%>
|
||||
|
||||
@@ -1,3 +1,3 @@
|
||||
class A<Q> {}
|
||||
mixin A<Q> {}
|
||||
|
||||
class B<X> extends Object with A<void Function<Y extends X>()> {}
|
||||
|
||||
@@ -1,3 +1,3 @@
|
||||
class A<Q> {}
|
||||
|
||||
class B<X> extends Object with A<void Function<Y extends X>()> {}
|
||||
|
||||
mixin A<Q> {}
|
||||
|
||||
@@ -2,17 +2,14 @@ library /*isNonNullableByDefault*/;
|
||||
//
|
||||
// Problems in library:
|
||||
//
|
||||
// pkg/front_end/testcases/general/issue38944.dart:6:7: Error: Can't use implicitly 'out' variable 'X' in an 'inout' position in supertype 'A'.
|
||||
// pkg/front_end/testcases/general/issue38944.dart:7:7: Error: Can't use implicitly 'out' variable 'X' in an 'inout' position in supertype 'A'.
|
||||
// class B<X> extends Object with A<void Function<Y extends X>()> {}
|
||||
// ^
|
||||
//
|
||||
import self as self;
|
||||
import "dart:core" as core;
|
||||
|
||||
class A<Q extends core::Object? = dynamic> extends core::Object {
|
||||
synthetic constructor •() → self::A<self::A::Q%>
|
||||
: super core::Object::•()
|
||||
;
|
||||
abstract class A<Q extends core::Object? = dynamic> extends core::Object /*isMixinDeclaration*/ {
|
||||
}
|
||||
abstract class _B&Object&A<X extends core::Object? = dynamic> extends core::Object /*isAnonymousMixin,hasConstConstructor*/ {
|
||||
const synthetic constructor •() → self::_B&Object&A<self::_B&Object&A::X%>
|
||||
|
||||
@@ -2,17 +2,14 @@ library /*isNonNullableByDefault*/;
|
||||
//
|
||||
// Problems in library:
|
||||
//
|
||||
// pkg/front_end/testcases/general/issue38944.dart:6:7: Error: Can't use implicitly 'out' variable 'X' in an 'inout' position in supertype 'A'.
|
||||
// pkg/front_end/testcases/general/issue38944.dart:7:7: Error: Can't use implicitly 'out' variable 'X' in an 'inout' position in supertype 'A'.
|
||||
// class B<X> extends Object with A<void Function<Y extends X>()> {}
|
||||
// ^
|
||||
//
|
||||
import self as self;
|
||||
import "dart:core" as core;
|
||||
|
||||
class A<Q extends core::Object? = dynamic> extends core::Object {
|
||||
synthetic constructor •() → self::A<self::A::Q%>
|
||||
: super core::Object::•()
|
||||
;
|
||||
abstract class A<Q extends core::Object? = dynamic> extends core::Object /*isMixinDeclaration*/ {
|
||||
}
|
||||
abstract class _B&Object&A<X extends core::Object? = dynamic> extends core::Object /*isAnonymousMixin,hasConstConstructor*/ {
|
||||
const synthetic constructor •() → self::_B&Object&A<self::_B&Object&A::X%>
|
||||
|
||||
@@ -2,16 +2,14 @@ library /*isNonNullableByDefault*/;
|
||||
//
|
||||
// Problems in library:
|
||||
//
|
||||
// pkg/front_end/testcases/general/issue38944.dart:6:7: Error: Can't use implicitly 'out' variable 'X' in an 'inout' position in supertype 'A'.
|
||||
// pkg/front_end/testcases/general/issue38944.dart:7:7: Error: Can't use implicitly 'out' variable 'X' in an 'inout' position in supertype 'A'.
|
||||
// class B<X> extends Object with A<void Function<Y extends X>()> {}
|
||||
// ^
|
||||
//
|
||||
import self as self;
|
||||
import "dart:core" as core;
|
||||
|
||||
class A<Q extends core::Object? = dynamic> extends core::Object {
|
||||
synthetic constructor •() → self::A<self::A::Q%>
|
||||
;
|
||||
abstract class A<Q extends core::Object? = dynamic> extends core::Object /*isMixinDeclaration*/ {
|
||||
}
|
||||
abstract class _B&Object&A<X extends core::Object? = dynamic> extends core::Object /*isAnonymousMixin,hasConstConstructor*/ {
|
||||
const synthetic constructor •() → self::_B&Object&A<self::_B&Object&A::X%>
|
||||
|
||||
@@ -2,17 +2,14 @@ library /*isNonNullableByDefault*/;
|
||||
//
|
||||
// Problems in library:
|
||||
//
|
||||
// pkg/front_end/testcases/general/issue38944.dart:6:7: Error: Can't use implicitly 'out' variable 'X' in an 'inout' position in supertype 'A'.
|
||||
// pkg/front_end/testcases/general/issue38944.dart:7:7: Error: Can't use implicitly 'out' variable 'X' in an 'inout' position in supertype 'A'.
|
||||
// class B<X> extends Object with A<void Function<Y extends X>()> {}
|
||||
// ^
|
||||
//
|
||||
import self as self;
|
||||
import "dart:core" as core;
|
||||
|
||||
class A<Q extends core::Object? = dynamic> extends core::Object {
|
||||
synthetic constructor •() → self::A<self::A::Q%>
|
||||
: super core::Object::•()
|
||||
;
|
||||
abstract class A<Q extends core::Object? = dynamic> extends core::Object /*isMixinDeclaration*/ {
|
||||
}
|
||||
abstract class _B&Object&A<X extends core::Object? = dynamic> extends core::Object /*isAnonymousMixin,hasConstConstructor*/ {
|
||||
const synthetic constructor •() → self::_B&Object&A<self::_B&Object&A::X%>
|
||||
|
||||
@@ -14,7 +14,7 @@ abstract class SuperClass2 {
|
||||
SuperClass2(String i) : value = i;
|
||||
}
|
||||
|
||||
class Mixin {}
|
||||
mixin Mixin {}
|
||||
|
||||
class NamedMixin1 = SuperClass1 with Mixin;
|
||||
class NamedMixin2 = SuperClass2 with Mixin;
|
||||
|
||||
@@ -25,10 +25,7 @@ abstract class SuperClass2 extends core::Object {
|
||||
: self::SuperClass2::value = i, super core::Object::•()
|
||||
;
|
||||
}
|
||||
class Mixin extends core::Object {
|
||||
synthetic constructor •() → self::Mixin
|
||||
: super core::Object::•()
|
||||
;
|
||||
abstract class Mixin extends core::Object /*isMixinDeclaration*/ {
|
||||
}
|
||||
class NamedMixin1 = self::SuperClass1 with self::Mixin {
|
||||
synthetic constructor •(core::String value) → self::NamedMixin1
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user