blob: 627dfd7a23bc6d22bce8ddbfc6ad8aebc4a97022 (
plain) (
tree)
|
|
// /scala/trac/4758/a.scala
// Fri Dec 2 13:41:54 PST 2011
package bar {
// works
trait M[F[_]]
class S[X[_] <: M[X], A](val x:X[A])
object S {
def apply[X[_] <: M[X], A](x: X[A]): S[X, A] = new S[X, A](x)
def unapply[X[_] <: M[X], A](p: S[X, A]) = Some(p.x)
}
}
package foo {
// seemingly equivalent, doesn't work
trait M[F[_]]
case class S[X[_] <: M[X], A](x: X[A])
}
|