Cyclic reference error when sources of scala-library is on the classpath
The problem as reported on the mailing list: https://groups.google.com/forum/#!topic/scala-internals/4iRLWzFE8GY
Right now it is not possible to run tests against the Scala library itself. The compiler crashes with the following error:
On my system, the logger shows the following classpath for the project that depends on scala-library:
As one can see, both the output of scala-library and the Scala installation is on the classpath. Interestingly, the exception only occurs for hyperlinking and Scaladoc, all other components, like code completion or semantic highlighting work without any problems.
Right now it is not possible to run tests against the Scala library itself. The compiler crashes with the following error:
2015-10-08 15:54:30,832 ERROR [main] - org.scala-ide.sdt.core - org.scala-ide.sdt.core - org.scala-ide.sdt.core - 0 - Error thrown while initializing the presentation compiler.
scala.reflect.internal.Symbols$CyclicReference: illegal cyclic reference involving object Predef
at scala.reflect.internal.Symbols$Symbol$$anonfun$info$3.apply(Symbols.scala:1477)
at scala.reflect.internal.Symbols$Symbol$$anonfun$info$3.apply(Symbols.scala:1475)
at scala.Function0$class.apply$mcV$sp(Function0.scala:34)
at scala.runtime.AbstractFunction0.apply$mcV$sp(AbstractFunction0.scala:12)
at scala.reflect.internal.Symbols$Symbol.lock(Symbols.scala:533)
at scala.reflect.internal.Symbols$Symbol.info(Symbols.scala:1475)
at scala.reflect.internal.Symbols$Symbol.tpeHK(Symbols.scala:1424)
at scala.reflect.internal.Types$Type.computeMemberType(Types.scala:694)
at scala.reflect.internal.Types$Type.memberType(Types.scala:691)
at scala.reflect.internal.TreeGen.mkAttributedSelect(TreeGen.scala:201)
at scala.reflect.internal.TreeGen.mkAttributedRef(TreeGen.scala:126)
at scala.reflect.internal.TreeGen.mkAttributedRef(TreeGen.scala:132)
at scala.reflect.internal.TreeGen.mkAttributedStableRef(TreeGen.scala:164)
at scala.tools.nsc.ast.TreeGen.mkImportFromSelector(TreeGen.scala:35)
at scala.tools.nsc.ast.TreeGen.mkWildcardImport(TreeGen.scala:25)
at scala.tools.nsc.typechecker.Contexts$$anonfun$3.apply(Contexts.scala:103)
at scala.tools.nsc.typechecker.Contexts$$anonfun$3.apply(Contexts.scala:103)
at scala.collection.LinearSeqOptimized$class.foldLeft(LinearSeqOptimized.scala:124)
at scala.collection.immutable.List.foldLeft(List.scala:84)
at scala.collection.TraversableOnce$class.$div$colon(TraversableOnce.scala:149)
at scala.collection.AbstractTraversable.$div$colon(Traversable.scala:104)
at scala.tools.nsc.typechecker.Contexts$class.rootContext(Contexts.scala:103)
at org.scalaide.core.internal.compiler.ScalaPresentationCompiler$$anon$1.rootContext(ScalaPresentationCompiler.scala:76)
at scala.tools.nsc.typechecker.Analyzer$namerFactory$$anon$1.apply(Analyzer.scala:43)
at scala.tools.nsc.Global$GlobalPhase$$anonfun$applyPhase$1.apply$mcV$sp(Global.scala:440)
at scala.tools.nsc.Global$GlobalPhase.withCurrentUnit(Global.scala:431)
at scala.tools.nsc.Global$GlobalPhase.applyPhase(Global.scala:440)
at scala.tools.nsc.Global$Run$$anonfun$compileLate$2$$anonfun$apply$1.apply(Global.scala:1609)
at scala.tools.nsc.Global$Run$$anonfun$compileLate$2$$anonfun$apply$1.apply(Global.scala:1609)
at scala.reflect.internal.SymbolTable.enteringPhase(SymbolTable.scala:235)
at scala.tools.nsc.Global$Run$$anonfun$compileLate$2.apply(Global.scala:1609)
at scala.tools.nsc.Global$Run$$anonfun$compileLate$2.apply(Global.scala:1608)
at scala.collection.Iterator$class.foreach(Iterator.scala:854)
at scala.collection.AbstractIterator.foreach(Iterator.scala:1297)
at scala.tools.nsc.Global$Run.compileLate(Global.scala:1608)
at scala.tools.nsc.Global$Run.compileLate(Global.scala:1598)
at scala.tools.nsc.GlobalSymbolLoaders.compileLate(GlobalSymbolLoaders.scala:29)
at scala.tools.nsc.symtab.SymbolLoaders$SourcefileLoader.doComplete(SymbolLoaders.scala:368)
at scala.tools.nsc.symtab.SymbolLoaders$SymbolLoader.complete(SymbolLoaders.scala:211)
at scala.reflect.internal.Symbols$Symbol.info(Symbols.scala:1489)
at scala.reflect.internal.Symbols$Symbol.tpeHK(Symbols.scala:1424)
at scala.reflect.internal.Types$Type.computeMemberType(Types.scala:694)
at scala.reflect.internal.Types$Type.memberType(Types.scala:691)
at scala.reflect.internal.TreeGen.mkAttributedSelect(TreeGen.scala:201)
at scala.reflect.internal.TreeGen.mkAttributedRef(TreeGen.scala:126)
at scala.reflect.internal.TreeGen.mkAttributedRef(TreeGen.scala:132)
at scala.reflect.internal.TreeGen.mkAttributedStableRef(TreeGen.scala:164)
at scala.tools.nsc.ast.TreeGen.mkImportFromSelector(TreeGen.scala:35)
at scala.tools.nsc.ast.TreeGen.mkWildcardImport(TreeGen.scala:25)
at scala.tools.nsc.typechecker.Contexts$$anonfun$3.apply(Contexts.scala:103)
at scala.tools.nsc.typechecker.Contexts$$anonfun$3.apply(Contexts.scala:103)
at scala.collection.LinearSeqOptimized$class.foldLeft(LinearSeqOptimized.scala:124)
at scala.collection.immutable.List.foldLeft(List.scala:84)
at scala.collection.TraversableOnce$class.$div$colon(TraversableOnce.scala:149)
at scala.collection.AbstractTraversable.$div$colon(Traversable.scala:104)
at scala.tools.nsc.typechecker.Contexts$class.rootContext(Contexts.scala:103)
at org.scalaide.core.internal.compiler.ScalaPresentationCompiler$$anon$1.rootContext(ScalaPresentationCompiler.scala:76)
at scala.tools.nsc.typechecker.Analyzer$namerFactory$$anon$1.apply(Analyzer.scala:43)
at scala.tools.nsc.Global$GlobalPhase$$anonfun$applyPhase$1.apply$mcV$sp(Global.scala:440)
at scala.tools.nsc.Global$GlobalPhase.withCurrentUnit(Global.scala:431)
at scala.tools.nsc.Global$GlobalPhase.applyPhase(Global.scala:440)
at scala.tools.nsc.Global$Run$$anonfun$compileLate$2$$anonfun$apply$1.apply(Global.scala:1609)
at scala.tools.nsc.Global$Run$$anonfun$compileLate$2$$anonfun$apply$1.apply(Global.scala:1609)
at scala.reflect.internal.SymbolTable.enteringPhase(SymbolTable.scala:235)
at scala.tools.nsc.Global$Run$$anonfun$compileLate$2.apply(Global.scala:1609)
at scala.tools.nsc.Global$Run$$anonfun$compileLate$2.apply(Global.scala:1608)
at scala.collection.Iterator$class.foreach(Iterator.scala:854)
at scala.collection.AbstractIterator.foreach(Iterator.scala:1297)
at scala.tools.nsc.Global$Run.compileLate(Global.scala:1608)
at scala.tools.nsc.Global$Run.compileLate(Global.scala:1598)
at scala.tools.nsc.GlobalSymbolLoaders.compileLate(GlobalSymbolLoaders.scala:29)
at scala.tools.nsc.symtab.SymbolLoaders$SourcefileLoader.doComplete(SymbolLoaders.scala:368)
at scala.tools.nsc.symtab.SymbolLoaders$SymbolLoader.complete(SymbolLoaders.scala:211)
at scala.reflect.internal.Symbols$Symbol.info(Symbols.scala:1489)
at scala.reflect.internal.Symbols$Symbol.initialize(Symbols.scala:1634)
at scala.tools.nsc.interactive.Global$$anonfun$forceSymbolsUsedByParser$1.apply(Global.scala:1258)
at scala.tools.nsc.interactive.Global$$anonfun$forceSymbolsUsedByParser$1.apply(Global.scala:1258)
at scala.collection.immutable.HashSet$HashSet1.foreach(HashSet.scala:316)
at scala.collection.immutable.HashSet$HashTrieSet.foreach(HashSet.scala:972)
at scala.collection.immutable.HashSet$HashTrieSet.foreach(HashSet.scala:972)
at scala.tools.nsc.interactive.Global.forceSymbolsUsedByParser(Global.scala:1258)
at scala.tools.nsc.interactive.Global.<init>(Global.scala:1261)
at org.scalaide.core.internal.compiler.ScalaPresentationCompiler.<init>(ScalaPresentationCompiler.scala:62)
at org.scalaide.core.internal.compiler.PresentationCompilerProxy.liftedTree1$1(PresentationCompilerProxy.scala:158)
at org.scalaide.core.internal.compiler.PresentationCompilerProxy.create(PresentationCompilerProxy.scala:157)
at org.scalaide.core.internal.compiler.PresentationCompilerProxy.initialize(PresentationCompilerProxy.scala:122)
at org.scalaide.core.internal.compiler.PresentationCompilerProxy.obtainPc$1(PresentationCompilerProxy.scala:84)
at org.scalaide.core.internal.compiler.PresentationCompilerProxy.internal(PresentationCompilerProxy.scala:104)
at org.scalaide.core.internal.compiler.PresentationCompilerProxy.apply(PresentationCompilerProxy.scala:62)
at org.scalaide.core.compiler.InteractiveCompilationUnit$class.withSourceFile(InteractiveCompilationUnit.scala:214)
at org.scalaide.core.internal.jdt.model.ScalaSourceFile.withSourceFile(ScalaSourceFile.scala:73)
at org.scalaide.core.internal.compiler.Scaladoc$$anonfun$1.apply(ScalaDoc.scala:55)
at org.scalaide.core.internal.compiler.Scaladoc$$anonfun$1.apply(ScalaDoc.scala:55)
at scala.Option.map(Option.scala:146)
at org.scalaide.core.internal.compiler.Scaladoc$class.parsedDocComment(ScalaDoc.scala:55)
at org.scalaide.core.internal.compiler.ScalaPresentationCompiler.parsedDocComment(ScalaPresentationCompiler.scala:52)
at org.scalaide.ui.internal.editor.hover.ScalaHoverImpl$$anonfun$1$$anonfun$apply$3$$anonfun$9.apply(ScalaHoverImpl.scala:231)
at org.scalaide.ui.internal.editor.hover.ScalaHoverImpl$$anonfun$1$$anonfun$apply$3$$anonfun$9.apply(ScalaHoverImpl.scala:230)
at scala.Option$WithFilter.flatMap(Option.scala:208)
at org.scalaide.ui.internal.editor.hover.ScalaHoverImpl$$anonfun$1$$anonfun$apply$3.docComment$lzycompute$1(ScalaHoverImpl.scala:230)
at org.scalaide.ui.internal.editor.hover.ScalaHoverImpl$$anonfun$1$$anonfun$apply$3.docComment$1(ScalaHoverImpl.scala:203)
at org.scalaide.ui.internal.editor.hover.ScalaHoverImpl$$anonfun$1$$anonfun$apply$3.apply(ScalaHoverImpl.scala:242)
at org.scalaide.ui.internal.editor.hover.ScalaHoverImpl$$anonfun$1$$anonfun$apply$3.apply(ScalaHoverImpl.scala:111)
at org.scalaide.core.compiler.InteractiveCompilationUnit$$anonfun$withSourceFile$1.apply(InteractiveCompilationUnit.scala:214)
at org.scalaide.core.compiler.InteractiveCompilationUnit$$anonfun$withSourceFile$1.apply(InteractiveCompilationUnit.scala:214)
at org.scalaide.core.internal.compiler.PresentationCompilerProxy$$anonfun$internal$1.apply(PresentationCompilerProxy.scala:105)
at org.scalaide.core.internal.compiler.PresentationCompilerProxy$$anonfun$internal$1.apply(PresentationCompilerProxy.scala:104)
at scala.Option.flatMap(Option.scala:171)
at org.scalaide.core.internal.compiler.PresentationCompilerProxy.internal(PresentationCompilerProxy.scala:104)
at org.scalaide.core.internal.compiler.PresentationCompilerProxy.apply(PresentationCompilerProxy.scala:62)
at org.scalaide.core.compiler.InteractiveCompilationUnit$class.withSourceFile(InteractiveCompilationUnit.scala:214)
at org.scalaide.core.internal.jdt.model.ScalaSourceFile.withSourceFile(ScalaSourceFile.scala:73)
at org.scalaide.ui.internal.editor.hover.ScalaHoverImpl$$anonfun$1.apply(ScalaHoverImpl.scala:111)
at org.scalaide.ui.internal.editor.hover.ScalaHoverImpl$$anonfun$1.apply(ScalaHoverImpl.scala:109)
at scala.Option.map(Option.scala:146)
at org.scalaide.ui.internal.editor.hover.ScalaHoverImpl.getHoverInfo2(ScalaHoverImpl.scala:109)
at org.scalaide.debug.internal.editor.TextHoverFactory$$anon$1.org$scalaide$debug$internal$editor$TextHoverFactory$$anon$$super$getHoverInfo2(TextHoverFactory.scala:54)
at org.scalaide.debug.internal.editor.TextHoverFactory$$anon$1$$anonfun$2$$anonfun$apply$5.apply(TextHoverFactory.scala:54)
at scala.Option.getOrElse(Option.scala:121)
at org.scalaide.debug.internal.editor.TextHoverFactory$$anon$1$$anonfun$2.apply(TextHoverFactory.scala:52)
at org.scalaide.debug.internal.editor.TextHoverFactory$$anon$1$$anonfun$2.apply(TextHoverFactory.scala:38)
at scala.Option.map(Option.scala:146)
at org.scalaide.debug.internal.editor.TextHoverFactory$$anon$1.getHoverInfo2(TextHoverFactory.scala:38)
at org.eclipse.jface.text.TextViewerHoverManager$4.run(TextViewerHoverManager.java:166)
On my system, the logger shows the following classpath for the project that depends on scala-library:
user classpath: /home/antoras/dev/scala/scala/build/quick/classes/library:/home/antoras/software/scala-2.12.0-M2/lib/scala-reflect.jar:/home/antoras/software/scala-2.12.0-M2/lib/scala-swing_2.12.0-M2-2.0.0-M2.jar:/home/antoras/software/scala-2.12.0-M2/lib/scala-library.jar
As one can see, both the output of scala-library and the Scala installation is on the classpath. Interestingly, the exception only occurs for hyperlinking and Scaladoc, all other components, like code completion or semantic highlighting work without any problems.
Leave a comment
on 2015-10-10 10:35 *
By Simon Schäfer
Description changed from The problem as reported on ... to The problem as reported on ...
on 2015-10-10 11:11 *
By Simon Schäfer
Another stack trace, this time produced through hyperlinking with a key combo:
2015-10-10 13:04:48,987 ERROR [main] - org.scala-ide.sdt.core - org.scala-ide.sdt.core - org.scala-ide.sdt.core - 0 - Error thrown while initializing the presentation compiler.
scala.reflect.internal.Symbols$CyclicReference: illegal cyclic reference involving object Predef
at scala.reflect.internal.Symbols$Symbol$$anonfun$info$3.apply(Symbols.scala:1477)
at scala.reflect.internal.Symbols$Symbol$$anonfun$info$3.apply(Symbols.scala:1475)
at scala.Function0$class.apply$mcV$sp(Function0.scala:34)
at scala.runtime.AbstractFunction0.apply$mcV$sp(AbstractFunction0.scala:12)
at scala.reflect.internal.Symbols$Symbol.lock(Symbols.scala:533)
at scala.reflect.internal.Symbols$Symbol.info(Symbols.scala:1475)
at scala.reflect.internal.Symbols$Symbol.tpeHK(Symbols.scala:1424)
at scala.reflect.internal.Types$Type.computeMemberType(Types.scala:694)
at scala.reflect.internal.Types$Type.memberType(Types.scala:691)
at scala.reflect.internal.TreeGen.mkAttributedSelect(TreeGen.scala:201)
at scala.reflect.internal.TreeGen.mkAttributedRef(TreeGen.scala:126)
at scala.reflect.internal.TreeGen.mkAttributedRef(TreeGen.scala:132)
at scala.reflect.internal.TreeGen.mkAttributedStableRef(TreeGen.scala:164)
at scala.tools.nsc.ast.TreeGen.mkImportFromSelector(TreeGen.scala:35)
at scala.tools.nsc.ast.TreeGen.mkWildcardImport(TreeGen.scala:25)
at scala.tools.nsc.typechecker.Contexts$$anonfun$3.apply(Contexts.scala:103)
at scala.tools.nsc.typechecker.Contexts$$anonfun$3.apply(Contexts.scala:103)
at scala.collection.LinearSeqOptimized$class.foldLeft(LinearSeqOptimized.scala:124)
at scala.collection.immutable.List.foldLeft(List.scala:84)
at scala.collection.TraversableOnce$class.$div$colon(TraversableOnce.scala:149)
at scala.collection.AbstractTraversable.$div$colon(Traversable.scala:104)
at scala.tools.nsc.typechecker.Contexts$class.rootContext(Contexts.scala:103)
at org.scalaide.core.internal.compiler.ScalaPresentationCompiler$$anon$1.rootContext(ScalaPresentationCompiler.scala:76)
at scala.tools.nsc.typechecker.Analyzer$namerFactory$$anon$1.apply(Analyzer.scala:43)
at scala.tools.nsc.Global$GlobalPhase$$anonfun$applyPhase$1.apply$mcV$sp(Global.scala:440)
at scala.tools.nsc.Global$GlobalPhase.withCurrentUnit(Global.scala:431)
at scala.tools.nsc.Global$GlobalPhase.applyPhase(Global.scala:440)
at scala.tools.nsc.Global$Run$$anonfun$compileLate$2$$anonfun$apply$1.apply(Global.scala:1609)
at scala.tools.nsc.Global$Run$$anonfun$compileLate$2$$anonfun$apply$1.apply(Global.scala:1609)
at scala.reflect.internal.SymbolTable.enteringPhase(SymbolTable.scala:235)
at scala.tools.nsc.Global$Run$$anonfun$compileLate$2.apply(Global.scala:1609)
at scala.tools.nsc.Global$Run$$anonfun$compileLate$2.apply(Global.scala:1608)
at scala.collection.Iterator$class.foreach(Iterator.scala:854)
at scala.collection.AbstractIterator.foreach(Iterator.scala:1297)
at scala.tools.nsc.Global$Run.compileLate(Global.scala:1608)
at scala.tools.nsc.Global$Run.compileLate(Global.scala:1598)
at scala.tools.nsc.GlobalSymbolLoaders.compileLate(GlobalSymbolLoaders.scala:29)
at scala.tools.nsc.symtab.SymbolLoaders$SourcefileLoader.doComplete(SymbolLoaders.scala:368)
at scala.tools.nsc.symtab.SymbolLoaders$SymbolLoader.complete(SymbolLoaders.scala:211)
at scala.reflect.internal.Symbols$Symbol.info(Symbols.scala:1489)
at scala.reflect.internal.Symbols$Symbol.tpeHK(Symbols.scala:1424)
at scala.reflect.internal.Types$Type.computeMemberType(Types.scala:694)
at scala.reflect.internal.Types$Type.memberType(Types.scala:691)
at scala.reflect.internal.TreeGen.mkAttributedSelect(TreeGen.scala:201)
at scala.reflect.internal.TreeGen.mkAttributedRef(TreeGen.scala:126)
at scala.reflect.internal.TreeGen.mkAttributedRef(TreeGen.scala:132)
at scala.reflect.internal.TreeGen.mkAttributedStableRef(TreeGen.scala:164)
at scala.tools.nsc.ast.TreeGen.mkImportFromSelector(TreeGen.scala:35)
at scala.tools.nsc.ast.TreeGen.mkWildcardImport(TreeGen.scala:25)
at scala.tools.nsc.typechecker.Contexts$$anonfun$3.apply(Contexts.scala:103)
at scala.tools.nsc.typechecker.Contexts$$anonfun$3.apply(Contexts.scala:103)
at scala.collection.LinearSeqOptimized$class.foldLeft(LinearSeqOptimized.scala:124)
at scala.collection.immutable.List.foldLeft(List.scala:84)
at scala.collection.TraversableOnce$class.$div$colon(TraversableOnce.scala:149)
at scala.collection.AbstractTraversable.$div$colon(Traversable.scala:104)
at scala.tools.nsc.typechecker.Contexts$class.rootContext(Contexts.scala:103)
at org.scalaide.core.internal.compiler.ScalaPresentationCompiler$$anon$1.rootContext(ScalaPresentationCompiler.scala:76)
at scala.tools.nsc.typechecker.Analyzer$namerFactory$$anon$1.apply(Analyzer.scala:43)
at scala.tools.nsc.Global$GlobalPhase$$anonfun$applyPhase$1.apply$mcV$sp(Global.scala:440)
at scala.tools.nsc.Global$GlobalPhase.withCurrentUnit(Global.scala:431)
at scala.tools.nsc.Global$GlobalPhase.applyPhase(Global.scala:440)
at scala.tools.nsc.Global$Run$$anonfun$compileLate$2$$anonfun$apply$1.apply(Global.scala:1609)
at scala.tools.nsc.Global$Run$$anonfun$compileLate$2$$anonfun$apply$1.apply(Global.scala:1609)
at scala.reflect.internal.SymbolTable.enteringPhase(SymbolTable.scala:235)
at scala.tools.nsc.Global$Run$$anonfun$compileLate$2.apply(Global.scala:1609)
at scala.tools.nsc.Global$Run$$anonfun$compileLate$2.apply(Global.scala:1608)
at scala.collection.Iterator$class.foreach(Iterator.scala:854)
at scala.collection.AbstractIterator.foreach(Iterator.scala:1297)
at scala.tools.nsc.Global$Run.compileLate(Global.scala:1608)
at scala.tools.nsc.Global$Run.compileLate(Global.scala:1598)
at scala.tools.nsc.GlobalSymbolLoaders.compileLate(GlobalSymbolLoaders.scala:29)
at scala.tools.nsc.symtab.SymbolLoaders$SourcefileLoader.doComplete(SymbolLoaders.scala:368)
at scala.tools.nsc.symtab.SymbolLoaders$SymbolLoader.complete(SymbolLoaders.scala:211)
at scala.reflect.internal.Symbols$Symbol.info(Symbols.scala:1489)
at scala.reflect.internal.Symbols$Symbol.initialize(Symbols.scala:1634)
at scala.tools.nsc.interactive.Global$$anonfun$forceSymbolsUsedByParser$1.apply(Global.scala:1258)
at scala.tools.nsc.interactive.Global$$anonfun$forceSymbolsUsedByParser$1.apply(Global.scala:1258)
at scala.collection.immutable.HashSet$HashSet1.foreach(HashSet.scala:316)
at scala.collection.immutable.HashSet$HashTrieSet.foreach(HashSet.scala:972)
at scala.collection.immutable.HashSet$HashTrieSet.foreach(HashSet.scala:972)
at scala.tools.nsc.interactive.Global.forceSymbolsUsedByParser(Global.scala:1258)
at scala.tools.nsc.interactive.Global.<init>(Global.scala:1261)
at org.scalaide.core.internal.compiler.ScalaPresentationCompiler.<init>(ScalaPresentationCompiler.scala:62)
at org.scalaide.core.internal.compiler.PresentationCompilerProxy.liftedTree1$1(PresentationCompilerProxy.scala:158)
at org.scalaide.core.internal.compiler.PresentationCompilerProxy.create(PresentationCompilerProxy.scala:157)
at org.scalaide.core.internal.compiler.PresentationCompilerProxy.initialize(PresentationCompilerProxy.scala:122)
at org.scalaide.core.internal.compiler.PresentationCompilerProxy.obtainPc$1(PresentationCompilerProxy.scala:84)
at org.scalaide.core.internal.compiler.PresentationCompilerProxy.internal(PresentationCompilerProxy.scala:104)
at org.scalaide.core.internal.jdt.model.ScalaCompilationUnit$class.buildStructure(ScalaCompilationUnit.scala:134)
at org.scalaide.core.internal.jdt.model.ScalaSourceFile.buildStructure(ScalaSourceFile.scala:73)
at org.eclipse.jdt.internal.core.Openable.generateInfos(Openable.java:259)
at org.eclipse.jdt.internal.core.JavaElement.openWhenClosed(JavaElement.java:579)
at org.eclipse.jdt.internal.core.JavaElement.getElementInfo(JavaElement.java:316)
at org.eclipse.jdt.internal.core.JavaElement.getElementInfo(JavaElement.java:302)
at org.scalaide.core.internal.jdt.model.LazyToplevelClass.mirror$lzycompute(ScalaElements.scala:314)
at org.scalaide.core.internal.jdt.model.LazyToplevelClass.mirror(ScalaElements.scala:312)
at org.scalaide.core.internal.jdt.model.LazyToplevelClass.exists(ScalaElements.scala:326)
at scala.tools.eclipse.contribution.weaving.jdt.core.NameLookupAspect.ajc$around$scala_tools_eclipse_contribution_weaving_jdt_core_NameLookupAspect$1$1c7010b1(NameLookupAspect.aj:85)
at org.eclipse.jdt.internal.core.NameLookup.seekTypesInSourcePackage(NameLookup.java:1108)
at org.eclipse.jdt.internal.core.NameLookup.seekTypes(NameLookup.java:1022)
at org.eclipse.jdt.internal.core.NameLookup.findType(NameLookup.java:769)
at org.eclipse.jdt.internal.core.SelectionRequestor.resolveType(SelectionRequestor.java:944)
at org.eclipse.jdt.internal.core.SelectionRequestor.acceptMethod(SelectionRequestor.java:512)
at org.scalaide.core.internal.jdt.search.ScalaSelectionEngine$$anonfun$select$1$$anonfun$org$scalaide$core$internal$jdt$search$ScalaSelectionEngine$$anonfun$$acceptMethod$1$1.apply$mcV$sp(ScalaSelectionEngine.scala:116)
at org.scalaide.core.internal.jdt.search.ScalaSelectionEngine$$anonfun$select$1$Cont$2.apply(ScalaSelectionEngine.scala:65)
at org.scalaide.core.internal.jdt.search.ScalaSelectionEngine$$anonfun$select$1.apply(ScalaSelectionEngine.scala:249)
at org.scalaide.core.internal.jdt.search.ScalaSelectionEngine$$anonfun$select$1.apply(ScalaSelectionEngine.scala:38)
at org.scalaide.core.internal.compiler.PresentationCompilerProxy$$anonfun$internal$1.apply(PresentationCompilerProxy.scala:105)
at org.scalaide.core.internal.compiler.PresentationCompilerProxy$$anonfun$internal$1.apply(PresentationCompilerProxy.scala:104)
at scala.Option.flatMap(Option.scala:171)
at org.scalaide.core.internal.compiler.PresentationCompilerProxy.internal(PresentationCompilerProxy.scala:104)
at org.scalaide.core.internal.compiler.PresentationCompilerProxy.apply(PresentationCompilerProxy.scala:62)
at org.scalaide.core.internal.jdt.search.ScalaSelectionEngine.select(ScalaSelectionEngine.scala:38)
at org.scalaide.core.internal.hyperlink.JavaSelectionEngine$.getJavaElements(DeclarationHyperlinkDetector.scala:80)
at org.scalaide.core.internal.hyperlink.DeclarationHyperlinkDetector.javaDeclarationHyperlinkComputer(DeclarationHyperlinkDetector.scala:54)
at org.scalaide.core.internal.hyperlink.DeclarationHyperlinkDetector.findHyperlinks(DeclarationHyperlinkDetector.scala:43)
at org.scalaide.core.internal.hyperlink.DeclarationHyperlinkDetector.findHyperlinks(DeclarationHyperlinkDetector.scala:30)
at org.scalaide.core.internal.hyperlink.DeclarationHyperlinkDetector.runDetectionStrategy(DeclarationHyperlinkDetector.scala:26)
at org.scalaide.core.internal.hyperlink.BaseHyperlinkDetector$$anonfun$1.apply(BaseHyperlinkDetector.scala:38)
at org.scalaide.core.internal.hyperlink.BaseHyperlinkDetector$$anonfun$1.apply(BaseHyperlinkDetector.scala:38)
at scala.concurrent.impl.Future$PromiseCompletingRunnable.liftedTree1$1(Future.scala:24)
at scala.concurrent.impl.Future$PromiseCompletingRunnable.run(Future.scala:24)
at scala.concurrent.impl.ExecutionContextImpl$AdaptedForkJoinTask.exec(ExecutionContextImpl.scala:121)
at scala.concurrent.forkjoin.ForkJoinTask.doExec(ForkJoinTask.java:260)
at scala.concurrent.forkjoin.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1339)
at scala.concurrent.forkjoin.ForkJoinPool.runWorker(ForkJoinPool.java:1979)
at scala.concurrent.forkjoin.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:107)