Community
Participate
Working Groups
The following code in 3.1M4: class Base< T > { public class Inner { } Inner a; } class Derived extends Base< Integer > { class DerivedInner extends Inner { } Derived( ) { a = new DerivedInner( ); } } Results in a "Type mismatch: cannot convert from Derived.DerivedInner to Base<T>.Inner" error. Compiles fine with javac.
We did not substitute the enclosing type of Inner when inheriting 'a' field through Base<Integer>. Added GenericTypeTest#test484-486. Fixed
*** Bug 83993 has been marked as a duplicate of this bug. ***
*** Bug 81576 has been marked as a duplicate of this bug. ***
Verified in I20050214