blob: 139459cb2c2d673f765bc6a46c15bd56fe29246e [file] [log] [blame]
library;
//
// Problems in library:
//
// pkg/front_end/testcases/general/issue32971.dart:16:24: Error: The class 'M' can't be used as a mixin because it isn't a mixin class nor a mixin.
// class A extends B with M {}
// ^
//
import self as self;
import "dart:core" as core;
import "package:expect/expect.dart" as exp;
import "package:expect/expect.dart";
abstract class _A&B&M = self::B with self::M /*isAnonymousMixin*/ {
synthetic constructor •() self::_A&B&M
: super self::B::•()
;
mixin-super-stub method g() core::bool
return super.{self::M::g}();
}
class A extends self::_A&B&M {
synthetic constructor •() self::A
: super self::_A&B&M::•()
;
}
class B extends core::Object {
synthetic constructor •() self::B
: super core::Object::•()
;
method f() core::bool {
#L1:
switch(true) /* core::bool */ {
#L2:
default:
{
return true;
}
}
return false;
}
}
class M extends core::Object {
synthetic constructor •() self::M
: super core::Object::•()
;
method g() core::bool {
#L3:
switch(true) /* core::bool */ {
#L4:
default:
{
return true;
}
}
return false;
}
}
static method main() void {
final self::A o = new self::A::•();
exp::Expect::isTrue(o.{self::B::f}(){() core::bool});
exp::Expect::isTrue(o.{self::_A&B&M::g}(){() core::bool});
}