The compiler now detects constructors calling each other in
never-ending cycles, classes that subclass their own member classes or
subclasses of their member classes, and classes that implement their
own member interfaces or subinterfaces of their member interfaces, or
interfaces that extend their own member interfaces or subinterfaces of
their member interfaces. Determination of member classes is now
according to the access rules of the Java Language Specification.
Code generation of private or protected constructors of inner classes
now works in all cases, and code generation for anonymous classes is
completely rewritten. Now only 7 of the 1607 jacks compiler test
suite tests fail, a record among all known Java compilers.