Community
Participate
Working Groups
Build ID: I20080617-2000 Internal compiler error java.lang.ClassCastException: org.eclipse.jdt.internal.compiler.lookup.RawTypeBinding cannot be cast to org.eclipse.jdt.internal.compiler.lookup.SourceTypeBinding at org.eclipse.jdt.internal.compiler.lookup.Scope.findMemberType(Scope.java:977) at org.eclipse.jdt.internal.compiler.lookup.Scope.getMemberType(Scope.java:2083) at org.eclipse.jdt.internal.compiler.ast.QualifiedTypeReference.findNextTypeBinding(QualifiedTypeRe ference.java:44) at org.eclipse.jdt.internal.compiler.ast.ParameterizedQualifiedTypeReference.internalResolveType(Par ameterizedQualifiedTypeReference.java:162) at org.eclipse.jdt.internal.compiler.ast.ParameterizedQualifiedTypeReference.resolveType(Parameteri zedQualifiedTypeReference.java:339) at org.eclipse.jdt.internal.compiler.ast.TypeReference.resolveTypeArgument(TypeReference.java: 209) at org.eclipse.jdt.internal.compiler.ast.ParameterizedSingleTypeReference.internalResolveType(Para meterizedSingleTypeReference.java:176) at org.eclipse.jdt.internal.compiler.ast.ParameterizedSingleTypeReference.resolveType(Parameterized SingleTypeReference.java:278) at org.eclipse.jdt.internal.compiler.ast.TypeReference.resolveSuperType(TypeReference.java:179) at org.eclipse.jdt.internal.compiler.lookup.ClassScope.findSupertype(ClassScope.java:1167) at org.eclipse.jdt.internal.compiler.lookup.ClassScope.connectSuperclass(ClassScope.java:867) at org.eclipse.jdt.internal.compiler.lookup.ClassScope.connectTypeHierarchyWithoutMembers(ClassS cope.java:1047) at org.eclipse.jdt.internal.compiler.lookup.ClassScope.detectHierarchyCycle(ClassScope.java:1153) at org.eclipse.jdt.internal.compiler.lookup.ClassScope.detectHierarchyCycle(ClassScope.java: 1067) at org.eclipse.jdt.internal.compiler.ast.ParameterizedSingleTypeReference.internalResolveType(Para meterizedSingleTypeReference.java:189) at org.eclipse.jdt.internal.compiler.ast.ParameterizedSingleTypeReference.resolveType(Parameterized SingleTypeReference.java:278) at org.eclipse.jdt.internal.compiler.ast.TypeReference.resolveSuperType(TypeReference.java:179) at org.eclipse.jdt.internal.compiler.lookup.ClassScope.findSupertype(ClassScope.java:1167) at org.eclipse.jdt.internal.compiler.lookup.ClassScope.connectSuperclass(ClassScope.java:867) at org.eclipse.jdt.internal.compiler.lookup.ClassScope.connectTypeHierarchy(ClassScope.java:1010) at org.eclipse.jdt.internal.compiler.lookup.ClassScope.connectMemberTypes(ClassScope.java:835) at org.eclipse.jdt.internal.compiler.lookup.ClassScope.connectTypeHierarchy(ClassScope.java: 1018) at org.eclipse.jdt.internal.compiler.lookup.CompilationUnitScope.connectTypeHierarchy(Compilation UnitScope.java:290) at org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.completeTypeBindings(LookupEnviro nment.java:185) at org.eclipse.jdt.internal.compiler.Compiler.internalBeginToCompile(Compiler.java:719) at org.eclipse.jdt.internal.compiler.Compiler.beginToCompile(Compiler.java:376) at org.eclipse.jdt.internal.compiler.Compiler.compile(Compiler.java:420) at org.eclipse.jdt.internal.core.builder.AbstractImageBuilder.compile(AbstractImageBuilder.java: 363) at org.eclipse.jdt.internal.core.builder.BatchImageBuilder.compile(BatchImageBuilder.java: 178) at org.eclipse.jdt.internal.core.builder.AbstractImageBuilder.compile(AbstractImageBuilder.java: 300) at org.eclipse.jdt.internal.core.builder.BatchImageBuilder.build(BatchImageBuilder.java:60) at org.eclipse.jdt.internal.core.builder.JavaBuilder.buildAll(JavaBuilder.java:254) at org.eclipse.jdt.internal.core.builder.JavaBuilder.build(JavaBuilder.java:173) at org.eclipse.core.internal.events.BuildManager$2.run(BuildManager.java:633) at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:37) at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:170) at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:201) at org.eclipse.core.internal.events.BuildManager$1.run(BuildManager.java:253) at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:37) at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:256) at org.eclipse.core.internal.events.BuildManager.basicBuildLoop(BuildManager.java:309) at org.eclipse.core.internal.events.BuildManager.build(BuildManager.java:341) at org.eclipse.core.internal.resources.Workspace.build(Workspace.java:330) at org.eclipse.ui.actions.GlobalBuildAction$1.run(GlobalBuildAction.java:182) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55) More information: Same code builds without any problems under Eclipse Build id: M20070212-1330
(In reply to comment #0) > More information: > Same code builds without any problems under Eclipse Build id: M20070212-1330 Can you provide a snippet of this code?
Steps to reproduce are indeed needed to react.
Unfortunately I can not release my company's proprietary code and I can not make a snippet because of lack of time. Sorry about it. I could test your patch if you have one.
In the absence of steps to reproduce, you may wait a long time for a patch...
if (itsInterfaces == null) { ReferenceBinding sourceType = currentType.isParameterizedType() ? ((ParameterizedTypeBinding) currentType).genericType() : currentType; if (sourceType.isHierarchyBeingConnected()) return null; ((SourceTypeBinding) sourceType).scope.connectTypeHierarchy(); itsInterfaces = currentType.superInterfaces(); } Should we change ReferenceBinding sourceType = currentType.isParameterizedType() to ReferenceBinding sourceType = currentType instanceof ParameterizedTypeBinding or currentType.isParameterizedType() || currentType.isRawType()
Something along these lines could do the trick; but I would still like to be able to reproduce it to be sure.
5 months with no testcase, Konstantin, did you still encounter this issue ?
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.