aboutsummaryrefslogtreecommitdiff
path: root/src/dotty/tools/dotc/parsing/Parsers.scala
diff options
context:
space:
mode:
authorMartin Odersky <odersky@gmail.com>2013-10-24 17:39:10 +0200
committerMartin Odersky <odersky@gmail.com>2013-10-24 17:44:52 +0200
commitafa83000f39f0b10824cb11b84ab0e8b66a91241 (patch)
tree22e459af8f2cbbe095e021ba38fbb37b22b2f361 /src/dotty/tools/dotc/parsing/Parsers.scala
parentdbd9569755f40263a783d0301b3fb07849605d17 (diff)
downloaddotty-afa83000f39f0b10824cb11b84ab0e8b66a91241.tar.gz
dotty-afa83000f39f0b10824cb11b84ab0e8b66a91241.tar.bz2
dotty-afa83000f39f0b10824cb11b84ab0e8b66a91241.zip
Parsing and desugaring fixes for blocks.
Previously, { () } was expanded to { (); EmptyTree }, because the empty tuple is not a term tree. Now EmptyTree is inserted only after a definition. Furthermore, blocks ending in EmptyTree are now replaced by blocks that end in a unit literal.
Diffstat (limited to 'src/dotty/tools/dotc/parsing/Parsers.scala')
-rw-r--r--src/dotty/tools/dotc/parsing/Parsers.scala2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/dotty/tools/dotc/parsing/Parsers.scala b/src/dotty/tools/dotc/parsing/Parsers.scala
index 57356f305..500ea4810 100644
--- a/src/dotty/tools/dotc/parsing/Parsers.scala
+++ b/src/dotty/tools/dotc/parsing/Parsers.scala
@@ -1130,7 +1130,7 @@ object Parsers {
*/
def block(): Tree = {
val stats = blockStatSeq()
- if (stats.nonEmpty && stats.last.isTerm) Block(stats.init, stats.last)
+ if (stats.nonEmpty && !stats.last.isDef) Block(stats.init, stats.last)
else Block(stats, EmptyTree)
}