Community
Participate
Working Groups
Build 3.4M2 In presence of errors in type variable bounds, the compiler will usually bail out of the resolution, and thus fail to report more pending issues. e.g. public class X<T extends Zork & Zork & Object> { } It could report 3 errors at once.
Added GenericTypeTest#test1182
Created attachment 79119 [details] Proposed patch
Created attachment 79137 [details] Better patch
Also added GenericTypeTest#test11183-1184
Created attachment 79165 [details] Better patch/2
Released for 3.4M3. Fixed
Verified for 3.4 M3 using build I20071029-0010. IMHO, test1184 shows a limit rather than an added value (isn't it reporting a secondary error that could have been avoided by using an error type which extends Runnable anyway?), but the initial test case is definitely addressed.
?!? The test is proving that when unable to resolve the first bound, the second bound doesn't magically replace it from thereon.
My point was only that the erroneous type we had in hand still satisfied to Runnable. It was not about forgetting that it is erroneous. It was about still knowing something about it.
After discussing the point with Philippe, we decided to open a specific bug to address the point. See bug 207959.