-
-
Notifications
You must be signed in to change notification settings - Fork 4.1k
Inline @return tag does not pass SummaryJavadocCheck #10776
Copy link
Copy link
Closed
Description
I have read check documentation: https://checkstyle.org/config_javadoc.html#SummaryJavadoc
I have downloaded the latest checkstyle from: https://checkstyle.org/cmdline.html#Download_and_Run
I have executed the cli and showed it below, as cli describes the problem better than 1,000 words
[octy@Draconnet JavaTesting]$ javac SummaryJavadocNewInlineReturn.java
[octy@Draconnet JavaTesting]$ cat config.xml
<?xml version="1.0"?>
<!DOCTYPE module PUBLIC
"-//Puppy Crawl//DTD Check Configuration 1.3//EN"
"http://www.puppycrawl.com/dtds/configuration_1_3.dtd">
<module name="Checker">
<property name="charset" value="UTF-8"/>
<property name="severity" value="error"/>
<property name="fileExtensions" value="java, properties, xml"/>
<module name="TreeWalker">
<module name="SummaryJavadocCheck"/>
</module>
</module>
[octy@Draconnet JavaTesting]$ cat SummaryJavadocNewInlineReturn.java
public class SummaryJavadocNewInlineReturn {
/**
* {@return a foo that is {@code 0}}
*/
public int foo() {
return 0;
}
}
[octy@Draconnet JavaTesting]$ java -Duser.language=en -Duser.country=US -jar checkstyle-9.0-all.jar -c config.xml SummaryJavadocNewInlineReturn.java
Starting audit...
[ERROR] /home/octy/Documents/JavaTesting/SummaryJavadocNewInlineReturn.java:2: Summary javadoc is missing. [SummaryJavadoc]
Audit done.
Checkstyle ends with 1 errors.in place of the last 2 commands above.
in JDK16+ The inline {@return} tag should pass SummaryJavadocCheck as it results in the following javadoc content:
which includes the necessary period to pass the summary check.
$ javadoc SummaryJavadocNewInlineReturn.java
Loading source file SummaryJavadocNewInlineReturn.java...
Constructing Javadoc information...
Building index for all the packages and classes...
Standard Doclet version 17.0.1+12-39
Building tree for all the packages and classes...
Generating ./SummaryJavadocNewInlineReturn.html...
SummaryJavadocNewInlineReturn.java:1: warning: no comment
public class SummaryJavadocNewInlineReturn {
^
Generating ./package-summary.html...
Generating ./package-tree.html...
Generating ./overview-tree.html...
Building index for all classes...
Generating ./allclasses-index.html...
Generating ./allpackages-index.html...
Generating ./index-all.html...
Generating ./index.html...
Generating ./help-doc.html...
1 warning
in JDK11 such javadoc is not valid:
$ javadoc SummaryJavadocNewInlineReturn.java
Loading source file SummaryJavadocNewInlineReturn.java...
Constructing Javadoc information...
Standard Doclet version 11
Building tree for all the packages and classes...
Generating ./SummaryJavadocNewInlineReturn.html...
SummaryJavadocNewInlineReturn.java:3: error: no tag name after @
* {@return a foo that is {@code 0}}
^
SummaryJavadocNewInlineReturn.java:5: warning: no @return
public int foo() {
Note:
according to the specs, the inline return tag is allowed only for methods.
Reactions are currently unavailable
