case class Transition[S](x: S) object C object Test { (??? : Any) match { case Transition(C) => } }