[FIR] Resolve infix calls to infix functions only
Implements INFIX_MODIFIER_REQUIRED diagnostics
This commit is contained in:
committed by
TeamCityServer
parent
df14deb5a0
commit
b1c8669b43
@@ -25,7 +25,7 @@ inline fun inlineFunWithInvoke(s: (p: Int) -> Unit) {
|
||||
{
|
||||
s(11)
|
||||
s.invoke(11)
|
||||
s invoke 11
|
||||
s <!INFIX_MODIFIER_REQUIRED!>invoke<!> 11
|
||||
}()
|
||||
}
|
||||
|
||||
@@ -33,7 +33,7 @@ inline fun inlineFunWithInvokeNonInline(noinline s: (p: Int) -> Unit) {
|
||||
{
|
||||
s(11)
|
||||
s.invoke(11)
|
||||
s invoke 11
|
||||
s <!INFIX_MODIFIER_REQUIRED!>invoke<!> 11
|
||||
}()
|
||||
}
|
||||
|
||||
|
||||
@@ -1,26 +0,0 @@
|
||||
// !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 invoke 11
|
||||
|
||||
11.ext(11)
|
||||
11 ext 11
|
||||
}
|
||||
|
||||
inline fun inlineFunWithInvokeNonInline(noinline s: (p: Int) -> Unit, ext: Int.(p: Int) -> Unit) {
|
||||
s(11)
|
||||
s.invoke(11)
|
||||
s invoke 11
|
||||
|
||||
11.ext(11)
|
||||
11 ext 11
|
||||
}
|
||||
|
||||
inline fun Function1<Int, Unit>.inlineExt() {
|
||||
invoke(11)
|
||||
this.invoke(11)
|
||||
this invoke 11
|
||||
this(11)
|
||||
}
|
||||
@@ -1,3 +1,4 @@
|
||||
// FIR_IDENTICAL
|
||||
// !DIAGNOSTICS: -UNUSED_EXPRESSION -UNUSED_PARAMETER -UNUSED_VARIABLE -NOTHING_TO_INLINE
|
||||
|
||||
inline fun inlineFunWithInvoke(s: (p: Int) -> Unit, ext: Int.(p: Int) -> Unit) {
|
||||
|
||||
@@ -3,13 +3,13 @@
|
||||
inline fun inlineFunWithInvoke(s: (p: Int) -> Unit) {
|
||||
(s)(11)
|
||||
(s).invoke(11)
|
||||
(s) invoke 11
|
||||
(s) <!INFIX_MODIFIER_REQUIRED!>invoke<!> 11
|
||||
(<!USAGE_IS_NOT_INLINABLE!>s<!>)
|
||||
}
|
||||
|
||||
inline fun Function1<Int, Unit>.inlineExt() {
|
||||
(this).invoke(11)
|
||||
(this) invoke 11
|
||||
(this) <!INFIX_MODIFIER_REQUIRED!>invoke<!> 11
|
||||
(this)(11)
|
||||
(this)
|
||||
}
|
||||
@@ -17,7 +17,7 @@ inline fun Function1<Int, Unit>.inlineExt() {
|
||||
inline fun inlineFunWithInvoke2(s: (p: Int) -> Unit) {
|
||||
(((s)))(11)
|
||||
(((s))).invoke(11)
|
||||
(((s))) invoke 11
|
||||
(((s))) <!INFIX_MODIFIER_REQUIRED!>invoke<!> 11
|
||||
(((<!USAGE_IS_NOT_INLINABLE!>s<!>)))
|
||||
}
|
||||
|
||||
|
||||
+5
-5
@@ -17,10 +17,10 @@ inline fun inlineFunWithInvoke(s: (p: Int) -> Unit, ext: Int.(p: Int) -> Unit) {
|
||||
Test().test(){
|
||||
s(11)
|
||||
s.invoke(11)
|
||||
s invoke 11
|
||||
s <!INFIX_MODIFIER_REQUIRED!>invoke<!> 11
|
||||
|
||||
11.ext(11)
|
||||
11 ext 11
|
||||
11 <!INFIX_MODIFIER_REQUIRED!>ext<!> 11
|
||||
|
||||
<!USAGE_IS_NOT_INLINABLE!>s<!>
|
||||
<!USAGE_IS_NOT_INLINABLE!>ext<!>
|
||||
@@ -32,10 +32,10 @@ inline fun inlineFunWithInvokeNonInline(noinline s: (p: Int) -> Unit, ext: Int.(
|
||||
Test().test(){
|
||||
s(11)
|
||||
s.invoke(11)
|
||||
s invoke 11
|
||||
s <!INFIX_MODIFIER_REQUIRED!>invoke<!> 11
|
||||
|
||||
11.ext(11)
|
||||
11 ext 11
|
||||
11 <!INFIX_MODIFIER_REQUIRED!>ext<!> 11
|
||||
|
||||
s
|
||||
<!USAGE_IS_NOT_INLINABLE!>ext<!>
|
||||
@@ -48,7 +48,7 @@ inline fun Function1<Int, Unit>.inlineExt() {
|
||||
Test().test(){
|
||||
invoke(11)
|
||||
this.invoke(11)
|
||||
this invoke 11
|
||||
this <!INFIX_MODIFIER_REQUIRED!>invoke<!> 11
|
||||
this(11)
|
||||
|
||||
this
|
||||
|
||||
Reference in New Issue
Block a user