aboutsummaryrefslogtreecommitdiff
path: root/tests/pos/mixins.scala
diff options
context:
space:
mode:
Diffstat (limited to 'tests/pos/mixins.scala')
-rw-r--r--tests/pos/mixins.scala22
1 files changed, 22 insertions, 0 deletions
diff --git a/tests/pos/mixins.scala b/tests/pos/mixins.scala
new file mode 100644
index 000000000..846d6a41b
--- /dev/null
+++ b/tests/pos/mixins.scala
@@ -0,0 +1,22 @@
+package mixins
+abstract class Super {
+ def foo: Int
+}
+trait Mixin extends Super {
+ abstract override def foo = super.foo
+}
+trait MixinSub extends Super with Mixin {
+ abstract override def foo: Int = super.foo
+}
+trait MixinSubSub extends MixinSub {
+ abstract override def foo = super.foo
+}
+class Sub extends Super {
+ def foo: Int = 1
+}
+class Base extends Sub with MixinSubSub {
+ override def foo = super.foo
+}
+trait Mixin1 extends Sub with MixinSubSub {}
+class Base1 extends Mixin1 {}
+