Summary: | [1.5] Invalid compiler binding for parameterized qualified type reference | ||
---|---|---|---|
Product: | [Eclipse Project] JDT | Reporter: | Frederic Fusier <frederic_fusier> |
Component: | Core | Assignee: | Philipe Mulet <philippe_mulet> |
Status: | VERIFIED FIXED | QA Contact: | |
Severity: | normal | ||
Priority: | P3 | ||
Version: | 3.0 | ||
Target Milestone: | 3.1 M2 | ||
Hardware: | PC | ||
OS: | Windows XP | ||
Whiteboard: |
Description
Frederic Fusier
2004-09-22 10:15:05 EDT
Problem comes from ParameterizedQualifiedTypeReference.internalResolve(Scope). Fix is easy and passes all tests. Perhaps may be put in M2? Indeed, binding is incomplete. Following code demonstrate it: public class X<T> { class Member { void foo(){ System.out.println("SUCCESS"); } } } class Y { public static void main(String[] args) { X<String>.Member m = new X<String>.Member(); m.foo(); } } it shouldn't complain about #foo() method being undefined on X<String> Fixed ParameterizedQualifiedTypeReference. Real binding should be still a parameterized one, but constructed from the member type. Added regression test: GenericTypeTest#test303. Verified for 3.1 M2 with build I200409231635. |