summaryrefslogtreecommitdiff
path: root/src/reflect/scala/reflect/internal/TreeGen.scala
diff options
context:
space:
mode:
authorDenys Shabalin <denys.shabalin@typesafe.com>2014-01-22 17:49:26 +0100
committerDenys Shabalin <denys.shabalin@typesafe.com>2014-01-23 13:51:06 +0100
commitef118b8c86944d6fe3520782335835b9ec96590a (patch)
tree6acbd702379450a4073ec1aba57d577c4d5408e5 /src/reflect/scala/reflect/internal/TreeGen.scala
parent7a23a908a77e2424c0f951acb3f0de6a0cac454c (diff)
downloadscala-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.scala2
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)