K2: make qualifier & classifier the same tower level

#KT-65789 Fixed
#KT-38031 Fixed
This commit is contained in:
Mikhail Glukhikh
2024-03-05 11:42:15 +01:00
committed by Space Team
parent d6e67e43f9
commit 0f53ee64d6
10 changed files with 33 additions and 22 deletions
@@ -13,7 +13,7 @@ enum class SomeClass {
}
}
val resultValues = SomeClass.values()
val resultValuesRef = SomeClass::values
val resultValues = SomeClass.<!OVERLOAD_RESOLUTION_AMBIGUITY!>values<!>()
val resultValuesRef = SomeClass::<!OVERLOAD_RESOLUTION_AMBIGUITY!>values<!>
val resultEntries = <!DEPRECATED_ACCESS_TO_ENTRIES_AS_QUALIFIER!>SomeClass.entries<!>
val resultEntriesRef = SomeClass::<!DEPRECATED_ACCESS_TO_ENUM_ENTRY_PROPERTY_AS_REFERENCE!>entries<!>
@@ -44,10 +44,10 @@ FILE: constructorVsSyntheticValues.fir.kt
public get(): R|kotlin/enums/EnumEntries<SomeClass>|
}
public final val resultValues: R|kotlin/Array<SomeClass>| = Q|SomeClass|.R|/SomeClass.values*s|()
public get(): R|kotlin/Array<SomeClass>|
public final val resultValuesRef: R|kotlin/reflect/KFunction0<kotlin/Array<SomeClass>>| = Q|SomeClass|::R|/SomeClass.values*s|
public get(): R|kotlin/reflect/KFunction0<kotlin/Array<SomeClass>>|
public final val resultValues: <ERROR TYPE REF: Ambiguity: values, [/SomeClass.values, /SomeClass.values.values]> = Q|SomeClass|.<Ambiguity: values, [/SomeClass.values, /SomeClass.values.values]>#()
public get(): <ERROR TYPE REF: Ambiguity: values, [/SomeClass.values, /SomeClass.values.values]>
public final val resultValuesRef: <ERROR TYPE REF: Ambiguity: values, [/SomeClass.values, /SomeClass.values.values]> = Q|SomeClass|::<Ambiguity: values, [/SomeClass.values, /SomeClass.values.values]>#
public get(): <ERROR TYPE REF: Ambiguity: values, [/SomeClass.values, /SomeClass.values.values]>
public final val resultEntries: R|SomeClass.entries.Companion| = Q|SomeClass.entries|
public get(): R|SomeClass.entries.Companion|
public final val resultEntriesRef: R|kotlin/reflect/KFunction0<SomeClass.entries>| = Q|SomeClass|::R|/SomeClass.entries.entries|
@@ -0,0 +1,14 @@
// ISSUE: KT-65789
// LANGUAGE: +PrioritizedEnumEntries
// FIR_DUMP
enum class SomeClass {
FIRST, LAST;
class entries {
companion object
}
}
val resultEntries = SomeClass.entries
val resultEntriesRef = SomeClass::<!OVERLOAD_RESOLUTION_AMBIGUITY!>entries<!>
@@ -1,4 +1,4 @@
FILE: constructorVsSyntheticValuesPrioritized.kt
FILE: constructorVsSyntheticValuesPrioritized.fir.kt
public final enum class SomeClass : R|kotlin/Enum<SomeClass>| {
private constructor(): R|SomeClass| {
super<R|kotlin/Enum<SomeClass>|>()
@@ -32,5 +32,5 @@ FILE: constructorVsSyntheticValuesPrioritized.kt
}
public final val resultEntries: R|kotlin/enums/EnumEntries<SomeClass>| = Q|SomeClass|.R|/SomeClass.entries*s|
public get(): R|kotlin/enums/EnumEntries<SomeClass>|
public final val resultEntriesRef: R|kotlin/reflect/KProperty0<kotlin/enums/EnumEntries<SomeClass>>| = Q|SomeClass|::R|/SomeClass.entries*s|
public get(): R|kotlin/reflect/KProperty0<kotlin/enums/EnumEntries<SomeClass>>|
public final val resultEntriesRef: <ERROR TYPE REF: Ambiguity: entries, [/SomeClass.entries, /SomeClass.entries.entries]> = Q|SomeClass|::<Ambiguity: entries, [/SomeClass.entries, /SomeClass.entries.entries]>#
public get(): <ERROR TYPE REF: Ambiguity: entries, [/SomeClass.entries, /SomeClass.entries.entries]>
@@ -1,4 +1,3 @@
// FIR_IDENTICAL
// ISSUE: KT-65789
// LANGUAGE: +PrioritizedEnumEntries
// FIR_DUMP
@@ -14,8 +14,8 @@ FILE: Foo.kt
}
public final val foo: R|bar/Foo| = R|bar/Foo.Foo|(String(1))
public get(): R|bar/Foo|
public final val barFoo: R|kotlin/Unit| = Q|bar|.R|bar/Foo|(String(2))
public get(): R|kotlin/Unit|
public final val barFoo: R|bar/Foo| = Q|bar|.R|bar/Foo.Foo|(String(2))
public get(): R|bar/Foo|
FILE: another.kt
package foo