Community
Participate
Working Groups
eclipse.buildId=I200405211200 ("official" M9) java.version=1.4.2_04 java.vendor=Sun Microsystems Inc. "official" last cheeta5 build from update site. Internal compiler error is reported while building FindBugs project from cvs, http://findbugs.sourceforge.net/ repository path is /cvsroot/findbugs, module findbugs. FindBugs uses 1.5 JDK features. The error is reported on first class in edu.umd.cs.findbugs package: public abstract class AbstractBugReporter implements BugReporter. Error Mai 27, 2004 23:44:21.369 Problems occurred when invoking code from plug-in: "org.eclipse.core.runtime". java.lang.NullPointerException at org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding. implementsInterface(ReferenceBinding.java:440) at org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding. isCompatibleWith(ReferenceBinding.java:504) at org.eclipse.jdt.internal.compiler.lookup.TypeVariableBinding. boundCheck(TypeVariableBinding.java:54) at org.eclipse.jdt.internal.compiler.ast.ParameterizedSingleTypeReference. internalResolveType(ParameterizedSingleTypeReference.java:117) at org.eclipse.jdt.internal.compiler.ast.ParameterizedSingleTypeReference. resolveType(ParameterizedSingleTypeReference.java:157) at org.eclipse.jdt.internal.compiler.lookup.Scope.connectTypeVariables(Scope. java:134) at org.eclipse.jdt.internal.compiler.lookup.ClassScope. connectTypeHierarchy(ClassScope.java:732) at org.eclipse.jdt.internal.compiler.lookup.CompilationUnitScope. connectTypeHierarchy(CompilationUnitScope.java:236) at org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment. completeTypeBindings(LookupEnvironment.java:177) at org.eclipse.jdt.internal.compiler.Compiler.beginToCompile(Compiler.java:305) at org.eclipse.jdt.internal.compiler.Compiler.compile(Compiler.java:319) at org.eclipse.jdt.internal.core.builder.AbstractImageBuilder. compile(AbstractImageBuilder.java:209) at org.eclipse.jdt.internal.core.builder.AbstractImageBuilder. compile(AbstractImageBuilder.java:159) at org.eclipse.jdt.internal.core.builder.BatchImageBuilder. build(BatchImageBuilder.java:49) at org.eclipse.jdt.internal.core.builder.JavaBuilder.buildAll(JavaBuilder.java: 212) at org.eclipse.jdt.internal.core.builder.JavaBuilder.build(JavaBuilder.java:135) at org.eclipse.core.internal.events.BuildManager$2.run(BuildManager.java:532) at org.eclipse.core.internal.runtime.InternalPlatform.run(InternalPlatform.java: 608) at org.eclipse.core.runtime.Platform.run(Platform.java:758) at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java: 148) at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java: 225) at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java: 178) at org.eclipse.core.internal.events.BuildManager$1.run(BuildManager.java:205) at org.eclipse.core.internal.runtime.InternalPlatform.run(InternalPlatform.java: 608) at org.eclipse.core.runtime.Platform.run(Platform.java:758) at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java: 208) at org.eclipse.core.internal.events.BuildManager.basicBuildLoop(BuildManager. java:244) at org.eclipse.core.internal.events.BuildManager.build(BuildManager.java:273) at org.eclipse.core.internal.events.AutoBuildJob.doBuild(AutoBuildJob.java:150) at org.eclipse.core.internal.events.AutoBuildJob.run(AutoBuildJob.java:204) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:66)
Additional info - i use JDK 1.5 build 1.5.0-beta-b32c for Win32
I see the same backtrace on a different project.
Still present on Cheeta 0.0.6, new error log with changed line numbers below: java.lang.NullPointerException at org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding. implementsInterface(ReferenceBinding.java:443) at org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding. isCompatibleWith(ReferenceBinding.java:507) at org.eclipse.jdt.internal.compiler.lookup.TypeVariableBinding. boundCheck(TypeVariableBinding.java:54) at org.eclipse.jdt.internal.compiler.ast.ParameterizedSingleTypeReference. internalResolveType(ParameterizedSingleTypeReference.java:144) at org.eclipse.jdt.internal.compiler.ast.ParameterizedSingleTypeReference. resolveType(ParameterizedSingleTypeReference.java:184) at org.eclipse.jdt.internal.compiler.lookup.Scope.connectTypeVariables(Scope. java:144) at org.eclipse.jdt.internal.compiler.lookup.ClassScope. connectTypeHierarchyWithoutMembers(ClassScope.java:766) at org.eclipse.jdt.internal.compiler.lookup.ClassScope.detectCycle(ClassScope. java:779) at org.eclipse.jdt.internal.compiler.ast.ParameterizedSingleTypeReference. internalResolveType(ParameterizedSingleTypeReference.java:107) at org.eclipse.jdt.internal.compiler.ast.ParameterizedSingleTypeReference. resolveType(ParameterizedSingleTypeReference.java:184) at org.eclipse.jdt.internal.compiler.lookup.Scope.connectTypeVariables(Scope. java:144) at org.eclipse.jdt.internal.compiler.lookup.ClassScope. connectTypeHierarchy(ClassScope.java:732) at org.eclipse.jdt.internal.compiler.lookup.CompilationUnitScope. connectTypeHierarchy(CompilationUnitScope.java:236) at org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment. completeTypeBindings(LookupEnvironment.java:182) at org.eclipse.jdt.internal.compiler.Compiler.beginToCompile(Compiler.java:307) at org.eclipse.jdt.internal.compiler.Compiler.compile(Compiler.java:321) at org.eclipse.jdt.internal.core.builder.AbstractImageBuilder. compile(AbstractImageBuilder.java:209) at org.eclipse.jdt.internal.core.builder.AbstractImageBuilder. compile(AbstractImageBuilder.java:159) at org.eclipse.jdt.internal.core.builder.BatchImageBuilder. build(BatchImageBuilder.java:49) at org.eclipse.jdt.internal.core.builder.JavaBuilder.buildAll(JavaBuilder.java: 212) at org.eclipse.jdt.internal.core.builder.JavaBuilder.build(JavaBuilder.java:135) at org.eclipse.core.internal.events.BuildManager$2.run(BuildManager.java:564) at org.eclipse.core.internal.runtime.InternalPlatform.run(InternalPlatform.java: 615) at org.eclipse.core.runtime.Platform.run(Platform.java:747) at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java: 157) at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java: 249) at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java: 202) at org.eclipse.core.internal.events.BuildManager$1.run(BuildManager.java:229) at org.eclipse.core.internal.runtime.InternalPlatform.run(InternalPlatform.java: 615) at org.eclipse.core.runtime.Platform.run(Platform.java:747) at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java: 232) at org.eclipse.core.internal.events.BuildManager.build(BuildManager.java:328) at org.eclipse.core.internal.resources.Project.build(Project.java:105) at org.eclipse.jdt.internal.ui.preferences.OptionsConfigurationBlock$3. run(OptionsConfigurationBlock.java:451) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:66)
Additional info: It is a problem with return value from org.eclipse.jdt.internal.compiler.lookup.TypeVariableBinding.superInterfaces() - return value for object represents followed source snippet was null: ---- package edu.umd.cs.findbugs.graph; import java.io.Serializable; import java.util.Iterator; import edu.umd.cs.findbugs.graph.GraphVertex; import edu.umd.cs.findbugs.graph.GraphEdge; /** * Graph interface; defines the operations used to access and manipulate * a graph. */ public interface Graph < EdgeType extends GraphEdge<EdgeType, VertexType>, VertexType extends GraphVertex<VertexType> > extends Serializable { ---- Therefore this code doesn't work as expected: (starts at line 433 in ReferenceBinding) // at this time lastPosition is -1 ReferenceBinding[] itsInterfaces = currentType.superInterfaces(); // itsInterfaces is null!!! if (itsInterfaces != NoSuperInterfaces) { // lastPosition is incremented here!!!! if (++lastPosition == interfacesToVisit.length) System.arraycopy(interfacesToVisit, 0, interfacesToVisit = new ReferenceBinding[lastPosition * 2][], 0, lastPosition); interfacesToVisit[lastPosition] = itsInterfaces; } } while (searchHierarchy && (currentType = currentType.superclass()) != null); // here is lastPosition >= 0! for (int i = 0; i <= lastPosition; i++) { ReferenceBinding[] interfaces = interfacesToVisit[i]; // and here is NPE, because "interfaces" is null: for (int j = 0, length = interfaces.length; j < length; j++) {
*** This bug has been marked as a duplicate of 62822 ***