[FIR] treat constructors of local classes as local declarations
The main problem: we are trying to lazily resolve local declaration ^KT-58546 ^KT-58490
This commit is contained in:
committed by
Space Team
parent
388634e47d
commit
ae88726fae
+1
-1
@@ -7,5 +7,5 @@ FILE: localConstructor.kt
|
||||
|
||||
}
|
||||
|
||||
lval l: R|Local| = R|/Local.Local|()
|
||||
lval l: R|Local| = R|<local>/Local.Local|()
|
||||
}
|
||||
|
||||
+1
-1
@@ -8,7 +8,7 @@ FILE: localInnerClass.kt
|
||||
}
|
||||
|
||||
public final fun foo(): R|Foo| {
|
||||
^foo this@R|/<anonymous>|.R|/<anonymous>.Derived.Derived|(Int(42))
|
||||
^foo this@R|/<anonymous>|.R|<local>/<anonymous>.Derived.Derived|(Int(42))
|
||||
}
|
||||
|
||||
local final inner class Derived : R|Foo| {
|
||||
|
||||
+2
-2
@@ -19,7 +19,7 @@ FILE: localScopes.kt
|
||||
|
||||
}
|
||||
|
||||
lval base: R|BaseLocal| = R|/BaseLocal.BaseLocal|()
|
||||
lval base: R|BaseLocal| = R|<local>/BaseLocal.BaseLocal|()
|
||||
R|<local>/base|.R|<local>/baz|()
|
||||
R|<local>/base|.R|/Bar.foo|()
|
||||
lval anonymous: R|<anonymous>| = object : R|Bar| {
|
||||
@@ -44,7 +44,7 @@ FILE: localScopes.kt
|
||||
|
||||
}
|
||||
|
||||
lval derived: R|DerivedLocal| = R|/DerivedLocal.DerivedLocal|()
|
||||
lval derived: R|DerivedLocal| = R|<local>/DerivedLocal.DerivedLocal|()
|
||||
R|<local>/derived|.R|<local>/gau|()
|
||||
R|<local>/derived|.R|<local>/baz|()
|
||||
R|<local>/derived|.R|/Bar.foo|()
|
||||
|
||||
+3
-3
@@ -72,7 +72,7 @@ FILE: first.kt
|
||||
|
||||
public final fun baz(): R|kotlin/Unit| {
|
||||
this@R|/Local|.R|<local>/bar|()
|
||||
this@R|/Local|.R|/Local.Inner.Inner|()
|
||||
this@R|/Local|.R|<local>/Local.Inner.Inner|()
|
||||
}
|
||||
|
||||
local final inner class Inner : R|kotlin/Any| {
|
||||
@@ -88,8 +88,8 @@ FILE: first.kt
|
||||
|
||||
}
|
||||
|
||||
R|/Local.Local|().R|<local>/baz|()
|
||||
R|/Local.Local|().R|<local>/bar<HIDDEN: <local>/bar is invisible>#|()
|
||||
R|<local>/Local.Local|().R|<local>/baz|()
|
||||
R|<local>/Local.Local|().R|<local>/bar<HIDDEN: <local>/bar is invisible>#|()
|
||||
}
|
||||
public final fun test(): R|kotlin/Unit| {
|
||||
R|/foo|()
|
||||
|
||||
+1
-1
@@ -12,7 +12,7 @@ FILE: RedundantVisibilityModifierChecker.kt
|
||||
|
||||
}
|
||||
|
||||
R|/LocalClass.LocalClass|().R|<local>/foo| = Int(1)
|
||||
R|<local>/LocalClass.LocalClass|().R|<local>/foo| = Int(1)
|
||||
}
|
||||
internal final inline fun internal(): R|kotlin/Unit| {
|
||||
R|/f|()
|
||||
|
||||
+1
-1
@@ -11,7 +11,7 @@ FILE: RedundantVisibilityModifierCheckerWithExplicitApiMode.kt
|
||||
|
||||
}
|
||||
|
||||
R|/LocalClass.LocalClass|().R|<local>/foo| = Int(1)
|
||||
R|<local>/LocalClass.LocalClass|().R|<local>/foo| = Int(1)
|
||||
}
|
||||
public final fun f2(): R|kotlin/Unit| {
|
||||
R|/f1|()
|
||||
|
||||
+1
-1
@@ -15,5 +15,5 @@ FILE: localVariableInSecondaryConstructor.kt
|
||||
|
||||
}
|
||||
|
||||
R|/LocalClass.LocalClass|().R|<local>/arg|
|
||||
R|<local>/LocalClass.LocalClass|().R|<local>/arg|
|
||||
}
|
||||
|
||||
+3
-3
@@ -27,7 +27,7 @@ FILE: implicitInLocalClasses.kt
|
||||
|
||||
}
|
||||
|
||||
lval a: R|A| = R|/A.A|()
|
||||
lval a: R|A| = R|<local>/A.A|()
|
||||
R|/useBoolean|(R|<local>/a|.R|<local>/foo|(Int(1)))
|
||||
R|/useBoolean|(R|<local>/a|.R|<local>/bar|(Int(1)))
|
||||
R|/useBoolean|(R|<local>/a|.R|<local>/w|)
|
||||
@@ -45,7 +45,7 @@ FILE: implicitInLocalClasses.kt
|
||||
^bar CMP(>, this@R|/B|.R|kotlin/Any.hashCode|().R|kotlin/Int.plus|(R|<local>/y|).R|kotlin/Int.compareTo|(Int(0)))
|
||||
}
|
||||
|
||||
public final val inner: R|B.Inner| = this@R|/B|.R|/B.Inner.Inner|()
|
||||
public final val inner: R|B.Inner| = this@R|/B|.R|<local>/B.Inner.Inner|()
|
||||
public get(): R|B.Inner|
|
||||
|
||||
local final inner class Inner : R|kotlin/Any| {
|
||||
@@ -67,7 +67,7 @@ FILE: implicitInLocalClasses.kt
|
||||
|
||||
}
|
||||
|
||||
lval b: R|B| = R|/B.B|()
|
||||
lval b: R|B| = R|<local>/B.B|()
|
||||
R|/useBoolean|(R|<local>/b|.R|<local>/foo|(Int(1)))
|
||||
R|/useBoolean|(R|<local>/b|.R|<local>/bar|(Int(1)))
|
||||
R|/useBoolean|(R|<local>/b|.R|<local>/inner|.R|<local>/w|)
|
||||
|
||||
@@ -44,14 +44,14 @@ FILE: objectInnerClass.kt
|
||||
}
|
||||
|
||||
public final fun caseForBase(): R|kotlin/Unit| {
|
||||
lval base: R|<anonymous>.Base| = this@R|/<anonymous>|.R|/<anonymous>.Base.Base|(R|/B.B|())
|
||||
lval base: R|<anonymous>.Base| = this@R|/<anonymous>|.R|<local>/<anonymous>.Base.Base|(R|/B.B|())
|
||||
R|<local>/base|.R|<local>/baseFun|()
|
||||
R|<local>/base|.R|<local>/property|
|
||||
(this@R|/<anonymous>|, R|<local>/base|).R|/<anonymous>.hoo|()
|
||||
}
|
||||
|
||||
public final fun caseForChild(): R|kotlin/Unit| {
|
||||
lval child: R|<anonymous>.Child| = this@R|/<anonymous>|.R|/<anonymous>.Child.Child|(R|/B.B|())
|
||||
lval child: R|<anonymous>.Child| = this@R|/<anonymous>|.R|<local>/<anonymous>.Child.Child|(R|/B.B|())
|
||||
R|<local>/child|.R|<local>/baseFun|()
|
||||
R|<local>/child|.R|<local>/property|
|
||||
R|<local>/child|.R|<local>/foo|()
|
||||
@@ -169,14 +169,14 @@ FILE: objectInnerClass.kt
|
||||
}
|
||||
|
||||
public final fun caseForBase(): R|kotlin/Unit| {
|
||||
lval base: R|Case3.<anonymous>.Base| = this@R|/<anonymous>|.R|/Case3.<anonymous>.Base.Base|(R|/B.B|())
|
||||
lval base: R|Case3.<anonymous>.Base| = this@R|/<anonymous>|.R|<local>/Case3.<anonymous>.Base.Base|(R|/B.B|())
|
||||
R|<local>/base|.R|<local>/baseFun|()
|
||||
R|<local>/base|.R|<local>/property|
|
||||
(this@R|/<anonymous>|, R|<local>/base|).R|/<anonymous>.hoo|()
|
||||
}
|
||||
|
||||
public final fun caseForChild(): R|kotlin/Unit| {
|
||||
lval child: R|Case3.<anonymous>.Child| = this@R|/<anonymous>|.R|/Case3.<anonymous>.Child.Child|(R|/B.B|())
|
||||
lval child: R|Case3.<anonymous>.Child| = this@R|/<anonymous>|.R|<local>/Case3.<anonymous>.Child.Child|(R|/B.B|())
|
||||
R|<local>/child|.R|<local>/baseFun|()
|
||||
R|<local>/child|.R|<local>/property|
|
||||
R|<local>/child|.R|<local>/foo|()
|
||||
|
||||
+1
-1
@@ -20,7 +20,7 @@ FILE: test.kt
|
||||
}
|
||||
|
||||
public final fun bar(): R|kotlin/String| {
|
||||
^bar this@R|/<anonymous>|.R|/<anonymous>.S.S|().R|<local>/foo|()
|
||||
^bar this@R|/<anonymous>|.R|<local>/<anonymous>.S.S|().R|<local>/foo|()
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user