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.
This commit is contained in:
@@ -17,4 +17,4 @@ class MyClass() {
|
||||
//public constructor MyClass() defined in test.MyClass
|
||||
//val a: test.MyClass.<init>.<no name provided> defined in test.MyClass.<init>
|
||||
//internal final class <no name provided> : test.A defined in test.MyClass.<init>
|
||||
//private constructor <no name provided>() defined in test.MyClass.<init>.<no name provided>
|
||||
//internal constructor <no name provided>() defined in test.MyClass.<init>.<no name provided>
|
||||
Reference in New Issue
Block a user