Eclipse plugin hangs while parsing
Migrated from http://lampsvn.epfl.ch/trac/scala/ticket/646
Reporter dragos
I think similar bugs have been reported before, here's another one (tested with last night's build).
Type the following code:
Reporter dragos
I think similar bugs have been reported before, here's another one (tested with last night's build).
Type the following code:
def output = {
for ((keys, va|))
when pressing on 'l' where the cursor is, Eclipse will hang. This is the stack trace:"main" prio=10 tid=0x080b1c00 nid=0x722 runnable [0xffff9000..0xffffd368]
java.lang.Thread.State: RUNNABLE
at lampion.compiler.Parsers$FileImpl$ParseNodeImpl$ParserImpl$class.node(Parsers.scala:142)
at scala.tools.editor.Parsers$FileImpl$ParseNodeImpl$Parser.node(Parsers.scala:257)
at scala.tools.editor.Parsers$Parser.skip(Parsers.scala:24)
at scala.tools.nsc.ast.parser.Parsers$Parser.syntaxError(Parsers.scala:243)
at scala.tools.nsc.ast.parser.Parsers$Parser.syntaxErrorOrIncomplete(Parsers.scala:253)
at scala.tools.nsc.ast.parser.Parsers$Parser$$anonfun$blockStatSeq$1.apply(Parsers.scala:2468)
at scala.tools.nsc.ast.parser.Parsers$Parser$$anonfun$blockStatSeq$1.apply(Parsers.scala:2450)
at scala.tools.nsc.ast.parser.Parsers$Parser.checkNoEscapingPlaceholders(Parsers.scala:170)
at scala.tools.nsc.ast.parser.Parsers$Parser.blockStatSeq(Parsers.scala:2450)
at scala.tools.nsc.ast.parser.Parsers$Parser.block(Parsers.scala:1241)
at scala.tools.nsc.ast.parser.Parsers$Parser.blockExpr(Parsers.scala:1232)
at scala.tools.nsc.ast.parser.Parsers$Parser.simpleExpr(Parsers.scala:1174)
at scala.tools.nsc.ast.parser.Parsers$Parser.prefixExpr(Parsers.scala:1136)
at scala.tools.nsc.ast.parser.Parsers$Parser.postfixExpr(Parsers.scala:1088)
at scala.tools.nsc.ast.parser.Parsers$Parser.expr(Parsers.scala:1025)
at scala.tools.nsc.ast.parser.Parsers$Parser.expr(Parsers.scala:942)
at scala.tools.nsc.ast.parser.Parsers$Parser.patDefOrDcl(Parsers.scala:1968)
at scala.tools.nsc.ast.parser.Parsers$Parser.defOrDcl(Parsers.scala:1927)
at scala.tools.nsc.ast.parser.Parsers$Parser.nonLocalDefOrDcl(Parsers.scala:1943)
at scala.tools.editor.Parsers$Parser.nonLocalDefOrDcl0(Parsers.scala:80)
at scala.tools.editor.Parsers$NonLocalDefOrDcl$.apply(Parsers.scala:174)
at scala.tools.editor.Parsers$NonLocalDefOrDcl$.apply(Parsers.scala:173)
at scala.tools.editor.Parsers$FileImpl$ParseNodeImpl$Parser.doParse(Parsers.scala:262)
at lampion.compiler.Parsers$ParseNodeImpl$class.parseInner(Parsers.scala:72)
at scala.tools.editor.Driver$ProjectImpl$FileImpl$ParseNode.lampion$compiler$Tokenizers$FileImpl$ParseNodeImpl$$super$parseInner(Driver.scala:19)
at lampion.compiler.Tokenizers$FileImpl$ParseNodeImpl$class.parseInner(Tokenizers.scala:118)
at scala.tools.editor.Driver$ProjectImpl$FileImpl$ParseNode.parseInner(Driver.scala:19)
at lampion.compiler.Parsers$FileImpl$ParseNodeImpl$class.doParse(Parsers.scala:218)
at scala.tools.editor.Driver$ProjectImpl$FileImpl$ParseNode.doParse(Driver.scala:19)
at lampion.compiler.Parsers$FileImpl$class.doParsing(Parsers.scala:263)
at scala.tools.eclipse.Driver$Project$File.lampion$presentation$Matchers$ProjectImpl$FileImpl$$super$doParsing(Driver.scala:13)
at lampion.presentation.Matchers$ProjectImpl$FileImpl$class.doParsing(Matchers.scala:11)
at scala.tools.eclipse.Driver$Project$File.doParsing(Driver.scala:13)
at lampion.presentation.Presentations$ProjectImpl$FileImpl$class.processEdit(Presentations.scala:125)
at scala.tools.eclipse.Driver$Project$File.processEdit(Driver.scala:13)
at lampion.eclipse.SourceViewer$$anonfun$catchUp$1.apply(SourceViewer.scala:39)
at lampion.eclipse.SourceViewer$$anonfun$catchUp$1.apply(SourceViewer.scala:39)
at scala.Option.foreach(Option.scala:94)
at lampion.eclipse.SourceViewer.catchUp(SourceViewer.scala:39)
at lampion.eclipse.Editor.catchUp(Editor.scala:366)
at lampion.eclipse.Editor$modifyListener$.modifyText(Editor.scala:215)
at org.eclipse.swt.custom.StyledTextListener.handleEvent(StyledTextListener.java:31)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:66)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1101)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1125)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1110)
at org.eclipse.swt.widgets.Widget.notifyListeners(Widget.java:951)
at org.eclipse.swt.custom.StyledText.modifyContent(StyledText.java:5767)
at org.eclipse.swt.custom.StyledText.sendKeyEvent(StyledText.java:6500)
at org.eclipse.swt.custom.StyledText.doContent(StyledText.java:2155)
at org.eclipse.swt.custom.StyledText.handleKey(StyledText.java:5029)
at org.eclipse.swt.custom.StyledText.handleKeyDown(StyledText.java:5054)
at org.eclipse.swt.custom.StyledText$7.handleEvent(StyledText.java:4800)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:66)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1101)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1125)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1110)
at org.eclipse.swt.widgets.Widget.sendIMKeyEvent(Widget.java:1187)
at org.eclipse.swt.widgets.Control.gtk_commit(Control.java:2383)
at org.eclipse.swt.widgets.Widget.windowProc(Widget.java:1476)
at org.eclipse.swt.widgets.Control.windowProc(Control.java:4234)
at org.eclipse.swt.widgets.Display.windowProc(Display.java:3973)
at org.eclipse.swt.internal.gtk.OS._gtk_im_context_filter_keypress(Native Method)
at org.eclipse.swt.internal.gtk.OS.gtk_im_context_filter_keypress(OS.java:5134)
at org.eclipse.swt.widgets.Control.filterKey(Control.java:1853)
at org.eclipse.swt.widgets.Control.gtk_key_press_event(Control.java:2526)
at org.eclipse.swt.widgets.Composite.gtk_key_press_event(Composite.java:679)
at org.eclipse.swt.widgets.Widget.windowProc(Widget.java:1486)
at org.eclipse.swt.widgets.Control.windowProc(Control.java:4234)
at org.eclipse.swt.widgets.Display.windowProc(Display.java:3973)
at org.eclipse.swt.internal.gtk.OS._gtk_main_do_event(Native Method)
at org.eclipse.swt.internal.gtk.OS.gtk_main_do_event(OS.java:5593)
at org.eclipse.swt.widgets.Display.eventProc(Display.java:1192)
at org.eclipse.swt.internal.gtk.OS._g_main_context_iteration(Native Method)
at org.eclipse.swt.internal.gtk.OS.g_main_context_iteration(OS.java:1487)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:2969)
at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2389)
at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2353)
at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2219)
at org.eclipse.ui.internal.Workbench$4.run(Workbench.java:466)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:289)
at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:461)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:106)
at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:169)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:106)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:76)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:363)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:176)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:508)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:447)
at org.eclipse.equinox.launcher.Main.run(Main.java:1173)
Leave a comment