Files
kotlin-fork/compiler/testData/diagnostics/tests/inline/invoke.kt
T
Andrey Zinovyev b1c8669b43 [FIR] Resolve infix calls to infix functions only
Implements INFIX_MODIFIER_REQUIRED diagnostics
2021-05-20 13:46:27 +03:00

27 lines
704 B
Kotlin
Vendored

// FIR_IDENTICAL
// !DIAGNOSTICS: -UNUSED_EXPRESSION -UNUSED_PARAMETER -UNUSED_VARIABLE -NOTHING_TO_INLINE
inline fun inlineFunWithInvoke(s: (p: Int) -> Unit, ext: Int.(p: Int) -> Unit) {
s(11)
s.invoke(11)
s <!INFIX_MODIFIER_REQUIRED!>invoke<!> 11
11.ext(11)
11 <!INFIX_MODIFIER_REQUIRED!>ext<!> 11
}
inline fun inlineFunWithInvokeNonInline(noinline s: (p: Int) -> Unit, ext: Int.(p: Int) -> Unit) {
s(11)
s.invoke(11)
s <!INFIX_MODIFIER_REQUIRED!>invoke<!> 11
11.ext(11)
11 <!INFIX_MODIFIER_REQUIRED!>ext<!> 11
}
inline fun Function1<Int, Unit>.inlineExt() {
invoke(11)
this.invoke(11)
this <!INFIX_MODIFIER_REQUIRED!>invoke<!> 11
this(11)
}