Bug 78858 - [1.5] Internal compiler error: java.lang.NullPointerException at ParameterizedTypeBinding.getMethods
Summary: [1.5] Internal compiler error: java.lang.NullPointerException at Parameterize...
Status: VERIFIED FIXED
Alias: None
Product: JDT
Classification: Eclipse Project
Component: Core (show other bugs)
Version: 3.1   Edit
Hardware: PC Windows XP
: P3 major (vote)
Target Milestone: 3.1 M4   Edit
Assignee: Kent Johnson CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2004-11-17 12:50 EST by Sergey Vladimirov CLA
Modified: 2004-12-14 11:22 EST (History)
0 users

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Sergey Vladimirov CLA 2004-11-17 12:50:42 EST
Bug only occurs in big projects. For example in 3.1M2 this error was occured at 
~30-40%'s point of code (and Eclipse was not continue to compile last part), 
but with 200411050810 (M3, I suppose) errors occured only at 50-60%'s point of 
code. 

Internal compiler error
java.lang.NullPointerException
	at 
org.eclipse.jdt.internal.compiler.lookup.ParameterizedTypeBinding.getMethods
(ParameterizedTypeBinding.java:308)
	at org.eclipse.jdt.internal.compiler.lookup.Scope.findMethod
(Scope.java:868)
	at org.eclipse.jdt.internal.compiler.lookup.Scope.getMethod
(Scope.java:1935)
	at org.eclipse.jdt.internal.compiler.ast.MessageSend.resolveType
(MessageSend.java:292)
	at org.eclipse.jdt.internal.compiler.ast.LocalDeclaration.resolve
(LocalDeclaration.java:197)
	at 
org.eclipse.jdt.internal.compiler.ast.AbstractMethodDeclaration.resolveStatement
s(AbstractMethodDeclaration.java:400)
	at 
org.eclipse.jdt.internal.compiler.ast.MethodDeclaration.resolveStatements
(MethodDeclaration.java:147)
	at 
org.eclipse.jdt.internal.compiler.ast.AbstractMethodDeclaration.resolve
(AbstractMethodDeclaration.java:378)
	at org.eclipse.jdt.internal.compiler.ast.TypeDeclaration.resolve
(TypeDeclaration.java:985)
	at org.eclipse.jdt.internal.compiler.ast.TypeDeclaration.resolve
(TypeDeclaration.java:1034)
	at 
org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration.resolve
(CompilationUnitDeclaration.java:280)
	at org.eclipse.jdt.internal.compiler.Compiler.process(Compiler.java:510)
	at org.eclipse.jdt.internal.compiler.Compiler.compile(Compiler.java:335)
	at org.eclipse.jdt.internal.core.builder.AbstractImageBuilder.compile
(AbstractImageBuilder.java:209)
	at org.eclipse.jdt.internal.core.builder.AbstractImageBuilder.compile
(AbstractImageBuilder.java:182)
	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:574)
	at org.eclipse.core.internal.runtime.InternalPlatform.run
(InternalPlatform.java:616)
	at org.eclipse.core.runtime.Platform.run(Platform.java:747)
	at org.eclipse.core.internal.events.BuildManager.basicBuild
(BuildManager.java:158)
	at org.eclipse.core.internal.events.BuildManager.basicBuild
(BuildManager.java:192)
	at org.eclipse.core.internal.events.BuildManager$1.run
(BuildManager.java:221)
	at org.eclipse.core.internal.runtime.InternalPlatform.run
(InternalPlatform.java:616)
	at org.eclipse.core.runtime.Platform.run(Platform.java:747)
	at org.eclipse.core.internal.events.BuildManager.basicBuild
(BuildManager.java:224)
	at org.eclipse.core.internal.events.BuildManager.basicBuildLoop
(BuildManager.java:243)
	at org.eclipse.core.internal.events.BuildManager.build
(BuildManager.java:272)
	at org.eclipse.core.internal.resources.Workspace.build
(Workspace.java:198)
	at org.eclipse.ui.actions.GlobalBuildAction$1.run
(GlobalBuildAction.java:190)
	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:66)
	Utils.java
	arp.site/modules/extensions/talk/src/ru/arptek/talk/board	line 0
	17 Íîÿáðü 2004 ã. 16:30:14
Comment 1 Olivier Thomann CLA 2004-11-17 13:01:40 EST
What VM are you using?
Comment 2 Olivier Thomann CLA 2004-11-17 13:03:48 EST
Would it be possible to get a small test case for a class that doesn't compile?
If not, is it possible to get your big project? As a zipped file, maybe?
Comment 3 Philipe Mulet CLA 2004-11-17 17:32:56 EST
Please reopen once test case is available.
Comment 4 Sergey Vladimirov CLA 2004-11-18 05:36:34 EST
*** System properties:
awt.toolkit=sun.awt.windows.WToolkit
eclipse.application=org.eclipse.ui.ide.workbench
eclipse.buildId=I200411050810
eclipse.commands=-os
win32
-ws
win32
-arch
x86
-showsplash
D:\Program Files\IBM\eclipse\eclipse.exe -showsplash 600
-exitdata
D:\Program Files\IBM\eclipse\eclipse.exe -exitdata 5f90_7ac
-vm
C:\Progra~1\Java\jre1.4.2_05\bin\javaw.exe
eclipse.product=org.eclipse.platform.ide
eclipse.startTime=1100666926296
eclipse.vm=C:\Progra~1\Java\jre1.4.2_05\bin\javaw.exe
eclipse.vmargs=-Xmx1100M
-cp
D:\Program Files\IBM\eclipse\startup.jar
org.eclipse.core.launcher.Main
eof=eof
file.encoding=Cp1251
file.encoding.pkg=sun.io
file.separator=\
java.awt.graphicsenv=sun.awt.Win32GraphicsEnvironment
java.awt.printerjob=sun.awt.windows.WPrinterJob
java.class.path=D:\Program Files\IBM\eclipse\startup.jar
java.class.version=48.0
java.endorsed.dirs=C:\Progra~1\Java\jre1.4.2_05\lib\endorsed
java.ext.dirs=C:\Progra~1\Java\jre1.4.2_05\lib\ext
java.home=C:\Progra~1\Java\jre1.4.2_05
java.io.tmpdir=C:\DOCUME~1\bsp\LOCALS~1\Temp\
java.library.path=C:\Progra~1\Java\jre1.4.2_05
\bin;.;C:\WINDOWS\system32;C:\WINDOWS;C:\Progra~1\Java\jre1.4.2_05
\bin;D:\oracle\ora92\bin;C:\Program Files\Java\jre1.3.1\bin;C:\Program 
Files\Java\jre1.1.8\bin;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32
\Wbem;C:\Program Files\ATI Technologies\ATI Control Panel
java.runtime.name=Java(TM) 2 Runtime Environment, Standard Edition
java.runtime.version=1.4.2_05-b04
java.specification.name=Java Platform API Specification
java.specification.vendor=Sun Microsystems Inc.
java.specification.version=1.4
java.util.prefs.PreferencesFactory=java.util.prefs.WindowsPreferencesFactory
java.vendor=Sun Microsystems Inc.
java.vendor.url=http://java.sun.com/
java.vendor.url.bug=http://java.sun.com/cgi-bin/bugreport.cgi
java.version=1.4.2_05
java.vm.info=mixed mode
java.vm.name=Java HotSpot(TM) Client VM
java.vm.specification.name=Java Virtual Machine Specification
java.vm.specification.vendor=Sun Microsystems Inc.
java.vm.specification.version=1.0
java.vm.vendor=Sun Microsystems Inc.
java.vm.version=1.4.2_05-b04

btw, encreasing memory size does not affect to place of error.

Project rar file can be accessed by URL:
http://bsp.arptek.ru/utilites/arp.site.rar

15 Mb, resuming not supported :(
Comment 5 Olivier Thomann CLA 2004-11-18 10:54:13 EST
The methods contains a null method.
Comment 6 Sergey Vladimirov CLA 2004-11-18 12:02:49 EST
Sorry, don't undestand: "The methods contains a null method."

Is this my mistake? Is there question?

Error occuring at processing "ru.arptek.talk.board.Utils" class without any 
empty or void methods.
Comment 7 Philipe Mulet CLA 2004-11-18 12:11:17 EST
Bug is our code, don't worry.
Olivier can you isolate a simple testcase demonstrating the problem ?
Comment 8 Kent Johnson CLA 2004-11-18 12:21:16 EST
Needed to copy the methods array in the initial call to 
ParameterizedTypeBinding.getMethods().

Had no luck producing a simpler testcase.
Comment 9 Sergey Vladimirov CLA 2004-11-28 11:51:49 EST
bugs occured one more time (with latest JDT jar file I downloaded from broken 
build)

Severity	Description	Resource	In Folder	Location
	Creation Time
2	Internal compiler error
java.lang.NullPointerException
	at 
org.eclipse.jdt.internal.compiler.lookup.TypeVariableBinding.boundCheck
(TypeVariableBinding.java:72)
	at 
org.eclipse.jdt.internal.compiler.lookup.ParameterizedTypeBinding.resolve
(ParameterizedTypeBinding.java:553)
	at 
org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.resolveType
(BinaryTypeBinding.java:51)
	at org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.superclass
(BinaryTypeBinding.java:734)
	at 
org.eclipse.jdt.internal.compiler.lookup.ClassScope.detectHierarchyCycle
(ClassScope.java:960)
	at 
org.eclipse.jdt.internal.compiler.lookup.ClassScope.detectHierarchyCycle
(ClassScope.java:922)
	at 
org.eclipse.jdt.internal.compiler.ast.ParameterizedSingleTypeReference.internalR
esolveType(ParameterizedSingleTypeReference.java:142)
	at 
org.eclipse.jdt.internal.compiler.ast.ParameterizedSingleTypeReference.resolveTy
pe(ParameterizedSingleTypeReference.java:207)
	at org.eclipse.jdt.internal.compiler.ast.TypeReference.resolveSuperType
(TypeReference.java:104)
	at org.eclipse.jdt.internal.compiler.lookup.ClassScope.findSupertype
(ClassScope.java:1054)
	at org.eclipse.jdt.internal.compiler.lookup.ClassScope.connectSuperclass
(ClassScope.java:715)
	at 
org.eclipse.jdt.internal.compiler.lookup.ClassScope.connectTypeHierarchy
(ClassScope.java:849)
	at 
org.eclipse.jdt.internal.compiler.lookup.CompilationUnitScope.connectTypeHierarc
hy(CompilationUnitScope.java:243)
	at 
org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.completeTypeBindings
(LookupEnvironment.java:192)
	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.IncrementalImageBuilder.build
(IncrementalImageBuilder.java:113)
	at org.eclipse.jdt.internal.core.builder.JavaBuilder.buildDeltas
(JavaBuilder.java:223)
	at org.eclipse.jdt.internal.core.builder.JavaBuilder.build
(JavaBuilder.java:151)
	at org.eclipse.core.internal.events.BuildManager$2.run
(BuildManager.java:574)
	at org.eclipse.core.internal.runtime.InternalPlatform.run
(InternalPlatform.java:616)
	at org.eclipse.core.runtime.Platform.run(Platform.java:747)
	at org.eclipse.core.internal.events.BuildManager.basicBuild
(BuildManager.java:158)
	at org.eclipse.core.internal.events.BuildManager.basicBuild
(BuildManager.java:192)
	at org.eclipse.core.internal.events.BuildManager$1.run
(BuildManager.java:221)
	at org.eclipse.core.internal.runtime.InternalPlatform.run
(InternalPlatform.java:616)
	at org.eclipse.core.runtime.Platform.run(Platform.java:747)
	at org.eclipse.core.internal.events.BuildManager.basicBuild
(BuildManager.java:224)
	at org.eclipse.core.internal.events.BuildManager.basicBuildLoop
(BuildManager.java:243)
	at org.eclipse.core.internal.events.BuildManager.build
(BuildManager.java:272)
	at org.eclipse.core.internal.events.AutoBuildJob.doBuild
(AutoBuildJob.java:142)
	at org.eclipse.core.internal.events.AutoBuildJob.run
(AutoBuildJob.java:203)
	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:66)
	AbstractFlatHome.java
	arp.site/modules/arpsite/src/ru/arptek/arpsite/data	line 0	28 
Íîÿáðü 2004 ã. 19:47:34


Error can not be repeated. It ocured after renaming one of the most used class, 
but while I tried to rename it back and forward again, error not occured again.
Comment 10 Olivier Thomann CLA 2004-12-14 11:22:01 EST
Verified in 200412140800