Community
Participate
Working Groups
The following incident was reported via the automated error reporting: code: 4 plugin: org.eclipse.jdt.core_3.11.0.v20150126-2015 message: Could not create binding from binding key: Lorg/jooq/TransactionalCallable<Lorg/jooq/impl/DefaultDSLContext;:214TT;>; fingerprint: 199f7dd5 exception class: java.lang.ClassCastException exception message: org.eclipse.jdt.internal.compiler.lookup.ProblemFieldBinding cannot be cast to org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding number of children: 0 java.lang.ClassCastException: org.eclipse.jdt.internal.compiler.lookup.ProblemFieldBinding cannot be cast to org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding at org.eclipse.jdt.internal.compiler.ast.SingleNameReference.localVariableBinding(SingleNameReference.java:851) at org.eclipse.jdt.internal.compiler.ast.Assignment.resolveType(Assignment.java:199) at org.eclipse.jdt.internal.compiler.ast.Expression.resolve(Expression.java:1020) at org.eclipse.jdt.internal.compiler.ast.Block.resolveUsing(Block.java:127) at org.eclipse.jdt.internal.compiler.ast.TryStatement.resolve(TryStatement.java:1071) at org.eclipse.jdt.internal.compiler.ast.AbstractMethodDeclaration.resolveStatements(AbstractMethodDeclaration.java:638) at org.eclipse.jdt.internal.compiler.ast.MethodDeclaration.resolveStatements(MethodDeclaration.java:307) at org.eclipse.jdt.internal.compiler.ast.AbstractMethodDeclaration.resolve(AbstractMethodDeclaration.java:548) at org.eclipse.jdt.internal.compiler.ast.TypeDeclaration.resolve(TypeDeclaration.java:1188) at org.eclipse.jdt.internal.compiler.ast.TypeDeclaration.resolve(TypeDeclaration.java:1301) at org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration.resolve(CompilationUnitDeclaration.java:590) at org.eclipse.jdt.internal.compiler.Compiler.process(Compiler.java:803) at org.eclipse.jdt.core.dom.CompilationUnitResolver.process(CompilationUnitResolver.java:348) at org.eclipse.jdt.internal.core.util.BindingKeyResolver.consumeTopLevelType(BindingKeyResolver.java:462) at org.eclipse.jdt.internal.core.util.BindingKeyParser.parse(BindingKeyParser.java:635) at org.eclipse.jdt.internal.core.util.BindingKeyParser.parse(BindingKeyParser.java:618) at org.eclipse.jdt.internal.core.util.BindingKeyParser.parseTypeArgument(BindingKeyParser.java:986) at org.eclipse.jdt.internal.core.util.BindingKeyParser.parseParameterizedType(BindingKeyParser.java:929) at org.eclipse.jdt.internal.core.util.BindingKeyParser.parse(BindingKeyParser.java:649) at org.eclipse.jdt.internal.core.util.BindingKeyParser.parse(BindingKeyParser.java:618) at org.eclipse.jdt.internal.core.util.BindingKeyResolver.getCompilerBinding(BindingKeyResolver.java:621) at org.eclipse.jdt.core.dom.CompilationUnitResolver.reportBinding(CompilationUnitResolver.java:1092) at org.eclipse.jdt.core.dom.CompilationUnitResolver.resolve(CompilationUnitResolver.java:913) at org.eclipse.jdt.core.dom.CompilationUnitResolver.resolve(CompilationUnitResolver.java:585) at org.eclipse.jdt.core.dom.ASTParser.createASTs(ASTParser.java:897) at org.eclipse.jdt.internal.ui.text.java.LazyGenericTypeProposal.getExpectedType(LazyGenericTypeProposal.java:633) at org.eclipse.jdt.internal.ui.text.java.LazyGenericTypeProposal.computeTypeArgumentProposals(LazyGenericTypeProposal.java:331) at org.eclipse.jdt.internal.ui.text.java.LazyGenericTypeProposal.apply(LazyGenericTypeProposal.java:221) at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.apply(AbstractJavaCompletionProposal.java:320) at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.apply(AbstractJavaCompletionProposal.java:335) at org.eclipse.jdt.internal.ui.text.java.JavaTypeCompletionProposal.apply(JavaTypeCompletionProposal.java:112) at org.eclipse.jdt.internal.ui.text.java.AnonymousTypeCompletionProposal.apply(AnonymousTypeCompletionProposal.java:359) at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.apply(AbstractJavaCompletionProposal.java:498) at org.eclipse.jface.text.contentassist.CompletionProposalPopup.insertProposal(CompletionProposalPopup.java:963) at org.eclipse.jface.text.contentassist.CompletionProposalPopup.insertSelectedProposalWithMask(CompletionProposalPopup.java:914) at org.eclipse.jface.text.contentassist.CompletionProposalPopup.verifyKey(CompletionProposalPopup.java:1358) at org.eclipse.jface.text.contentassist.ContentAssistant$InternalListener.verifyKey(ContentAssistant.java:814) at org.eclipse.jface.text.TextViewer$VerifyKeyListenersManager.verifyKey(TextViewer.java:492) at org.eclipse.swt.custom.StyledTextListener.handleEvent(StyledTextListener.java:66) at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84) at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4354) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1061) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1085) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1070) at org.eclipse.swt.widgets.Widget.notifyListeners(Widget.java:782) at org.eclipse.swt.custom.StyledText.handleKeyDown(StyledText.java:6002) at org.eclipse.swt.custom.StyledText$7.handleEvent(StyledText.java:5687) at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84) at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4354) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1061) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1085) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1070) at org.eclipse.swt.widgets.Widget.sendKeyEvent(Widget.java:1112) at org.eclipse.swt.widgets.Widget.sendKeyEvent(Widget.java:1108) at org.eclipse.swt.widgets.Widget.wmChar(Widget.java:1529) at org.eclipse.swt.widgets.Control.WM_CHAR(Control.java:4764) at org.eclipse.swt.widgets.Canvas.WM_CHAR(Canvas.java:343) at org.eclipse.swt.widgets.Control.windowProc(Control.java:4645) at org.eclipse.swt.widgets.Canvas.windowProc(Canvas.java:339) at org.eclipse.swt.widgets.Display.windowProc(Display.java:5042) at org.eclipse.swt.internal.win32.OS.DispatchMessageW(OS.java:-2) at org.eclipse.swt.internal.win32.OS.DispatchMessage(OS.java:2549) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3759) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$9.run(PartRenderingEngine.java:1151) at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:337) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1032) at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:156) at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:648) at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:337) at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:592) at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:150) at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:138) at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:134) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:380) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:235) at sun.reflect.NativeMethodAccessorImpl.invoke0(NativeMethodAccessorImpl.java:-2) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:483) at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:648) at org.eclipse.equinox.launcher.Main.basicRun(Main.java:603) at org.eclipse.equinox.launcher.Main.run(Main.java:1465) General Information: reported-by: anonymous-id: db231407-f5a0-4b36-b04d-38aa61d7e49a eclipse-build-id: 4.5.0.I20150203-1300 eclipse-product: org.eclipse.epp.package.dsl.product operating system: Windows8 6.2.0 (x86_64) - win32 jre-version: 1.8.0_31-b13 The following plug-ins were present on the execution stack (*): 1. org.eclipse.core.databinding.observable_1.4.1.v20140910-2107 2. org.eclipse.core.databinding_1.4.100.v20141002-1314 3. org.eclipse.core.runtime_3.10.0.v20150112-1422 4. org.eclipse.e4.ui.workbench_1.3.0.v20150113-2327 5. org.eclipse.e4.ui.workbench.swt_0.12.100.v20150114-0905 6. org.eclipse.equinox.app_1.3.200.v20130910-1609 7. org.eclipse.equinox.launcher_1.3.0.v20140415-2008 8. org.eclipse.jdt_3.11.0.v20150203-1300 9. org.eclipse.jdt.core_3.11.0.v20150126-2015 10. org.eclipse.jdt.ui_3.10.100.v20150116-1347 11. org.eclipse.jface.text_3.10.0.v20150112-1146 12. org.eclipse.jface_3.11.0.v20150121-1751 13. org.eclipse.swt_3.104.0.v20150203-2243 14. org.eclipse.ui_3.107.0.v20150107-0903 15. org.eclipse.ui.ide.application_1.0.600.v20150120-1542 16. org.eclipse.ui.ide_3.10.100.v20150126-1117 Please note that: * Messages, stacktraces, and nested status objects may be shortened. * Bug fields like status, resolution, and whiteboard are sent back to reporters. * The list of present bundles and their respective versions was calculated by package naming heuristics. This may or may not reflect reality. Other Resources: * Report: https://dev.eclipse.org/recommenders/committers/confess/#/problems/54f82fc1e4b0ad909161a927 * Manual: https://dev.eclipse.org/recommenders/community/confess/#/guide Thank you for your assistance. Your friendly error-reports-inbox.
Perhaps a fix for this is as easy as letting the ctor of ProblemFieldBinding set this.bits |= Binding.FIELD; We also have useful information in the error message, which tells us we were parsing this binding key: Lorg/jooq/TransactionalCallable<Lorg/jooq/impl/DefaultDSLContext;:214TT;>; So, if s.o. digs out the involved classes (from https://github.com/jOOQ ?) and invents a bug leading to creation of the ProblemFieldBinding we should be able to create a JUnit. Maybe the concrete classes aren't even needed if we synthesize a similar example according to the stack trace. Note that org.eclipse.jdt.core_3.11.0.v20150126-2015 is not the release version. Anyone?
> Anyone? I will take a look.
I downloaded the JOOQ projects and tried some scenarios but couldn't succeed in reproducing. Looking at the stack trace, looks like its is about completing a anonymous type declaration inside a try block. Might be easier to write a unit test, but I haven't tried yet.
Bulk move out of 4.8
This bug hasn't had any activity in quite some time. Maybe the problem got resolved, was a duplicate of something else, or became less pressing for some reason - or maybe it's still relevant but just hasn't been looked at yet. If you have further information on the current state of the bug, please add it. The information can be, for example, that the problem still occurs, that you still want the feature, that more information is needed, or that the bug is (for whatever reason) no longer relevant. -- The automated Eclipse Genie.