summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAdriaan Moors <adriaan.moors@typesafe.com>2014-12-23 10:05:37 -0800
committerAdriaan Moors <adriaan.moors@typesafe.com>2014-12-23 10:05:37 -0800
commitc77b7a7375e599900388c52c02d51dd7b3359270 (patch)
treed91cb33ea95c6ea9e206251cd391707ceccb0153
parentfaa34e8400b874720047f4fcc891e7d5ab2469b7 (diff)
parent1c6969945f209dafbe3c3fb38f1c3f9a5aaadb82 (diff)
downloadscala-c77b7a7375e599900388c52c02d51dd7b3359270.tar.gz
scala-c77b7a7375e599900388c52c02d51dd7b3359270.tar.bz2
scala-c77b7a7375e599900388c52c02d51dd7b3359270.zip
Merge pull request #4205 from retronym/ticket/9011
SI-9011 Speculative fix for CCE in Scala IDE
-rw-r--r--src/interactive/scala/tools/nsc/interactive/Global.scala6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/interactive/scala/tools/nsc/interactive/Global.scala b/src/interactive/scala/tools/nsc/interactive/Global.scala
index 5d00141e6a..4476697cfd 100644
--- a/src/interactive/scala/tools/nsc/interactive/Global.scala
+++ b/src/interactive/scala/tools/nsc/interactive/Global.scala
@@ -78,7 +78,11 @@ trait InteractiveAnalyzer extends Analyzer {
val owningInfo = sym.owner.info
val existingDerivedSym = owningInfo.decl(sym.name.toTermName).filter(sym => sym.isSynthetic && sym.isMethod)
existingDerivedSym.alternatives foreach (owningInfo.decls.unlink)
- enterImplicitWrapper(tree.asInstanceOf[ClassDef])
+ val defTree = tree match {
+ case dd: DocDef => dd.definition // See SI-9011, Scala IDE's presentation compiler incorporates ScalaDocGlobal with InterativeGlobal, so we have to unwrap DocDefs.
+ case _ => tree
+ }
+ enterImplicitWrapper(defTree.asInstanceOf[ClassDef])
}
super.enterExistingSym(sym, tree)
}