summaryrefslogtreecommitdiff
path: root/src/compiler/scala/tools/nsc/ast/TreeInfo.scala
diff options
context:
space:
mode:
authorJason Zaugg <jzaugg@gmail.com>2014-05-08 14:00:16 +0200
committerJason Zaugg <jzaugg@gmail.com>2014-05-08 14:00:16 +0200
commitb7f91a206cca9ab9bb87d0f7872ddf213ba10f82 (patch)
tree81e5681d1adf382e91a461346734ddf4b93d0f82 /src/compiler/scala/tools/nsc/ast/TreeInfo.scala
parentac8b44d731046691bda59439d25ab5ec23aaa56d (diff)
parentec05aeb3d6e414d2abf8354849eeaa7cc75ee477 (diff)
downloadscala-b7f91a206cca9ab9bb87d0f7872ddf213ba10f82.tar.gz
scala-b7f91a206cca9ab9bb87d0f7872ddf213ba10f82.tar.bz2
scala-b7f91a206cca9ab9bb87d0f7872ddf213ba10f82.zip
Merge commit 'ec05aeb' into topic/merge-2.10.x
Diffstat (limited to 'src/compiler/scala/tools/nsc/ast/TreeInfo.scala')
-rw-r--r--src/compiler/scala/tools/nsc/ast/TreeInfo.scala10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/compiler/scala/tools/nsc/ast/TreeInfo.scala b/src/compiler/scala/tools/nsc/ast/TreeInfo.scala
index 0731d78a9b..689e6405d0 100644
--- a/src/compiler/scala/tools/nsc/ast/TreeInfo.scala
+++ b/src/compiler/scala/tools/nsc/ast/TreeInfo.scala
@@ -74,6 +74,11 @@ abstract class TreeInfo extends scala.reflect.internal.TreeInfo {
}
}
+ // TODO these overrides, and the slow trickle of bugs that they solve (e.g. SI-8479),
+ // suggest that we should pursue an alternative design in which the DocDef nodes
+ // are eliminated from the tree before typer, and instead are modelled as tree
+ // attachments.
+
/** Is tree legal as a member definition of an interface?
*/
override def isInterfaceMember(tree: Tree): Boolean = tree match {
@@ -81,6 +86,11 @@ abstract class TreeInfo extends scala.reflect.internal.TreeInfo {
case _ => super.isInterfaceMember(tree)
}
+ override def isConstructorWithDefault(t: Tree) = t match {
+ case DocDef(_, definition) => isConstructorWithDefault(definition)
+ case _ => super.isConstructorWithDefault(t)
+ }
+
/** Is tree a pure (i.e. non-side-effecting) definition?
*/
override def isPureDef(tree: Tree): Boolean = tree match {