Properly check overloads in enum
This commit is contained in:
@@ -132,14 +132,6 @@ public class OverloadResolver {
|
||||
) {
|
||||
MultiMap<Name, CallableMemberDescriptor> functionsByName = MultiMap.create();
|
||||
|
||||
if (classDescriptor.getKind() == ClassKind.ENUM_CLASS) {
|
||||
ClassDescriptorWithResolutionScopes classObjectDescriptor = classDescriptor.getClassObjectDescriptor();
|
||||
assert classObjectDescriptor != null;
|
||||
for (CallableMemberDescriptor memberDescriptor : classObjectDescriptor.getDeclaredCallableMembers()) {
|
||||
functionsByName.putValue(memberDescriptor.getName(), memberDescriptor);
|
||||
}
|
||||
}
|
||||
|
||||
for (CallableMemberDescriptor function : classDescriptor.getDeclaredCallableMembers()) {
|
||||
functionsByName.putValue(function.getName(), function);
|
||||
}
|
||||
|
||||
@@ -0,0 +1,7 @@
|
||||
// !DIAGNOSTICS: -UNUSED_PARAMETER
|
||||
enum class <!CONFLICTING_JVM_DECLARATIONS, CONFLICTING_JVM_DECLARATIONS!>E<!> {
|
||||
A;
|
||||
|
||||
<!CONFLICTING_JVM_DECLARATIONS!>fun values(): Array<E><!> = null!!
|
||||
<!CONFLICTING_JVM_DECLARATIONS!>fun valueOf(s: String): E<!> = null!!
|
||||
}
|
||||
@@ -2855,6 +2855,11 @@ public class JetDiagnosticsTestGenerated extends AbstractJetDiagnosticsTest {
|
||||
doTest("compiler/testData/diagnostics/tests/duplicateJvmSignature/specialNames/delegationBy.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("enum.kt")
|
||||
public void testEnum() throws Exception {
|
||||
doTest("compiler/testData/diagnostics/tests/duplicateJvmSignature/specialNames/enum.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("innerClassField.kt")
|
||||
public void testInnerClassField() throws Exception {
|
||||
doTest("compiler/testData/diagnostics/tests/duplicateJvmSignature/specialNames/innerClassField.kt");
|
||||
|
||||
Reference in New Issue
Block a user