Community
Participate
Working Groups
HEAD - put the example from bug 353452 into a 1.7 project - put the caret into Integer - open ASTView - choose ASTParser.createAST and AST level 3 or 4 - click the leftmost ASTView toolbar button (Show AST...) !ENTRY org.eclipse.jdt.core 4 4 2011-08-02 21:46:56.966 !MESSAGE Could not retrieve declared methods !STACK 0 java.lang.ArrayIndexOutOfBoundsException: 0 at org.eclipse.jdt.internal.compiler.lookup.ParameterizedTypeBinding.substitute(ParameterizedTypeBinding.java:959) at org.eclipse.jdt.internal.compiler.lookup.ParameterizedMethodBinding$1.substitute(ParameterizedMethodBinding.java:72) at org.eclipse.jdt.internal.compiler.lookup.Scope.substitute(Scope.java:365) at org.eclipse.jdt.internal.compiler.lookup.Scope.substitute(Scope.java:473) at org.eclipse.jdt.internal.compiler.lookup.ParameterizedMethodBinding.<init>(ParameterizedMethodBinding.java:109) at org.eclipse.jdt.internal.compiler.lookup.ParameterizedTypeBinding.createParameterizedMethod(ParameterizedTypeBinding.java:311) at org.eclipse.jdt.internal.compiler.lookup.ParameterizedTypeBinding.methods(ParameterizedTypeBinding.java:799) at org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.availableMethods(ReferenceBinding.java:173) at org.eclipse.jdt.core.dom.TypeBinding.getDeclaredMethods(TypeBinding.java:267) at org.eclipse.jdt.astview.views.Binding.getChildren(Binding.java:189) at org.eclipse.jdt.astview.views.ASTViewContentProvider.getChildren(ASTViewContentProvider.java:95) at org.eclipse.jdt.astview.views.ASTViewContentProvider.hasChildren(ASTViewContentProvider.java:230) at org.eclipse.jface.viewers.AbstractTreeViewer.isExpandable(AbstractTreeViewer.java:2146) at org.eclipse.jface.viewers.TreeViewer.isExpandable(TreeViewer.java:588) at org.eclipse.jface.viewers.AbstractTreeViewer.isExpandable(AbstractTreeViewer.java:2176) at org.eclipse.jface.viewers.AbstractTreeViewer.updatePlus(AbstractTreeViewer.java:2858) at org.eclipse.jface.viewers.TreeViewer.updatePlus(TreeViewer.java:852) at org.eclipse.jface.viewers.AbstractTreeViewer.createTreeItem(AbstractTreeViewer.java:849) at org.eclipse.jface.viewers.AbstractTreeViewer$1.run(AbstractTreeViewer.java:823) at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70) at org.eclipse.jface.viewers.AbstractTreeViewer.createChildren(AbstractTreeViewer.java:797) at org.eclipse.jface.viewers.TreeViewer.createChildren(TreeViewer.java:644) at org.eclipse.jface.viewers.AbstractTreeViewer.createChildren(AbstractTreeViewer.java:768) at org.eclipse.jface.viewers.AbstractTreeViewer.internalExpand(AbstractTreeViewer.java:1646) at org.eclipse.jface.viewers.AbstractTreeViewer.internalExpand(AbstractTreeViewer.java:1643) at org.eclipse.jface.viewers.AbstractTreeViewer.internalExpand(AbstractTreeViewer.java:1643) at org.eclipse.jface.viewers.AbstractTreeViewer.internalExpand(AbstractTreeViewer.java:1643) at org.eclipse.jface.viewers.AbstractTreeViewer.setSelectionToWidget(AbstractTreeViewer.java:2530) at org.eclipse.jface.viewers.StructuredViewer.setSelectionToWidget(StructuredViewer.java:1767) at org.eclipse.jface.viewers.AbstractTreeViewer.setSelectionToWidget(AbstractTreeViewer.java:2970) at org.eclipse.jface.viewers.StructuredViewer.setSelection(StructuredViewer.java:1723) at org.eclipse.jface.viewers.TreeViewer.setSelection(TreeViewer.java:1139) at org.eclipse.jdt.astview.views.ASTView.internalSetInput(ASTView.java:550) at org.eclipse.jdt.astview.views.ASTView.setInput(ASTView.java:525) at org.eclipse.jdt.astview.views.ASTView.performSetFocus(ASTView.java:1259) at org.eclipse.jdt.astview.views.ASTView$20.run(ASTView.java:995) at org.eclipse.jface.action.Action.runWithEvent(Action.java:498) at org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection(ActionContributionItem.java:584) at org.eclipse.jface.action.ActionContributionItem.access$2(ActionContributionItem.java:501) at org.eclipse.jface.action.ActionContributionItem$6.handleEvent(ActionContributionItem.java:452) at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:89) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1062) at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4165) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3754) at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2696) at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2660) at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2494) at org.eclipse.ui.internal.Workbench$7.run(Workbench.java:674) at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332) at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:667) at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149) at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:123) at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:344) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179) 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:622) at org.eclipse.equinox.launcher.Main.basicRun(Main.java:577) at org.eclipse.equinox.launcher.Main.run(Main.java:1410) at org.eclipse.equinox.launcher.Main.main(Main.java:1386)
Created attachment 201766 [details] proposed fix Patch passes all tests Olivier, where should the regression test for this go?
I would add it to org.eclipse.jdt.core.tests.dom.ASTConverter17Test.
Srikanth, this should be a candidate for 3.7.1 as it is not possible to create the DOM AST tree for the given example. Not being able to create the DOM tree is really annoying as it fills the console with errors and prevents a good usage of the java editor. What do you think ?
Created attachment 201799 [details] Proposed fix + regression test Same patch with a regression test
Patch looks good. TESTS_NUMBERS needs to be commented out. +1 for 3.7.1
Retargetting to 3.7.1
Created attachment 201977 [details] released patch Patch with TESTS_NAMES commented out. Thanks for the test Olivier.
(In reply to comment #7) > Created attachment 201977 [details] [diff] > released patch +1.
Released in HEAD for 3.8M2 and in R3_7_maintenance for 3.7.1
Verified for 3.7.1 RC2 using build M20110824-0800
Verified for 3.8M2 using build id I20110912-0800