Bug 116958 - NPE in ProblemReporter.missingDeprecatedAnnotationForMethod():3923
Summary: NPE in ProblemReporter.missingDeprecatedAnnotationForMethod():3923
Status: VERIFIED DUPLICATE of bug 110593
Alias: None
Product: JDT
Classification: Eclipse Project
Component: Core (show other bugs)
Version: 3.1.1   Edit
Hardware: PC Windows XP
: P3 normal (vote)
Target Milestone: 3.1.2   Edit
Assignee: JDT-Core-Inbox CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2005-11-17 18:52 EST by Theodora Yeung CLA
Modified: 2006-01-10 09:54 EST (History)
0 users

See Also:


Attachments
The source code that caused the reported NPE (405.79 KB, application/x-zip-compressed)
2005-11-17 18:54 EST, Theodora Yeung CLA
no flags Details
Proposed Patch to the NPE (1.24 KB, patch)
2005-11-17 18:55 EST, Theodora Yeung CLA
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Theodora Yeung CLA 2005-11-17 18:52:47 EST
java.lang.NullPointerException
at 
org.eclipse.jdt.internal.compiler.problem.ProblemReporter.missingDeprecatedAnno
tationForMethod(ProblemReporter.java:3923)
at org.eclipse.jdt.internal.compiler.lookup.SourceTypeBinding.resolveTypesFor
(SourceTypeBinding.java:1211)
at org.eclipse.jdt.internal.compiler.lookup.SourceTypeBinding.methods
(SourceTypeBinding.java:1019)
at org.eclipse.jdt.internal.compiler.lookup.SourceTypeBinding.getMethods
(SourceTypeBinding.java:850)
at org.eclipse.jdt.internal.compiler.lookup.Scope.findMethod(Scope.java:1019)
at org.eclipse.jdt.internal.compiler.ast.MessageSend.resolveType
(MessageSend.java:298)
at org.eclipse.jdt.internal.compiler.ast.Expression.resolve
(Expression.java:829)
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.resolveStatemen
ts(AbstractMethodDeclaration.java:436)
at org.eclipse.jdt.internal.compiler.ast.MethodDeclaration.resolveStatements
(MethodDeclaration.java:178)
at org.eclipse.jdt.internal.compiler.ast.AbstractMethodDeclaration.resolve
(AbstractMethodDeclaration.java:414)
at org.eclipse.jdt.internal.compiler.ast.TypeDeclaration.resolve
(TypeDeclaration.java:1072)
at org.eclipse.jdt.internal.compiler.ast.TypeDeclaration.resolve
(TypeDeclaration.java:1121)
at org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration.resolve
(CompilationUnitDeclaration.java:305)
at org.eclipse.jdt.internal.compiler.Compiler.process(Compiler.java:533)
at org.eclipse.jdt.internal.compiler.Compiler.compile(Compiler.java:339)
at org.eclipse.jdt.internal.core.builder.AbstractImageBuilder.compile
(AbstractImageBuilder.java:495)
at org.eclipse.jdt.internal.core.builder.AbstractImageBuilder.compile
(AbstractImageBuilder.java:207)
at org.eclipse.jdt.internal.core.builder.IncrementalImageBuilder.build
(IncrementalImageBuilder.java:114)
at org.eclipse.jdt.internal.core.builder.JavaBuilder.buildDeltas
(JavaBuilder.java:232)
at org.eclipse.jdt.internal.core.builder.JavaBuilder.build
(JavaBuilder.java:160)
at org.eclipse.core.internal.events.BuildManager$2.run(BuildManager.java:593)
at org.eclipse.core.internal.runtime.InternalPlatform.run
(InternalPlatform.java:1044)
at org.eclipse.core.runtime.Platform.run(Platform.java:783)
at org.eclipse.core.internal.events.BuildManager.basicBuild
(BuildManager.java:168)
at org.eclipse.core.internal.events.BuildManager.basicBuild
(BuildManager.java:202)
at org.eclipse.core.internal.events.BuildManager$1.run(BuildManager.java:231)
at org.eclipse.core.internal.runtime.InternalPlatform.run
(InternalPlatform.java:1044)
at org.eclipse.core.runtime.Platform.run(Platform.java:783)
at org.eclipse.core.internal.events.BuildManager.basicBuild
(BuildManager.java:234)
at org.eclipse.core.internal.events.BuildManager.basicBuildLoop
(BuildManager.java:253)
at org.eclipse.core.internal.events.BuildManager.build(BuildManager.java:282)
at org.eclipse.core.internal.events.AutoBuildJob.doBuild(AutoBuildJob.java:139)
at org.eclipse.core.internal.events.AutoBuildJob.run(AutoBuildJob.java:200)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:76)


repro:
1) create a fresh Java Project
2) create a source directory call it "src"
3) drop the attached source under "src" 
4) should result in the NPE.
Comment 1 Theodora Yeung CLA 2005-11-17 18:54:43 EST
Created attachment 30195 [details]
The source code that caused the reported NPE
Comment 2 Theodora Yeung CLA 2005-11-17 18:55:28 EST
Created attachment 30196 [details]
Proposed Patch to the NPE
Comment 3 Olivier Thomann CLA 2005-11-17 19:40:29 EST

*** This bug has been marked as a duplicate of 110593 ***
Comment 4 Philipe Mulet CLA 2005-12-05 09:14:37 EST
Thanks Theodora, your patch is right.

Simpler testcase: 2 files X.java & Y.java, compile X and Y on command line, X being first. Needs to be in 1.5 mode, with diagnostic for missing @Deprecated annotation enabled.

public class X {
	void foo(Y y) {
		y.initialize(null, null, null);
	}
}
public class Y {
	/**
	 * @deprecated
	 */
	public void initialize(Zork z, String s) {
	}

	public void initialize(Zork z, String s, Thread t) {
	}
}
Comment 5 Olivier Thomann CLA 2006-01-10 09:54:40 EST
Verified in M20060109-0800 for 3.1.2