summaryrefslogblamecommitdiff
path: root/test/files/neg/t5318c.scala
blob: 477a9874ad17fc65d73d62e52454a2f33d2bf37b (plain) (tree)
1
2
3
4
5
6
7
8
9
10
11
12
13
14













                                                                                   
class CompilerHang {
  trait TC[M[_]]
  trait S[A]

  class C[M[_]] {
    type TCM = TC[M]
  }

  // A nefarious implicit, to motivate the removal of `&& sym.owner.isTerm` from
  // `isFreeTypeParamNoSkolem`.
  implicit def tc[x[_], CC[x[_]] <: C[x]](implicit M0: CC[x]#TCM): CC[x]#TCM = null
  def breakage[F[_] : TC] = 0
  breakage // type checker doesn't terminate, should report inference failure
}