// ISSUE: KT-61068, KT-35566 // FILE: generic.kt package generic interface Foo open class SuperOuter { open inner class SuperInner(database: D) } class SubOuter : SuperOuter() { inner class SubInner(database: Any?) : SuperInner<Any?>(database) } // FILE: nongeneric.kt package nongeneric interface Foo open class SuperOuter { open inner class SuperInner(database: D) } class SubOuter : SuperOuter() { inner class SubInner(database: Any?) : SuperInner<Any?>(database) } // FILE: kt35566.kt package kt35566 open class Case1 { open inner class Case1_1 : Case1() where L : CharSequence { var x: L? = null inner class Case1_2(m: M) : Case1.Case1_1<M>() where M : Map { init { x = m } } } }