object Test { case class Y[T1, T2 <: T1]() //val test = Y[Nothing, Int] // Compiler error case class Test[T]() val test2 = Test[Y[Nothing, Int]] // No error }