# HG changeset patch
# User jjg
# Date 1358397674 28800
# Node ID 545307ec740cc77c4471a8e3273daef1269ed8d6
# Parent 1f33464bbf467bc710c39f66ae8d7f49e56824b6
8006228: Doclint doesn't detect {@code nested inline}
Reviewed-by: darcy
diff -r 1f33464bbf46 -r 545307ec740c langtools/src/share/classes/com/sun/tools/doclint/Checker.java
--- a/langtools/src/share/classes/com/sun/tools/doclint/Checker.java Wed Jan 16 13:22:09 2013 -0800
+++ b/langtools/src/share/classes/com/sun/tools/doclint/Checker.java Wed Jan 16 20:41:14 2013 -0800
@@ -556,7 +556,7 @@
if (tree.getKind() == DocTree.Kind.CODE) {
for (TagStackItem tsi: tagStack) {
if (tsi.tag == HtmlTag.CODE) {
- env.messages.warning(HTML, tree, "dc.tag.nested.not.allowed", "code");
+ env.messages.warning(HTML, tree, "dc.tag.code.within.code");
break;
}
}
diff -r 1f33464bbf46 -r 545307ec740c langtools/src/share/classes/com/sun/tools/doclint/resources/doclint.properties
--- a/langtools/src/share/classes/com/sun/tools/doclint/resources/doclint.properties Wed Jan 16 13:22:09 2013 -0800
+++ b/langtools/src/share/classes/com/sun/tools/doclint/resources/doclint.properties Wed Jan 16 20:41:14 2013 -0800
@@ -48,6 +48,7 @@
dc.no.summary.or.caption.for.table=no summary or caption for table
dc.param.name.not.found = @param name not found
dc.ref.not.found = reference not found
+dc.tag.code.within.code = '{@code'} within
dc.tag.empty = empty <{0}> tag
dc.tag.end.not.permitted = invalid end tag: {0}>
dc.tag.end.unexpected = unexpected end tag: {0}>
diff -r 1f33464bbf46 -r 545307ec740c langtools/test/tools/doclint/LiteralTest.java
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/langtools/test/tools/doclint/LiteralTest.java Wed Jan 16 20:41:14 2013 -0800
@@ -0,0 +1,16 @@
+/*
+ * @test /nodynamiccopyright/
+ * @bug 8006228
+ * @summary Doclint doesn't detect {@code nested inline}
+ * @build DocLintTester
+ * @run main DocLintTester -ref LiteralTest.out LiteralTest.java
+ */
+
+/** */
+public class LiteralTest {
+ /** abc {@literal < & > } def
*/
+ public void ok_literal_in_code() { }
+
+ /** abc {@code < & > } def
*/
+ public void bad_code_in_code() { }
+}
diff -r 1f33464bbf46 -r 545307ec740c langtools/test/tools/doclint/LiteralTest.out
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/langtools/test/tools/doclint/LiteralTest.out Wed Jan 16 20:41:14 2013 -0800
@@ -0,0 +1,4 @@
+LiteralTest.java:14: warning: {@code} within
+ /** abc {@code < & > } def
*/
+ ^
+1 warning