Community
Participate
Working Groups
Build I200402040800. In following example: public class X { /** * @param str * @see # * @return String */ String foo(String str) { return ""; } there's no @see tag is Javadoc DOM AST node. This a general problem, when a syntax error occurs in a tag element, there's no tag element which is built. This behavior should be improved to create a tag (as we have recognize it as a @see tag), but add only a text fragment with the offending syntax to its children.
*** Bug 51617 has been marked as a duplicate of this bug. ***
Fixed. Now all tags are created even if they are invalid. In this case, we consider such tags as extra tags and just store their name and the text after. For example, this means that <code>* @see UnknownReference</code> will be only a tag element which name would be "@see" and has one single text element ' UnknownReference'. [jdt-core-internal] Changes made in parseComment(int,int) of AbstractCommentParser: when syntax is invalid while parsing known tag, then now parse simple tag instead and start text fragment storage. Also, change Javadoc, JavadocParser and JavadocSingleTypeReference to remember parameters of invalid tags separately than parameters. This allow binding on parameters which effectively match method parameters but in invalid syntax (for example in duplicate or missplaced tags - see bug 51617). Test cases added in ASTConverterJavadocTest
In: * @param str * @see # * @return String the text element for the @see of @return includes the space between the tag and the text element. I don't think the space should be included.
Verified in 200405180816
For space(s) between tag name and text, this is a point already debated in bug 54424 comment 2.