Community
Participate
Working Groups
Build id: I20071029-0010 (aka current candidate for 3.4 M3) In the aftermath of bug 204536, it occurred to me that in the following test case (which is GenericTypeTest#1184), we could do better in terms of resilience: public class X<T extends Zork & Runnable> { T get() { return null; } void foo(X x) { Runnable r = x.get(); // extra error here } } More specifically, while x.get returns something of a broken type (Zork being undefined), that broken type still extends Runnable, and the assignment to r should be considered as legit.
Actually, the problem comes from using a raw type X. Following works as expected: public class X<T extends Zork & Runnable> { T get() { return null; } void foo(X<T> x) { Runnable r = x.get(); } } Closing as invalid. Added GenericTypeTest#test1222
In fact, we do better than javac 7 on the second case.
Verified for 3.4M4 using build I20071210-1800.