// ĠWITH _ STD LIB Ċ // ĠWITH _ COR OUT IN ES Ċ // ĠNO _ CHECK _ L AMBDA _ IN LIN ING Ċ // ĠFILE : Ġ 1 . kt Ċ package Ġtest Ċ Ċ inline Ġfun Ġfoo ( cross inline Ġx : Ġ() Ġ-> ĠUnit ) Ġ= Ġsuspend Ġ{ ĊĠĠĠ Ġtry Ġ{ Ġ} Ġfinally Ġ{ ĊĠĠĠĠĠĠĠ Ġ// ĠThis Ġobject Ġis Ġregenerated Ġtwice Ġ( normal Ġreturn Ġ& Ġ" catch ĠThrowable , Ġexecute Ġfinally , Ġand Ġre throw ") ĊĠĠĠĠĠĠĠ Ġ// ĠIt Ġdoesn 't Ġ* need * Ġto Ġbe , Ġbut Ġthis Ġshould Ġwork Ġregardless . ĊĠĠĠĠĠĠĠ Ġ{ Ġx () Ġ} () ĊĠĠĠ Ġ} Ċ } Ċ Ċ // ĠFILE : Ġ 2 . kt Ċ import Ġhelpers .* Ċ import Ġkotlin . coroutines .* Ċ import Ġkotlin . coroutines . intr insics .* Ċ import Ġtest .* Ċ Ċ var Ġresult Ġ= Ġ" fail " Ċ fun Ġbox (): ĠString Ġ{ ĊĠĠĠ Ġsuspend Ġ{ ĊĠĠĠĠĠĠĠ Ġfoo Ġ{ Ġresult Ġ= Ġ" OK " Ġ} () ĊĠĠĠ Ġ}. start Coroutine ( Empty Continuation ) ĊĠĠĠ Ġreturn Ġresult Ċ } Ċ