[FIR] Calculate effective visibility inside anonymous object properly

#KT-38432 Fixed
This commit is contained in:
Mikhail Glukhikh
2020-04-21 11:16:43 +03:00
parent bb73681b62
commit 57b4a54766
23 changed files with 71 additions and 72 deletions
@@ -11,7 +11,7 @@ object A2 public <!CONSTRUCTOR_IN_OBJECT!>constructor(private val prop: Int)<!>
}
val x = object <!CONSTRUCTOR_IN_OBJECT!>(val prop: Int)<!> {
<!CONSTRUCTOR_IN_OBJECT!>constructor()<!> : this(1) {
<!CONSTRUCTOR_IN_OBJECT!>constructor()<!> : <!INAPPLICABLE_CANDIDATE!>this<!>(1) {
val x = 1
x * x
}
@@ -1,15 +0,0 @@
class A<T> {
fun foo() {
val q = object {
open inner class B
inner class C : B()
// No WRONG_NUMBER_OF_TYPE_ARGUMENTS should be reported on these types
val <!EXPOSED_PROPERTY_TYPE!>x<!>: B = B()
val <!EXPOSED_PROPERTY_TYPE!>y<!>: C = C()
}
q.x
q.y
}
}
@@ -1,3 +1,4 @@
// FIR_IDENTICAL
class A<T> {
fun foo() {
val q = object {
@@ -6,14 +6,14 @@ package p
private fun foo(a: Int) = run {
object {
inner class A
fun <!EXPOSED_FUNCTION_RETURN_TYPE!>foo<!>() = A()
fun foo() = A()
}.foo()
}
private fun foo() = run {
object {
inner class A
fun <!EXPOSED_FUNCTION_RETURN_TYPE!>foo<!>() = A()
fun foo() = A()
}.foo()
}