I think I have found a bug using CtClass.getNestedClasses(). When I apply this method to a CtClass which is an anonymous class, like "com.bla.MyClass$1", it returns the array with the same class as its first element : "com.bla.MyClass$1".

Is this a bug, or am I missing something ? I think it shouldn't return nothing.

I have my anonymous class "com.bla.MyClass$1", which contains another anonymous class, which gives "com.bla.MyClass$1$1".

When I try the getNestedClasses on the first class, it returns the second class (normal I guess, because it is nested), and the first one itself (first bug explained before).

But when I try the getNestedClass on the second class "com.bla.MyClass$1$1", it returns the class itself (the same bug), BUT it returns the declaring class "com.bla.MyClass$1". Gets me in an infinite loop !

I am trying to search where the problem comes from to fix it. If it's not possible, i would like to know if a class is an anonymous : would be great to have an isAnonymous() method on a CtClass.

Can anybody confirm me he gets the same thing ? And if it is a bug (if not, that's really weird) ?

Anyway, thanks a lot for the brilliant work, javassist helps me a lot in my everyday work !