Community
Participate
Working Groups
build I20040817 + head 1) launch eclipse 2) open java perspective 3) create a java project P 4) create a class X.java public class X { <T> T foo(){return null;} } 5) close eclipse 6) relaunch an exception occurs java.lang.StackOverflowError at org.eclipse.jdt.core.dom.TypeBinding.isLocal(TypeBinding.java:301) at org.eclipse.jdt.core.dom.TypeBinding.getKey(TypeBinding.java:457) at org.eclipse.jdt.core.dom.MethodBinding.getKey (MethodBinding.java:162) at org.eclipse.jdt.core.dom.TypeBinding.getKey(TypeBinding.java:512) at org.eclipse.jdt.core.dom.MethodBinding.getKey (MethodBinding.java:162) at org.eclipse.jdt.core.dom.TypeBinding.getKey(TypeBinding.java:512) at org.eclipse.jdt.core.dom.MethodBinding.getKey (MethodBinding.java:162) at ...
getKey() should not be an infinite loop.
I changed the getKey() of a type variable not to recursively call the getKey of the declaring element. I simply add the name of the declaring element instead. I will review this with Jim when he is back from vacations. Fixed and released in HEAD. Regression test added.
Verified in I200409212000.