Summary: | [compiler][1.5] unexpected IBindings and class files with conflicting method argument types | ||
---|---|---|---|
Product: | [Eclipse Project] JDT | Reporter: | Markus Keller <markus.kell.r> |
Component: | Core | Assignee: | Kent Johnson <kent_johnson> |
Status: | VERIFIED FIXED | QA Contact: | |
Severity: | normal | ||
Priority: | P3 | CC: | dirk_baeumer |
Version: | 3.0 | ||
Target Milestone: | 3.1 M6 | ||
Hardware: | PC | ||
OS: | Windows XP | ||
Whiteboard: |
Description
Markus Keller
2004-08-26 13:35:51 EDT
We now issue the nameclash issue correctly. Kent - pls double check and add regression test. We correctly generate the name clash but we don't detect the ambiguous error (yet). I cannot see why the 2 methods would be ambiguous... the name clash, which we do generate, I can understand but not the ambiguous error. Can anyone create a testcase with only the ambiguous error? I've tried to but have yet to do it. Change "class C <Tb, Tc>" to "class C <Tb, Tc extends Number>". This new C has methods - foo(Tb), with erasure foo(Object) - foo(Tc), with erasure foo(Number) -> they don't clash any more. Now, with the instantiation new C<Number, Number>(), Tb and Tc become equal at the method invocation //3, and the compiler cannot know which foo is meant. Note that the two foos don't override, since their erasures are different. thx Added MethodVerify test043 Verified in I20050330-0500 |