Community
Participate
Working Groups
I'm using I20050218-1600. I can't offer a short testcase but I was converting JavaSpider, the error occurs if you try to infer the type args for org.eclipse.contribution.spider.BindingFigure. Stacktrace: Root exception: java.lang.NullPointerException at org.eclipse.jdt.internal.compiler.ast.Argument.isVarArgs(Argument.java:76) at org.eclipse.jdt.internal.compiler.lookup.MethodScope.createMethod(MethodScope.java:292) at org.eclipse.jdt.internal.compiler.lookup.ClassScope.buildMethods(ClassScope.java:295) at org.eclipse.jdt.internal.compiler.lookup.ClassScope.buildFieldsAndMethods(ClassScope.java:147) at org.eclipse.jdt.internal.compiler.lookup.ClassScope.buildAnonymousTypeBinding(ClassScope.java:52) at org.eclipse.jdt.internal.compiler.lookup.BlockScope.addAnonymousType(BlockScope.java:75) at org.eclipse.jdt.internal.compiler.ast.QualifiedAllocationExpression.resolveType(QualifiedAllocationExpression.java:335) at org.eclipse.jdt.internal.compiler.ast.MessageSend.resolveType(MessageSend.java:289) at org.eclipse.jdt.internal.compiler.ast.Expression.resolve(Expression.java:779) at org.eclipse.jdt.internal.compiler.ast.Block.resolve(Block.java:101) at org.eclipse.jdt.internal.compiler.ast.IfStatement.resolve(IfStatement.java:225) at org.eclipse.jdt.internal.compiler.ast.AbstractMethodDeclaration.resolveStatements(AbstractMethodDeclaration.java:411) at org.eclipse.jdt.internal.compiler.ast.MethodDeclaration.resolveStatements(MethodDeclaration.java:160) at org.eclipse.jdt.internal.compiler.ast.AbstractMethodDeclaration.resolve(AbstractMethodDeclaration.java:389) at org.eclipse.jdt.internal.compiler.ast.TypeDeclaration.resolve(TypeDeclaration.java:1019) at org.eclipse.jdt.internal.compiler.ast.TypeDeclaration.resolve(TypeDeclaration.java:1068) at org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration.resolve(CompilationUnitDeclaration.java:281) at org.eclipse.jdt.internal.compiler.Compiler.process(Compiler.java:510) at org.eclipse.jdt.core.dom.CompilationUnitResolver.process(CompilationUnitResolver.java:290) at org.eclipse.jdt.internal.core.util.BindingKeyResolver.consumeTopLevelType(BindingKeyResolver.java:211) at org.eclipse.jdt.internal.core.util.BindingKeyParser.parse(BindingKeyParser.java:433) at org.eclipse.jdt.internal.core.util.BindingKeyParser.parse(BindingKeyParser.java:419) at org.eclipse.jdt.internal.core.util.BindingKeyResolver.getCompilerBinding(BindingKeyResolver.java:317) at org.eclipse.jdt.core.dom.CompilationUnitResolver.reportBinding(CompilationUnitResolver.java:691) at org.eclipse.jdt.core.dom.CompilationUnitResolver.resolve(CompilationUnitResolver.java:646) at org.eclipse.jdt.core.dom.CompilationUnitResolver.resolve(CompilationUnitResolver.java:436) at org.eclipse.jdt.core.dom.ASTParser.createASTs(ASTParser.java:651) at org.eclipse.jdt.internal.corext.refactoring.typeconstraints.types.TypeEnvironment.createTypeBindings(TypeEnvironment.java:104) at org.eclipse.jdt.internal.corext.refactoring.generics.InferTypeArgumentsRefactoring.rewriteConstraintVariable(InferTypeArgumentsRefactoring.java:306) at org.eclipse.jdt.internal.corext.refactoring.generics.InferTypeArgumentsRefactoring.rewriteDeclarations(InferTypeArgumentsRefactoring.java:221) at org.eclipse.jdt.internal.corext.refactoring.generics.InferTypeArgumentsRefactoring.checkFinalConditions(InferTypeArgumentsRefactoring.java:157) at org.eclipse.ltk.core.refactoring.CheckConditionsOperation.run(CheckConditionsOperation.java:84) at org.eclipse.ltk.core.refactoring.CreateChangeOperation.run(CreateChangeOperation.java:114) at org.eclipse.ltk.core.refactoring.PerformChangeOperation.run(PerformChangeOperation.java:188) at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:1702) at org.eclipse.ltk.internal.ui.refactoring.WorkbenchRunnableAdapter.run(WorkbenchRunnableAdapter.java:86) at org.eclipse.jface.operation.ModalContext$ModalContextThread.run(ModalContext.java:111)
Would indicate an argument with no type reference.
Had forgotten some null check from code review. Type can be null for some generated arguments (like abstract methods). Fixed. No test case added. Stefan - pls confirm using our latest that the problem got corrected (should be released into I20050301)
Verified in I20050330-0500