Hi,

The following:

abstract class ChoiceParent<T> { }

class Choice<T, E> extends ChoiceParent<T>
{
   public Choice<T, E> aMethod()
   {
      return null;
   }
}


will produce an infinite recursion between resolveType and resolveTypeParameter if weld tries to load it.  I've added a class to test/ in org.jboss.weld.test.unit.implementation.annotatedItem that triggers this. 

I'm not competant enough with generics to touch that code.


-Clint


--
Clint Popetz
http://42lines.net
Scalable Web Application Development