```scala class C[T <: C[T]] class UseManifest[T : Manifest] new UseManifest[C[T] forSome{ type T <: C[T] }] ``` Note: I'm calling it "recursive existential type" but I'm really not sure about the terminology... maybe there's a better term.