26fae9e83a
A class can inherit two declarations that are compatible from the overridability standpoint and are therefore combined to a non-trivial intersection. At the same time, the class can declare a member declaration that only overrides one of the intersection's members. In this case, we break up the intersection and only add the overridden parts to the declared member's direct overridden list. If the class doesn't override the intersection, it exists as intersection override, like before. #KT-65487 Fixed
13 lines
1.1 KiB
Plaintext
Vendored
13 lines
1.1 KiB
Plaintext
Vendored
ImplDerived:
|
|
[Source]: public abstract override fun foo(name: R|kotlin/String?|): R|Derived| from Use site scope of /ImplDerived [id: 0]
|
|
[Enhancement]: public abstract fun foo(name: R|kotlin/String!|): R|@EnhancedNullability Derived| from Java enhancement scope for /Derived [id: 1]
|
|
[Enhancement]: public abstract fun foo(name: R|@EnhancedNullability kotlin/String|): R|Base!| from Java enhancement scope for /Base [id: 2]
|
|
[Source]: public open override fun foo(name: R|kotlin/String|): R|Base| from Use site scope of /ImplDerived [id: 0]
|
|
|
|
DerivedImpl:
|
|
[Source]: public abstract override fun foo(name: R|kotlin/String?|): R|Derived| from Use site scope of /DerivedImpl [id: 0]
|
|
[Enhancement]: public abstract fun foo(name: R|kotlin/String!|): R|@EnhancedNullability Derived| from Java enhancement scope for /Derived [id: 1]
|
|
[Enhancement]: public abstract fun foo(name: R|@EnhancedNullability kotlin/String|): R|Base!| from Java enhancement scope for /Base [id: 2]
|
|
[Source]: public open override fun foo(name: R|kotlin/String|): R|Base| from Use site scope of /DerivedImpl [id: 0]
|
|
|