Community
Participate
Working Groups
The following code use to compile with BETA_JAVA7 (and does compile with HEAD), but not anymore. // ------------------- 8< ----------------------- public class X { class A<T extends B<?>> {} class B<T extends A<?>> extends D {} class C<T extends D> {} class D {} class E<T extends C<? extends B<?>>> {} <U extends C<V>, V extends B<W>, W extends A<V>> W foo(E<U> e) { return goo(e); } <P extends C<Q>, Q extends B<R>, R extends A<Q>> R goo(E<P> e) { return null; } } // ------------------- 8< ----------------------- The fix for bug 347145 should have also propagated the altered intersection types back into the inference context, but fails to do so. I have a fix that is under test.
Created attachment 196968 [details] Proposed patch & test Under test
Released in BETA_JAVA7 branch only, Olivier, please review, TIA.
Please ignore this code review request, This fix is being subsumed by the better fix being tested for bug 347600 for which I will raise a separate code review request.
Verified using Eclipse Java 7 Support(Beta) feature patch v20110623-0900.