[FE] Don't analyze members with CLASSIFIERS kind filter in AbstractLazyMemberScope
This commit introduces partial support of descriptorKindFilter in
`AbstractPsiBasedDeclarationProvider`. Without it there may be an error
in following case:
```
sealed class Base
class Derived : Base()
class Test<out V>(val x: Base) {
private val y = when (x) {
is Derived -> null
}
}
```
Here we start to resolve type of `y`, then go to computation of inheritors
of sealed class Base, which also may be inside Test, so we need get all
nested classifiers in Test. But without this filtration we will start
computing descriptor for `y` again, which leads to ReenteringLazyComputationException
#KT-44316 Fixed
This commit is contained in:
@@ -0,0 +1,11 @@
|
||||
// FIR_IDENTICAL
|
||||
// KT-44316
|
||||
|
||||
sealed class Base
|
||||
class Derived : Base()
|
||||
|
||||
class Test<out V>(val x: Base) {
|
||||
private val y = when (x) {
|
||||
is Derived -> null
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user