[FIR] Check conflicting overloads via scopes
Scopes may return private symbols from supertypes, they should not clash with symbols from the current class. For example, see: `FirLightTreeBlackBoxCodegenWithIrFakeOverrideGeneratorTestGenerated.FakeOverride#testPrivateFakeOverrides1` Lombok shouldn't generate functions if the user has defined explicit ones. In K1 generated functions are not really added to the declared members scope. ^KT-61243 Fixed
This commit is contained in:
committed by
Space Team
parent
973248f432
commit
4e58715760
@@ -1,3 +1,5 @@
|
||||
enum class A {
|
||||
name
|
||||
enum class <!REDECLARATION, REDECLARATION!>A<!> {
|
||||
<!REDECLARATION!>name<!>,
|
||||
<!REDECLARATION!>ordinal<!>,
|
||||
<!DEPRECATED_DECLARATION_OF_ENUM_ENTRY!>entries,<!>
|
||||
}
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
enum class A {
|
||||
<!REDECLARATION!>name<!>
|
||||
<!REDECLARATION!>name<!>,
|
||||
<!REDECLARATION!>ordinal<!>,
|
||||
<!DEPRECATED_DECLARATION_OF_ENUM_ENTRY!>entries,<!>
|
||||
}
|
||||
|
||||
@@ -3,6 +3,10 @@ package
|
||||
public final enum class A : kotlin.Enum<A> {
|
||||
enum entry name
|
||||
|
||||
enum entry ordinal
|
||||
|
||||
enum entry entries
|
||||
|
||||
private constructor A()
|
||||
@kotlin.internal.IntrinsicConstEvaluation public final override /*1*/ /*fake_override*/ val name: kotlin.String
|
||||
public final override /*1*/ /*fake_override*/ val ordinal: kotlin.Int
|
||||
|
||||
@@ -1,14 +0,0 @@
|
||||
// !DIAGNOSTICS: -UNUSED_VARIABLE -UNUSED_PARAMETER -TOPLEVEL_TYPEALIASES_ONLY
|
||||
class C(val x: Int)
|
||||
|
||||
<!CONFLICTING_OVERLOADS!>typealias CC = C<!>
|
||||
|
||||
<!CONFLICTING_OVERLOADS!>fun CC(x: Int)<!> = x
|
||||
|
||||
class Outer {
|
||||
class C(val x: Int)
|
||||
|
||||
typealias CC = C
|
||||
|
||||
fun CC(x: Int) = x
|
||||
}
|
||||
@@ -1,3 +1,4 @@
|
||||
// FIR_IDENTICAL
|
||||
// !DIAGNOSTICS: -UNUSED_VARIABLE -UNUSED_PARAMETER -TOPLEVEL_TYPEALIASES_ONLY
|
||||
class C(val x: Int)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user