JVM IR: Avoid direct invokes in callable reference tests

Due to the direct invoke optimization, most callable reference tests
were not generating callable references/lambdas.
This commit is contained in:
Steven Schäfer
2022-06-13 14:49:49 +02:00
committed by Alexander Udalov
parent f0238766df
commit 7d59c7689c
123 changed files with 216 additions and 208 deletions
@@ -13,8 +13,8 @@ fun B.test(): String {
if (foo()() != "##") return "fail3"
if (foo()(42) != "#42") return "fail4"
if ((foo())(42) != "#42") return "fail5"
if ({ -> A()}()() != "##") return "fail6"
if ({ -> A()}()(37) != "#37") return "fail7"
if ({ -> A()}.let { it() }() != "##") return "fail6"
if ({ -> A()}.let { it() }(37) != "#37") return "fail7"
return "OK"
}
@@ -14,7 +14,7 @@ fun box(): String {
if (foo()() != "##") return "fail3"
if (foo()(42) != "#42") return "fail4"
if ((foo())(42) != "#42") return "fail5"
if ({ -> A()}()() != "##") return "fail6"
if ({ -> A()}()(37) != "#37") return "fail7"
if ({ -> A()}.let { it() }() != "##") return "fail6"
if ({ -> A()}.let { it() }(37) != "#37") return "fail7"
return "OK"
}