Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.

Bug 546092

Summary: Compare view fails for if Eclipse can't parse the Javascript
Product: [WebTools] JSDT Reporter: Patrick Stuart <patstuart>
Component: GeneralAssignee: Project Inbox <jsdt.javascript-inbox>
Status: CLOSED DUPLICATE QA Contact: Victor Rubezhny <vrubezhny>
Severity: normal    
Priority: P3 CC: vrubezhny
Version: 3.17   
Target Milestone: 3.18   
Hardware: PC   
OS: Windows 10   
Whiteboard:

Description Patrick Stuart CLA 2019-04-03 12:49:06 EDT
What steps will reproduce the problem?
1. Create two Javascript files. In one of the files, use new Javascript syntax such as ES2018 spread.
2. Compare the files with each other.

Result: 
* The compare result shows nothing whatsoever.
* The error console emits the an unhandled event loop exception.

I have noticed this bug for at least a year now. I've observed this on Linux and Windows.


-- Error Details --
Date: Wed Apr 03 12:34:30 EDT 2019
Message: Unhandled event loop exception
Severity: Error
Product: Eclipse IDE 4.11.0.20190314-1200 (org.eclipse.epp.package.jee.product)
Plugin: org.eclipse.ui
Session Data:
eclipse.buildId=4.11.0.I20190307-0500
java.version=1.8.0_112
java.vendor=Oracle Corporation
BootLoader constants: OS=win32, ARCH=x86_64, WS=win32, NL=en_US
Framework arguments:  -product org.eclipse.epp.package.jee.product -product org.eclipse.epp.package.jee.product -product org.eclipse.epp.package.jee.product
Command-line arguments:  -os win32 -ws win32 -arch x86_64 -product org.eclipse.epp.package.jee.product -product org.eclipse.epp.package.jee.product -data file:/C:/Users/prgpes/eclipse-workspace/ -product org.eclipse.epp.package.jee.product

Created Time: 2019-04-02 14:51:18.088

Exception Stack Trace:
org.eclipse.core.runtime.AssertionFailedException: assertion failed: 
	at org.eclipse.core.runtime.Assert.isTrue(Assert.java:113)
	at org.eclipse.core.runtime.Assert.isTrue(Assert.java:99)
	at org.eclipse.jface.text.Position.<init>(Position.java:65)
	at org.eclipse.compare.structuremergeviewer.DocumentRangeNode.registerPositionUpdater(DocumentRangeNode.java:118)
	at org.eclipse.compare.structuremergeviewer.DocumentRangeNode.<init>(DocumentRangeNode.java:113)
	at org.eclipse.wst.jsdt.internal.ui.compare.JavaNode.<init>(JavaNode.java:53)
	at org.eclipse.wst.jsdt.internal.ui.compare.JavaParseTreeBuilder.push(JavaParseTreeBuilder.java:139)
	at org.eclipse.wst.jsdt.internal.ui.compare.JavaParseTreeBuilder.visit(JavaParseTreeBuilder.java:66)
	at org.eclipse.wst.jsdt.core.dom.TypeDeclaration.accept0(TypeDeclaration.java:368)
	at org.eclipse.wst.jsdt.core.dom.ASTNode.accept(ASTNode.java:2426)
	at org.eclipse.wst.jsdt.core.dom.ASTNode.acceptChild(ASTNode.java:2473)
	at org.eclipse.wst.jsdt.core.dom.TypeDeclarationStatement.accept0(TypeDeclarationStatement.java:213)
	at org.eclipse.wst.jsdt.core.dom.ASTNode.accept(ASTNode.java:2426)
	at org.eclipse.wst.jsdt.core.dom.ASTNode.acceptChildren(ASTNode.java:2499)
	at org.eclipse.wst.jsdt.core.dom.JavaScriptUnit.accept0(JavaScriptUnit.java:242)
	at org.eclipse.wst.jsdt.core.dom.ASTNode.accept(ASTNode.java:2426)
	at org.eclipse.wst.jsdt.internal.ui.compare.JavaStructureCreator.createStructureComparator(JavaStructureCreator.java:285)
	at org.eclipse.wst.jsdt.internal.ui.compare.JavaStructureCreator.createStructureComparator(JavaStructureCreator.java:243)
	at org.eclipse.compare.structuremergeviewer.StructureCreator.internalCreateStructure(StructureCreator.java:118)
	at org.eclipse.compare.structuremergeviewer.StructureCreator.lambda$0(StructureCreator.java:94)
	at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:72)
	at org.eclipse.compare.internal.Utilities.runInUIThread(Utilities.java:799)
	at org.eclipse.compare.structuremergeviewer.StructureCreator.createStructure(StructureCreator.java:99)
	at org.eclipse.compare.structuremergeviewer.StructureDiffViewer$StructureInfo.createStructure(StructureDiffViewer.java:163)
	at org.eclipse.compare.structuremergeviewer.StructureDiffViewer$StructureInfo.refresh(StructureDiffViewer.java:141)
	at org.eclipse.compare.structuremergeviewer.StructureDiffViewer$StructureInfo.setInput(StructureDiffViewer.java:112)
	at org.eclipse.compare.structuremergeviewer.StructureDiffViewer.compareInputChanged(StructureDiffViewer.java:350)
	at org.eclipse.compare.structuremergeviewer.StructureDiffViewer.lambda$1(StructureDiffViewer.java:88)
	at org.eclipse.compare.structuremergeviewer.StructureDiffViewer.lambda$4(StructureDiffViewer.java:326)
	at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:72)
	at org.eclipse.compare.structuremergeviewer.StructureDiffViewer.compareInputChanged(StructureDiffViewer.java:324)
	at org.eclipse.compare.structuremergeviewer.StructureDiffViewer.compareInputChanged(StructureDiffViewer.java:312)
	at org.eclipse.wst.jsdt.internal.ui.compare.JavaStructureDiffViewer.compareInputChanged(JavaStructureDiffViewer.java:143)
	at org.eclipse.compare.structuremergeviewer.StructureDiffViewer.inputChanged(StructureDiffViewer.java:281)
	at org.eclipse.jface.viewers.ContentViewer.setInput(ContentViewer.java:282)
	at org.eclipse.jface.viewers.StructuredViewer.setInput(StructuredViewer.java:1686)
	at org.eclipse.compare.CompareViewerSwitchingPane.setInput(CompareViewerSwitchingPane.java:268)
	at org.eclipse.compare.internal.CompareStructureViewerSwitchingPane.setInput(CompareStructureViewerSwitchingPane.java:141)
	at org.eclipse.compare.CompareEditorInput.feedInput(CompareEditorInput.java:715)
	at org.eclipse.compare.CompareEditorInput.createContents(CompareEditorInput.java:542)
	at org.eclipse.compare.internal.CompareEditor.createCompareControl(CompareEditor.java:448)
	at org.eclipse.compare.internal.CompareEditor.access$6(CompareEditor.java:408)
	at org.eclipse.compare.internal.CompareEditor$1.lambda$0(CompareEditor.java:366)
	at org.eclipse.ui.internal.PendingSyncExec.run(PendingSyncExec.java:61)
	at org.eclipse.ui.internal.UILockListener.doPendingWork(UILockListener.java:171)
	at org.eclipse.ui.internal.UISynchronizer.lambda$0(UISynchronizer.java:153)
	at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:40)
	at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:185)
	at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:3919)
	at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3550)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1173)
	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1062)
	at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:155)
	at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:644)
	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338)
	at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:566)
	at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:150)
	at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:155)
	at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:203)
	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:137)
	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:107)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:400)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:255)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:661)
	at org.eclipse.equinox.launcher.Main.basicRun(Main.java:597)
	at org.eclipse.equinox.launcher.Main.run(Main.java:1476)
Comment 1 Victor Rubezhny CLA 2020-03-19 21:51:40 EDT

*** This bug has been marked as a duplicate of bug 509820 ***