Community
Participate
Working Groups
java.lang.NullPointerException at org.eclipse.jdt.internal.compiler.lookup.ClassScope.checkForInheritedMemberType s(ClassScope.java:652) at org.eclipse.jdt.internal.compiler.lookup.ClassScope.connectTypeHierarchy (ClassScope.java:924) at org.eclipse.jdt.internal.compiler.lookup.ClassScope.connectMemberTypes (ClassScope.java:709) at org.eclipse.jdt.internal.compiler.lookup.ClassScope.connectTypeHierarchy (ClassScope.java:922) at org.eclipse.jdt.internal.compiler.lookup.CompilationUnitScope.connectTypeHierar chy(CompilationUnitScope.java:254) at org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.completeTypeBindings (LookupEnvironment.java:249) at org.eclipse.jdt.internal.codeassist.impl.Engine.accept(Engine.java:92) at org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.askForType (LookupEnvironment.java:131) at org.eclipse.jdt.internal.compiler.lookup.PackageBinding.getTypeOrPackage (PackageBinding.java:178) at org.eclipse.jdt.internal.compiler.lookup.Scope.getTypeOrPackage (Scope.java:2386) at org.eclipse.jdt.internal.compiler.lookup.Scope.getType(Scope.java:2131) at org.eclipse.jdt.internal.compiler.ast.SingleTypeReference.getTypeBinding (SingleTypeReference.java:39) at org.eclipse.jdt.internal.compiler.ast.TypeReference.resolveType (TypeReference.java:141) at org.eclipse.jdt.internal.compiler.ast.TypeReference.resolveSuperType (TypeReference.java:104) at org.eclipse.jdt.internal.compiler.lookup.ClassScope.findSupertype (ClassScope.java:1074) at org.eclipse.jdt.internal.compiler.lookup.ClassScope.connectSuperInterfaces (ClassScope.java:823) at org.eclipse.jdt.internal.compiler.lookup.ClassScope.connectTypeHierarchy (ClassScope.java:914) at org.eclipse.jdt.internal.compiler.lookup.CompilationUnitScope.connectTypeHierar chy(CompilationUnitScope.java:254) at org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.completeTypeBindings (LookupEnvironment.java:249) at org.eclipse.jdt.internal.codeassist.impl.Engine.accept(Engine.java:92) at org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.askForType (LookupEnvironment.java:131) at org.eclipse.jdt.internal.compiler.lookup.PackageBinding.getTypeOrPackage (PackageBinding.java:178) at org.eclipse.jdt.internal.compiler.lookup.Scope.getTypeOrPackage (Scope.java:2386) at org.eclipse.jdt.internal.compiler.lookup.Scope.getType(Scope.java:2131) at org.eclipse.jdt.internal.compiler.ast.SingleTypeReference.getTypeBinding (SingleTypeReference.java:39) at org.eclipse.jdt.internal.compiler.ast.TypeReference.resolveType (TypeReference.java:141) at org.eclipse.jdt.internal.compiler.ast.TypeReference.resolveSuperType (TypeReference.java:104) at org.eclipse.jdt.internal.compiler.lookup.ClassScope.findSupertype (ClassScope.java:1074) at org.eclipse.jdt.internal.compiler.lookup.ClassScope.connectSuperclass (ClassScope.java:741) at org.eclipse.jdt.internal.compiler.lookup.ClassScope.connectTypeHierarchy (ClassScope.java:913) at org.eclipse.jdt.internal.compiler.lookup.CompilationUnitScope.connectTypeHierar chy(CompilationUnitScope.java:254) at org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.completeTypeBindings (LookupEnvironment.java:249) at org.eclipse.jdt.internal.codeassist.impl.Engine.accept(Engine.java:92) at org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.askForType (LookupEnvironment.java:131) at org.eclipse.jdt.internal.compiler.lookup.PackageBinding.getTypeOrPackage (PackageBinding.java:178) at org.eclipse.jdt.internal.compiler.lookup.CompilationUnitScope.findImport (CompilationUnitScope.java:403) at org.eclipse.jdt.internal.compiler.lookup.CompilationUnitScope.findSingleImport (CompilationUnitScope.java:456) at org.eclipse.jdt.internal.compiler.lookup.CompilationUnitScope.faultInImports (CompilationUnitScope.java:321) at org.eclipse.jdt.internal.compiler.lookup.CompilationUnitScope.faultInTypes (CompilationUnitScope.java:390) at org.eclipse.jdt.internal.codeassist.CompletionEngine.complete (CompletionEngine.java:1493) at org.eclipse.jdt.internal.core.Openable.codeComplete(Openable.java:128) at org.eclipse.jdt.internal.core.CompilationUnit.codeComplete (CompilationUnit.java:301) at org.eclipse.jdt.internal.core.CompilationUnit.codeComplete (CompilationUnit.java:294) at org.eclipse.jdt.internal.ui.text.java.JavaCompletionProcessor.internalComputeCo mpletionProposals(JavaCompletionProcessor.java:336) at org.eclipse.jdt.internal.ui.text.java.JavaCompletionProcessor.computeCompletion Proposals(JavaCompletionProcessor.java:313) at org.eclipse.jface.text.contentassist.ContentAssistant.computeCompletionProposal s(ContentAssistant.java:1503) at org.eclipse.jface.text.contentassist.CompletionProposalPopup.computeProposals (CompletionProposalPopup.java:256) at org.eclipse.jface.text.contentassist.CompletionProposalPopup.access$7 (CompletionProposalPopup.java:253) at org.eclipse.jface.text.contentassist.CompletionProposalPopup$1.run (CompletionProposalPopup.java:216) at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:69) at org.eclipse.jface.text.contentassist.CompletionProposalPopup.showProposals (CompletionProposalPopup.java:211) at org.eclipse.jface.text.contentassist.ContentAssistant.showPossibleCompletions (ContentAssistant.java:1352) at org.eclipse.jdt.internal.ui.javaeditor.CompilationUnitEditor$AdaptedSourceViewe r.doOperation(CompilationUnitEditor.java:188) at org.eclipse.ui.texteditor.ContentAssistAction$1.run (ContentAssistAction.java:82) at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:69) at org.eclipse.ui.texteditor.ContentAssistAction.run (ContentAssistAction.java:80) at org.eclipse.jface.action.Action.runWithEvent(Action.java:996) at org.eclipse.ui.commands.ActionHandler.execute(ActionHandler.java:182) at org.eclipse.ui.internal.handlers.LegacyHandlerWrapper.execute (LegacyHandlerWrapper.java:108) at org.eclipse.core.commands.Command.execute(Command.java:311) at org.eclipse.core.commands.ParameterizedCommand.execute (ParameterizedCommand.java:396) at org.eclipse.ui.internal.keys.WorkbenchKeyboard.executeCommand (WorkbenchKeyboard.java:459) at org.eclipse.ui.internal.keys.WorkbenchKeyboard.press (WorkbenchKeyboard.java:781) at org.eclipse.ui.internal.keys.WorkbenchKeyboard.processKeyEvent (WorkbenchKeyboard.java:828) at org.eclipse.ui.internal.keys.WorkbenchKeyboard.filterKeySequenceBindings (WorkbenchKeyboard.java:550) at org.eclipse.ui.internal.keys.WorkbenchKeyboard.access$3 (WorkbenchKeyboard.java:493) at org.eclipse.ui.internal.keys.WorkbenchKeyboard$KeyDownFilter.handleEvent (WorkbenchKeyboard.java:117) at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:66) at org.eclipse.swt.widgets.Display.filterEvent(Display.java:910) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:843) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:868) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:853) at org.eclipse.swt.widgets.Widget.sendKeyEvent(Widget.java:881) at org.eclipse.swt.widgets.Widget.sendKeyEvent(Widget.java:877) at org.eclipse.swt.widgets.Widget.wmChar(Widget.java:1189) at org.eclipse.swt.widgets.Control.WM_CHAR(Control.java:3134) at org.eclipse.swt.widgets.Control.windowProc(Control.java:3037) at org.eclipse.swt.widgets.Display.windowProc(Display.java:3682) at org.eclipse.swt.internal.win32.OS.DispatchMessageW(Native Method) at org.eclipse.swt.internal.win32.OS.DispatchMessage(OS.java:1655) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:2689) at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:1716) at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:1680) at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:365) at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:143) at org.eclipse.ui.internal.ide.IDEApplication.run(IDEApplication.java:103) at org.eclipse.core.internal.runtime.PlatformActivator$1.run (PlatformActivator.java:226) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:376) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:163) 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:324) at org.eclipse.core.launcher.Main.invokeFramework(Main.java:334) at org.eclipse.core.launcher.Main.basicRun(Main.java:278) at org.eclipse.core.launcher.Main.run(Main.java:973) at org.eclipse.core.launcher.Main.main(Main.java:948)
What build are you using? Any steps to reproduce?
I can produce this bug consistently in this one class. Other classes are working fine. Reopening the editor or cleaning the project didn't help. I can provide a screenshot of the class hierarchy if needed.
3.1RC2. Don't know what steps you can take to reproduce, unless you want to try loading a few GEF projects in your workspace. I was hoping the stack trace would give you enough information.
Please provide steps to reproduce using GEF projects? We need to extract a regression test to track it down.
I have verified that this problem occurs with this class on another computer as well. Check out org.eclipse.draw2d, org.eclipse.gef and org.eclipse.gef.examples.logic from dev.eclipse.org:/home/tools. The problem is in class LogicDiagramEditPart in the examples project.
Reproduced. Content assist or search is broken. I'll try to isolate a small test case. Thanks for your help.
I am also seeing this problem when trying to see who's calling a certain method in class ConnectionLayer. Select class and hit Ctrl+Alt+H. This problem does not happen in LogicDiagramEditPart, and that problem does not happen here. The NPE is at the same place though. Here's the stack trace. java.lang.NullPointerException at org.eclipse.jdt.internal.compiler.lookup.ClassScope.checkForInheritedMemberType s(ClassScope.java:652) at org.eclipse.jdt.internal.compiler.lookup.ClassScope.connectTypeHierarchy (ClassScope.java:924) at org.eclipse.jdt.internal.compiler.lookup.ClassScope.connectMemberTypes (ClassScope.java:709) at org.eclipse.jdt.internal.compiler.lookup.ClassScope.connectTypeHierarchy (ClassScope.java:922) at org.eclipse.jdt.internal.compiler.lookup.CompilationUnitScope.connectTypeHierar chy(CompilationUnitScope.java:254) at org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.completeTypeBindings (LookupEnvironment.java:249) at org.eclipse.jdt.internal.core.search.matching.MatchLocator.accept (MatchLocator.java:354) at org.eclipse.jdt.internal.core.search.matching.MatchLocator.accept (MatchLocator.java:378) at org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.askForType (LookupEnvironment.java:131) at org.eclipse.jdt.internal.compiler.lookup.PackageBinding.getTypeOrPackage (PackageBinding.java:178) at org.eclipse.jdt.internal.compiler.lookup.Scope.getTypeOrPackage (Scope.java:2386) at org.eclipse.jdt.internal.compiler.lookup.Scope.getType (Scope.java:2131) at org.eclipse.jdt.internal.compiler.ast.SingleTypeReference.getTypeBinding (SingleTypeReference.java:39) at org.eclipse.jdt.internal.compiler.ast.TypeReference.resolveType (TypeReference.java:141) at org.eclipse.jdt.internal.compiler.ast.TypeReference.resolveSuperType (TypeReference.java:104) at org.eclipse.jdt.internal.compiler.lookup.ClassScope.findSupertype (ClassScope.java:1074) at org.eclipse.jdt.internal.compiler.lookup.ClassScope.connectSuperInterfaces (ClassScope.java:823) at org.eclipse.jdt.internal.compiler.lookup.ClassScope.connectTypeHierarchy (ClassScope.java:914) at org.eclipse.jdt.internal.compiler.lookup.CompilationUnitScope.connectTypeHierar chy(CompilationUnitScope.java:254) at org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.completeTypeBindings (LookupEnvironment.java:249) at org.eclipse.jdt.internal.core.search.matching.MatchLocator.accept (MatchLocator.java:354) at org.eclipse.jdt.internal.core.search.matching.MatchLocator.accept (MatchLocator.java:378) at org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.askForType (LookupEnvironment.java:131) at org.eclipse.jdt.internal.compiler.lookup.PackageBinding.getTypeOrPackage (PackageBinding.java:178) at org.eclipse.jdt.internal.compiler.lookup.Scope.getTypeOrPackage (Scope.java:2386) at org.eclipse.jdt.internal.compiler.lookup.Scope.getType (Scope.java:2131) at org.eclipse.jdt.internal.compiler.ast.SingleTypeReference.getTypeBinding (SingleTypeReference.java:39) at org.eclipse.jdt.internal.compiler.ast.TypeReference.resolveType (TypeReference.java:141) at org.eclipse.jdt.internal.compiler.ast.TypeReference.resolveSuperType (TypeReference.java:104) at org.eclipse.jdt.internal.compiler.lookup.ClassScope.findSupertype (ClassScope.java:1074) at org.eclipse.jdt.internal.compiler.lookup.ClassScope.connectSuperclass (ClassScope.java:741) at org.eclipse.jdt.internal.compiler.lookup.ClassScope.connectTypeHierarchy (ClassScope.java:913) at org.eclipse.jdt.internal.compiler.lookup.CompilationUnitScope.connectTypeHierar chy(CompilationUnitScope.java:254) at org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.completeTypeBindings (LookupEnvironment.java:249) at org.eclipse.jdt.internal.core.search.matching.MatchLocator.accept (MatchLocator.java:354) at org.eclipse.jdt.internal.core.search.matching.MatchLocator.accept (MatchLocator.java:378) at org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.askForType (LookupEnvironment.java:131) at org.eclipse.jdt.internal.compiler.lookup.PackageBinding.getTypeOrPackage (PackageBinding.java:178) at org.eclipse.jdt.internal.compiler.lookup.Scope.getTypeOrPackage (Scope.java:2386) at org.eclipse.jdt.internal.compiler.lookup.Scope.getType (Scope.java:2131) at org.eclipse.jdt.internal.compiler.ast.SingleTypeReference.getTypeBinding (SingleTypeReference.java:39) at org.eclipse.jdt.internal.compiler.ast.TypeReference.resolveType (TypeReference.java:141) at org.eclipse.jdt.internal.compiler.ast.TypeReference.resolveSuperType (TypeReference.java:104) at org.eclipse.jdt.internal.compiler.lookup.ClassScope.findSupertype (ClassScope.java:1074) at org.eclipse.jdt.internal.compiler.lookup.ClassScope.connectSuperclass (ClassScope.java:741) at org.eclipse.jdt.internal.compiler.lookup.ClassScope.connectTypeHierarchy (ClassScope.java:913) at org.eclipse.jdt.internal.compiler.lookup.CompilationUnitScope.connectTypeHierar chy(CompilationUnitScope.java:254) at org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.completeTypeBindings (LookupEnvironment.java:249) at org.eclipse.jdt.internal.core.search.matching.MatchLocator.accept (MatchLocator.java:354) at org.eclipse.jdt.internal.core.search.matching.MatchLocator.accept (MatchLocator.java:378) at org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.askForType (LookupEnvironment.java:131) at org.eclipse.jdt.internal.compiler.lookup.PackageBinding.getTypeOrPackage (PackageBinding.java:178) at org.eclipse.jdt.internal.compiler.lookup.CompilationUnitScope.findImport (CompilationUnitScope.java:403) at org.eclipse.jdt.internal.compiler.lookup.CompilationUnitScope.findSingleImport (CompilationUnitScope.java:456) at org.eclipse.jdt.internal.compiler.lookup.CompilationUnitScope.faultInImports (CompilationUnitScope.java:321) at org.eclipse.jdt.internal.compiler.lookup.CompilationUnitScope.faultInTypes (CompilationUnitScope.java:390) at org.eclipse.jdt.internal.core.search.matching.MatchLocator.process (MatchLocator.java:1442) at org.eclipse.jdt.internal.core.search.matching.MatchLocator.locateMatches (MatchLocator.java:939) at org.eclipse.jdt.internal.core.search.matching.MatchLocator.locateMatches (MatchLocator.java:980) at org.eclipse.jdt.internal.core.search.matching.MatchLocator.locateMatches (MatchLocator.java:1082) at org.eclipse.jdt.internal.core.search.JavaSearchParticipant.locateMatches (JavaSearchParticipant.java:94) at org.eclipse.jdt.internal.core.search.BasicSearchEngine.findMatches (BasicSearchEngine.java:208) at org.eclipse.jdt.internal.core.search.BasicSearchEngine.search (BasicSearchEngine.java:421) at org.eclipse.jdt.core.search.SearchEngine.search (SearchEngine.java:532) at org.eclipse.jdt.internal.corext.callhierarchy.CallerMethodWrapper.findChildren (CallerMethodWrapper.java:75) at org.eclipse.jdt.internal.corext.callhierarchy.MethodWrapper.performSearch (MethodWrapper.java:253) at org.eclipse.jdt.internal.corext.callhierarchy.MethodWrapper.doFindChildren (MethodWrapper.java:194) at org.eclipse.jdt.internal.corext.callhierarchy.MethodWrapper.getCalls (MethodWrapper.java:76) at org.eclipse.jdt.internal.ui.callhierarchy.DeferredMethodWrapper.getCalls (DeferredMethodWrapper.java:62) at org.eclipse.jdt.internal.ui.callhierarchy.DeferredMethodWrapper.fetchDeferredCh ildren(DeferredMethodWrapper.java:80) at org.eclipse.ui.progress.DeferredTreeContentManager$1.run (DeferredTreeContentManager.java:192) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:76)
Whoops, I didn't see comment 6.
Philippe : candidate for RC3 Testcase in 2 files: abstract class A<- implements I {} interface I { class M extends A {} } Perform code assist after the A
Have a fix, need to check that the hierarchy is connected when source types are added late (code assist case).
+1 for RC3 Dani: can you pls vote for it as well ? Symptoms are exception in codeassist.
+1 for 3.1 RC3.
*** Bug 99964 has been marked as a duplicate of this bug. ***
Added CompletionTests testBug99811
*** Bug 100234 has been marked as a duplicate of this bug. ***
*** Bug 100286 has been marked as a duplicate of this bug. ***
Verified using N20050616-0010 + JDT/Core HEAD