Community
Participate
Working Groups
Overview Description: Compile error with nested classes and private public methods naem conflict #Steps to Reproduce: >> create the following class public abstract class B { public String getValue(){ return "pippo"; } } >> create the following class public class D { private String value; public D(String p_Value){ value= p_Value; } private String getValue(){ return "pippoD"; } } >> create this class public class A extends B { // do something class C extends D{ public C() { super(getValue()); } } } #Actual Results: compilation error: "the method getValue() from type D is not visible" #Expected Results: should use the getValue() of class D #Build Date & Platform: Eclipse SDK Version: 3.2.1 Build id: M20060921-0945 # NOTE: It was working a week ago more or less, it think that is due to the automatic update set on my eclipse profile.
workaround: explict reference to the desired method
Reproduced with HEAD. Seems to be an issue with 1.4 and 1.5.
Reproduced.
This is the case where we should keep looking outside, after we found a non-visible match. Here we should complain that we find no method. class D { private String value; public D(String p_Value){ value = p_Value; } private String getValue(){ return "pippoD"; } } public class X { class C extends D{ public C() { super(getValue()); String s = getValue(); } } }
Created attachment 52660 [details] Proposed patch
Tuned implicit lookup semantics. Added LookupTest#test077,078. Released for 3.3M3 Fixed
Verified for 3.3 M3 using build I20061030-0010