mirror of
https://github.com/github/codeql.git
synced 2025-12-21 19:26:31 +01:00
Intermediate interfaces don't need interface forwarders, since the Kotlin compiler won't try to make them non-abstract by synthesising methods. Super references should always target an immediate superclass, not the ancestor containing the intended implementation.
17 lines
188 B
Kotlin
17 lines
188 B
Kotlin
interface Test {
|
|
|
|
fun f() = 1
|
|
|
|
fun g(x: Int) = x
|
|
|
|
val x : Int
|
|
get() = 3
|
|
|
|
}
|
|
|
|
class Real : Test { }
|
|
|
|
interface MiddleInterface : Test { }
|
|
|
|
class RealIndirect : MiddleInterface { }
|