aboutsummaryrefslogtreecommitdiff
path: root/src/main/scala/scala/async/internal/AsyncAnalysis.scala
diff options
context:
space:
mode:
authorJason Zaugg <jzaugg@gmail.com>2013-07-25 13:55:06 +1000
committerJason Zaugg <jzaugg@gmail.com>2013-07-25 13:55:06 +1000
commit2c3a81ca101e103c1defa5e34aaeefa096911c0b (patch)
tree9994040cc851a2cda27c0adfaf7b28a8e0befd09 /src/main/scala/scala/async/internal/AsyncAnalysis.scala
parent3b9d72928738f34449b1e67a18623458bdcd16d5 (diff)
downloadscala-async-2c3a81ca101e103c1defa5e34aaeefa096911c0b.tar.gz
scala-async-2c3a81ca101e103c1defa5e34aaeefa096911c0b.tar.bz2
scala-async-2c3a81ca101e103c1defa5e34aaeefa096911c0b.zip
Disallow await in pattern guards (for now)
Diffstat (limited to 'src/main/scala/scala/async/internal/AsyncAnalysis.scala')
-rw-r--r--src/main/scala/scala/async/internal/AsyncAnalysis.scala3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/main/scala/scala/async/internal/AsyncAnalysis.scala b/src/main/scala/scala/async/internal/AsyncAnalysis.scala
index 62842c9..122109e 100644
--- a/src/main/scala/scala/async/internal/AsyncAnalysis.scala
+++ b/src/main/scala/scala/async/internal/AsyncAnalysis.scala
@@ -63,6 +63,9 @@ trait AsyncAnalysis {
case ValDef(mods, _, _, _) if mods.hasFlag(Flag.LAZY) =>
// TODO lift this restriction
abort(tree.pos, "lazy vals are illegal within an async block")
+ case CaseDef(_, guard, _) if guard exists isAwait =>
+ // TODO lift this restriction
+ reportUnsupportedAwait(tree, "pattern guard")
case _ =>
super.traverse(tree)
}