Community
Participate
Working Groups
M7 From bug 75551 I learned that the Javadoc tool gives out warnings when you reference an inner type by its simple name 'InnerType'. It is required to at least type qualify it ('OuterType.InnerType', or 'pack.OuterType.InnerType') The Javadoc validator could also warn about this. "Nested classes must be specified as outer.inner, not simply inner, for all forms." ( http://java.sun.com/j2se/1.4.2/docs/tooldocs/solaris/javadoc.html#@see )
Warning could wait post 3.1.
defer post 3.1
Reopen for 3.2
*** Bug 115487 has been marked as a duplicate of this bug. ***
In fact, even if the spec says inner types has to be qualified, javadoc.exe accept unqualified references to member types... Generate javadoc for this simple example: /** * @see Inner */ public class Test { public class Inner {} } does not give any warning at all. Note however that there's a warning if example becomes: /** * @see Inner */ public class Test { class Inner {} } and that you generate javadoc only for members with 'public' visibility. But this is only a problem a javadoc level of generation... So, we will not modify compiler behavior on this point
Note that the example from comment 5 only seems to pass without a warning because the javadoc reference points from the enclosing type to its member type. In other cases, javadoc.exe from a 1.4 JDK reports a warning "reference not found: Inner": public class Test { /** * @see Inner */ public class Inner { } } /** * See also {@link Inner} */ class X extends Test { } According to the spec, javadoc.exe from a 1.5 SDK should report the same warnings. However, the 1.5 javadoc.exe only reports the second warning and accepts the first one. IMO, the eclipse javadoc compiler should issue a warning whenever a comment would cause a javadoc.exe to issue an error or a warning. ImportRewrite 1.1 had such a problem which remained undetected until the javadoc.exe was executed.
Reopen
*** Bug 103304 has been marked as a duplicate of this bug. ***
Created attachment 39409 [details] Temporary patch which should be appliable on top of v_659 This patch fixes the problem but still have some impact (not all JDT/Core tests are green...).
Defer patch finalization post 3.2
Created attachment 39554 [details] Temporary patch which should be appliable on top of v_659 Wrong patch...
Reopen as final fix is now ready
Created attachment 45150 [details] Proposed patch
Released for 3.3 M1 in HEAD
Created attachment 45373 [details] Fix improvement Previous patch missed one case: fully qualified inner class not warned when visible.
bug 103304 is not a duplicate of this bug!
Verified for 3.3 M1 using build I20060804-0010.