summaryrefslogtreecommitdiff
path: root/test/files/pos/t9475.scala
blob: ce9c250acece0e9151c3f7ec454412c6e02b5e62 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
trait Ctx {
  trait Tree
}

trait Lst[+A] {
  def zip[A1 >: A, B](that: Lst[B]): Nothing
}

object Test {

  // both of these methods should be transformed by uncurry
  // such that List[c.Tree] becomes List[Ctx#Tree]:
  def foo1(c: Ctx)(l: Lst[c.Tree]) = l zip l
  def foo2[@specialized T](c: Ctx)(l: Lst[c.Tree], t: T) = l zip l

  // if this doesn't happen for the 2nd method, the specialization
  // transformation fails
}