Files
kotlin-fork/js/js.translator/testData/object/cases/objectInObjectWithClosure.kt
T
Svetlana Isakova 9d366cb896 Prohibit local objects and enum classes
#KT-5402 Fixed
  #KT-4838 Fixed

Resolve type of object inside local object as special, not supertype('Any').
Changed visibility of constructor of anonymous object to 'internal' to be able to resolve the following:
fun box(): String {
    var foo = object {
        val bar = object {
            val baz = "ok"
        }
    }
    return foo.bar.baz
}
The containing declaration of property initializers is constructor, so 'baz' was invisible inside private constructor.
2014-09-01 12:32:52 +04:00

19 lines
314 B
Kotlin
Vendored

package foo
class Foo {
fun bar(param: String): String {
val local = "world!"
var a = object {
val b = object {
val bar = param + local
}
}
return a.b.bar
}
}
fun box(): Boolean {
return Foo().bar("hello ") == "hello world!"
}