class Test1<T, B> : Exception() { inner class Test2<S> : Throwable() class Test3 : NullPointerException() object Test4 : Throwable() {} } class Test5 { inner class Test6 : Exception() fun foo() { class Test7 : Throwable() } } fun topLevelFun() { class Test8 : Error() val obj = object : Throwable() {} }