Summary: | [1.5][compiler] Should detect incompatible super interfaces | ||
---|---|---|---|
Product: | [Eclipse Project] JDT | Reporter: | Philipe Mulet <philippe_mulet> |
Component: | Core | Assignee: | Philipe Mulet <philippe_mulet> |
Status: | VERIFIED FIXED | QA Contact: | |
Severity: | normal | ||
Priority: | P3 | CC: | hwaite |
Version: | 3.1 | ||
Target Milestone: | 3.1.1 | ||
Hardware: | PC | ||
OS: | Windows XP | ||
Whiteboard: |
Description
Philipe Mulet
2005-07-12 07:52:59 EDT
Reduced testcase: public class X { interface B<T> {} interface C extends B {} class D implements B<Integer> {} class F extends D implements C {} } should be rejected since F implements both B(raw) and B<Integer> We also mishandle the following variation: public class X { interface B<T> {} interface C extends B {} class D implements B<Integer> {} class V<U extends D & C> {} } Added GenericTypeTest#test777-778. Fix consists in using minimalErasedCandidate algorithm when matching superinterface against superclass (for source types and type variables). Fixed Verified in 3.2 M1 with build I20050808-2000. Verified using M20050923-1430 for 3.1.1 |