They must complain about generics and members' declarations with or without implementation.
Examples:
trait Monad[U]: // generic type U
map(U => ?V): Monand[V] // generic type V
flatMap(U => Monad[?V]): Monand[V]
flatMap(u: U => Monad[?V]): Monand[V] =
u(???) // ??? equals to unimplemented
trait Monad[U]: // generic type U
map(U => ?V): Monand[V] // generic type V equals to == map[V](U => V): Monand[V]
flatMap(U => Monad[?V]): Monand[V]
flatMap(u: U => Monad[?V]): Monand[V] =
u(???) // ??? equals to unimplemented