Do not coerce function literals to suspend.

The design is to use `suspend fun` instead of coercion, just as suspend
lambdas.
However, this syntax is not supported in the parser. But this is not a
problem, since the coercion lead to internal compiler error.
As a workaround everybody uses suspend lambdas.
 #KT-24860: Fixed
This commit is contained in:
Ilmir Usmanov
2018-06-13 16:29:48 +03:00
committed by Ilya Gorbunov
parent d57e1bb68b
commit 9df411481c
11 changed files with 102 additions and 94 deletions
@@ -0,0 +1,10 @@
package
public fun fail1(/*0*/ c: suspend () -> kotlin.Unit): kotlin.Unit
public fun fail2(/*0*/ c: () -> kotlin.Unit): kotlin.Unit
public suspend fun fail3(/*0*/ c: suspend () -> kotlin.Unit): kotlin.Unit
public suspend fun fail4(/*0*/ c: () -> kotlin.Unit): kotlin.Unit
public fun success1(/*0*/ c: suspend () -> kotlin.Unit): kotlin.Unit
public suspend fun success2(/*0*/ c: suspend () -> kotlin.Unit): kotlin.Unit
public fun test1(): kotlin.Unit
public suspend fun test2(): kotlin.Unit