diff options
author | Denys Shabalin <denys.shabalin@typesafe.com> | 2014-01-22 17:49:26 +0100 |
---|---|---|
committer | Denys Shabalin <denys.shabalin@typesafe.com> | 2014-01-23 13:51:06 +0100 |
commit | ef118b8c86944d6fe3520782335835b9ec96590a (patch) | |
tree | 6acbd702379450a4073ec1aba57d577c4d5408e5 /src/reflect/scala/reflect/internal/TreeGen.scala | |
parent | 7a23a908a77e2424c0f951acb3f0de6a0cac454c (diff) | |
download | scala-ef118b8c86944d6fe3520782335835b9ec96590a.tar.gz scala-ef118b8c86944d6fe3520782335835b9ec96590a.tar.bz2 scala-ef118b8c86944d6fe3520782335835b9ec96590a.zip |
Tag synthetic unit with attachment
This makes it easy to differentiate unit inserted by a compiler vs unit
written by the user. Useful for quasiquotes and pretty printing.
Additionally SyntacticBlock extractor is changed to treat EmptyTree as
zero-element block.
Diffstat (limited to 'src/reflect/scala/reflect/internal/TreeGen.scala')
-rw-r--r-- | src/reflect/scala/reflect/internal/TreeGen.scala | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/reflect/scala/reflect/internal/TreeGen.scala b/src/reflect/scala/reflect/internal/TreeGen.scala index b16cbd8325..0e1eb7d3a9 100644 --- a/src/reflect/scala/reflect/internal/TreeGen.scala +++ b/src/reflect/scala/reflect/internal/TreeGen.scala @@ -447,7 +447,7 @@ abstract class TreeGen extends macros.TreeBuilder { /** Create block of statements `stats` */ def mkBlock(stats: List[Tree]): Tree = if (stats.isEmpty) Literal(Constant(())) - else if (!stats.last.isTerm) Block(stats, Literal(Constant(()))) + else if (!stats.last.isTerm) Block(stats, Literal(Constant(())).updateAttachment(SyntheticUnitAttachment)) else if (stats.length == 1) stats.head else Block(stats.init, stats.last) |