aboutsummaryrefslogtreecommitdiff
path: root/src/main/scala/scala/async/AnfTransform.scala
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/scala/scala/async/AnfTransform.scala')
-rw-r--r--src/main/scala/scala/async/AnfTransform.scala3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/main/scala/scala/async/AnfTransform.scala b/src/main/scala/scala/async/AnfTransform.scala
index 4c78b5a..0756baf 100644
--- a/src/main/scala/scala/async/AnfTransform.scala
+++ b/src/main/scala/scala/async/AnfTransform.scala
@@ -204,6 +204,9 @@ private[async] final case class AnfTransform[C <: Context](override val c: C) ex
}
scrutStats :+ c.typeCheck(attachCopy.Match(tree)(scrutExpr, caseDefs))
+ case LabelDef(name, params, rhs) if containsAwait =>
+ List(LabelDef(name, params, Block(inline.transformToList(rhs), Literal(Constant(())))))
+
case TypeApply(fun, targs) if containsAwait =>
val funStats :+ simpleFun = inline.transformToList(fun)
funStats :+ attachCopy.TypeApply(tree)(simpleFun, targs).setSymbol(tree.symbol)