aboutsummaryrefslogtreecommitdiff
path: root/src/main/scala/scala/async/internal/Lifter.scala
diff options
context:
space:
mode:
authorJason Zaugg <jzaugg@gmail.com>2016-01-19 14:35:32 +1000
committerJason Zaugg <jzaugg@gmail.com>2016-01-19 14:35:32 +1000
commit4395afe0ab7c59f088607d0849abe48b0f83265d (patch)
tree7a7c778a24143923a674acb9db30ecdc5e3f8f5e /src/main/scala/scala/async/internal/Lifter.scala
parent656748c2c3c094c19d28a59c466d67437b7d6f6c (diff)
parent549a656fa22af5f7f0c5e89dd6e0a19ed4b604f5 (diff)
downloadscala-async-0.9.6-RC3.tar.gz
scala-async-0.9.6-RC3.tar.bz2
scala-async-0.9.6-RC3.zip
Merge pull request #151 from retronym/topic/late-expansion-fixesv0.9.6-RC3
Late expansion fixes
Diffstat (limited to 'src/main/scala/scala/async/internal/Lifter.scala')
-rw-r--r--src/main/scala/scala/async/internal/Lifter.scala5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/main/scala/scala/async/internal/Lifter.scala b/src/main/scala/scala/async/internal/Lifter.scala
index 2998baf..9481f69 100644
--- a/src/main/scala/scala/async/internal/Lifter.scala
+++ b/src/main/scala/scala/async/internal/Lifter.scala
@@ -76,8 +76,9 @@ trait Lifter {
// are already accounted for.
val stateIdToDirectlyReferenced: Map[Int, List[Symbol]] = {
val refs: List[(Int, Symbol)] = asyncStates.flatMap(
- asyncState => asyncState.stats.filterNot(_.isDef).flatMap(_.collect {
- case rt: RefTree if symToDefiningState.contains(rt.symbol) => (asyncState.state, rt.symbol)
+ asyncState => asyncState.stats.filterNot(t => t.isDef && !isLabel(t.symbol)).flatMap(_.collect {
+ case rt: RefTree
+ if symToDefiningState.contains(rt.symbol) => (asyncState.state, rt.symbol)
})
)
toMultiMap(refs)