Can the stackable trait pattern be used with singleton objects?
I'd like to use the stackable trait pattern with singleton objects, but i can't seem to find how to make the compiler happy: abstract class Pr { def pr() } trait PrePostPr extends Pr { abstract override def pr() { println("prepr") super.pr() println("postpr") } } object Foo extends Pr with PrePostPr { def pr() = println("Foo") } Trying to evaluate this in the repl produces the following error: <console>:10: error: overriding method pr in trait PrePostPr of type ()Unit; method pr needs `override' modifier def pr() = println("Foo") It can, but like this: abstract class Pr { def pr() } trait