summaryrefslogblamecommitdiff
path: root/test/files/pos/mixins.scala
blob: 2b403a25e8f18a8fdda091f6b3e4d984f28e13f3 (plain) (tree)
1
2
3
4
5
6
7
8
9



                      
                           

                                        

                                             
 
                                    

                                        

                         
 

                                         
 


                                            
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 {}