2de0e4b8d2
A Kotlin interface can have abstract members regardless of its modality. However, this invariant was previously ignored by FIR checkers. As a result, false-positive `ABSTRACT_<MEMBER>_IN_NON_ABSTRACT_CLASS` errors were being reported in explicitly non-abstract interfaces. This commit makes a relevant FIR utility used by relevant FIR checkers aware of the aforementioned invariant. #KT-66260 Fixed
40 lines
1.2 KiB
Plaintext
Vendored
40 lines
1.2 KiB
Plaintext
Vendored
FILE: OpenInterface.kt
|
|
public open interface OpenInterface : R|kotlin/Any| {
|
|
public abstract fun defaultModalityFuncWithoutBody(): R|kotlin/Unit|
|
|
|
|
public open fun defaultModalityFuncWithBody(): R|kotlin/Unit| {
|
|
}
|
|
|
|
public abstract fun abstractFunc(): R|kotlin/Unit|
|
|
|
|
public open fun openFunc(): R|kotlin/Unit| {
|
|
}
|
|
|
|
public abstract val defaultModalityValWithoutGetter: R|kotlin/Any|
|
|
public get(): R|kotlin/Any|
|
|
|
|
public open val defaultModalityValWithGetter: R|kotlin/Any|
|
|
public get(): R|kotlin/Any| {
|
|
^ Int(42)
|
|
}
|
|
|
|
public abstract val abstractVal: R|kotlin/Any|
|
|
public get(): R|kotlin/Any|
|
|
|
|
public open val openVal: R|kotlin/Any|
|
|
public get(): R|kotlin/Any| {
|
|
^ Int(42)
|
|
}
|
|
|
|
public abstract val abstractValWithGetter: R|kotlin/Any|
|
|
public get(): R|kotlin/Any| {
|
|
^ Int(42)
|
|
}
|
|
|
|
public abstract var abstractValWithSetter: R|kotlin/Any|
|
|
public get(): R|kotlin/Any|
|
|
public set(value: R|kotlin/Any|): R|kotlin/Unit| {
|
|
}
|
|
|
|
}
|