Add problematic enum test
This commit is contained in:
@@ -0,0 +1,22 @@
|
||||
enum class TestEnum {
|
||||
FIRST,
|
||||
SECOND,
|
||||
THIRD {
|
||||
fun foo() {}
|
||||
}
|
||||
}
|
||||
|
||||
fun use(some: Any?) {}
|
||||
|
||||
fun useEnum(some: TestEnum) {}
|
||||
|
||||
fun useVararg(vararg some: TestEnum) {}
|
||||
|
||||
fun test() {
|
||||
use(TestEnum.FIRST)
|
||||
useEnum(TestEnum.SECOND)
|
||||
useEnum(TestEnum.THIRD)
|
||||
|
||||
<!INAPPLICABLE_CANDIDATE!>useVararg<!>(TestEnum.FIRST, TestEnum.SECOND)
|
||||
<!INAPPLICABLE_CANDIDATE!>useVararg<!>(1, 2, 3, 4, 5)
|
||||
}
|
||||
@@ -0,0 +1,50 @@
|
||||
FILE: enumEntryUse.kt
|
||||
public final enum class TestEnum : R|kotlin/Enum<TestEnum>| {
|
||||
private constructor(): R|TestEnum| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public final static enum entry FIRST: R|TestEnum| = object : R|TestEnum| {
|
||||
private constructor(): R|anonymous| {
|
||||
super<R|TestEnum|>()
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
public final static enum entry SECOND: R|TestEnum| = object : R|TestEnum| {
|
||||
private constructor(): R|anonymous| {
|
||||
super<R|TestEnum|>()
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
public final static enum entry THIRD: R|TestEnum| = object : R|TestEnum| {
|
||||
private constructor(): R|anonymous| {
|
||||
super<R|TestEnum|>()
|
||||
}
|
||||
|
||||
public final fun foo(): R|kotlin/Unit| {
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
public final static fun values(): R|kotlin/Array<TestEnum>| {
|
||||
}
|
||||
|
||||
public final static fun valueOf(value: R|kotlin/String|): R|TestEnum| {
|
||||
}
|
||||
|
||||
}
|
||||
public final fun use(some: R|kotlin/Any?|): R|kotlin/Unit| {
|
||||
}
|
||||
public final fun useEnum(some: R|TestEnum|): R|kotlin/Unit| {
|
||||
}
|
||||
public final fun useVararg(vararg some: R|kotlin/Array<kotlin/Array<kotlin/Array<kotlin/Array<kotlin/Array<kotlin/Array<TestEnum>>>>>>|): R|kotlin/Unit| {
|
||||
}
|
||||
public final fun test(): R|kotlin/Unit| {
|
||||
R|/use|(Q|TestEnum|.R|/TestEnum.FIRST|)
|
||||
R|/useEnum|(Q|TestEnum|.R|/TestEnum.SECOND|)
|
||||
R|/useEnum|(Q|TestEnum|.R|/TestEnum.THIRD|)
|
||||
<Inapplicable(INAPPLICABLE): [/useVararg]>#(Q|TestEnum|.R|/TestEnum.FIRST|, Q|TestEnum|.R|/TestEnum.SECOND|)
|
||||
<Inapplicable(INAPPLICABLE): [/useVararg]>#(Int(1), Int(2), Int(3), Int(4), Int(5))
|
||||
}
|
||||
+5
@@ -439,6 +439,11 @@ public class FirDiagnosticsTestGenerated extends AbstractFirDiagnosticsTest {
|
||||
runTest("compiler/fir/resolve/testData/resolve/expresssions/dispatchReceiver.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("enumEntryUse.kt")
|
||||
public void testEnumEntryUse() throws Exception {
|
||||
runTest("compiler/fir/resolve/testData/resolve/expresssions/enumEntryUse.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("enumValues.kt")
|
||||
public void testEnumValues() throws Exception {
|
||||
runTest("compiler/fir/resolve/testData/resolve/expresssions/enumValues.kt");
|
||||
|
||||
Generated
+5
@@ -439,6 +439,11 @@ public class FirDiagnosticsWithLightTreeTestGenerated extends AbstractFirDiagnos
|
||||
runTest("compiler/fir/resolve/testData/resolve/expresssions/dispatchReceiver.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("enumEntryUse.kt")
|
||||
public void testEnumEntryUse() throws Exception {
|
||||
runTest("compiler/fir/resolve/testData/resolve/expresssions/enumEntryUse.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("enumValues.kt")
|
||||
public void testEnumValues() throws Exception {
|
||||
runTest("compiler/fir/resolve/testData/resolve/expresssions/enumValues.kt");
|
||||
|
||||
Reference in New Issue
Block a user