aboutsummaryrefslogblamecommitdiff
path: root/tests/pos/t6575a.scala
blob: f128714dabeeda2d051c6ee6726fc692983a4b2b (plain) (tree)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15














                                                                                       
trait X { def foo: PartialFunction[Int, Int] }

trait Y extends X {
  // Inferred type was AbstractPartialFunction[Int, Int] with Serializable
  abstract override def foo = { case i => super.foo(i) * 2 }
}
trait Z extends X {
  // ditto
  abstract override def foo = { case i => super.foo(i) + 3 }
}

trait Comb extends Y with Z {
  // ... which led to a type error here.
  abstract override def foo: PartialFunction[Int, Int] = { case i => super.foo(i) - 2 }
}