Bug 73896

Summary: StackOverflowError resolving bindings of java.util.Collections
Product: [Eclipse Project] JDT Reporter: Markus Keller <markus.kell.r>
Component: CoreAssignee: Olivier Thomann <Olivier_Thomann>
Status: VERIFIED FIXED QA Contact:
Severity: normal    
Priority: P3 CC: frederic_fusier, philippe_mulet
Version: 3.0   
Target Milestone: 3.1 M2   
Hardware: PC   
OS: Windows XP   
Whiteboard:

Description Markus Keller CLA 2004-09-14 13:14:42 EDT
I20040914-0800. The fix for bug 73048 did not fix this bug.

Stacktrace when opening java.util.Collections from an 1.5 vm in an 1.5 project
with 'Mark Occurrences' enabled and caret on class name:

Error Sep 14, 2004 19:00:43.370 An internal error occurred during: "Java AST
creation".
java.lang.StackOverflowError
	at org.eclipse.jdt.core.dom.MethodBinding.getKey(MethodBinding.java:166)
	at org.eclipse.jdt.core.dom.TypeBinding.getKey(TypeBinding.java:513)
	at org.eclipse.jdt.core.dom.TypeBinding.getKey(TypeBinding.java:551)
	at org.eclipse.jdt.core.dom.MethodBinding.getKey(MethodBinding.java:199)
	at org.eclipse.jdt.core.dom.TypeBinding.getKey(TypeBinding.java:513)
	at org.eclipse.jdt.core.dom.TypeBinding.getKey(TypeBinding.java:551)
	at org.eclipse.jdt.core.dom.MethodBinding.getKey(MethodBinding.java:199)
...
	at org.eclipse.jdt.core.dom.TypeBinding.getKey(TypeBinding.java:513)
	at org.eclipse.jdt.core.dom.TypeBinding.getKey(TypeBinding.java:551)
	at org.eclipse.jdt.core.dom.MethodBinding.getKey(MethodBinding.java:199)
	at org.eclipse.jdt.core.dom.VariableBinding.getKey(VariableBinding.java:148)
	at
org.eclipse.jdt.core.dom.DefaultBindingResolver.resolveVariable(DefaultBindingResolver.java:575)
	at
org.eclipse.jdt.core.dom.VariableDeclaration.resolveBinding(VariableDeclaration.java:134)
	at org.eclipse.jdt.core.dom.ASTConverter.convert(ASTConverter.java:827)
	at org.eclipse.jdt.core.dom.ASTConverter.convert(ASTConverter.java:565)
	at
org.eclipse.jdt.core.dom.ASTConverter.buildBodyDeclarations(ASTConverter.java:434)
	at org.eclipse.jdt.core.dom.ASTConverter.convert(ASTConverter.java:2549)
	at org.eclipse.jdt.core.dom.ASTConverter.convert(ASTConverter.java:1271)
	at org.eclipse.jdt.core.dom.ASTParser.convert(ASTParser.java:705)
	at org.eclipse.jdt.core.dom.ASTParser.internalCreateAST(ASTParser.java:682)
	at org.eclipse.jdt.core.dom.ASTParser.createAST(ASTParser.java:574)
	at
org.eclipse.jdt.internal.ui.javaeditor.ASTProvider.createAST(ASTProvider.java:441)
	at org.eclipse.jdt.internal.ui.javaeditor.ASTProvider.getAST(ASTProvider.java:393)
	at
org.eclipse.jdt.internal.ui.viewsupport.SelectionListenerWithASTManager$PartListenerGroup.calculateASTandInform(SelectionListenerWithASTManager.java:164)
	at
org.eclipse.jdt.internal.ui.viewsupport.SelectionListenerWithASTManager$3.run(SelectionListenerWithASTManager.java:141)
	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:66)
Comment 1 Olivier Thomann CLA 2004-09-14 14:08:33 EDT
I will investigate.
Comment 2 Olivier Thomann CLA 2004-09-14 14:21:44 EDT
It is a different problem than the one in bug 73048. The bug 73048 was due to
recursive call because of type variables. In this case, the recursive call is
due to a inner class for which the enclosing method declaration class is also a
local class.
Comment 3 Markus Keller CLA 2004-09-14 14:47:25 EDT
Looks like I have to fix my StackTraceLineNumberMatcher ... ;-)
Comment 4 Olivier Thomann CLA 2004-09-14 15:11:20 EDT
Fixed and released in HEAD.
Comment 5 Frederic Fusier CLA 2004-09-19 11:27:11 EDT
*** Bug 74154 has been marked as a duplicate of this bug. ***
Comment 6 Olivier Thomann CLA 2004-09-20 10:49:36 EDT
*** Bug 74290 has been marked as a duplicate of this bug. ***
Comment 7 David Audel CLA 2004-09-24 04:32:39 EDT
Verified in I200409231635.