It seems isSealed is not working at runtime. At least, it doesn't work for List:
Welcome to Scala version 2.11.0-20120808-025516-c0d5f0aadd (Java HotSpot(TM) 64-Bit Server VM, Java 1.6.0_26). Type in expressions to have them evaluated. Type :help for more information. scala> import reflect.runtime.universe._ import reflect.runtime.universe._ scala> typeOf[List] <console>:11: error: type List takes type parameters typeOf[List] ^ scala> typeOf[List[_]] res1: reflect.runtime.universe.Type = scala.List[_] scala> res1.type typeConstructor typeSymbol scala> res1.typeSymbol res2: reflect.runtime.universe.Symbol = class List scala> res2.asClass res3: reflect.runtime.universe.ClassSymbol = class List scala> res3.isSealed res4: Boolean = false
upd. This also plagues annotation-getting methods as described in
SI-6428. In the interest of full disclosure, I should mention that privateWithin is also affected.