aboutsummaryrefslogtreecommitdiff
path: root/src/main/scala/scala/async/Async.scala
diff options
context:
space:
mode:
authorJason Zaugg <jzaugg@gmail.com>2012-11-21 22:48:34 +0100
committerJason Zaugg <jzaugg@gmail.com>2012-11-21 22:48:34 +0100
commit10aa18736a1d5161f9ad34ebcd9a6a756c904666 (patch)
treee9a23df0dd26e9b588d49be9772d901032629bf1 /src/main/scala/scala/async/Async.scala
parenteeb0f5e676e8d9cc44ab886a6225da62dfb5d561 (diff)
downloadscala-async-10aa18736a1d5161f9ad34ebcd9a6a756c904666.tar.gz
scala-async-10aa18736a1d5161f9ad34ebcd9a6a756c904666.tar.bz2
scala-async-10aa18736a1d5161f9ad34ebcd9a6a756c904666.zip
Only transform if/match-s that contain an await.
Accurate reporting of misplaced awaits. Attempt to collect the minimal set of vars to lift.
Diffstat (limited to 'src/main/scala/scala/async/Async.scala')
-rw-r--r--src/main/scala/scala/async/Async.scala3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/main/scala/scala/async/Async.scala b/src/main/scala/scala/async/Async.scala
index 072aea7..30b393e 100644
--- a/src/main/scala/scala/async/Async.scala
+++ b/src/main/scala/scala/async/Async.scala
@@ -81,6 +81,9 @@ abstract class AsyncBase {
c.typeCheck(Block(stats1, expr1))
}
+ val traverser = new builder.LiftableVarTraverser
+ traverser.traverse(btree)
+
AsyncUtils.vprintln(s"In file '${c.macroApplication.pos.source.path}':")
AsyncUtils.vprintln(s"${c.macroApplication}")
AsyncUtils.vprintln(s"ANF transform expands to:\n $btree")