class Outer { inner class Inner(val t: T) { fun box() = t } } fun box(): String { if (Outer().Inner("OK").box() != "OK") return "Fail" val x: Outer.Inner = Outer().Inner("OK") return x.box() }