c2b09d3b1e
The previous implementation had issues with locks, publication and performance Also, this change fixed a problem with mixed cycle inheritance ^KT-56550 ^KTIJ-25430 Fixed ^KTIJ-23520 Fixed ^KT-57623 Fixed ^KTIJ-25372 Fixed ^KT-58357 Fixed
25 lines
653 B
Kotlin
Vendored
25 lines
653 B
Kotlin
Vendored
// LL_FIR_DIVERGENCE
|
|
// The compiler doesn't guarantee exhaustiveness in reporting of inheritance cycles, so the compiler and LL FIR results are equally valid.
|
|
// LL_FIR_DIVERGENCE
|
|
// FILE: ExceptionTracker.kt
|
|
|
|
interface ExceptionTracker : <!CYCLIC_INHERITANCE_HIERARCHY!>LockBasedStorageManager.ExceptionHandlingStrategy<!> {
|
|
}
|
|
|
|
// FILE: StorageManager.kt
|
|
|
|
interface StorageManager : <!CYCLIC_INHERITANCE_HIERARCHY!>ExceptionTracker<!> {
|
|
fun foo()
|
|
}
|
|
|
|
// FILE: LockBasedStorageManager.java
|
|
|
|
class LockBasedStorageManager extends StorageManager {
|
|
interface ExceptionHandlingStrategy {
|
|
void bar();
|
|
}
|
|
|
|
@Override
|
|
void foo() {}
|
|
}
|