--- a/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/code/Flags.java Thu Sep 22 16:41:15 2016 +0000
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/code/Flags.java Thu Sep 22 18:31:35 2016 +0000
@@ -134,7 +134,7 @@
/** Flag is set for nested classes that do not access instance members
* or `this' of an outer class and therefore don't need to be passed
* a this$n reference. This value is currently set only for anonymous
- * classes in superclass constructor calls and only for pre 1.4 targets.
+ * classes in superclass constructor calls.
* todo: use this value for optimizing away this$n parameters in
* other cases.
*/
--- a/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Attr.java Thu Sep 22 16:41:15 2016 +0000
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Attr.java Thu Sep 22 18:31:35 2016 +0000
@@ -921,13 +921,11 @@
c.complete();
// If this class appears as an anonymous class
- // in a superclass constructor call where
- // no explicit outer instance is given,
+ // in a superclass constructor call
// disable implicit outer instance from being passed.
// (This would be an illegal access to "this before super").
if (env.info.isSelfCall &&
- env.tree.hasTag(NEWCLASS) &&
- ((JCNewClass)env.tree).encl == null) {
+ env.tree.hasTag(NEWCLASS)) {
c.flags_field |= NOOUTERTHIS;
}
attribClass(tree.pos(), c);
@@ -1453,7 +1451,7 @@
try {
close = rs.resolveQualifiedMethod(pos,
env,
- resource,
+ types.skipTypeVars(resource, false),
names.close,
List.<Type>nil(),
List.<Type>nil());
@@ -2329,6 +2327,9 @@
/** Make an attributed null check tree.
*/
public JCExpression makeNullCheck(JCExpression arg) {
+ // optimization: new Outer() can never be null; skip null check
+ if (arg.getTag() == NEWCLASS)
+ return arg;
// optimization: X.this is never null; skip null check
Name name = TreeInfo.name(arg);
if (name == names._this || name == names._super) return arg;
--- a/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Flow.java Thu Sep 22 16:41:15 2016 +0000
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Flow.java Thu Sep 22 18:31:35 2016 +0000
@@ -1098,7 +1098,7 @@
if (types.asSuper(sup, syms.autoCloseableType.tsym) != null) {
Symbol closeMethod = rs.resolveQualifiedMethod(tree,
attrEnv,
- sup,
+ types.skipTypeVars(sup, false),
names.close,
List.<Type>nil(),
List.<Type>nil());
--- a/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/file/BaseFileManager.java Thu Sep 22 16:41:15 2016 +0000
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/file/BaseFileManager.java Thu Sep 22 18:31:35 2016 +0000
@@ -287,6 +287,7 @@
case MULTIRELEASE:
multiReleaseValue = value;
+ locations.setMultiReleaseValue(value);
return true;
default:
--- a/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/file/Locations.java Thu Sep 22 16:41:15 2016 +0000
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/file/Locations.java Thu Sep 22 18:31:35 2016 +0000
@@ -130,6 +130,7 @@
Map<Path, FileSystem> fileSystems = new LinkedHashMap<>();
List<Closeable> closeables = new ArrayList<>();
+ private Map<String,String> fsEnv = Collections.emptyMap();
Locations() {
initHandlers();
@@ -207,6 +208,10 @@
return entries;
}
+ public void setMultiReleaseValue(String multiReleaseValue) {
+ fsEnv = Collections.singletonMap("multi-release", multiReleaseValue);
+ }
+
/**
* Utility class to help evaluate a path option. Duplicate entries are ignored, jar class paths
* can be expanded.
@@ -1047,7 +1052,8 @@
}
if (p.getFileName().toString().endsWith(".jar") && fsInfo.exists(p)) {
- try (FileSystem fs = FileSystems.newFileSystem(p, null)) {
+ URI uri = URI.create("jar:" + p.toUri());
+ try (FileSystem fs = FileSystems.newFileSystem(uri, fsEnv, null)) {
Path moduleInfoClass = fs.getPath("module-info.class");
if (Files.exists(moduleInfoClass)) {
String moduleName = readModuleName(moduleInfoClass);
--- a/langtools/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/AbstractMemberWriter.java Thu Sep 22 16:41:15 2016 +0000
+++ b/langtools/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/AbstractMemberWriter.java Thu Sep 22 18:31:35 2016 +0000
@@ -424,12 +424,15 @@
Content tbody = new HtmlTree(HtmlTag.TBODY);
boolean altColor = true;
for (Element member : deprmembers) {
- HtmlTree td = HtmlTree.TD(HtmlStyle.colOne, getDeprecatedLink(member));
+ HtmlTree thRow = HtmlTree.TH_ROW_SCOPE(HtmlStyle.colFirst, getDeprecatedLink(member));
+ HtmlTree tr = HtmlTree.TR(thRow);
+ HtmlTree td = new HtmlTree(HtmlTag.TD);
+ td.addStyle(HtmlStyle.colLast);
List<? extends DocTree> deprTrees = utils.getBlockTags(member, DocTree.Kind.DEPRECATED);
if (!deprTrees.isEmpty()) {
writer.addInlineDeprecatedComment(member, deprTrees.get(0), td);
}
- HtmlTree tr = HtmlTree.TR(td);
+ tr.addContent(td);
tr.addStyle(altColor ? HtmlStyle.altColor : HtmlStyle.rowColor);
altColor = !altColor;
tbody.addContent(tr);
@@ -477,8 +480,9 @@
tdFirst.addStyle(HtmlStyle.colFirst);
writer.addSummaryType(this, element, tdFirst);
tr.addContent(tdFirst);
- HtmlTree tdLast = new HtmlTree(HtmlTag.TD);
- tdLast.addStyle(HtmlStyle.colLast);
+ HtmlTree thType = new HtmlTree(HtmlTag.TH);
+ thType.addStyle(HtmlStyle.colSecond);
+ thType.addAttr(HtmlAttr.SCOPE, "row");
if (te != null
&& !utils.isConstructor(element)
&& !utils.isClass(element)
@@ -487,14 +491,17 @@
HtmlTree name = new HtmlTree(HtmlTag.SPAN);
name.addStyle(HtmlStyle.typeNameLabel);
name.addContent(name(te) + ".");
- tdLast.addContent(name);
+ thType.addContent(name);
}
addSummaryLink(utils.isClass(element) || utils.isInterface(element)
? LinkInfoImpl.Kind.CLASS_USE
: LinkInfoImpl.Kind.MEMBER,
- te, element, tdLast);
- writer.addSummaryLinkComment(this, element, tdLast);
- tr.addContent(tdLast);
+ te, element, thType);
+ tr.addContent(thType);
+ HtmlTree tdDesc = new HtmlTree(HtmlTag.TD);
+ tdDesc.addStyle(HtmlStyle.colLast);
+ writer.addSummaryLinkComment(this, element, tdDesc);
+ tr.addContent(tdDesc);
tbody.addContent(tr);
}
table.addContent(tbody);
@@ -557,12 +564,15 @@
HtmlTree tdSummaryType = new HtmlTree(HtmlTag.TD);
tdSummaryType.addStyle(HtmlStyle.colFirst);
writer.addSummaryType(this, member, tdSummaryType);
- HtmlTree tdSummary = new HtmlTree(HtmlTag.TD);
- setSummaryColumnStyle(tdSummary);
- addSummaryLink(tElement, member, tdSummary);
- writer.addSummaryLinkComment(this, member, firstSentenceTags, tdSummary);
HtmlTree tr = HtmlTree.TR(tdSummaryType);
- tr.addContent(tdSummary);
+ HtmlTree thSummaryLink = new HtmlTree(HtmlTag.TH);
+ setSummaryColumnStyleAndScope(thSummaryLink);
+ addSummaryLink(tElement, member, thSummaryLink);
+ tr.addContent(thSummaryLink);
+ HtmlTree tdDesc = new HtmlTree(HtmlTag.TD);
+ tdDesc.addStyle(HtmlStyle.colLast);
+ writer.addSummaryLinkComment(this, member, firstSentenceTags, tdDesc);
+ tr.addContent(tdDesc);
if (utils.isMethod(member) && !utils.isAnnotationType(member)) {
int methodType = utils.isStatic(member) ? MethodTypes.STATIC.value() :
MethodTypes.INSTANCE.value();
@@ -612,12 +622,13 @@
}
/**
- * Set the style for the summary column.
+ * Set the style and scope attribute for the summary column.
*
- * @param tdTree the column for which the style will be set
+ * @param thTree the column for which the style and scope attribute will be set
*/
- public void setSummaryColumnStyle(HtmlTree tdTree) {
- tdTree.addStyle(HtmlStyle.colLast);
+ public void setSummaryColumnStyleAndScope(HtmlTree thTree) {
+ thTree.addStyle(HtmlStyle.colSecond);
+ thTree.addAttr(HtmlAttr.SCOPE, "row");
}
/**
--- a/langtools/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/AnnotationTypeFieldWriterImpl.java Thu Sep 22 16:41:15 2016 +0000
+++ b/langtools/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/AnnotationTypeFieldWriterImpl.java Thu Sep 22 18:31:35 2016 +0000
@@ -25,8 +25,6 @@
package jdk.javadoc.internal.doclets.formats.html;
-import java.io.*;
-
import java.util.Arrays;
import java.util.List;
@@ -222,9 +220,7 @@
*/
public List<String> getSummaryTableHeader(Element member) {
List<String> header = Arrays.asList(writer.getModifierTypeHeader(),
- configuration.getText("doclet.0_and_1",
- configuration.getText("doclet.Fields"),
- configuration.getText("doclet.Description")));
+ resources.getText("doclet.Fields"), resources.getText("doclet.Description"));
return header;
}
--- a/langtools/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/AnnotationTypeOptionalMemberWriterImpl.java Thu Sep 22 16:41:15 2016 +0000
+++ b/langtools/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/AnnotationTypeOptionalMemberWriterImpl.java Thu Sep 22 18:31:35 2016 +0000
@@ -133,9 +133,8 @@
*/
public List<String> getSummaryTableHeader(Element member) {
List<String> header = Arrays.asList(writer.getModifierTypeHeader(),
- configuration.getText("doclet.0_and_1",
- configuration.getText("doclet.Annotation_Type_Optional_Member"),
- configuration.getText("doclet.Description")));
+ resources.getText("doclet.Annotation_Type_Optional_Member"),
+ resources.getText("doclet.Description"));
return header;
}
--- a/langtools/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/AnnotationTypeRequiredMemberWriterImpl.java Thu Sep 22 16:41:15 2016 +0000
+++ b/langtools/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/AnnotationTypeRequiredMemberWriterImpl.java Thu Sep 22 18:31:35 2016 +0000
@@ -25,7 +25,6 @@
package jdk.javadoc.internal.doclets.formats.html;
-import java.io.*;
import java.util.Arrays;
import java.util.List;
@@ -223,9 +222,7 @@
*/
public List<String> getSummaryTableHeader(Element member) {
List<String> header = Arrays.asList(writer.getModifierTypeHeader(),
- configuration.getText("doclet.0_and_1",
- configuration.getText("doclet.Annotation_Type_Required_Member"),
- configuration.getText("doclet.Description")));
+ resources.getText("doclet.Annotation_Type_Required_Member"), resources.getText("doclet.Description"));
return header;
}
--- a/langtools/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/ClassUseWriter.java Thu Sep 22 16:41:15 2016 +0000
+++ b/langtools/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/ClassUseWriter.java Thu Sep 22 18:31:35 2016 +0000
@@ -330,8 +330,8 @@
HtmlTree tr = new HtmlTree(HtmlTag.TR);
tr.addStyle(altColor ? HtmlStyle.altColor : HtmlStyle.rowColor);
altColor = !altColor;
- Content tdFirst = HtmlTree.TD(HtmlStyle.colFirst, getPackageLink(pkg));
- tr.addContent(tdFirst);
+ Content thFirst = HtmlTree.TH_ROW_SCOPE(HtmlStyle.colFirst, getPackageLink(pkg));
+ tr.addContent(thFirst);
HtmlTree tdLast = new HtmlTree(HtmlTag.TD);
tdLast.addStyle(HtmlStyle.colLast);
addSummaryComment(pkg, tdLast);
@@ -380,9 +380,9 @@
* @param contentTree the content tree to which the package use information will be added
*/
protected void addPackageUse(PackageElement pkg, Content contentTree) {
- Content tdFirst = HtmlTree.TD(HtmlStyle.colFirst,
+ Content thFirst = HtmlTree.TH_ROW_SCOPE(HtmlStyle.colFirst,
getHyperLink(getPackageAnchorName(pkg), new StringContent(utils.getPackageName(pkg))));
- contentTree.addContent(tdFirst);
+ contentTree.addContent(thFirst);
HtmlTree tdLast = new HtmlTree(HtmlTag.TD);
tdLast.addStyle(HtmlStyle.colLast);
addSummaryComment(pkg, tdLast);
--- a/langtools/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/ConstantsSummaryWriterImpl.java Thu Sep 22 16:41:15 2016 +0000
+++ b/langtools/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/ConstantsSummaryWriterImpl.java Thu Sep 22 18:31:35 2016 +0000
@@ -25,7 +25,6 @@
package jdk.javadoc.internal.doclets.formats.html;
-import java.io.*;
import java.util.*;
import javax.lang.model.element.Modifier;
@@ -332,7 +331,7 @@
Content nameContent = getDocLink(LinkInfoImpl.Kind.CONSTANT_SUMMARY,
member, member.getSimpleName(), false);
Content code = HtmlTree.CODE(nameContent);
- return HtmlTree.TD(code);
+ return HtmlTree.TH_ROW_SCOPE(HtmlStyle.colSecond, code);
}
/**
--- a/langtools/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/ConstructorWriterImpl.java Thu Sep 22 16:41:15 2016 +0000
+++ b/langtools/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/ConstructorWriterImpl.java Thu Sep 22 18:31:35 2016 +0000
@@ -25,13 +25,13 @@
package jdk.javadoc.internal.doclets.formats.html;
-import java.io.*;
import java.util.*;
import javax.lang.model.element.Element;
import javax.lang.model.element.ExecutableElement;
import javax.lang.model.element.TypeElement;
+import jdk.javadoc.internal.doclets.formats.html.markup.HtmlAttr;
import jdk.javadoc.internal.doclets.formats.html.markup.HtmlConstants;
import jdk.javadoc.internal.doclets.formats.html.markup.HtmlStyle;
import jdk.javadoc.internal.doclets.formats.html.markup.HtmlTag;
@@ -168,11 +168,13 @@
* {@inheritDoc}
*/
@Override
- public void setSummaryColumnStyle(HtmlTree tdTree) {
- if (foundNonPubConstructor)
- tdTree.addStyle(HtmlStyle.colLast);
- else
- tdTree.addStyle(HtmlStyle.colOne);
+ public void setSummaryColumnStyleAndScope(HtmlTree thTree) {
+ if (foundNonPubConstructor) {
+ thTree.addStyle(HtmlStyle.colSecond);
+ } else {
+ thTree.addStyle(HtmlStyle.colFirst);
+ }
+ thTree.addAttr(HtmlAttr.SCOPE, "row");
}
/**
@@ -267,9 +269,8 @@
if (foundNonPubConstructor) {
header.add(resources.getText("doclet.Modifier"));
}
- header.add(resources.getText("doclet.0_and_1",
- resources.getText("doclet.Constructor"),
- resources.getText("doclet.Description")));
+ header.add(resources.getText("doclet.Constructor"));
+ header.add(resources.getText("doclet.Description"));
return header;
}
--- a/langtools/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/DeprecatedListWriter.java Thu Sep 22 16:41:15 2016 +0000
+++ b/langtools/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/DeprecatedListWriter.java Thu Sep 22 18:31:35 2016 +0000
@@ -261,14 +261,13 @@
for (DeprElementKind kind : DeprElementKind.values()) {
if (deprapi.hasDocumentation(kind)) {
addAnchor(deprapi, kind, div);
- memberTableSummary =
- configuration.getText("doclet.Member_Table_Summary",
- configuration.getText(getHeadingKey(kind)),
- configuration.getText(getSummaryKey(kind)));
+ memberTableSummary
+ = resources.getText("doclet.Member_Table_Summary",
+ resources.getText(getHeadingKey(kind)),
+ resources.getText(getSummaryKey(kind)));
List<String> memberTableHeader = new ArrayList<>();
- memberTableHeader.add(configuration.getText("doclet.0_and_1",
- configuration.getText(getHeaderKey(kind)),
- configuration.getText("doclet.Description")));
+ memberTableHeader.add(resources.getText(getHeaderKey(kind)));
+ memberTableHeader.add(resources.getText("doclet.Description"));
if (kind == DeprElementKind.PACKAGE)
addPackageDeprecatedAPI(deprapi.getSet(kind),
getHeadingKey(kind), memberTableSummary, memberTableHeader, div);
--- a/langtools/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/EnumConstantWriterImpl.java Thu Sep 22 16:41:15 2016 +0000
+++ b/langtools/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/EnumConstantWriterImpl.java Thu Sep 22 18:31:35 2016 +0000
@@ -25,8 +25,7 @@
package jdk.javadoc.internal.doclets.formats.html;
-import java.io.*;
-
+import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
@@ -34,6 +33,7 @@
import javax.lang.model.element.TypeElement;
import javax.lang.model.element.VariableElement;
+import jdk.javadoc.internal.doclets.formats.html.markup.HtmlAttr;
import jdk.javadoc.internal.doclets.formats.html.markup.HtmlConstants;
import jdk.javadoc.internal.doclets.formats.html.markup.HtmlStyle;
import jdk.javadoc.internal.doclets.formats.html.markup.HtmlTag;
@@ -214,9 +214,8 @@
*/
@Override
public List<String> getSummaryTableHeader(Element member) {
- List<String> header = Arrays.asList(configuration.getText("doclet.0_and_1",
- configuration.getText("doclet.Enum_Constant"),
- configuration.getText("doclet.Description")));
+ List<String> header = Arrays.asList(resources.getText("doclet.Enum_Constant"),
+ resources.getText("doclet.Description"));
return header;
}
@@ -259,8 +258,9 @@
* {@inheritDoc}
*/
@Override
- public void setSummaryColumnStyle(HtmlTree tdTree) {
- tdTree.addStyle(HtmlStyle.colOne);
+ public void setSummaryColumnStyleAndScope(HtmlTree thTree) {
+ thTree.addStyle(HtmlStyle.colFirst);
+ thTree.addAttr(HtmlAttr.SCOPE, "row");
}
/**
--- a/langtools/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/FieldWriterImpl.java Thu Sep 22 16:41:15 2016 +0000
+++ b/langtools/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/FieldWriterImpl.java Thu Sep 22 18:31:35 2016 +0000
@@ -25,7 +25,6 @@
package jdk.javadoc.internal.doclets.formats.html;
-import java.io.*;
import java.util.Arrays;
import java.util.List;
@@ -215,9 +214,7 @@
@Override
public List<String> getSummaryTableHeader(Element member) {
List<String> header = Arrays.asList(writer.getModifierTypeHeader(),
- resources.getText("doclet.0_and_1",
- resources.getText("doclet.Field"),
- resources.getText("doclet.Description")));
+ resources.getText("doclet.Field"), resources.getText("doclet.Description"));
return header;
}
--- a/langtools/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/HtmlDocletWriter.java Thu Sep 22 16:41:15 2016 +0000
+++ b/langtools/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/HtmlDocletWriter.java Thu Sep 22 18:31:35 2016 +0000
@@ -405,7 +405,7 @@
}
Content classContent = getLink(new LinkInfoImpl(
configuration, LinkInfoImpl.Kind.PACKAGE, te));
- Content tdClass = HtmlTree.TD(HtmlStyle.colFirst, classContent);
+ Content tdClass = HtmlTree.TH_ROW_SCOPE(HtmlStyle.colFirst, classContent);
HtmlTree tr = HtmlTree.TR(tdClass);
tr.addStyle(altColor ? HtmlStyle.altColor : HtmlStyle.rowColor);
altColor = !altColor;
@@ -942,16 +942,20 @@
Content tr = new HtmlTree(HtmlTag.TR);
final int size = header.size();
Content tableHeader;
- if (size == 1) {
+ if (size == 2) {
tableHeader = new StringContent(header.get(0));
- tr.addContent(HtmlTree.TH(HtmlStyle.colOne, scope, tableHeader));
+ tr.addContent(HtmlTree.TH(HtmlStyle.colFirst, scope, tableHeader));
+ tableHeader = new StringContent(header.get(1));
+ tr.addContent(HtmlTree.TH(HtmlStyle.colLast, scope, tableHeader));
return tr;
}
for (int i = 0; i < size; i++) {
tableHeader = new StringContent(header.get(i));
- if(i == 0)
+ if (i == 0)
tr.addContent(HtmlTree.TH(HtmlStyle.colFirst, scope, tableHeader));
- else if(i == (size - 1))
+ else if (i == 1)
+ tr.addContent(HtmlTree.TH(HtmlStyle.colSecond, scope, tableHeader));
+ else if (i == (size - 1))
tr.addContent(HtmlTree.TH(HtmlStyle.colLast, scope, tableHeader));
else
tr.addContent(HtmlTree.TH(scope, tableHeader));
@@ -1062,13 +1066,16 @@
boolean altColor = true;
for (Element e : deprPkgs) {
PackageElement pkg = (PackageElement) e;
- HtmlTree td = HtmlTree.TD(HtmlStyle.colOne,
+ HtmlTree thRow = HtmlTree.TH_ROW_SCOPE(HtmlStyle.colFirst,
getPackageLink(pkg, getPackageName(pkg)));
+ HtmlTree tr = HtmlTree.TR(thRow);
+ HtmlTree tdDesc = new HtmlTree(HtmlTag.TD);
+ tdDesc.addStyle(HtmlStyle.colLast);
List<? extends DocTree> tags = utils.getDeprecatedTrees(pkg);
if (!tags.isEmpty()) {
- addInlineDeprecatedComment(pkg, tags.get(0), td);
+ addInlineDeprecatedComment(pkg, tags.get(0), tdDesc);
}
- HtmlTree tr = HtmlTree.TR(td);
+ tr.addContent(tdDesc);
tr.addStyle(altColor ? HtmlStyle.altColor : HtmlStyle.rowColor);
altColor = !altColor;
tbody.addContent(tr);
--- a/langtools/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/MethodWriterImpl.java Thu Sep 22 16:41:15 2016 +0000
+++ b/langtools/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/MethodWriterImpl.java Thu Sep 22 18:31:35 2016 +0000
@@ -261,9 +261,7 @@
@Override
public List<String> getSummaryTableHeader(Element member) {
List<String> header = Arrays.asList(writer.getModifierTypeHeader(),
- resources.getText("doclet.0_and_1",
- resources.getText("doclet.Method"),
- resources.getText("doclet.Description")));
+ resources.getText("doclet.Method"), resources.getText("doclet.Description"));
return header;
}
--- a/langtools/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/ModuleIndexWriter.java Thu Sep 22 16:41:15 2016 +0000
+++ b/langtools/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/ModuleIndexWriter.java Thu Sep 22 18:31:35 2016 +0000
@@ -159,11 +159,11 @@
for (ModuleElement mdle : modules) {
if (!mdle.isUnnamed()) {
Content moduleLinkContent = getModuleLink(mdle, new StringContent(mdle.getQualifiedName().toString()));
- Content tdModule = HtmlTree.TD(HtmlStyle.colFirst, moduleLinkContent);
+ Content thModule = HtmlTree.TH_ROW_SCOPE(HtmlStyle.colFirst, moduleLinkContent);
HtmlTree tdSummary = new HtmlTree(HtmlTag.TD);
tdSummary.addStyle(HtmlStyle.colLast);
addSummaryComment(mdle, tdSummary);
- HtmlTree tr = HtmlTree.TR(tdModule);
+ HtmlTree tr = HtmlTree.TR(thModule);
tr.addContent(tdSummary);
tr.addStyle(altColor ? HtmlStyle.altColor : HtmlStyle.rowColor);
tbody.addContent(tr);
--- a/langtools/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/ModuleWriterImpl.java Thu Sep 22 16:41:15 2016 +0000
+++ b/langtools/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/ModuleWriterImpl.java Thu Sep 22 18:31:35 2016 +0000
@@ -294,11 +294,11 @@
public void addRequiresList(ModuleElement.RequiresDirective direct, Content tbody, boolean altColor) {
ModuleElement m = direct.getDependency();
Content moduleLinkContent = getModuleLink(m, new StringContent(m.getQualifiedName().toString()));
- Content tdPackage = HtmlTree.TD(HtmlStyle.colFirst, moduleLinkContent);
+ Content thPackage = HtmlTree.TH_ROW_SCOPE(HtmlStyle.colFirst, moduleLinkContent);
HtmlTree tdSummary = new HtmlTree(HtmlTag.TD);
tdSummary.addStyle(HtmlStyle.colLast);
addSummaryComment(m, tdSummary);
- HtmlTree tr = HtmlTree.TR(tdPackage);
+ HtmlTree tr = HtmlTree.TR(thPackage);
tr.addContent(tdSummary);
tr.addStyle(altColor ? HtmlStyle.altColor : HtmlStyle.rowColor);
tbody.addContent(tr);
@@ -347,27 +347,27 @@
public void addExportedPackagesList(ModuleElement.ExportsDirective direct, Content tbody, boolean altColor) {
PackageElement pkg = direct.getPackage();
Content pkgLinkContent = getPackageLink(pkg, new StringContent(utils.getPackageName(pkg)));
- Content tdPackage = HtmlTree.TD(HtmlStyle.colFirst, pkgLinkContent);
- HtmlTree tdModules = new HtmlTree(HtmlTag.TD);
- tdModules.addStyle(HtmlStyle.colSecond);
+ Content tdPackage = HtmlTree.TH_ROW_SCOPE(HtmlStyle.colFirst, pkgLinkContent);
+ HtmlTree thModules = new HtmlTree(HtmlTag.TD);
+ thModules.addStyle(HtmlStyle.colSecond);
List<? extends ModuleElement> targetModules = direct.getTargetModules();
if (targetModules != null) {
List<? extends ModuleElement> mElements = direct.getTargetModules();
for (int i = 0; i < mElements.size(); i++) {
if (i > 0) {
- tdModules.addContent(new HtmlTree(HtmlTag.BR));
+ thModules.addContent(new HtmlTree(HtmlTag.BR));
}
ModuleElement m = mElements.get(i);
- tdModules.addContent(new StringContent(m.getQualifiedName().toString()));
+ thModules.addContent(new StringContent(m.getQualifiedName().toString()));
}
} else {
- tdModules.addContent(configuration.getText("doclet.All_Modules"));
+ thModules.addContent(configuration.getText("doclet.All_Modules"));
}
HtmlTree tdSummary = new HtmlTree(HtmlTag.TD);
tdSummary.addStyle(HtmlStyle.colLast);
addSummaryComment(pkg, tdSummary);
HtmlTree tr = HtmlTree.TR(tdPackage);
- tr.addContent(tdModules);
+ tr.addContent(thModules);
tr.addContent(tdSummary);
tr.addStyle(altColor ? HtmlStyle.altColor : HtmlStyle.rowColor);
tbody.addContent(tr);
@@ -428,11 +428,11 @@
public void addUsesList(ModuleElement.UsesDirective direct, Content tbody, boolean altColor) {
TypeElement type = direct.getService();
Content typeLinkContent = getLink(new LinkInfoImpl(configuration, LinkInfoImpl.Kind.PACKAGE, type));
- Content tdPackage = HtmlTree.TD(HtmlStyle.colFirst, typeLinkContent);
+ Content thPackage = HtmlTree.TH_ROW_SCOPE(HtmlStyle.colFirst, typeLinkContent);
HtmlTree tdSummary = new HtmlTree(HtmlTag.TD);
tdSummary.addStyle(HtmlStyle.colLast);
addSummaryComment(type, tdSummary);
- HtmlTree tr = HtmlTree.TR(tdPackage);
+ HtmlTree tr = HtmlTree.TR(thPackage);
tr.addContent(tdSummary);
tr.addStyle(altColor ? HtmlStyle.altColor : HtmlStyle.rowColor);
tbody.addContent(tr);
@@ -463,18 +463,18 @@
TypeElement srv = direct.getService();
Content implLinkContent = getLink(new LinkInfoImpl(configuration, LinkInfoImpl.Kind.PACKAGE, impl));
Content srvLinkContent = getLink(new LinkInfoImpl(configuration, LinkInfoImpl.Kind.PACKAGE, srv));
- HtmlTree tdType = HtmlTree.TD(HtmlStyle.colFirst, srvLinkContent);
- tdType.addContent(new HtmlTree(HtmlTag.BR));
- tdType.addContent("(");
+ HtmlTree thType = HtmlTree.TH_ROW_SCOPE(HtmlStyle.colFirst, srvLinkContent);
+ thType.addContent(new HtmlTree(HtmlTag.BR));
+ thType.addContent("(");
HtmlTree implSpan = HtmlTree.SPAN(HtmlStyle.implementationLabel, contents.implementation);
- tdType.addContent(implSpan);
- tdType.addContent(Contents.SPACE);
- tdType.addContent(implLinkContent);
- tdType.addContent(")");
+ thType.addContent(implSpan);
+ thType.addContent(Contents.SPACE);
+ thType.addContent(implLinkContent);
+ thType.addContent(")");
HtmlTree tdDesc = new HtmlTree(HtmlTag.TD);
tdDesc.addStyle(HtmlStyle.colLast);
addSummaryComment(srv, tdDesc);
- HtmlTree tr = HtmlTree.TR(tdType);
+ HtmlTree tr = HtmlTree.TR(thType);
tr.addContent(tdDesc);
tr.addStyle(altColor ? HtmlStyle.altColor : HtmlStyle.rowColor);
tbody.addContent(tr);
--- a/langtools/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/NestedClassWriterImpl.java Thu Sep 22 16:41:15 2016 +0000
+++ b/langtools/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/NestedClassWriterImpl.java Thu Sep 22 18:31:35 2016 +0000
@@ -25,8 +25,6 @@
package jdk.javadoc.internal.doclets.formats.html;
-import java.io.*;
-
import java.util.Arrays;
import java.util.List;
@@ -118,15 +116,11 @@
public List<String> getSummaryTableHeader(Element member) {
if (utils.isInterface(member)) {
return Arrays.asList(writer.getModifierTypeHeader(),
- configuration.getText("doclet.0_and_1",
- configuration.getText("doclet.Interface"),
- configuration.getText("doclet.Description")));
+ resources.getText("doclet.Interface"), resources.getText("doclet.Description"));
} else {
return Arrays.asList(writer.getModifierTypeHeader(),
- configuration.getText("doclet.0_and_1",
- configuration.getText("doclet.Class"),
- configuration.getText("doclet.Description")));
+ resources.getText("doclet.Class"), resources.getText("doclet.Description"));
}
}
--- a/langtools/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/PackageIndexWriter.java Thu Sep 22 16:41:15 2016 +0000
+++ b/langtools/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/PackageIndexWriter.java Thu Sep 22 18:31:35 2016 +0000
@@ -151,11 +151,11 @@
if (!pkg.isUnnamed()) {
if (!(configuration.nodeprecated && utils.isDeprecated(pkg))) {
Content packageLinkContent = getPackageLink(pkg, getPackageName(pkg));
- Content tdPackage = HtmlTree.TD(HtmlStyle.colFirst, packageLinkContent);
+ Content thPackage = HtmlTree.TH_ROW_SCOPE(HtmlStyle.colFirst, packageLinkContent);
HtmlTree tdSummary = new HtmlTree(HtmlTag.TD);
tdSummary.addStyle(HtmlStyle.colLast);
addSummaryComment(pkg, tdSummary);
- HtmlTree tr = HtmlTree.TR(tdPackage);
+ HtmlTree tr = HtmlTree.TR(thPackage);
tr.addContent(tdSummary);
tr.addStyle(altColor ? HtmlStyle.altColor : HtmlStyle.rowColor);
tbody.addContent(tr);
--- a/langtools/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/PackageUseWriter.java Thu Sep 22 16:41:15 2016 +0000
+++ b/langtools/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/PackageUseWriter.java Thu Sep 22 18:31:35 2016 +0000
@@ -187,9 +187,7 @@
*/
protected void addClassList(Content contentTree) {
List<String> classTableHeader = Arrays.asList(
- configuration.getText("doclet.0_and_1",
- configuration.getText("doclet.Class"),
- configuration.getText("doclet.Description")));
+ resources.getText("doclet.Class"), resources.getText("doclet.Description"));
for (String packageName : usingPackageToUsedClasses.keySet()) {
PackageElement usingPackage = utils.elementUtils.getPackageElement(packageName);
HtmlTree li = new HtmlTree(HtmlTag.LI);
@@ -234,10 +232,13 @@
DocPath dp = pathString(usedClass,
DocPaths.CLASS_USE.resolve(DocPath.forName(utils, usedClass)));
StringContent stringContent = new StringContent(utils.getSimpleName(usedClass));
- Content td = HtmlTree.TD(HtmlStyle.colOne,
+ Content thType = HtmlTree.TH_ROW_SCOPE(HtmlStyle.colFirst,
getHyperLink(dp.fragment(getPackageAnchorName(pkg)), stringContent));
- addIndexComment(usedClass, td);
- contentTree.addContent(td);
+ contentTree.addContent(thType);
+ HtmlTree tdDesc = new HtmlTree(HtmlTag.TD);
+ tdDesc.addStyle(HtmlStyle.colLast);
+ addIndexComment(usedClass, tdDesc);
+ contentTree.addContent(tdDesc);
}
/**
@@ -247,10 +248,10 @@
* @param contentTree the content tree to which the information will be added
*/
protected void addPackageUse(PackageElement pkg, Content contentTree) {
- Content tdFirst = HtmlTree.TD(HtmlStyle.colFirst,
+ Content thFirst = HtmlTree.TH_ROW_SCOPE(HtmlStyle.colFirst,
getHyperLink(utils.getPackageName(pkg),
new StringContent(utils.getPackageName(pkg))));
- contentTree.addContent(tdFirst);
+ contentTree.addContent(thFirst);
HtmlTree tdLast = new HtmlTree(HtmlTag.TD);
tdLast.addStyle(HtmlStyle.colLast);
if (pkg != null && !pkg.isUnnamed()) {
--- a/langtools/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/PackageWriterImpl.java Thu Sep 22 16:41:15 2016 +0000
+++ b/langtools/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/PackageWriterImpl.java Thu Sep 22 18:31:35 2016 +0000
@@ -229,8 +229,8 @@
}
Content classContent = getLink(new LinkInfoImpl(
configuration, LinkInfoImpl.Kind.PACKAGE, klass));
- Content tdClass = HtmlTree.TD(HtmlStyle.colFirst, classContent);
- HtmlTree tr = HtmlTree.TR(tdClass);
+ Content thClass = HtmlTree.TH_ROW_SCOPE(HtmlStyle.colFirst, classContent);
+ HtmlTree tr = HtmlTree.TR(thClass);
tr.addStyle(altColor ? HtmlStyle.altColor : HtmlStyle.rowColor);
HtmlTree tdClassDescription = new HtmlTree(HtmlTag.TD);
--- a/langtools/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/PropertyWriterImpl.java Thu Sep 22 16:41:15 2016 +0000
+++ b/langtools/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/PropertyWriterImpl.java Thu Sep 22 18:31:35 2016 +0000
@@ -25,8 +25,6 @@
package jdk.javadoc.internal.doclets.formats.html;
-import java.io.*;
-
import java.util.Arrays;
import java.util.List;
@@ -235,10 +233,8 @@
*/
@Override
public List<String> getSummaryTableHeader(Element member) {
- List<String> header = Arrays.asList(configuration.getText("doclet.Type"),
- configuration.getText("doclet.0_and_1",
- configuration.getText("doclet.Property"),
- configuration.getText("doclet.Description")));
+ List<String> header = Arrays.asList(resources.getText("doclet.Type"),
+ resources.getText("doclet.Property"), resources.getText("doclet.Description"));
return header;
}
--- a/langtools/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/markup/HtmlStyle.java Thu Sep 22 16:41:15 2016 +0000
+++ b/langtools/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/markup/HtmlStyle.java Thu Sep 22 18:31:35 2016 +0000
@@ -48,7 +48,6 @@
classUseContainer,
colFirst,
colLast,
- colOne,
colSecond,
constantsSummary,
constantValuesContainer,
--- a/langtools/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/markup/HtmlTree.java Thu Sep 22 16:41:15 2016 +0000
+++ b/langtools/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/markup/HtmlTree.java Thu Sep 22 18:31:35 2016 +0000
@@ -808,6 +808,17 @@
}
/**
+ * Generates a TH tag with style class, scope attribute and some content.
+ *
+ * @param styleClass style for the tag
+ * @param body content for the tag
+ * @return an HtmlTree object for the TH tag
+ */
+ public static HtmlTree TH_ROW_SCOPE(HtmlStyle styleClass, Content body) {
+ return TH(styleClass, "row", body);
+ }
+
+ /**
* Generates a TITLE tag with some content.
*
* @param body content for the tag
--- a/langtools/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/resources/stylesheet.css Thu Sep 22 16:41:15 2016 +0000
+++ b/langtools/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/resources/stylesheet.css Thu Sep 22 18:31:35 2016 +0000
@@ -528,20 +528,23 @@
float:left;
}
+.rowColor th, .altColor th {
+ font-weight:normal;
+}
.overviewSummary td, .memberSummary td, .typeSummary td,
.useSummary td, .constantsSummary td, .deprecatedSummary td,
.requiresSummary td, .packagesSummary td, .providesSummary td, .usesSummary td {
text-align:left;
padding:0px 0px 12px 10px;
}
-th.colOne, th.colFirst, th.colSecond, th.colLast, .useSummary th, .constantsSummary th, .packagesSummary th,
-td.colOne, td.colFirst, td.colSecond, td.colLast, .useSummary td, .constantsSummary td {
+th.colFirst, th.colSecond, th.colLast, .useSummary th, .constantsSummary th, .packagesSummary th,
+td.colFirst, td.colSecond, td.colLast, .useSummary td, .constantsSummary td {
vertical-align:top;
padding-right:0px;
padding-top:8px;
padding-bottom:3px;
}
-th.colFirst, th.colSecond, th.colLast, th.colOne, .constantsSummary th, .packagesSummary th {
+th.colFirst, th.colSecond, th.colLast, .constantsSummary th, .packagesSummary th {
background:#dee3e9;
text-align:left;
padding:8px 3px 3px 7px;
@@ -550,10 +553,10 @@
white-space:nowrap;
font-size:13px;
}
-td.colLast, th.colLast {
+td.colSecond, th.colSecond, td.colLast, th.colLast {
font-size:13px;
}
-td.colOne, th.colOne, .constantsSummary th, .packagesSummary th {
+.constantsSummary th, .packagesSummary th {
font-size:13px;
}
.providesSummary th.colFirst, .providesSummary th.colLast, .providesSummary td.colFirst,
@@ -567,23 +570,22 @@
.packagesSummary td.colFirst, .packagesSummary td.colSecond, .packagesSummary th.colFirst, .packagesSummary th,
.usesSummary td.colFirst, .usesSummary th.colFirst,
.useSummary td.colFirst, .useSummary th.colFirst,
-.overviewSummary td.colOne, .overviewSummary th.colOne,
.memberSummary td.colFirst, .memberSummary th.colFirst,
-.memberSummary td.colOne, .memberSummary th.colOne,
+.memberSummary td.colSecond, .memberSummary th.colSecond,
.typeSummary td.colFirst{
width:25%;
vertical-align:top;
}
-td.colOne a:link, td.colOne a:active, td.colOne a:visited, td.colOne a:hover, td.colFirst a:link, td.colFirst a:active, td.colFirst a:visited, td.colFirst a:hover, td.colSecond a:link, td.colSecond a:active, td.colSecond a:visited, td.colSecond a:hover, td.colLast a:link, td.colLast a:active, td.colLast a:visited, td.colLast a:hover, .constantValuesContainer td a:link, .constantValuesContainer td a:active, .constantValuesContainer td a:visited, .constantValuesContainer td a:hover {
+td.colFirst a:link, td.colFirst a:active, td.colFirst a:visited, td.colFirst a:hover, td.colSecond a:link, td.colSecond a:active, td.colSecond a:visited, td.colSecond a:hover, th.colFirst a:link, th.colFirst a:active, th.colFirst a:visited, th.colFirst a:hover, th.colSecond a:link, th.colSecond a:active, th.colSecond a:visited, th.colSecond a:hover, td.colLast a:link, td.colLast a:active, td.colLast a:visited, td.colLast a:hover, .constantValuesContainer td a:link, .constantValuesContainer td a:active, .constantValuesContainer td a:visited, .constantValuesContainer td a:hover {
font-weight:bold;
}
.tableSubHeadingColor {
background-color:#EEEEFF;
}
-.altColor {
+.altColor, .altColor th {
background-color:#FFFFFF;
}
-.rowColor {
+.rowColor, .rowColor th {
background-color:#EEEEEF;
}
/*
@@ -774,4 +776,4 @@
.searchTagHolderResult {
font-style:italic;
font-size:12px;
-}
+}
\ No newline at end of file
--- a/langtools/src/jdk.jshell/share/classes/jdk/jshell/execution/DirectExecutionControl.java Thu Sep 22 16:41:15 2016 +0000
+++ b/langtools/src/jdk.jshell/share/classes/jdk/jshell/execution/DirectExecutionControl.java Thu Sep 22 18:31:35 2016 +0000
@@ -24,6 +24,7 @@
*/
package jdk.jshell.execution;
+import java.lang.reflect.Array;
import java.lang.reflect.Field;
import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;
@@ -200,6 +201,21 @@
return "\"" + (String) value + "\"";
} else if (value instanceof Character) {
return "'" + value + "'";
+ } else if (value.getClass().isArray()) {
+ String tn = value.getClass().getTypeName();
+ int len = Array.getLength(value);
+ StringBuilder sb = new StringBuilder();
+ sb.append(tn.substring(tn.lastIndexOf('.') + 1, tn.length() - 1));
+ sb.append(len);
+ sb.append("] { ");
+ for (int i = 0; i < len; ++i) {
+ sb.append(valueString(Array.get(value, i)));
+ if (i < len - 1) {
+ sb.append(", ");
+ }
+ }
+ sb.append(" }");
+ return sb.toString();
} else {
return value.toString();
}
--- a/langtools/test/jdk/javadoc/doclet/constantValues/TestConstantValuesDriver.java Thu Sep 22 16:41:15 2016 +0000
+++ b/langtools/test/jdk/javadoc/doclet/constantValues/TestConstantValuesDriver.java Thu Sep 22 18:31:35 2016 +0000
@@ -23,7 +23,7 @@
/*
* @test
- * @bug 4504730 4526070 5077317
+ * @bug 4504730 4526070 5077317 8162363
* @summary Test the generation of constant-values.html.
* @author jamieh
* @library ../lib
@@ -53,29 +53,29 @@
"TEST4PASSES",
"<code>\"<Hello World>\"</code>",
"</a><code>public static final byte</code></td>\n" +
- "<td><code><a href=\"TestConstantValues.html#BYTE_MAX_VALUE\">" +
- "BYTE_MAX_VALUE</a></code></td>\n" +
+ "<th class=\"colSecond\" scope=\"row\"><code><a href=\"TestConstantValues.html#BYTE_MAX_VALUE\">" +
+ "BYTE_MAX_VALUE</a></code></th>\n" +
"<td class=\"colLast\"><code>127</code></td>",
"</a><code>public static final byte</code></td>\n" +
- "<td><code><a href=\"TestConstantValues.html#BYTE_MIN_VALUE\">" +
- "BYTE_MIN_VALUE</a></code></td>\n" +
+ "<th class=\"colSecond\" scope=\"row\"><code><a href=\"TestConstantValues.html#BYTE_MIN_VALUE\">" +
+ "BYTE_MIN_VALUE</a></code></th>\n" +
"<td class=\"colLast\"><code>-127</code></td>",
"</a><code>public static final char</code></td>\n" +
- "<td><code><a href=\"TestConstantValues.html#CHAR_MAX_VALUE\">" +
- "CHAR_MAX_VALUE</a></code></td>\n" +
+ "<th class=\"colSecond\" scope=\"row\"><code><a href=\"TestConstantValues.html#CHAR_MAX_VALUE\">" +
+ "CHAR_MAX_VALUE</a></code></th>\n" +
"<td class=\"colLast\"><code>65535</code></td>",
"</a><code>public static final double</code></td>",
- "<td><code><a href=\"TestConstantValues.html#DOUBLE_MAX_VALUE\">" +
- "DOUBLE_MAX_VALUE</a></code></td>\n" +
+ "<th class=\"colSecond\" scope=\"row\"><code><a href=\"TestConstantValues.html#DOUBLE_MAX_VALUE\">" +
+ "DOUBLE_MAX_VALUE</a></code></th>\n" +
"<td class=\"colLast\"><code>1.7976931348623157E308</code></td>",
"</a><code>public static final double</code></td>\n" +
- "<td><code><a href=\"TestConstantValues.html#DOUBLE_MIN_VALUE\">" +
- "DOUBLE_MIN_VALUE</a></code></td>",
+ "<th class=\"colSecond\" scope=\"row\"><code><a href=\"TestConstantValues.html#DOUBLE_MIN_VALUE\">" +
+ "DOUBLE_MIN_VALUE</a></code></th>",
"</a><code>public static final boolean</code></td>\n" +
- "<td><code><a href=\"TestConstantValues.html#GOODBYE\">" +
- "GOODBYE</a></code></td>",
+ "<th class=\"colSecond\" scope=\"row\"><code><a href=\"TestConstantValues.html#GOODBYE\">" +
+ "GOODBYE</a></code></th>",
"</a><code>public static final boolean</code></td>\n" +
- "<td><code><a href=\"TestConstantValues.html#HELLO\">HELLO</a></code></td>\n" +
+ "<th class=\"colSecond\" scope=\"row\"><code><a href=\"TestConstantValues.html#HELLO\">HELLO</a></code></th>\n" +
"<td class=\"colLast\"><code>true</code></td>"
);
}
--- a/langtools/test/jdk/javadoc/doclet/testAnnotationTypes/TestAnnotationTypes.java Thu Sep 22 16:41:15 2016 +0000
+++ b/langtools/test/jdk/javadoc/doclet/testAnnotationTypes/TestAnnotationTypes.java Thu Sep 22 18:31:35 2016 +0000
@@ -23,7 +23,7 @@
/*
* @test
- * @bug 4973609 8015249 8025633 8026567 6469561 8071982
+ * @bug 4973609 8015249 8025633 8026567 6469561 8071982 8162363
* @summary Make sure that annotation types with 0 members does not have
* extra HR tags.
* @author jamieh
@@ -56,9 +56,9 @@
+ "field.detail\">Field</a> | </li>",
"<!-- =========== ANNOTATION TYPE FIELD SUMMARY =========== -->",
"<h3>Field Summary</h3>",
- "<td class=\"colLast\"><code><span class=\"memberNameLink\"><a href=\"../"
+ "<th class=\"colSecond\" scope=\"row\"><code><span class=\"memberNameLink\"><a href=\"../"
+ "pkg/AnnotationTypeField.html#DEFAULT_NAME\">DEFAULT_NAME</a></span>"
- + "</code> </td>",
+ + "</code></th>",
"<!-- ============ ANNOTATION TYPE FIELD DETAIL =========== -->",
"<h4>DEFAULT_NAME</h4>\n"
+ "<pre>static final java."
--- a/langtools/test/jdk/javadoc/doclet/testHeadings/TestHeadings.java Thu Sep 22 16:41:15 2016 +0000
+++ b/langtools/test/jdk/javadoc/doclet/testHeadings/TestHeadings.java Thu Sep 22 18:31:35 2016 +0000
@@ -23,7 +23,7 @@
/*
* @test
- * @bug 4905786 6259611
+ * @bug 4905786 6259611 8162363
* @summary Make sure that headings use the TH tag instead of the TD tag.
* @author jamieh
* @library ../lib
@@ -76,7 +76,8 @@
// Class documentation
checkOutput("pkg1/C1.html", true,
"<th class=\"colFirst\" scope=\"col\">Modifier and Type</th>\n"
- + "<th class=\"colLast\" scope=\"col\">Field and Description</th>",
+ + "<th class=\"colSecond\" scope=\"col\">Field</th>\n"
+ + "<th class=\"colLast\" scope=\"col\">Description</th>",
"<h3>Methods inherited from class java.lang.Object</h3>");
// Class use documentation
@@ -84,17 +85,19 @@
"<th class=\"colFirst\" scope=\"col\">Package</th>\n"
+ "<th class=\"colLast\" scope=\"col\">Description</th>",
"<th class=\"colFirst\" scope=\"col\">Modifier and Type</th>\n"
- + "<th class=\"colLast\" scope=\"col\">Field and Description</th>");
+ + "<th class=\"colSecond\" scope=\"col\">Field</th>\n"
+ + "<th class=\"colLast\" scope=\"col\">Description</th>");
// Deprecated
checkOutput("deprecated-list.html", true,
- "<th class=\"colOne\" scope=\"col\">Method and Description</th>");
+ "<th class=\"colFirst\" scope=\"col\">Method</th>\n"
+ + "<th class=\"colLast\" scope=\"col\">Description</th>");
// Constant values
checkOutput("constant-values.html", true,
"<th class=\"colFirst\" scope=\"col\">"
+ "Modifier and Type</th>\n"
- + "<th scope=\"col\">Constant Field</th>\n"
+ + "<th class=\"colSecond\" scope=\"col\">Constant Field</th>\n"
+ "<th class=\"colLast\" scope=\"col\">Value</th>");
// Serialized Form
--- a/langtools/test/jdk/javadoc/doclet/testHtmlTableTags/TestHtmlTableTags.java Thu Sep 22 16:41:15 2016 +0000
+++ b/langtools/test/jdk/javadoc/doclet/testHtmlTableTags/TestHtmlTableTags.java Thu Sep 22 18:31:35 2016 +0000
@@ -23,7 +23,7 @@
/*
* @test
- * @bug 6786688 8008164
+ * @bug 6786688 8008164 8162363
* @summary HTML tables should have table summary, caption and table headers.
* @author Bhavesh Patel
* @library ../lib
@@ -282,25 +282,32 @@
// Class documentation
checkOutput("pkg1/C1.html", true,
"<th class=\"colFirst\" scope=\"col\">Modifier and Type</th>\n"
- + "<th class=\"colLast\" scope=\"col\">Field and Description</th>",
+ + "<th class=\"colSecond\" scope=\"col\">Field</th>\n"
+ + "<th class=\"colLast\" scope=\"col\">Description</th>",
"<th class=\"colFirst\" scope=\"col\">Modifier and Type</th>\n"
- + "<th class=\"colLast\" scope=\"col\">Method and Description</th>");
+ + "<th class=\"colSecond\" scope=\"col\">Method</th>\n"
+ + "<th class=\"colLast\" scope=\"col\">Description</th>");
checkOutput("pkg2/C2.html", true,
"<th class=\"colFirst\" scope=\"col\">Modifier and Type</th>\n"
- + "<th class=\"colLast\" scope=\"col\">Class and Description</th>",
- "<th class=\"colOne\" scope=\"col\">Constructor and Description</th>");
+ + "<th class=\"colSecond\" scope=\"col\">Class</th>\n"
+ + "<th class=\"colLast\" scope=\"col\">Description</th>",
+ "<th class=\"colFirst\" scope=\"col\">Constructor</th>\n"
+ + "<th class=\"colLast\" scope=\"col\">Description</th>");
checkOutput("pkg2/C2.ModalExclusionType.html", true,
- "<th class=\"colOne\" scope=\"col\">Enum Constant and Description</th>");
+ "<th class=\"colFirst\" scope=\"col\">Enum Constant</th>\n"
+ + "<th class=\"colLast\" scope=\"col\">Description</th>");
checkOutput("pkg2/C3.html", true,
"<th class=\"colFirst\" scope=\"col\">Modifier and Type</th>\n"
- + "<th class=\"colLast\" scope=\"col\">Required Element and Description</th>");
+ + "<th class=\"colSecond\" scope=\"col\">Required Element</th>\n"
+ + "<th class=\"colLast\" scope=\"col\">Description</th>");
checkOutput("pkg2/C4.html", true,
"<th class=\"colFirst\" scope=\"col\">Modifier and Type</th>\n"
- + "<th class=\"colLast\" scope=\"col\">Optional Element and Description</th>");
+ + "<th class=\"colSecond\" scope=\"col\">Optional Element</th>\n"
+ + "<th class=\"colLast\" scope=\"col\">Description</th>");
// Class use documentation
checkOutput("pkg1/class-use/I1.html", true,
@@ -309,43 +316,52 @@
checkOutput("pkg1/class-use/C1.html", true,
"<th class=\"colFirst\" scope=\"col\">Modifier and Type</th>\n"
- + "<th class=\"colLast\" scope=\"col\">Field and Description</th>",
+ + "<th class=\"colSecond\" scope=\"col\">Field</th>\n"
+ + "<th class=\"colLast\" scope=\"col\">Description</th>",
"<th class=\"colFirst\" scope=\"col\">Modifier and Type</th>\n"
- + "<th class=\"colLast\" scope=\"col\">Method and Description</th>");
+ + "<th class=\"colSecond\" scope=\"col\">Method</th>\n"
+ + "<th class=\"colLast\" scope=\"col\">Description</th>");
checkOutput("pkg2/class-use/C2.html", true,
"<th class=\"colFirst\" scope=\"col\">Modifier and Type</th>\n"
- + "<th class=\"colLast\" scope=\"col\">Field and Description</th>",
+ + "<th class=\"colSecond\" scope=\"col\">Field</th>\n"
+ + "<th class=\"colLast\" scope=\"col\">Description</th>",
"<th class=\"colFirst\" scope=\"col\">Modifier and Type</th>\n"
- + "<th class=\"colLast\" scope=\"col\">Method and Description</th>");
+ + "<th class=\"colSecond\" scope=\"col\">Method</th>\n"
+ + "<th class=\"colLast\" scope=\"col\">Description</th>");
checkOutput("pkg2/class-use/C2.ModalExclusionType.html", true,
"<th class=\"colFirst\" scope=\"col\">Package</th>\n"
+ "<th class=\"colLast\" scope=\"col\">Description</th>",
"<th class=\"colFirst\" scope=\"col\">Modifier and Type</th>\n"
- + "<th class=\"colLast\" scope=\"col\">Method and Description</th>");
+ + "<th class=\"colSecond\" scope=\"col\">Method</th>\n"
+ + "<th class=\"colLast\" scope=\"col\">Description</th>");
// Package use documentation
checkOutput("pkg1/package-use.html", true,
"<th class=\"colFirst\" scope=\"col\">Package</th>\n"
+ "<th class=\"colLast\" scope=\"col\">Description</th>",
- "<th class=\"colOne\" scope=\"col\">Class and Description</th>");
+ "<th class=\"colFirst\" scope=\"col\">Class</th>\n"
+ + "<th class=\"colLast\" scope=\"col\">Description</th>");
checkOutput("pkg2/package-use.html", true,
"<th class=\"colFirst\" scope=\"col\">Package</th>\n"
+ "<th class=\"colLast\" scope=\"col\">Description</th>",
- "<th class=\"colOne\" scope=\"col\">Class and Description</th>");
+ "<th class=\"colFirst\" scope=\"col\">Class</th>\n"
+ + "<th class=\"colLast\" scope=\"col\">Description</th>");
// Deprecated
checkOutput("deprecated-list.html", true,
- "<th class=\"colOne\" scope=\"col\">Field and Description</th>",
- "<th class=\"colOne\" scope=\"col\">Method and Description</th>");
+ "<th class=\"colFirst\" scope=\"col\">Field</th>\n"
+ + "<th class=\"colLast\" scope=\"col\">Description</th>",
+ "<th class=\"colFirst\" scope=\"col\">Method</th>\n"
+ + "<th class=\"colLast\" scope=\"col\">Description</th>");
// Constant values
checkOutput("constant-values.html", true,
"<th class=\"colFirst\" scope=\"col\">"
+ "Modifier and Type</th>\n"
- + "<th"
+ + "<th class=\"colSecond\""
+ " scope=\"col\">Constant Field</th>\n"
+ "<th class=\"colLast\" scope=\"col\">Value</th>");
--- a/langtools/test/jdk/javadoc/doclet/testJavaFX/TestJavaFX.java Thu Sep 22 16:41:15 2016 +0000
+++ b/langtools/test/jdk/javadoc/doclet/testJavaFX/TestJavaFX.java Thu Sep 22 18:31:35 2016 +0000
@@ -23,7 +23,7 @@
/*
* @test
- * @bug 7112427 8012295 8025633 8026567 8061305 8081854 8150130
+ * @bug 7112427 8012295 8025633 8026567 8061305 8081854 8150130 8162363
* @summary Test of the JavaFX doclet features.
* @author jvalenta
* @library ../lib
@@ -61,19 +61,17 @@
+ "<div class=\"block\">Gets the value of the property rate.</div>\n"
+ "<dl>\n"
+ "<dt><span class=\"simpleTagLabel\">Property description:</span></dt>",
- "<td class=\"colLast\"><code><span class=\"memberNameLink\">"
- + "<a href=\"../pkg1/C.html#rateProperty\">rate</a></span></code>\n"
- + "<div class=\"block\">Defines the direction/speed at which the "
- + "<code>Timeline</code> is expected to",
+ "<th class=\"colSecond\" scope=\"row\"><code><span class=\"memberNameLink\">"
+ + "<a href=\"../pkg1/C.html#rateProperty\">rate</a></span></code>",
"<span class=\"simpleTagLabel\">Default value:</span>",
"<span class=\"simpleTagLabel\">Since:</span></dt>\n"
+ "<dd>JavaFX 8.0</dd>",
"<p>Sets the value of the property <code>Property</code>",
"<p>Gets the value of the property <code>Property</code>",
"<span class=\"simpleTagLabel\">Property description:</span>",
- "<td class=\"colLast\"><code><span class=\"memberNameLink\">"
+ "<th class=\"colSecond\" scope=\"row\"><code><span class=\"memberNameLink\">"
+ "<a href=\"../pkg1/C.html#setTestMethodProperty--\">"
- + "setTestMethodProperty</a></span>()</code> </td>",
+ + "setTestMethodProperty</a></span>()</code></th>",
"<h4>isPaused</h4>\n"
+ "<pre>public final double isPaused()</pre>\n"
+ "<div class=\"block\">Gets the value of the property paused.</div>");
@@ -152,34 +150,34 @@
checkOutput("pkg2/Test.html", false, "<h3>Property Summary</h3>");
checkOutput("pkg2/Test.html", true,
"<th class=\"colFirst\" scope=\"col\">Modifier and Type</th>\n"
- + "<th class=\"colLast\" scope=\"col\">Method and Description</th>\n"
+ + "<th class=\"colSecond\" scope=\"col\">Method</th>\n"
+ + "<th class=\"colLast\" scope=\"col\">Description</th>\n"
+ "</tr>\n"
+ "<tr id=\"i0\" class=\"altColor\">\n"
+ "<td class=\"colFirst\"><code><T> java.lang.Object</code></td>\n"
- + "<td class=\"colLast\"><code><span class=\"memberNameLink\">"
- + "<a href=\"../pkg2/Test.html#alphaProperty-java.util.List-\">"
- + "alphaProperty</a></span>(java.util.List<T> foo)</code> </td>\n"
+ + "<th class=\"colSecond\" scope=\"row\"><code><span class=\"memberNameLink\">"
+ + "<a href=\"../pkg2/Test.html#alphaProperty-java.util.List-\">alphaProperty</a>"
+ + "</span>(java.util.List<T> foo)</code></th>\n"
+ + "<td class=\"colLast\"> </td>\n"
+ "</tr>\n"
+ "<tr id=\"i1\" class=\"rowColor\">\n"
+ "<td class=\"colFirst\"><code>java.lang.Object</code></td>\n"
- + "<td class=\"colLast\"><code><span class=\"memberNameLink\">"
- + "<a href=\"../pkg2/Test.html#betaProperty--\">betaProperty</a></span>()</code>"
- + " </td>\n"
+ + "<th class=\"colSecond\" scope=\"row\"><code><span class=\"memberNameLink\">"
+ + "<a href=\"../pkg2/Test.html#betaProperty--\">betaProperty</a></span>()</code></th>\n"
+ + "<td class=\"colLast\"> </td>\n"
+ "</tr>\n"
+ "<tr id=\"i2\" class=\"altColor\">\n"
- + "<td class=\"colFirst\"><code>"
- + "java.util.List<java.util.Set<? super java.lang.Object>>"
+ + "<td class=\"colFirst\"><code>java.util.List<java.util.Set<? super java.lang.Object>>"
+ "</code></td>\n"
- + "<td class=\"colLast\"><code><span class=\"memberNameLink\">"
- + "<a href=\"../pkg2/Test.html#deltaProperty--\">"
- + "deltaProperty</a></span>()</code> </td>\n"
+ + "<th class=\"colSecond\" scope=\"row\"><code><span class=\"memberNameLink\">"
+ + "<a href=\"../pkg2/Test.html#deltaProperty--\">deltaProperty</a></span>()</code></th>\n"
+ + "<td class=\"colLast\"> </td>\n"
+ "</tr>\n"
+ "<tr id=\"i3\" class=\"rowColor\">\n"
- + "<td class=\"colFirst\"><code>java.util.List<java.lang.String>"
- + "</code></td>\n"
- + "<td class=\"colLast\"><code><span class=\"memberNameLink\">"
- + "<a href=\"../pkg2/Test.html#gammaProperty--\">gammaProperty</a>"
- + "</span>()</code> </td>"
+ + "<td class=\"colFirst\"><code>java.util.List<java.lang.String></code></td>\n"
+ + "<th class=\"colSecond\" scope=\"row\"><code><span class=\"memberNameLink\">"
+ + "<a href=\"../pkg2/Test.html#gammaProperty--\">gammaProperty</a></span>()</code></th>\n"
+ + "<td class=\"colLast\"> </td>"
);
}
--- a/langtools/test/jdk/javadoc/doclet/testMemberInheritence/TestMemberInheritence.java Thu Sep 22 16:41:15 2016 +0000
+++ b/langtools/test/jdk/javadoc/doclet/testMemberInheritence/TestMemberInheritence.java Thu Sep 22 18:31:35 2016 +0000
@@ -23,7 +23,7 @@
/*
* @test
- * @bug 4638588 4635809 6256068 6270645 8025633 8026567
+ * @bug 4638588 4635809 6256068 6270645 8025633 8026567 8162363
* @summary Test to make sure that members are inherited properly in the Javadoc.
* Verify that inheritence labels are correct.
* @author jamieh
@@ -90,10 +90,10 @@
checkOutput("pkg1/Implementer.html", true,
// ensure the method makes it
"<td class=\"colFirst\"><code>static java.time.Period</code></td>\n"
- + "<td class=\"colLast\"><code><span class=\"memberNameLink\">"
+ + "<th class=\"colSecond\" scope=\"row\"><code><span class=\"memberNameLink\">"
+ "<a href=\"../pkg1/Implementer.html#between-java.time.LocalDate-java.time.LocalDate-\">"
+ "between</a></span>(java.time.LocalDate startDateInclusive,\n"
- + " java.time.LocalDate endDateExclusive)</code> </td>",
+ + " java.time.LocalDate endDateExclusive)</code></th>",
// check the inherited from interfaces
"<h3>Methods inherited from interface pkg1.<a href=\"../pkg1/Interface.html\""
+ " title=\"interface in pkg1\">Interface</a></h3>\n"
--- a/langtools/test/jdk/javadoc/doclet/testMemberSummary/TestMemberSummary.java Thu Sep 22 16:41:15 2016 +0000
+++ b/langtools/test/jdk/javadoc/doclet/testMemberSummary/TestMemberSummary.java Thu Sep 22 18:31:35 2016 +0000
@@ -23,7 +23,7 @@
/*
* @test
- * @bug 4951228 6290760 8025633 8026567 8081854
+ * @bug 4951228 6290760 8025633 8026567 8081854 8162363
* @summary Test the case where the overriden method returns a different
* type than the method in the child class. Make sure the
* documentation is inherited but the return type isn't.
@@ -51,7 +51,7 @@
checkOutput("pkg/PublicChild.html", true,
// Check return type in member summary.
"<code><a href=\"../pkg/PublicChild.html\" title=\"class in pkg\">PublicChild</a></code></td>\n"
- + "<td class=\"colLast\"><code><span class=\"memberNameLink\"><a href=\"../pkg/PublicChild.html#returnTypeTest--\">"
+ + "<th class=\"colSecond\" scope=\"row\"><code><span class=\"memberNameLink\"><a href=\"../pkg/PublicChild.html#returnTypeTest--\">"
+ "returnTypeTest</a></span>()</code>",
// Check return type in member detail.
"<pre>public <a href=\"../pkg/PublicChild.html\" title=\"class in pkg\">"
--- a/langtools/test/jdk/javadoc/doclet/testModules/TestModules.java Thu Sep 22 16:41:15 2016 +0000
+++ b/langtools/test/jdk/javadoc/doclet/testModules/TestModules.java Thu Sep 22 18:31:35 2016 +0000
@@ -23,7 +23,7 @@
/*
* @test
- * @bug 8154119 8154262 8156077 8157987 8154261 8154817 8135291 8155995
+ * @bug 8154119 8154262 8156077 8157987 8154261 8154817 8135291 8155995 8162363
* @summary Test modules support in javadoc.
* @author bpatel
* @library ../lib
@@ -397,7 +397,7 @@
+ "</a>");
checkOutput("module1-summary.html", true,
"<tr class=\"altColor\">\n"
- + "<td class=\"colFirst\"><a href=\"testpkgmdl1/package-summary.html\">testpkgmdl1</a></td>\n"
+ + "<th class=\"colFirst\" scope=\"row\"><a href=\"testpkgmdl1/package-summary.html\">testpkgmdl1</a></th>\n"
+ "<td class=\"colSecond\">All Modules</td>\n"
+ "<td class=\"colLast\"> </td>\n"
+ "</tr>");
@@ -408,7 +408,7 @@
+ "</a>");
checkOutput("module1-summary.html", true,
"<tr class=\"rowColor\">\n"
- + "<td class=\"colFirst\"><a href=\"module2-summary.html\">module2</a></td>\n"
+ + "<th class=\"colFirst\" scope=\"row\"><a href=\"module2-summary.html\">module2</a></th>\n"
+ "<td class=\"colLast\">\n"
+ "<div class=\"block\">This is a test description for the module2 module.</div>\n"
+ "</td>\n"
@@ -424,8 +424,8 @@
+ "</a>");
checkOutput("module2-summary.html", true,
"<tr class=\"rowColor\">\n"
- + "<td class=\"colFirst\"><a href=\"testpkg2mdl2/package-summary.html\">"
- + "testpkg2mdl2</a></td>\n"
+ + "<th class=\"colFirst\" scope=\"row\"><a href=\"testpkg2mdl2/package-summary.html\">"
+ + "testpkg2mdl2</a></th>\n"
+ "<td class=\"colSecond\">module1</td>\n"
+ "<td class=\"colLast\"> </td>\n"
+ "</tr>");
@@ -436,7 +436,7 @@
+ "</a>");
checkOutput("module2-summary.html", true,
"<tr class=\"altColor\">\n"
- + "<td class=\"colFirst\"><a href=\"java.base-summary.html\">java.base</a></td>\n"
+ + "<th class=\"colFirst\" scope=\"row\"><a href=\"java.base-summary.html\">java.base</a></th>\n"
+ "<td class=\"colLast\"> </td>\n"
+ "</tr>");
checkOutput("module2-summary.html", true,
@@ -446,24 +446,24 @@
+ "</a>");
checkOutput("module2-summary.html", true,
"<tr class=\"altColor\">\n"
- + "<td class=\"colFirst\"><a href=\"testpkgmdl2/TestClassInModule2.html\" "
- + "title=\"class in testpkgmdl2\">TestClassInModule2</a></td>\n"
+ + "<th class=\"colFirst\" scope=\"row\"><a href=\"testpkgmdl2/TestClassInModule2.html\" "
+ + "title=\"class in testpkgmdl2\">TestClassInModule2</a></th>\n"
+ "<td class=\"colLast\"> </td>\n"
+ "</tr>");
checkOutput("module2-summary.html", true,
"<tr class=\"altColor\">\n"
- + "<td class=\"colFirst\"><a href=\"testpkg2mdl2/TestInterfaceInModule2.html\" "
+ + "<th class=\"colFirst\" scope=\"row\"><a href=\"testpkg2mdl2/TestInterfaceInModule2.html\" "
+ "title=\"interface in testpkg2mdl2\">TestInterfaceInModule2</a><br>"
+ "(<span class=\"implementationLabel\">Implementation:</span> "
+ "<a href=\"testpkgmdl2/TestClassInModule2.html\" title=\"class in testpkgmdl2\">"
- + "TestClassInModule2</a>)</td>\n"
+ + "TestClassInModule2</a>)</th>\n"
+ "<td class=\"colLast\"> </td>\n"
+ "</tr");
checkOutput("module2-summary.html", true,
"<caption><span>Exported Packages</span><span class=\"tabEnd\"> </span></caption>\n"
+ "<tr>\n"
+ "<th class=\"colFirst\" scope=\"col\">Package</th>\n"
- + "<th scope=\"col\">Module</th>\n"
+ + "<th class=\"colSecond\" scope=\"col\">Module</th>\n"
+ "<th class=\"colLast\" scope=\"col\">Description</th>\n"
+ "</tr>");
checkOutput("module2-summary.html", true,
--- a/langtools/test/jdk/javadoc/doclet/testNewLanguageFeatures/TestNewLanguageFeatures.java Thu Sep 22 16:41:15 2016 +0000
+++ b/langtools/test/jdk/javadoc/doclet/testNewLanguageFeatures/TestNewLanguageFeatures.java Thu Sep 22 18:31:35 2016 +0000
@@ -23,7 +23,7 @@
/*
* @test
- * @bug 4789689 4905985 4927164 4827184 4993906 5004549 7025314 7010344 8025633 8026567
+ * @bug 4789689 4905985 4927164 4827184 4993906 5004549 7025314 7010344 8025633 8026567 8162363
* @summary Run Javadoc on a set of source files that demonstrate new
* language features. Check the output to ensure that the new
* language features are properly documented.
@@ -134,7 +134,7 @@
// Method that returns TypeParameters
"<td class=\"colFirst\"><code><a href=\"../pkg/TypeParameters.html\" "
+ "title=\"type parameter in TypeParameters\">E</a>[]</code></td>\n"
- + "<td class=\"colLast\"><code><span class=\"memberNameLink\">"
+ + "<th class=\"colSecond\" scope=\"row\"><code><span class=\"memberNameLink\">"
+ "<a href=\"../pkg/TypeParameters.html#methodThatReturnsTypeParameterA-E:A-\">"
+ "methodThatReturnsTypeParameterA</a></span>(<a href=\"../pkg/TypeParameters.html\" "
+ "title=\"type parameter in TypeParameters\">E</a>[] e)</code>",
@@ -144,15 +144,15 @@
+ "title=\"type parameter in TypeParameters\">E</a>[] e)</pre>\n",
"<td class=\"colFirst\"><code><T extends java.lang.Object & java.lang.Comparable<? super T>>"
+ "<br>T</code></td>\n"
- + "<td class=\"colLast\"><code><span class=\"memberNameLink\">"
+ + "<th class=\"colSecond\" scope=\"row\"><code><span class=\"memberNameLink\">"
+ "<a href=\"../pkg/TypeParameters.html#methodtThatReturnsTypeParametersB-java.util.Collection-\">"
- + "methodtThatReturnsTypeParametersB</a></span>(java.util.Collection<? extends T> coll)</code>\n"
- + "<div class=\"block\">Returns TypeParameters</div>\n",
+ + "methodtThatReturnsTypeParametersB</a></span>(java.util.Collection<? extends T> coll)</code>",
+ "<div class=\"block\">Returns TypeParameters</div>\n",
// Method takes a TypeVariable
"<td class=\"colFirst\"><code><X extends java.lang.Throwable><br>"
+ "<a href=\"../pkg/TypeParameters.html\" title=\"type parameter in TypeParameters\">E</a>"
+ "</code></td>\n"
- + "<td class=\"colLast\"><code><span class=\"memberNameLink\">"
+ + "<th class=\"colSecond\" scope=\"row\"><code><span class=\"memberNameLink\">"
+ "<a href=\"../pkg/TypeParameters.html#orElseThrow-java.util.function.Supplier-\">"
+ "orElseThrow</a></span>(java.util.function.Supplier<? extends X> exceptionSupplier)</code>"
);
@@ -219,19 +219,19 @@
+ "package-summary.html\">pkg2</a> with type parameters of "
+ "type <a href=\"../../pkg2/Foo.html\" title=\"class in pkg2\">"
+ "Foo</a></span><span class=\"tabEnd\"> </span></caption>",
- "<td class=\"colLast\"><code><span class=\"memberNameLink\"><a href=\"../../pkg2/ClassUseTest1.html\" "
+ "<th class=\"colSecond\" scope=\"row\"><code><span class=\"memberNameLink\"><a href=\"../../pkg2/ClassUseTest1.html\" "
+ "title=\"class in pkg2\">ClassUseTest1</a><T extends "
+ "<a href=\"../../pkg2/Foo.html\" title=\"class in pkg2\">Foo"
+ "</a> & <a href=\"../../pkg2/Foo2.html\" title=\"interface in pkg2\">"
- + "Foo2</a>></span></code> </td>",
+ + "Foo2</a>></span></code></th>",
"<caption><span>Methods in <a href=\"../../pkg2/"
+ "package-summary.html\">pkg2</a> with type parameters of "
+ "type <a href=\"../../pkg2/Foo.html\" title=\"class in "
+ "pkg2\">Foo</a></span><span class=\"tabEnd\"> </span></caption>",
- "<td class=\"colLast\"><span class=\"typeNameLabel\">ClassUseTest1."
+ "<th class=\"colSecond\" scope=\"row\"><span class=\"typeNameLabel\">ClassUseTest1."
+ "</span><code><span class=\"memberNameLink\"><a href=\"../../pkg2/"
+ "ClassUseTest1.html#method-T-\">method</a></span>"
- + "(T t)</code> </td>",
+ + "(T t)</code></th>",
"<caption><span>Fields in <a href=\"../../pkg2/"
+ "package-summary.html\">pkg2</a> with type parameters of "
+ "type <a href=\"../../pkg2/Foo.html\" title=\"class in pkg2\">"
@@ -259,20 +259,20 @@
+ "type <a href=\"../../pkg2/Foo2.html\" title=\"interface "
+ "in pkg2\">Foo2</a></span><span class=\"tabEnd\"> "
+ "</span></caption>",
- "<td class=\"colLast\"><code><span class=\"memberNameLink\"><a href=\"../../pkg2/ClassUseTest1.html\" "
+ "<th class=\"colSecond\" scope=\"row\"><code><span class=\"memberNameLink\"><a href=\"../../pkg2/ClassUseTest1.html\" "
+ "title=\"class in pkg2\">ClassUseTest1</a><T extends "
+ "<a href=\"../../pkg2/Foo.html\" title=\"class in pkg2\">Foo"
+ "</a> & <a href=\"../../pkg2/Foo2.html\" title=\"interface in pkg2\">"
- + "Foo2</a>></span></code> </td>",
+ + "Foo2</a>></span></code></th>",
"<caption><span>Methods in <a href=\"../../pkg2/"
+ "package-summary.html\">pkg2</a> with type parameters of "
+ "type <a href=\"../../pkg2/Foo2.html\" title=\"interface "
+ "in pkg2\">Foo2</a></span><span class=\"tabEnd\"> "
+ "</span></caption>",
- "<td class=\"colLast\"><span class=\"typeNameLabel\">"
+ "<th class=\"colSecond\" scope=\"row\"><span class=\"typeNameLabel\">"
+ "ClassUseTest1.</span><code><span class=\"memberNameLink\"><a href=\"../../"
+ "pkg2/ClassUseTest1.html#method-T-\">method</a></span>"
- + "(T t)</code> </td>"
+ + "(T t)</code></th>"
);
// ClassUseTest2: <T extends ParamTest<Foo3>>
@@ -282,20 +282,20 @@
+ "type <a href=\"../../pkg2/ParamTest.html\" title=\"class "
+ "in pkg2\">ParamTest</a></span><span class=\"tabEnd\">"
+ " </span></caption>",
- "<td class=\"colLast\"><code><span class=\"memberNameLink\"><a href=\"../../pkg2/ClassUseTest2.html\" "
+ "<th class=\"colSecond\" scope=\"row\"><code><span class=\"memberNameLink\"><a href=\"../../pkg2/ClassUseTest2.html\" "
+ "title=\"class in pkg2\">ClassUseTest2</a><T extends "
+ "<a href=\"../../pkg2/ParamTest.html\" title=\"class in pkg2\">"
+ "ParamTest</a><<a href=\"../../pkg2/Foo3.html\" title=\"class in pkg2\">"
- + "Foo3</a>>></span></code> </td>",
+ + "Foo3</a>>></span></code></th>",
"<caption><span>Methods in <a href=\"../../pkg2/"
+ "package-summary.html\">pkg2</a> with type parameters of "
+ "type <a href=\"../../pkg2/ParamTest.html\" title=\"class "
+ "in pkg2\">ParamTest</a></span><span class=\"tabEnd\">"
+ " </span></caption>",
- "<td class=\"colLast\"><span class=\"typeNameLabel\">ClassUseTest2."
+ "<th class=\"colSecond\" scope=\"row\"><span class=\"typeNameLabel\">ClassUseTest2."
+ "</span><code><span class=\"memberNameLink\"><a href=\"../../pkg2/"
+ "ClassUseTest2.html#method-T-\">method</a></span>"
- + "(T t)</code> </td>",
+ + "(T t)</code></th>",
"<caption><span>Fields in <a href=\"../../pkg2/"
+ "package-summary.html\">pkg2</a> declared as <a href=\"../"
+ "../pkg2/ParamTest.html\" title=\"class in pkg2\">ParamTest"
@@ -323,20 +323,20 @@
+ "package-summary.html\">pkg2</a> with type parameters of "
+ "type <a href=\"../../pkg2/Foo3.html\" title=\"class in pkg2\">"
+ "Foo3</a></span><span class=\"tabEnd\"> </span></caption>",
- "<td class=\"colLast\"><code><span class=\"memberNameLink\"><a href=\"../../pkg2/ClassUseTest2.html\" "
+ "<th class=\"colSecond\" scope=\"row\"><code><span class=\"memberNameLink\"><a href=\"../../pkg2/ClassUseTest2.html\" "
+ "title=\"class in pkg2\">ClassUseTest2</a><T extends "
+ "<a href=\"../../pkg2/ParamTest.html\" title=\"class in pkg2\">"
+ "ParamTest</a><<a href=\"../../pkg2/Foo3.html\" title=\"class in pkg2\">"
- + "Foo3</a>>></span></code> </td>",
+ + "Foo3</a>>></span></code></th>",
"<caption><span>Methods in <a href=\"../../pkg2/"
+ "package-summary.html\">pkg2</a> with type parameters of "
+ "type <a href=\"../../pkg2/Foo3.html\" title=\"class in "
+ "pkg2\">Foo3</a></span><span class=\"tabEnd\"> "
+ "</span></caption>",
- "<td class=\"colLast\"><span class=\"typeNameLabel\">ClassUseTest2."
+ "<th class=\"colSecond\" scope=\"row\"><span class=\"typeNameLabel\">ClassUseTest2."
+ "</span><code><span class=\"memberNameLink\"><a href=\"../../pkg2/"
+ "ClassUseTest2.html#method-T-\">method</a></span>"
- + "(T t)</code> </td>",
+ + "(T t)</code></th>",
"<caption><span>Methods in <a href=\"../../pkg2/"
+ "package-summary.html\">pkg2</a> that return types with "
+ "arguments of type <a href=\"../../pkg2/Foo3.html\" title"
@@ -357,20 +357,20 @@
+ "type <a href=\"../../pkg2/ParamTest2.html\" title=\"class "
+ "in pkg2\">ParamTest2</a></span><span class=\"tabEnd\">"
+ " </span></caption>",
- "<td class=\"colLast\"><code><span class=\"memberNameLink\"><a href=\"../../pkg2/ClassUseTest3.html\" "
+ "<th class=\"colSecond\" scope=\"row\"><code><span class=\"memberNameLink\"><a href=\"../../pkg2/ClassUseTest3.html\" "
+ "title=\"class in pkg2\">ClassUseTest3</a><T extends "
+ "<a href=\"../../pkg2/ParamTest2.html\" title=\"class in pkg2\">"
+ "ParamTest2</a><java.util.List<? extends "
+ "<a href=\"../../pkg2/Foo4.html\" title=\"class in pkg2\">"
- + "Foo4</a>>>></span></code> </td>",
+ + "Foo4</a>>>></span></code></th>",
"<caption><span>Methods in <a href=\"../../pkg2/"
+ "package-summary.html\">pkg2</a> with type parameters of "
+ "type <a href=\"../../pkg2/ParamTest2.html\" title=\"class "
+ "in pkg2\">ParamTest2</a></span><span class=\"tabEnd\">"
+ " </span></caption>",
- "<td class=\"colLast\"><span class=\"typeNameLabel\">ClassUseTest3"
+ "<th class=\"colSecond\" scope=\"row\"><span class=\"typeNameLabel\">ClassUseTest3"
+ ".</span><code><span class=\"memberNameLink\"><a href=\"../../pkg2/ClassUseTest3."
- + "html#method-T-\">method</a></span>(T t)</code> </td>",
+ + "html#method-T-\">method</a></span>(T t)</code></th>",
"<td class=\"colFirst\"><code><T extends <a href=\"../"
+ "../pkg2/ParamTest2.html\" title=\"class in pkg2\">"
+ "ParamTest2</a><java.util.List<? extends <a href=\".."
@@ -387,20 +387,20 @@
+ "type <a href=\"../../pkg2/Foo4.html\" title=\"class in "
+ "pkg2\">Foo4</a></span><span class=\"tabEnd\"> "
+ "</span></caption>",
- "<td class=\"colLast\"><code><span class=\"memberNameLink\"><a href=\"../../pkg2/ClassUseTest3.html\" "
+ "<th class=\"colSecond\" scope=\"row\"><code><span class=\"memberNameLink\"><a href=\"../../pkg2/ClassUseTest3.html\" "
+ "title=\"class in pkg2\">ClassUseTest3</a><T extends "
+ "<a href=\"../../pkg2/ParamTest2.html\" title=\"class in pkg2\">"
+ "ParamTest2</a><java.util.List<? extends "
+ "<a href=\"../../pkg2/Foo4.html\" title=\"class in pkg2\">"
- + "Foo4</a>>>></span></code> </td>",
+ + "Foo4</a>>>></span></code></th>",
"<caption><span>Methods in <a href=\"../../pkg2/"
+ "package-summary.html\">pkg2</a> with type parameters of "
+ "type <a href=\"../../pkg2/Foo4.html\" title=\"class in "
+ "pkg2\">Foo4</a></span><span class=\"tabEnd\"> </span></caption>",
- "<td class=\"colLast\"><span class=\"typeNameLabel\">ClassUseTest3."
+ "<th class=\"colSecond\" scope=\"row\"><span class=\"typeNameLabel\">ClassUseTest3."
+ "</span><code><span class=\"memberNameLink\"><a href=\"../../pkg2/ClassUseTest3."
+ "html#method-T-\">method</a></span>(T t)</code>"
- + " </td>",
+ + "</th>",
"<caption><span>Methods in <a href=\"../../pkg2/"
+ "package-summary.html\">pkg2</a> that return types with "
+ "arguments of type <a href=\"../../pkg2/Foo4.html\" "
@@ -425,18 +425,17 @@
+ "</span></caption>\n"
+ "<tr>\n"
+ "<th class=\"colFirst\" scope=\"col\">Modifier and Type</th>\n"
- + "<th class=\"colLast\" scope=\"col\">Method and Description</th>\n"
+ + "<th class=\"colSecond\" scope=\"col\">Method</th>\n"
+ + "<th class=\"colLast\" scope=\"col\">Description</th>\n"
+ "</tr>\n"
+ "<tbody>\n"
+ "<tr class=\"altColor\">\n"
+ "<td class=\"colFirst\"><code>void</code></td>\n"
- + "<td class=\"colLast\"><span class=\"typeNameLabel\">ClassUseTest3."
+ + "<th class=\"colSecond\" scope=\"row\"><span class=\"typeNameLabel\">ClassUseTest3."
+ "</span><code><span class=\"memberNameLink\"><a href=\"../../pkg2/ClassUseTest3."
+ "html#method-java.util.Set-\">method</a></span>(java."
+ "util.Set<<a href=\"../../pkg2/Foo4.html\" title=\""
- + "class in pkg2\">Foo4</a>> p)</code> </td>\n"
- + "</tr>\n"
- + "</tbody>",
+ + "class in pkg2\">Foo4</a>> p)</code></th>",
"<caption><span>Constructor parameters in <a href=\"../../"
+ "pkg2/package-summary.html\">pkg2</a> with type arguments "
+ "of type <a href=\"../../pkg2/Foo4.html\" title=\"class in "
--- a/langtools/test/jdk/javadoc/doclet/testPackageDeprecation/TestPackageDeprecation.java Thu Sep 22 16:41:15 2016 +0000
+++ b/langtools/test/jdk/javadoc/doclet/testPackageDeprecation/TestPackageDeprecation.java Thu Sep 22 18:31:35 2016 +0000
@@ -23,7 +23,7 @@
/*
* @test
- * @bug 6492694 8026567 8048351
+ * @bug 6492694 8026567 8048351 8162363
* @summary Test package deprecation.
* @author bpatel
* @library ../lib/
@@ -72,7 +72,7 @@
checkOutput("allclasses-frame.html", false,
"FooDepr");
checkOutput("class-use/C2.ModalExclusionType.html", true,
- "<td class=\"colFirst\"><a href=\"#unnamed.package\"><Unnamed></a></td>");
+ "<th class=\"colFirst\" scope=\"row\"><a href=\"#unnamed.package\"><Unnamed></a></th>");
checkFiles(false,
"pkg1/package-summary.html",
--- a/langtools/test/jdk/javadoc/doclet/testStylesheet/TestStylesheet.java Thu Sep 22 16:41:15 2016 +0000
+++ b/langtools/test/jdk/javadoc/doclet/testStylesheet/TestStylesheet.java Thu Sep 22 18:31:35 2016 +0000
@@ -23,7 +23,7 @@
/*
* @test
- * @bug 4494033 7028815 7052425 8007338 8023608 8008164 8016549 8072461 8154261
+ * @bug 4494033 7028815 7052425 8007338 8023608 8008164 8016549 8072461 8154261 8162363
* @summary Run tests on doclet stylesheet.
* @author jamieh
* @library ../lib
@@ -139,9 +139,8 @@
+ ".packagesSummary td.colFirst, .packagesSummary td.colSecond, .packagesSummary th.colFirst, .packagesSummary th,\n"
+ ".usesSummary td.colFirst, .usesSummary th.colFirst,\n"
+ ".useSummary td.colFirst, .useSummary th.colFirst,\n"
- + ".overviewSummary td.colOne, .overviewSummary th.colOne,\n"
+ ".memberSummary td.colFirst, .memberSummary th.colFirst,\n"
- + ".memberSummary td.colOne, .memberSummary th.colOne,\n"
+ + ".memberSummary td.colSecond, .memberSummary th.colSecond,\n"
+ ".typeSummary td.colFirst{\n"
+ " width:25%;\n"
+ " vertical-align:top;\n"
--- a/langtools/test/jdk/javadoc/doclet/testTypeAnnotations/TestTypeAnnotations.java Thu Sep 22 16:41:15 2016 +0000
+++ b/langtools/test/jdk/javadoc/doclet/testTypeAnnotations/TestTypeAnnotations.java Thu Sep 22 18:31:35 2016 +0000
@@ -23,7 +23,7 @@
/*
* @test
- * @bug 8005091 8009686 8025633 8026567 6469562 8071982 8071984
+ * @bug 8005091 8009686 8025633 8026567 6469562 8071982 8071984 8162363
* @summary Make sure that type annotations are displayed correctly
* @author Bhavesh Patel
* @library ../lib
@@ -473,7 +473,7 @@
+ "\" title=\"annotation in typeannos\">@RepTypeUseB</a> ... vararg)");
checkOutput("typeannos/RepeatingOnField.html", true,
- "<code>(package private) java.lang.Integer</code></td>\n<td class=\"colLast\">"
+ "<code>(package private) java.lang.Integer</code></td>\n<th class=\"colSecond\" scope=\"row\">"
+ "<code><span class=\"memberNameLink\"><a href=\"../typeannos/RepeatingOnField.html#i1"
+ "\">i1</a></span></code>",
@@ -483,7 +483,7 @@
+ "@RepTypeUseA</a> <a href=\"../typeannos/RepTypeUseB.html\" title="
+ "\"annotation in typeannos\">@RepTypeUseB</a> <a href=\"../typeannos/RepTypeUseB.html"
+ "\" title=\"annotation in typeannos\">@RepTypeUseB</a> java.lang.Integer</code></td>\n"
- + "<td class=\"colLast\"><code><span class=\"memberNameLink\"><a href="
+ + "<th class=\"colSecond\" scope=\"row\"><code><span class=\"memberNameLink\"><a href="
+ "\"../typeannos/RepeatingOnField.html#i2\">i2</a></span></code>",
"<code>(package private) <a href=\"../typeannos/RepTypeUseA.html\" title="
@@ -492,7 +492,7 @@
+ "\"../typeannos/RepTypeUseB.html\" title=\"annotation in typeannos\">"
+ "@RepTypeUseB</a> <a href=\"../typeannos/RepTypeUseB.html\" title="
+ "\"annotation in typeannos\">@RepTypeUseB</a> java.lang.Integer</code>"
- + "</td>\n<td class=\"colLast\"><code><span class=\"memberNameLink\">"
+ + "</td>\n<th class=\"colSecond\" scope=\"row\"><code><span class=\"memberNameLink\">"
+ "<a href=\"../typeannos/RepeatingOnField.html#i3\">i3</a></span></code>",
"<code>(package private) <a href=\"../typeannos/RepAllContextsA.html\" title=\""
@@ -501,7 +501,7 @@
+ "\"../typeannos/RepAllContextsB.html\" title=\"annotation in typeannos\">"
+ "@RepAllContextsB</a> <a href=\"../typeannos/RepAllContextsB.html\" title="
+ "\"annotation in typeannos\">@RepAllContextsB</a> java.lang.Integer</code>"
- + "</td>\n<td class=\"colLast\"><code><span class=\"memberNameLink\">"
+ + "</td>\n<th class=\"colSecond\" scope=\"row\"><code><span class=\"memberNameLink\">"
+ "<a href=\"../typeannos/RepeatingOnField.html#i4\">i4</a></span></code>",
"<code>(package private) java.lang.String <a href=\"../typeannos/RepTypeUseA.html"
@@ -515,7 +515,7 @@
+ "\"annotation in typeannos\">@RepTypeUseA</a> <a href=\"../typeannos/RepTypeUseB.html"
+ "\" title=\"annotation in typeannos\">@RepTypeUseB</a> <a href="
+ "\"../typeannos/RepTypeUseB.html\" title=\"annotation in typeannos\">"
- + "@RepTypeUseB</a> []</code></td>\n<td class=\"colLast\"><code><span class="
+ + "@RepTypeUseB</a> []</code></td>\n<th class=\"colSecond\" scope=\"row\"><code><span class="
+ "\"memberNameLink\"><a href=\"../typeannos/RepeatingOnField.html#sa"
+ "\">sa</a></span></code>",
@@ -572,8 +572,8 @@
+ "@RepTypeUseB</a> [] sa</pre>");
checkOutput("typeannos/RepeatingOnMethod.html", true,
- "<code>(package private) java.lang.String</code></td>\n<td class="
- + "\"colLast\"><code><span class=\"memberNameLink\"><a href="
+ "<code>(package private) java.lang.String</code></td>\n<th class=\"colSecond\" scope=\"row\">"
+ + "<code><span class=\"memberNameLink\"><a href="
+ "\"../typeannos/RepeatingOnMethod.html#test1--\">test1</a></span>()</code>",
"<code>(package private) <a href=\"../typeannos/RepTypeUseA.html\" "
@@ -582,7 +582,7 @@
+ "@RepTypeUseA</a> <a href=\"../typeannos/RepTypeUseB.html\" title="
+ "\"annotation in typeannos\">@RepTypeUseB</a> <a href=\"../typeannos/RepTypeUseB.html"
+ "\" title=\"annotation in typeannos\">@RepTypeUseB</a> java.lang.String</code>"
- + "</td>\n<td class=\"colLast\"><code><span class=\"memberNameLink\">"
+ + "</td>\n<th class=\"colSecond\" scope=\"row\"><code><span class=\"memberNameLink\">"
+ "<a href=\"../typeannos/RepeatingOnMethod.html#test2--\">test2</a>"
+ "</span>()</code>",
@@ -592,7 +592,7 @@
+ "@RepTypeUseA</a> <a href=\"../typeannos/RepTypeUseB.html\" title="
+ "\"annotation in typeannos\">@RepTypeUseB</a> <a href=\"../typeannos/RepTypeUseB.html\" "
+ "title=\"annotation in typeannos\">@RepTypeUseB</a> java.lang.String</code>"
- + "</td>\n<td class=\"colLast\"><code><span class=\"memberNameLink\">"
+ + "</td>\n<th class=\"colSecond\" scope=\"row\"><code><span class=\"memberNameLink\">"
+ "<a href=\"../typeannos/RepeatingOnMethod.html#test3--\">test3</a>"
+ "</span>()</code>",
@@ -602,7 +602,7 @@
+ "@RepAllContextsA</a> <a href=\"../typeannos/RepAllContextsB.html\" "
+ "title=\"annotation in typeannos\">@RepAllContextsB</a> <a href="
+ "\"../typeannos/RepAllContextsB.html\" title=\"annotation in typeannos\">"
- + "@RepAllContextsB</a> java.lang.String</code></td>\n<td class=\"colLast\">"
+ + "@RepAllContextsB</a> java.lang.String</code></td>\n<th class=\"colSecond\" scope=\"row\">"
+ "<code><span class=\"memberNameLink\"><a href=\"../typeannos/RepeatingOnMethod.html"
+ "#test4--\">test4</a></span>()</code>",
@@ -682,12 +682,12 @@
checkOutput("typeannos/RepeatingOnTypeParametersBoundsTypeArgumentsOnMethod.html", true,
"<code>(package private) <T> java.lang.String</code></td>\n"
- + "<td class=\"colLast\"><code><span class=\"memberNameLink\"><a href="
+ + "<th class=\"colSecond\" scope=\"row\"><code><span class=\"memberNameLink\"><a href="
+ "\"../typeannos/RepeatingOnTypeParametersBoundsTypeArgumentsOnMethod.html#"
+ "genericMethod-T-\">genericMethod</a></span>(T t)</code>",
"<code>(package private) <T> java.lang.String</code></td>\n"
- + "<td class=\"colLast\"><code><span class=\"memberNameLink\"><a href="
+ + "<th class=\"colSecond\" scope=\"row\"><code><span class=\"memberNameLink\"><a href="
+ "\"../typeannos/RepeatingOnTypeParametersBoundsTypeArgumentsOnMethod.html#"
+ "genericMethod2-T-\">genericMethod2</a></span>(<a href=\"../typeannos/RepTypeUseA.html"
+ "\" title=\"annotation in typeannos\">@RepTypeUseA</a> <a href=\"../typeannos/RepTypeUseA.html"
@@ -695,7 +695,7 @@
+ "\" title=\"annotation in typeannos\">@RepTypeUseB</a> <a href=\"../typeannos/RepTypeUseB.html"
+ "\" title=\"annotation in typeannos\">@RepTypeUseB</a> T t)</code>",
- "<code>(package private) java.lang.String</code></td>\n<td class=\"colLast\"><code>"
+ "<code>(package private) java.lang.String</code></td>\n<th class=\"colSecond\" scope=\"row\"><code>"
+ "<span class=\"memberNameLink\"><a href=\"../typeannos/RepeatingOnTypeParametersBoundsTypeArgumentsOnMethod.html#"
+ "test--\">test</a></span>()</code>",
--- a/langtools/test/jdk/javadoc/doclet/testUseOption/TestUseOption.java Thu Sep 22 16:41:15 2016 +0000
+++ b/langtools/test/jdk/javadoc/doclet/testUseOption/TestUseOption.java Thu Sep 22 18:31:35 2016 +0000
@@ -23,7 +23,7 @@
/*
* @test
- * @bug 4496290 4985072 7006178 7068595 8016328 8050031 8048351 8081854 8071982
+ * @bug 4496290 4985072 7006178 7068595 8016328 8050031 8048351 8081854 8071982 8162363
* @summary A simple test to ensure class-use files are correct.
* @author jamieh
* @library ../lib
@@ -124,17 +124,17 @@
checkOutput("pkg1/class-use/UsedInterface.html", true,
"Subinterfaces of <a href=\"../../pkg1/UsedInterface.html\" title=\"interface in pkg1\">"
+ "UsedInterface</a> in <a href=\"../../pkg1/package-summary.html\">pkg1",
- "<td class=\"colFirst\"><code>interface </code></td>\n<td class=\"colLast\">"
+ "<td class=\"colFirst\"><code>interface </code></td>\n<th class=\"colSecond\" scope=\"row\">"
+ "<code><span class=\"memberNameLink\"><a href=\"../../pkg1/SubInterface.html\" "
- + "title=\"interface in pkg1\">SubInterface</a><T></span></code> </td>"
+ + "title=\"interface in pkg1\">SubInterface</a><T></span></code></th>"
);
checkOutput("pkg1/class-use/UsedThrowable.html", true,
"Methods in <a href=\"../../pkg1/package-summary.html\">pkg1</a> that throw "
+ "<a href=\"../../pkg1/UsedThrowable.html\" title=\"class in pkg1\">UsedThrowable</a>",
- "<td class=\"colFirst\"><code>void</code></td>\n<td class=\"colLast\"><span class="
+ "<td class=\"colFirst\"><code>void</code></td>\n<th class=\"colSecond\" scope=\"row\"><span class="
+ "\"typeNameLabel\">C1.</span><code><span class=\"memberNameLink\">"
+ "<a href=\"../../pkg1/C1.html#methodInC1ThrowsThrowable--\">methodInC1ThrowsThrowable"
- + "</a></span>()</code> </td>"
+ + "</a></span>()</code></th>"
);
}
@@ -154,9 +154,9 @@
"<li class=\"blockList\"><a name=\"unnamed.package\">"
);
checkOutput("package-use.html", true,
- "<td class=\"colOne\">"
- + "<a href=\"class-use/UsedInC.html#unnamed.package\">UsedInC</a> </td>",
- "<td class=\"colFirst\"><a href=\"#-Unnamed-\"><Unnamed></a></td>\n"
+ "<th class=\"colFirst\" scope=\"row\">"
+ + "<a href=\"class-use/UsedInC.html#unnamed.package\">UsedInC</a></th>",
+ "<th class=\"colFirst\" scope=\"row\"><a href=\"#-Unnamed-\"><Unnamed></a></th>\n"
+ "<td class=\"colLast\"> </td>"
);
}
--- a/langtools/test/jdk/jshell/SimpleRegressionTest.java Thu Sep 22 16:41:15 2016 +0000
+++ b/langtools/test/jdk/jshell/SimpleRegressionTest.java Thu Sep 22 18:31:35 2016 +0000
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2015, 2016, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -22,7 +22,7 @@
*/
/*
- * @test 8130450 8158906 8154374
+ * @test 8130450 8158906 8154374 8166400
* @summary simple regression test
* @build KullaTesting TestingInputStream
* @run testng SimpleRegressionTest
@@ -149,4 +149,21 @@
assertEval("class C {}");
assertEval("C.class.getClassLoader() == Thread.currentThread().getContextClassLoader()", "true");
}
+
+ public void testArayRepresentation() {
+ assertEval("new int[4]", "int[4] { 0, 0, 0, 0 }");
+ assertEval("new int[0]", "int[0] { }");
+ assertEval("new byte[2]", "byte[2] { 0, 0 }");
+ assertEval("new short[] { 1234, 4321 }", "short[2] { 1234, 4321 }");
+ assertEval("new long[] { 123456789 }", "long[1] { 123456789 }");
+ assertEval("new float[] { -23.5645f, 1.0101f }", "float[2] { -23.5645, 1.0101 }");
+ assertEval("new double[] { 1/8, Math.PI }", "double[2] { 0.0, 3.141592653589793 }");
+ assertEval("new String[] { \"hi\", \"low\", null }", "String[3] { \"hi\", \"low\", null }");
+ assertEval("new char[] { 'a', 34, 77 }", "char[3] { 'a', '\"', 'M' }");
+ assertEval("new boolean[] { false, true }", "boolean[2] { false, true }");
+ assertEval("new int[][] { new int[] {44, 55}, new int[] {88,99}}",
+ "int[][2] { int[2] { 44, 55 }, int[2] { 88, 99 } }");
+ assertEval("new Object[] { \"howdy\", new int[] { 33, 44, 55 }, new String[] { \"up\", \"down\" }}",
+ "Object[3] { \"howdy\", int[3] { 33, 44, 55 }, String[2] { \"up\", \"down\" } }");
+ }
}
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/langtools/test/tools/javac/AnonymousClass/AnonymousInSuperCallNegTest.java Thu Sep 22 18:31:35 2016 +0000
@@ -0,0 +1,31 @@
+/*
+ * @test /nodynamiccopyright/
+ * @bug 8166108
+ * @summary Verify that a program cannot access instance state before construction
+ * @compile/fail/ref=AnonymousInSuperCallNegTest.out -XDrawDiagnostics AnonymousInSuperCallNegTest.java
+ */
+
+public class AnonymousInSuperCallNegTest {
+
+ static class Base {
+ Base(Object o) {}
+ }
+
+ static class Outer {
+ class Inner {}
+ }
+
+ public static class JavacBug extends Base {
+ int x;
+ JavacBug() {
+ super(new Outer().new Inner() {
+ void foo() {
+ System.out.println("x = " + x);
+ }
+ }); }
+ }
+
+ public static void main(String[] args) {
+ new JavacBug();
+ }
+}
\ No newline at end of file
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/langtools/test/tools/javac/AnonymousClass/AnonymousInSuperCallNegTest.out Thu Sep 22 18:31:35 2016 +0000
@@ -0,0 +1,2 @@
+AnonymousInSuperCallNegTest.java:23:49: compiler.err.cant.ref.before.ctor.called: x
+1 error
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/langtools/test/tools/javac/AnonymousClass/AnonymousInSuperCallTest.java Thu Sep 22 18:31:35 2016 +0000
@@ -0,0 +1,48 @@
+/*
+ * Copyright (c) 2016, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+/*
+ * @test
+ * @bug 8166108
+ * @summary Verify that javac skips outer this to anonymous inner classes in super type constructor calls
+ *
+ */
+
+public class AnonymousInSuperCallTest {
+
+ static class Base {
+ Base(Object o) {}
+ }
+
+ static class Outer {
+ class Inner {}
+ }
+
+ public static class JavacBug extends Base {
+ JavacBug() { super(new Outer().new Inner() {}); }
+ }
+
+ public static void main(String[] args) {
+ new JavacBug();
+ }
+}
\ No newline at end of file
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/langtools/test/tools/javac/TryWithResources/TwrAndTypeVariables2Test.java Thu Sep 22 18:31:35 2016 +0000
@@ -0,0 +1,47 @@
+/*
+ * Copyright (c) 2016, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+/*
+ * @test
+ * @bug 8163027
+ * @summary AssertionError while compiling program that uses try with resources
+ * @compile TwrAndTypeVariables2Test.java
+ */
+
+abstract class TwrAndTypeVariables2Test_01 implements AutoCloseable {
+ @Override
+ public void close() {
+ }
+ public boolean close(long timeout) {
+ return true;
+ }
+}
+
+public abstract class TwrAndTypeVariables2Test<C extends TwrAndTypeVariables2Test_01> {
+ abstract C newCloseable();
+
+ void m() throws Exception{
+ try(C p= newCloseable()){
+ }
+ }
+}
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/langtools/test/tools/javac/file/MultiReleaseJar/MutliReleaseModuleInfoTest.java Thu Sep 22 18:31:35 2016 +0000
@@ -0,0 +1,148 @@
+/*
+ * Copyright (c) 2016, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+/*
+ * @test
+ * @bug 8156568
+ * @summary Update javac to support compiling against a modular multi-release JAR
+ * @library /tools/lib
+ * @modules jdk.compiler/com.sun.tools.javac.api
+ * jdk.compiler/com.sun.tools.javac.main
+ * @build toolbox.ToolBox toolbox.JarTask toolbox.JavacTask
+ * @run main MutliReleaseModuleInfoTest
+ */
+
+import java.nio.file.Paths;
+import java.util.Set;
+import javax.annotation.processing.AbstractProcessor;
+import javax.annotation.processing.RoundEnvironment;
+import javax.annotation.processing.SupportedAnnotationTypes;
+import javax.lang.model.SourceVersion;
+import javax.lang.model.element.ModuleElement;
+import javax.lang.model.element.ModuleElement.RequiresDirective;
+import javax.lang.model.element.TypeElement;
+import javax.lang.model.util.ElementFilter;
+
+import toolbox.JarTask;
+import toolbox.JavacTask;
+import toolbox.Task;
+import toolbox.ToolBox;
+
+
+public class MutliReleaseModuleInfoTest {
+
+ private final String service_mi =
+ "module service {\n" +
+ "}\n";
+
+ private final String service =
+ "package service;\n" +
+ "public class Service {\n" +
+ "}\n";
+
+ private final String service_mi9 =
+ "module service {\n" +
+ " requires java.desktop;\n" +
+ "}\n";
+
+ private final String service9 =
+ "package service;\n" +
+ "public class Service {\n" +
+ "}\n";
+
+ private final String client_mi =
+ "module client {\n" +
+ " requires service;\n" +
+ "}\n";
+
+ private final String manifest =
+ "Manifest-Version: 1.0\n" +
+ "Multi-Release: true\n";
+
+ private final ToolBox tb = new ToolBox();
+
+ public static void main(String [] args) throws Exception {
+ new MutliReleaseModuleInfoTest().runTest();
+ }
+
+ private void runTest() throws Exception {
+ tb.createDirectories("classes", "classes/META-INF/versions/9");
+ new JavacTask(tb)
+ .outdir("classes")
+ .sources(service_mi, service)
+ .run();
+ new JavacTask(tb)
+ .outdir("classes/META-INF/versions/9")
+ .sources(service_mi9, service9)
+ .run();
+ new JarTask(tb, "multi-release.jar")
+ .manifest(manifest)
+ .baseDir("classes")
+ .files("module-info.class", "service/Service.class",
+ "META-INF/versions/9/module-info.class",
+ "META-INF/versions/9/service/Service.class")
+ .run();
+ tb.cleanDirectory(Paths.get("classes"));
+
+ tb.writeFile("module-info.java", client_mi);
+ Task.Result result = new JavacTask(tb)
+ .outdir("classes")
+ .options("-processor", VerifyRequires.class.getName(),
+ "--module-path", "multi-release.jar")
+ .files("module-info.java")
+ .run();
+ result.writeAll();
+ tb.deleteFiles("module-info.java");
+
+ tb.deleteFiles(
+ "multi-release.jar",
+ "classes/module-info.class",
+ "classes"
+ );
+ }
+
+ @SupportedAnnotationTypes("*")
+ public static final class VerifyRequires extends AbstractProcessor {
+
+ @Override
+ public boolean process(Set<? extends TypeElement> u, RoundEnvironment r) {
+ ModuleElement sm = processingEnv.getElementUtils().getModuleElement("service");
+ if (sm == null) {
+ throw new AssertionError("Cannot find the service module!");
+ }
+ boolean foundjd = false;
+ for (RequiresDirective rd : ElementFilter.requiresIn(sm.getDirectives())) {
+ foundjd |= rd.getDependency().getSimpleName().contentEquals("java.desktop");
+ }
+ if (!foundjd) {
+ throw new AssertionError("Missing dependency on java desktop module!");
+ }
+ return false;
+ }
+
+ @Override
+ public SourceVersion getSupportedSourceVersion() {
+ return SourceVersion.latest();
+ }
+ }
+}