--- a/langtools/make/tools/propertiesparser/parser/Message.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/make/tools/propertiesparser/parser/Message.java Fri Dec 18 09:56:17 2015 -0800
@@ -20,6 +20,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package propertiesparser.parser;
import java.util.ArrayList;
--- a/langtools/make/tools/propertiesparser/parser/MessageFile.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/make/tools/propertiesparser/parser/MessageFile.java Fri Dec 18 09:56:17 2015 -0800
@@ -20,6 +20,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package propertiesparser.parser;
import java.io.*;
--- a/langtools/make/tools/propertiesparser/parser/MessageInfo.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/make/tools/propertiesparser/parser/MessageInfo.java Fri Dec 18 09:56:17 2015 -0800
@@ -20,6 +20,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package propertiesparser.parser;
import propertiesparser.parser.MessageType.CompoundType;
--- a/langtools/make/tools/propertiesparser/parser/MessageLine.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/make/tools/propertiesparser/parser/MessageLine.java Fri Dec 18 09:56:17 2015 -0800
@@ -20,6 +20,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package propertiesparser.parser;
import java.util.regex.Pattern;
--- a/langtools/src/java.compiler/share/classes/javax/tools/DocumentationTool.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/java.compiler/share/classes/javax/tools/DocumentationTool.java Fri Dec 18 09:56:17 2015 -0800
@@ -22,6 +22,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package javax.tools;
import java.io.Writer;
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/ErroneousTree.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/ErroneousTree.java Fri Dec 18 09:56:17 2015 -0800
@@ -22,6 +22,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package com.sun.source.doctree;
import javax.tools.Diagnostic;
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/UnknownBlockTagTree.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/UnknownBlockTagTree.java Fri Dec 18 09:56:17 2015 -0800
@@ -22,6 +22,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package com.sun.source.doctree;
import java.util.List;
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/UnknownInlineTagTree.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/UnknownInlineTagTree.java Fri Dec 18 09:56:17 2015 -0800
@@ -22,6 +22,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package com.sun.source.doctree;
import java.util.List;
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/util/DocTreePathScanner.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/util/DocTreePathScanner.java Fri Dec 18 09:56:17 2015 -0800
@@ -22,6 +22,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package com.sun.source.util;
import com.sun.source.doctree.DocTree;
--- a/langtools/src/jdk.compiler/share/classes/com/sun/source/util/Plugin.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/source/util/Plugin.java Fri Dec 18 09:56:17 2015 -0800
@@ -22,6 +22,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package com.sun.source.util;
import java.util.ServiceLoader;
--- a/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/api/ClientCodeWrapper.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/api/ClientCodeWrapper.java Fri Dec 18 09:56:17 2015 -0800
@@ -23,7 +23,6 @@
* questions.
*/
-
package com.sun.tools.javac.api;
import java.io.File;
--- a/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/api/DiagnosticFormatter.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/api/DiagnosticFormatter.java Fri Dec 18 09:56:17 2015 -0800
@@ -22,6 +22,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package com.sun.tools.javac.api;
import java.util.Locale;
--- a/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/code/AnnoConstruct.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/code/AnnoConstruct.java Fri Dec 18 09:56:17 2015 -0800
@@ -22,6 +22,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package com.sun.tools.javac.code;
import java.lang.annotation.Annotation;
--- a/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/code/TypeMetadata.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/code/TypeMetadata.java Fri Dec 18 09:56:17 2015 -0800
@@ -1,7 +1,6 @@
/*
- * Copyright (c) 2014, Oracle and/or its affiliates. All rights
- * reserved. DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE
- * HEADER.
+ * Copyright (c) 2014, 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
--- a/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/code/Types.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/code/Types.java Fri Dec 18 09:56:17 2015 -0800
@@ -597,36 +597,42 @@
}
public Type removeWildcards(Type site) {
- Type capturedSite = capture(site);
- if (capturedSite != site) {
- Type formalInterface = site.tsym.type;
- ListBuffer<Type> typeargs = new ListBuffer<>();
- List<Type> actualTypeargs = site.getTypeArguments();
- List<Type> capturedTypeargs = capturedSite.getTypeArguments();
- //simply replace the wildcards with its bound
- for (Type t : formalInterface.getTypeArguments()) {
- if (actualTypeargs.head.hasTag(WILDCARD)) {
- WildcardType wt = (WildcardType)actualTypeargs.head;
- Type bound;
- switch (wt.kind) {
- case EXTENDS:
- case UNBOUND:
- CapturedType capVar = (CapturedType)capturedTypeargs.head;
- //use declared bound if it doesn't depend on formal type-args
- bound = capVar.bound.containsAny(capturedSite.getTypeArguments()) ?
- wt.type : capVar.bound;
- break;
- default:
- bound = wt.type;
+ if (site.getTypeArguments().stream().anyMatch(t -> t.hasTag(WILDCARD))) {
+ //compute non-wildcard parameterization - JLS 9.9
+ List<Type> actuals = site.getTypeArguments();
+ List<Type> formals = site.tsym.type.getTypeArguments();
+ ListBuffer<Type> targs = new ListBuffer<>();
+ for (Type formal : formals) {
+ Type actual = actuals.head;
+ Type bound = formal.getUpperBound();
+ if (actuals.head.hasTag(WILDCARD)) {
+ WildcardType wt = (WildcardType)actual;
+ //check that bound does not contain other formals
+ if (bound.containsAny(formals)) {
+ targs.add(wt.type);
+ } else {
+ //compute new type-argument based on declared bound and wildcard bound
+ switch (wt.kind) {
+ case UNBOUND:
+ targs.add(bound);
+ break;
+ case EXTENDS:
+ targs.add(glb(bound, wt.type));
+ break;
+ case SUPER:
+ targs.add(wt.type);
+ break;
+ default:
+ Assert.error("Cannot get here!");
+ }
}
- typeargs.append(bound);
} else {
- typeargs.append(actualTypeargs.head);
+ //not a wildcard - the new type argument remains unchanged
+ targs.add(actual);
}
- actualTypeargs = actualTypeargs.tail;
- capturedTypeargs = capturedTypeargs.tail;
+ actuals = actuals.tail;
}
- return subst(formalInterface, formalInterface.getTypeArguments(), typeargs.toList());
+ return subst(site.tsym.type, formals, targs.toList());
} else {
return site;
}
@@ -1436,12 +1442,13 @@
public boolean isCastable(Type t, Type s, Warner warn) {
if (t == s)
return true;
-
- if (t.isPrimitive() != s.isPrimitive())
+ if (t.isPrimitive() != s.isPrimitive()) {
+ t = skipTypeVars(t, false);
return (isConvertible(t, s, warn)
|| (allowObjectToPrimitiveCast &&
s.isPrimitive() &&
isSubtype(boxedClass(s).type, t)));
+ }
if (warn != warnStack.head) {
try {
warnStack = warnStack.prepend(warn);
--- a/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/comp/LambdaToMethod.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/comp/LambdaToMethod.java Fri Dec 18 09:56:17 2015 -0800
@@ -22,6 +22,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package com.sun.tools.javac.comp;
import com.sun.tools.javac.tree.*;
--- a/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Lower.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Lower.java Fri Dec 18 09:56:17 2015 -0800
@@ -2707,11 +2707,11 @@
if (fvs.nonEmpty()) {
List<Type> addedargtypes = List.nil();
for (List<VarSymbol> l = fvs; l.nonEmpty(); l = l.tail) {
+ final Name pName = proxyName(l.head.name);
+ m.capturedLocals =
+ m.capturedLocals.prepend((VarSymbol)
+ (proxies.findFirst(pName)));
if (TreeInfo.isInitialConstructor(tree)) {
- final Name pName = proxyName(l.head.name);
- m.capturedLocals =
- m.capturedLocals.append((VarSymbol)
- (proxies.findFirst(pName)));
added = added.prepend(
initField(tree.body.pos, pName));
}
--- a/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/file/JRTIndex.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/file/JRTIndex.java Fri Dec 18 09:56:17 2015 -0800
@@ -22,6 +22,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package com.sun.tools.javac.file;
import java.io.IOException;
--- a/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/file/Locations.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/file/Locations.java Fri Dec 18 09:56:17 2015 -0800
@@ -22,6 +22,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package com.sun.tools.javac.file;
import java.io.File;
--- a/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/jvm/Profile.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/jvm/Profile.java Fri Dec 18 09:56:17 2015 -0800
@@ -22,6 +22,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package com.sun.tools.javac.jvm;
import com.sun.tools.javac.util.Context;
--- a/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/main/Arguments.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/main/Arguments.java Fri Dec 18 09:56:17 2015 -0800
@@ -22,6 +22,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package com.sun.tools.javac.main;
import java.io.File;
--- a/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/parser/Parser.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/parser/Parser.java Fri Dec 18 09:56:17 2015 -0800
@@ -23,7 +23,6 @@
* questions.
*/
-
package com.sun.tools.javac.parser;
import com.sun.tools.javac.tree.JCTree.JCCompilationUnit;
--- a/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/platform/JDKPlatformProvider.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/platform/JDKPlatformProvider.java Fri Dec 18 09:56:17 2015 -0800
@@ -22,6 +22,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package com.sun.tools.javac.platform;
import java.io.IOException;
--- a/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/platform/PlatformDescription.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/platform/PlatformDescription.java Fri Dec 18 09:56:17 2015 -0800
@@ -22,6 +22,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package com.sun.tools.javac.platform;
import java.io.Closeable;
--- a/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/platform/PlatformProvider.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/platform/PlatformProvider.java Fri Dec 18 09:56:17 2015 -0800
@@ -22,6 +22,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package com.sun.tools.javac.platform;
/** A collection of platform descriptions that can be selected using {@code -release name}
--- a/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/platform/PlatformUtils.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/platform/PlatformUtils.java Fri Dec 18 09:56:17 2015 -0800
@@ -22,6 +22,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package com.sun.tools.javac.platform;
import com.sun.tools.javac.main.Arguments;
--- a/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/sym/Profiles.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/sym/Profiles.java Fri Dec 18 09:56:17 2015 -0800
@@ -22,6 +22,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package com.sun.tools.javac.sym;
import java.io.BufferedInputStream;
--- a/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/tree/DocCommentTable.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/tree/DocCommentTable.java Fri Dec 18 09:56:17 2015 -0800
@@ -22,6 +22,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package com.sun.tools.javac.tree;
import com.sun.source.doctree.ErroneousTree;
--- a/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/util/AbstractDiagnosticFormatter.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/util/AbstractDiagnosticFormatter.java Fri Dec 18 09:56:17 2015 -0800
@@ -22,6 +22,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package com.sun.tools.javac.util;
import java.nio.file.Path;
--- a/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/util/ForwardingDiagnosticFormatter.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/util/ForwardingDiagnosticFormatter.java Fri Dec 18 09:56:17 2015 -0800
@@ -22,6 +22,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package com.sun.tools.javac.util;
import java.util.Set;
--- a/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/util/Iterators.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/util/Iterators.java Fri Dec 18 09:56:17 2015 -0800
@@ -22,6 +22,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package com.sun.tools.javac.util;
import java.util.Iterator;
--- a/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/util/RawDiagnosticFormatter.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/util/RawDiagnosticFormatter.java Fri Dec 18 09:56:17 2015 -0800
@@ -22,6 +22,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package com.sun.tools.javac.util;
import java.util.Collection;
--- a/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/util/RichDiagnosticFormatter.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/util/RichDiagnosticFormatter.java Fri Dec 18 09:56:17 2015 -0800
@@ -22,6 +22,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package com.sun.tools.javac.util;
import java.nio.file.Path;
--- a/langtools/src/jdk.compiler/share/classes/com/sun/tools/javah/LLNI.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/tools/javah/LLNI.java Fri Dec 18 09:56:17 2015 -0800
@@ -23,7 +23,6 @@
* questions.
*/
-
package com.sun.tools.javah;
import java.io.OutputStream;
--- a/langtools/src/jdk.compiler/share/classes/com/sun/tools/javah/Mangle.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/tools/javah/Mangle.java Fri Dec 18 09:56:17 2015 -0800
@@ -23,7 +23,6 @@
* questions.
*/
-
package com.sun.tools.javah;
import javax.lang.model.element.ExecutableElement;
--- a/langtools/src/jdk.compiler/share/classes/com/sun/tools/javah/TypeSignature.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/tools/javah/TypeSignature.java Fri Dec 18 09:56:17 2015 -0800
@@ -23,7 +23,6 @@
* questions.
*/
-
package com.sun.tools.javah;
import java.util.*;
--- a/langtools/src/jdk.compiler/share/classes/com/sun/tools/javah/Util.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/tools/javah/Util.java Fri Dec 18 09:56:17 2015 -0800
@@ -23,7 +23,6 @@
* questions.
*/
-
package com.sun.tools.javah;
import java.io.PrintWriter;
--- a/langtools/src/jdk.compiler/share/classes/com/sun/tools/sjavac/PubApiExtractor.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/tools/sjavac/PubApiExtractor.java Fri Dec 18 09:56:17 2015 -0800
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2012-2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2012, 2014, 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
--- a/langtools/src/jdk.compiler/share/classes/com/sun/tools/sjavac/client/PortFileInaccessibleException.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/tools/sjavac/client/PortFileInaccessibleException.java Fri Dec 18 09:56:17 2015 -0800
@@ -22,6 +22,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package com.sun.tools.sjavac.client;
import java.io.IOException;
--- a/langtools/src/jdk.compiler/share/classes/com/sun/tools/sjavac/comp/FileObjectWithLocation.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/tools/sjavac/comp/FileObjectWithLocation.java Fri Dec 18 09:56:17 2015 -0800
@@ -22,6 +22,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package com.sun.tools.sjavac.comp;
import javax.tools.FileObject;
--- a/langtools/src/jdk.compiler/share/classes/com/sun/tools/sjavac/comp/JavaFileObjectWithLocation.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/tools/sjavac/comp/JavaFileObjectWithLocation.java Fri Dec 18 09:56:17 2015 -0800
@@ -22,6 +22,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package com.sun.tools.sjavac.comp;
import javax.tools.ForwardingJavaFileObject;
--- a/langtools/src/jdk.compiler/share/classes/com/sun/tools/sjavac/comp/PathAndPackageVerifier.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/tools/sjavac/comp/PathAndPackageVerifier.java Fri Dec 18 09:56:17 2015 -0800
@@ -22,6 +22,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package com.sun.tools.sjavac.comp;
import java.nio.file.Path;
--- a/langtools/src/jdk.compiler/share/classes/com/sun/tools/sjavac/comp/PooledSjavac.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/tools/sjavac/comp/PooledSjavac.java Fri Dec 18 09:56:17 2015 -0800
@@ -22,6 +22,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package com.sun.tools.sjavac.comp;
import java.io.Writer;
--- a/langtools/src/jdk.compiler/share/classes/com/sun/tools/sjavac/comp/SjavacImpl.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/tools/sjavac/comp/SjavacImpl.java Fri Dec 18 09:56:17 2015 -0800
@@ -22,6 +22,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package com.sun.tools.sjavac.comp;
import java.io.IOException;
--- a/langtools/src/jdk.compiler/share/classes/com/sun/tools/sjavac/comp/SmartWriter.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/tools/sjavac/comp/SmartWriter.java Fri Dec 18 09:56:17 2015 -0800
@@ -22,6 +22,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package com.sun.tools.sjavac.comp;
import java.io.*;
--- a/langtools/src/jdk.compiler/share/classes/com/sun/tools/sjavac/pubapi/ArrayTypeDesc.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/tools/sjavac/pubapi/ArrayTypeDesc.java Fri Dec 18 09:56:17 2015 -0800
@@ -22,6 +22,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package com.sun.tools.sjavac.pubapi;
import java.io.Serializable;
--- a/langtools/src/jdk.compiler/share/classes/com/sun/tools/sjavac/pubapi/PrimitiveTypeDesc.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/tools/sjavac/pubapi/PrimitiveTypeDesc.java Fri Dec 18 09:56:17 2015 -0800
@@ -22,6 +22,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package com.sun.tools.sjavac.pubapi;
import java.io.Serializable;
--- a/langtools/src/jdk.compiler/share/classes/com/sun/tools/sjavac/pubapi/PubApi.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/tools/sjavac/pubapi/PubApi.java Fri Dec 18 09:56:17 2015 -0800
@@ -22,6 +22,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package com.sun.tools.sjavac.pubapi;
--- a/langtools/src/jdk.compiler/share/classes/com/sun/tools/sjavac/pubapi/PubMethod.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/tools/sjavac/pubapi/PubMethod.java Fri Dec 18 09:56:17 2015 -0800
@@ -22,6 +22,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package com.sun.tools.sjavac.pubapi;
import java.io.Serializable;
--- a/langtools/src/jdk.compiler/share/classes/com/sun/tools/sjavac/pubapi/PubType.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/tools/sjavac/pubapi/PubType.java Fri Dec 18 09:56:17 2015 -0800
@@ -22,6 +22,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package com.sun.tools.sjavac.pubapi;
import java.io.Serializable;
--- a/langtools/src/jdk.compiler/share/classes/com/sun/tools/sjavac/pubapi/PubVar.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/tools/sjavac/pubapi/PubVar.java Fri Dec 18 09:56:17 2015 -0800
@@ -22,6 +22,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package com.sun.tools.sjavac.pubapi;
import java.io.Serializable;
--- a/langtools/src/jdk.compiler/share/classes/com/sun/tools/sjavac/pubapi/ReferenceTypeDesc.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/tools/sjavac/pubapi/ReferenceTypeDesc.java Fri Dec 18 09:56:17 2015 -0800
@@ -22,6 +22,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package com.sun.tools.sjavac.pubapi;
import java.io.Serializable;
--- a/langtools/src/jdk.compiler/share/classes/com/sun/tools/sjavac/pubapi/TypeDesc.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/tools/sjavac/pubapi/TypeDesc.java Fri Dec 18 09:56:17 2015 -0800
@@ -22,6 +22,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package com.sun.tools.sjavac.pubapi;
import java.io.Serializable;
--- a/langtools/src/jdk.compiler/share/classes/com/sun/tools/sjavac/pubapi/TypeVarTypeDesc.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/tools/sjavac/pubapi/TypeVarTypeDesc.java Fri Dec 18 09:56:17 2015 -0800
@@ -22,6 +22,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package com.sun.tools.sjavac.pubapi;
import java.io.Serializable;
--- a/langtools/src/jdk.compiler/share/classes/com/sun/tools/sjavac/server/IdleResetSjavac.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/tools/sjavac/server/IdleResetSjavac.java Fri Dec 18 09:56:17 2015 -0800
@@ -22,6 +22,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package com.sun.tools.sjavac.server;
import java.io.Writer;
--- a/langtools/src/jdk.compiler/share/classes/com/sun/tools/sjavac/server/PortFileMonitor.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/tools/sjavac/server/PortFileMonitor.java Fri Dec 18 09:56:17 2015 -0800
@@ -22,6 +22,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package com.sun.tools.sjavac.server;
import java.io.IOException;
--- a/langtools/src/jdk.compiler/share/classes/com/sun/tools/sjavac/server/RequestHandler.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/tools/sjavac/server/RequestHandler.java Fri Dec 18 09:56:17 2015 -0800
@@ -22,6 +22,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package com.sun.tools.sjavac.server;
import static com.sun.tools.sjavac.server.SjavacServer.LINE_TYPE_RC;
--- a/langtools/src/jdk.compiler/share/classes/com/sun/tools/sjavac/server/Sjavac.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/tools/sjavac/server/Sjavac.java Fri Dec 18 09:56:17 2015 -0800
@@ -22,6 +22,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package com.sun.tools.sjavac.server;
import java.io.Writer;
--- a/langtools/src/jdk.compiler/share/classes/com/sun/tools/sjavac/server/SjavacServer.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/tools/sjavac/server/SjavacServer.java Fri Dec 18 09:56:17 2015 -0800
@@ -22,6 +22,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package com.sun.tools.sjavac.server;
import java.io.FileNotFoundException;
--- a/langtools/src/jdk.compiler/share/classes/com/sun/tools/sjavac/server/Terminable.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/tools/sjavac/server/Terminable.java Fri Dec 18 09:56:17 2015 -0800
@@ -22,6 +22,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package com.sun.tools.sjavac.server;
/**
--- a/langtools/src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/AbstractProfileIndexWriter.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/AbstractProfileIndexWriter.java Fri Dec 18 09:56:17 2015 -0800
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2013, 2015 Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2015, 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
--- a/langtools/src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/AnnotationTypeFieldWriterImpl.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/AnnotationTypeFieldWriterImpl.java Fri Dec 18 09:56:17 2015 -0800
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2013, 2015 Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2015, 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
--- a/langtools/src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/HtmlDoclet.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/HtmlDoclet.java Fri Dec 18 09:56:17 2015 -0800
@@ -22,6 +22,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package com.sun.tools.doclets.formats.html;
import java.io.*;
--- a/langtools/src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/LinkInfoImpl.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/LinkInfoImpl.java Fri Dec 18 09:56:17 2015 -0800
@@ -23,7 +23,6 @@
* questions.
*/
-
package com.sun.tools.doclets.formats.html;
import com.sun.javadoc.*;
--- a/langtools/src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/AnnotationTypeWriter.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/AnnotationTypeWriter.java Fri Dec 18 09:56:17 2015 -0800
@@ -23,7 +23,6 @@
* questions.
*/
-
package com.sun.tools.doclets.internal.toolkit;
import java.io.*;
--- a/langtools/src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/ClassWriter.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/ClassWriter.java Fri Dec 18 09:56:17 2015 -0800
@@ -23,7 +23,6 @@
* questions.
*/
-
package com.sun.tools.doclets.internal.toolkit;
import java.io.*;
--- a/langtools/src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/ProfilePackageSummaryWriter.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/ProfilePackageSummaryWriter.java Fri Dec 18 09:56:17 2015 -0800
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2013, 2015 Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2015, 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
--- a/langtools/src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/ProfileSummaryWriter.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/ProfileSummaryWriter.java Fri Dec 18 09:56:17 2015 -0800
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2013, 2015 Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2015, 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
--- a/langtools/src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/builders/LayoutParser.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/builders/LayoutParser.java Fri Dec 18 09:56:17 2015 -0800
@@ -22,6 +22,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package com.sun.tools.doclets.internal.toolkit.builders;
import java.io.*;
--- a/langtools/src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/taglets/CodeTaglet.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/taglets/CodeTaglet.java Fri Dec 18 09:56:17 2015 -0800
@@ -22,6 +22,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package com.sun.tools.doclets.internal.toolkit.taglets;
import java.util.Map;
--- a/langtools/src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/taglets/IndexTaglet.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/taglets/IndexTaglet.java Fri Dec 18 09:56:17 2015 -0800
@@ -22,6 +22,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package com.sun.tools.doclets.internal.toolkit.taglets;
import java.util.Map;
--- a/langtools/src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/taglets/LiteralTaglet.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/taglets/LiteralTaglet.java Fri Dec 18 09:56:17 2015 -0800
@@ -22,6 +22,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package com.sun.tools.doclets.internal.toolkit.taglets;
import java.util.Map;
--- a/langtools/src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/util/MessageRetriever.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/util/MessageRetriever.java Fri Dec 18 09:56:17 2015 -0800
@@ -22,6 +22,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package com.sun.tools.doclets.internal.toolkit.util;
import java.text.MessageFormat;
--- a/langtools/src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/util/TextTag.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/util/TextTag.java Fri Dec 18 09:56:17 2015 -0800
@@ -22,6 +22,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package com.sun.tools.doclets.internal.toolkit.util;
import com.sun.javadoc.*;
--- a/langtools/src/jdk.javadoc/share/classes/com/sun/tools/javadoc/api/JavadocTaskImpl.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.javadoc/share/classes/com/sun/tools/javadoc/api/JavadocTaskImpl.java Fri Dec 18 09:56:17 2015 -0800
@@ -22,6 +22,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package com.sun.tools.javadoc.api;
import com.sun.tools.javac.util.ClientCodeException;
--- a/langtools/src/jdk.jdeps/share/classes/com/sun/tools/classfile/ClassWriter.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.jdeps/share/classes/com/sun/tools/classfile/ClassWriter.java Fri Dec 18 09:56:17 2015 -0800
@@ -1,4 +1,3 @@
-
/*
* Copyright (c) 2008, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -24,6 +23,7 @@
* questions.
*/
+
package com.sun.tools.classfile;
import java.io.ByteArrayOutputStream;
--- a/langtools/src/jdk.jdeps/share/classes/com/sun/tools/classfile/CompilationID_attribute.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.jdeps/share/classes/com/sun/tools/classfile/CompilationID_attribute.java Fri Dec 18 09:56:17 2015 -0800
@@ -22,6 +22,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package com.sun.tools.classfile;
import java.io.IOException;
--- a/langtools/src/jdk.jdeps/share/classes/com/sun/tools/classfile/ConstantPoolException.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.jdeps/share/classes/com/sun/tools/classfile/ConstantPoolException.java Fri Dec 18 09:56:17 2015 -0800
@@ -23,7 +23,6 @@
* questions.
*/
-
package com.sun.tools.classfile;
/*
--- a/langtools/src/jdk.jdeps/share/classes/com/sun/tools/classfile/Dependencies.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.jdeps/share/classes/com/sun/tools/classfile/Dependencies.java Fri Dec 18 09:56:17 2015 -0800
@@ -22,6 +22,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package com.sun.tools.classfile;
import java.util.Deque;
--- a/langtools/src/jdk.jdeps/share/classes/com/sun/tools/classfile/Descriptor.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.jdeps/share/classes/com/sun/tools/classfile/Descriptor.java Fri Dec 18 09:56:17 2015 -0800
@@ -23,7 +23,6 @@
* questions.
*/
-
package com.sun.tools.classfile;
import java.io.IOException;
--- a/langtools/src/jdk.jdeps/share/classes/com/sun/tools/classfile/DescriptorException.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.jdeps/share/classes/com/sun/tools/classfile/DescriptorException.java Fri Dec 18 09:56:17 2015 -0800
@@ -23,7 +23,6 @@
* questions.
*/
-
package com.sun.tools.classfile;
/*
--- a/langtools/src/jdk.jdeps/share/classes/com/sun/tools/classfile/EnclosingMethod_attribute.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.jdeps/share/classes/com/sun/tools/classfile/EnclosingMethod_attribute.java Fri Dec 18 09:56:17 2015 -0800
@@ -1,4 +1,3 @@
-
/*
* Copyright (c) 2007, 2008, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -24,6 +23,7 @@
* questions.
*/
+
package com.sun.tools.classfile;
import java.io.IOException;
--- a/langtools/src/jdk.jdeps/share/classes/com/sun/tools/classfile/SourceID_attribute.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.jdeps/share/classes/com/sun/tools/classfile/SourceID_attribute.java Fri Dec 18 09:56:17 2015 -0800
@@ -22,6 +22,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package com.sun.tools.classfile;
import java.io.IOException;
--- a/langtools/src/jdk.jdeps/share/classes/com/sun/tools/javap/TypeAnnotationWriter.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.jdeps/share/classes/com/sun/tools/javap/TypeAnnotationWriter.java Fri Dec 18 09:56:17 2015 -0800
@@ -22,6 +22,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package com.sun.tools.javap;
import com.sun.tools.classfile.Attribute;
--- a/langtools/src/jdk.jdeps/share/classes/com/sun/tools/jdeps/Analyzer.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.jdeps/share/classes/com/sun/tools/jdeps/Analyzer.java Fri Dec 18 09:56:17 2015 -0800
@@ -22,6 +22,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package com.sun.tools.jdeps;
import java.io.PrintStream;
--- a/langtools/src/jdk.jdeps/share/classes/com/sun/tools/jdeps/Archive.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.jdeps/share/classes/com/sun/tools/jdeps/Archive.java Fri Dec 18 09:56:17 2015 -0800
@@ -22,6 +22,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package com.sun.tools.jdeps;
import com.sun.tools.classfile.ClassFile;
--- a/langtools/src/jdk.jdeps/share/classes/com/sun/tools/jdeps/ClassFileReader.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.jdeps/share/classes/com/sun/tools/jdeps/ClassFileReader.java Fri Dec 18 09:56:17 2015 -0800
@@ -22,6 +22,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package com.sun.tools.jdeps;
import com.sun.tools.classfile.ClassFile;
--- a/langtools/src/jdk.jdeps/share/classes/com/sun/tools/jdeps/JdepsTask.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.jdeps/share/classes/com/sun/tools/jdeps/JdepsTask.java Fri Dec 18 09:56:17 2015 -0800
@@ -22,6 +22,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package com.sun.tools.jdeps;
import com.sun.tools.classfile.AccessFlags;
--- a/langtools/src/jdk.jdeps/share/classes/com/sun/tools/jdeps/Module.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.jdeps/share/classes/com/sun/tools/jdeps/Module.java Fri Dec 18 09:56:17 2015 -0800
@@ -22,6 +22,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package com.sun.tools.jdeps;
import java.util.Collections;
--- a/langtools/src/jdk.jdeps/share/classes/com/sun/tools/jdeps/ModulesXmlReader.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.jdeps/share/classes/com/sun/tools/jdeps/ModulesXmlReader.java Fri Dec 18 09:56:17 2015 -0800
@@ -22,6 +22,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package com.sun.tools.jdeps;
import java.io.IOException;
--- a/langtools/src/jdk.jdeps/share/classes/com/sun/tools/jdeps/PlatformClassPath.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.jdeps/share/classes/com/sun/tools/jdeps/PlatformClassPath.java Fri Dec 18 09:56:17 2015 -0800
@@ -22,6 +22,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package com.sun.tools.jdeps;
import com.sun.tools.classfile.ClassFile;
--- a/langtools/src/jdk.jdeps/share/classes/com/sun/tools/jdeps/Profile.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.jdeps/share/classes/com/sun/tools/jdeps/Profile.java Fri Dec 18 09:56:17 2015 -0800
@@ -22,6 +22,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package com.sun.tools.jdeps;
import java.io.IOException;
--- a/langtools/src/jdk.jshell/share/classes/jdk/internal/jshell/remote/RemoteCodes.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.jshell/share/classes/jdk/internal/jshell/remote/RemoteCodes.java Fri Dec 18 09:56:17 2015 -0800
@@ -23,7 +23,6 @@
* questions.
*/
-
package jdk.internal.jshell.remote;
import java.util.regex.Pattern;
--- a/langtools/src/jdk.jshell/share/classes/jdk/internal/jshell/tool/EditingHistory.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.jshell/share/classes/jdk/internal/jshell/tool/EditingHistory.java Fri Dec 18 09:56:17 2015 -0800
@@ -22,6 +22,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package jdk.internal.jshell.tool;
import java.util.ArrayList;
--- a/langtools/src/jdk.jshell/share/classes/jdk/internal/jshell/tool/StopDetectingInputStream.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.jshell/share/classes/jdk/internal/jshell/tool/StopDetectingInputStream.java Fri Dec 18 09:56:17 2015 -0800
@@ -22,6 +22,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package jdk.internal.jshell.tool;
import java.io.IOException;
--- a/langtools/src/jdk.jshell/share/classes/jdk/jshell/DeclarationSnippet.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.jshell/share/classes/jdk/jshell/DeclarationSnippet.java Fri Dec 18 09:56:17 2015 -0800
@@ -22,6 +22,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package jdk.jshell;
import java.util.Collection;
--- a/langtools/src/jdk.jshell/share/classes/jdk/jshell/ErroneousSnippet.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.jshell/share/classes/jdk/jshell/ErroneousSnippet.java Fri Dec 18 09:56:17 2015 -0800
@@ -22,6 +22,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package jdk.jshell;
import jdk.jshell.Key.ErroneousKey;
--- a/langtools/src/jdk.jshell/share/classes/jdk/jshell/Eval.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.jshell/share/classes/jdk/jshell/Eval.java Fri Dec 18 09:56:17 2015 -0800
@@ -22,6 +22,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package jdk.jshell;
import java.util.ArrayList;
--- a/langtools/src/jdk.jshell/share/classes/jdk/jshell/ExecutionControl.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.jshell/share/classes/jdk/jshell/ExecutionControl.java Fri Dec 18 09:56:17 2015 -0800
@@ -33,6 +33,7 @@
import java.net.Socket;
import com.sun.jdi.*;
import java.io.EOFException;
+import java.util.HashMap;
import java.util.List;
import java.util.Map;
import jdk.jshell.ClassTracker.ClassInfo;
@@ -247,17 +248,18 @@
//MessageOutput.textResources = ResourceBundle.getBundle("impl.TTYResources",
// Locale.getDefault());
- String connect = "com.sun.jdi.CommandLineLaunch:";
- String cmdLine = "jdk.internal.jshell.remote.RemoteAgent";
+ String connectorName = "com.sun.jdi.CommandLineLaunch";
String classPath = System.getProperty("java.class.path");
String bootclassPath = System.getProperty("sun.boot.class.path");
- String javaArgs = "-classpath " + classPath + " -Xbootclasspath:" + bootclassPath;
+ String javaArgs = "-classpath \"" + classPath + "\" -Xbootclasspath:\"" + bootclassPath + "\"";
+ Map<String, String> argumentName2Value = new HashMap<>();
+ argumentName2Value.put("main", "jdk.internal.jshell.remote.RemoteAgent " + port);
+ argumentName2Value.put("options", javaArgs);
- String connectSpec = connect + "main=" + cmdLine + " " + port + ",options=" + javaArgs + ",";
boolean launchImmediately = true;
int traceFlags = 0;// VirtualMachine.TRACE_SENDS | VirtualMachine.TRACE_EVENTS;
- env.init(connectSpec, launchImmediately, traceFlags);
+ env.init(connectorName, argumentName2Value, launchImmediately, traceFlags);
if (env.connection().isOpen() && env.vm().canBeModified()) {
/*
--- a/langtools/src/jdk.jshell/share/classes/jdk/jshell/ExpressionSnippet.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.jshell/share/classes/jdk/jshell/ExpressionSnippet.java Fri Dec 18 09:56:17 2015 -0800
@@ -22,6 +22,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package jdk.jshell;
import jdk.jshell.Key.ExpressionKey;
--- a/langtools/src/jdk.jshell/share/classes/jdk/jshell/ImportSnippet.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.jshell/share/classes/jdk/jshell/ImportSnippet.java Fri Dec 18 09:56:17 2015 -0800
@@ -22,6 +22,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package jdk.jshell;
import jdk.jshell.Key.ImportKey;
--- a/langtools/src/jdk.jshell/share/classes/jdk/jshell/JDIConnection.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.jshell/share/classes/jdk/jshell/JDIConnection.java Fri Dec 18 09:56:17 2015 -0800
@@ -38,8 +38,9 @@
import com.sun.jdi.connect.*;
import java.util.*;
-import java.util.regex.*;
+import java.util.Map.Entry;
import java.io.*;
+
import static jdk.internal.jshell.debug.InternalDebugControl.DBG_GEN;
/**
@@ -83,239 +84,35 @@
return null;
}
- private Map <String, com.sun.jdi.connect.Connector.Argument> parseConnectorArgs(Connector connector, String argString) {
- Map<String, com.sun.jdi.connect.Connector.Argument> arguments = connector.defaultArguments();
+ private Map <String, Connector.Argument> mergeConnectorArgs(Connector connector, Map<String, String> argumentName2Value) {
+ Map<String, Connector.Argument> arguments = connector.defaultArguments();
- /*
- * We are parsing strings of the form:
- * name1=value1,[name2=value2,...]
- * However, the value1...valuen substrings may contain
- * embedded comma(s), so make provision for quoting inside
- * the value substrings. (Bug ID 4285874)
- */
- String regexPattern =
- "(quote=[^,]+,)|" + // special case for quote=.,
- "(\\w+=)" + // name=
- "(((\"[^\"]*\")|" + // ( "l , ue"
- "('[^']*')|" + // 'l , ue'
- "([^,'\"]+))+,)"; // v a l u e )+ ,
- Pattern p = Pattern.compile(regexPattern);
- Matcher m = p.matcher(argString);
- while (m.find()) {
- int startPosition = m.start();
- int endPosition = m.end();
- if (startPosition > 0) {
- /*
- * It is an error if parsing skips over any part of argString.
- */
- throw new IllegalArgumentException("Illegal connector argument" +
- argString);
- }
+ for (Entry<String, String> argumentEntry : argumentName2Value.entrySet()) {
+ String name = argumentEntry.getKey();
+ String value = argumentEntry.getValue();
+ Connector.Argument argument = arguments.get(name);
- String token = argString.substring(startPosition, endPosition);
- int index = token.indexOf('=');
- String name = token.substring(0, index);
- String value = token.substring(index + 1,
- token.length() - 1); // Remove comma delimiter
-
- /*
- * for values enclosed in quotes (single and/or double quotes)
- * strip off enclosing quote chars
- * needed for quote enclosed delimited substrings
- */
- if (name.equals("options")) {
- StringBuilder sb = new StringBuilder();
- for (String s : splitStringAtNonEnclosedWhiteSpace(value)) {
- while (isEnclosed(s, "\"") || isEnclosed(s, "'")) {
- s = s.substring(1, s.length() - 1);
- }
- sb.append(s);
- sb.append(" ");
- }
- value = sb.toString();
- }
-
- Connector.Argument argument = arguments.get(name);
if (argument == null) {
throw new IllegalArgumentException("Argument is not defined for connector:" +
name + " -- " + connector.name());
}
+
argument.setValue(value);
-
- argString = argString.substring(endPosition); // Remove what was just parsed...
- m = p.matcher(argString); // and parse again on what is left.
}
- if ((! argString.equals(",")) && (argString.length() > 0)) {
- /*
- * It is an error if any part of argString is left over,
- * unless it was empty to begin with.
- */
- throw new IllegalArgumentException("Illegal connector argument" + argString);
- }
+
return arguments;
}
- private static boolean isEnclosed(String value, String enclosingChar) {
- if (value.indexOf(enclosingChar) == 0) {
- int lastIndex = value.lastIndexOf(enclosingChar);
- if (lastIndex > 0 && lastIndex == value.length() - 1) {
- return true;
- }
- }
- return false;
- }
+ JDIConnection(JDIEnv env, String connectorName, Map<String, String> argumentName2Value, int traceFlags, JShell proc) {
+ this.env = env;
+ this.proc = proc;
+ this.connector = findConnector(connectorName);
- private static List<String> splitStringAtNonEnclosedWhiteSpace(String value) throws IllegalArgumentException {
- List<String> al = new ArrayList<>();
- char[] arr;
- int startPosition = 0;
- int endPosition;
- final char SPACE = ' ';
- final char DOUBLEQ = '"';
- final char SINGLEQ = '\'';
-
- /*
- * An "open" or "active" enclosing state is where
- * the first valid start quote qualifier is found,
- * and there is a search in progress for the
- * relevant end matching quote
- *
- * enclosingTargetChar set to SPACE
- * is used to signal a non open enclosing state
- */
- char enclosingTargetChar = SPACE;
-
- if (value == null) {
- throw new IllegalArgumentException("value string is null");
+ if (connector == null) {
+ throw new IllegalArgumentException("No connector named: " + connectorName);
}
- // split parameter string into individual chars
- arr = value.toCharArray();
-
- for (int i = 0; i < arr.length; i++) {
- switch (arr[i]) {
- case SPACE: {
- // do nothing for spaces
- // unless last in array
- if (isLastChar(arr, i)) {
- endPosition = i;
- // break for substring creation
- break;
- }
- continue;
- }
- case DOUBLEQ:
- case SINGLEQ: {
- if (enclosingTargetChar == arr[i]) {
- // potential match to close open enclosing
- if (isNextCharWhitespace(arr, i)) {
- // if peek next is whitespace
- // then enclosing is a valid substring
- endPosition = i;
- // reset enclosing target char
- enclosingTargetChar = SPACE;
- // break for substring creation
- break;
- }
- }
- if (enclosingTargetChar == SPACE) {
- // no open enclosing state
- // handle as normal char
- if (isPreviousCharWhitespace(arr, i)) {
- startPosition = i;
- // peek forward for end candidates
- if (value.indexOf(arr[i], i + 1) >= 0) {
- // set open enclosing state by
- // setting up the target char
- enclosingTargetChar = arr[i];
- } else {
- // no more target chars left to match
- // end enclosing, handle as normal char
- if (isNextCharWhitespace(arr, i)) {
- endPosition = i;
- // break for substring creation
- break;
- }
- }
- }
- }
- continue;
- }
- default: {
- // normal non-space, non-" and non-' chars
- if (enclosingTargetChar == SPACE) {
- // no open enclosing state
- if (isPreviousCharWhitespace(arr, i)) {
- // start of space delim substring
- startPosition = i;
- }
- if (isNextCharWhitespace(arr, i)) {
- // end of space delim substring
- endPosition = i;
- // break for substring creation
- break;
- }
- }
- continue;
- }
- }
-
- // break's end up here
- if (startPosition > endPosition) {
- throw new IllegalArgumentException("Illegal option values");
- }
-
- // extract substring and add to List<String>
- al.add(value.substring(startPosition, ++endPosition));
-
- // set new start position
- i = startPosition = endPosition;
-
- } // for loop
-
- return al;
- }
-
- static private boolean isPreviousCharWhitespace(char[] arr, int curr_pos) {
- return isCharWhitespace(arr, curr_pos - 1);
- }
-
- static private boolean isNextCharWhitespace(char[] arr, int curr_pos) {
- return isCharWhitespace(arr, curr_pos + 1);
- }
-
- static private boolean isCharWhitespace(char[] arr, int pos) {
- if (pos < 0 || pos >= arr.length) {
- // outside arraybounds is considered an implicit space
- return true;
- }
- return (arr[pos] == ' ');
- }
-
- static private boolean isLastChar(char[] arr, int pos) {
- return (pos + 1 == arr.length);
- }
-
- JDIConnection(JDIEnv env, String connectSpec, int traceFlags, JShell proc) {
- this.env = env;
- this.proc = proc;
- String nameString;
- String argString;
- int index = connectSpec.indexOf(':');
- if (index == -1) {
- nameString = connectSpec;
- argString = "";
- } else {
- nameString = connectSpec.substring(0, index);
- argString = connectSpec.substring(index + 1);
- }
-
- connector = findConnector(nameString);
- if (connector == null) {
- throw new IllegalArgumentException("No connector named: " + nameString);
- }
-
- connectorArgs = parseConnectorArgs(connector, argString);
+ connectorArgs = mergeConnectorArgs(connector, argumentName2Value);
this.traceFlags = traceFlags;
}
--- a/langtools/src/jdk.jshell/share/classes/jdk/jshell/JDIEnv.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.jshell/share/classes/jdk/jshell/JDIEnv.java Fri Dec 18 09:56:17 2015 -0800
@@ -25,6 +25,8 @@
package jdk.jshell;
+import java.util.Map;
+
import com.sun.jdi.*;
import static jdk.internal.jshell.debug.InternalDebugControl.DBG_GEN;
@@ -41,8 +43,8 @@
this.state = state;
}
- void init(String connectSpec, boolean openNow, int flags) {
- connection = new JDIConnection(this, connectSpec, flags, state);
+ void init(String connectorName, Map<String, String> argumentName2Value, boolean openNow, int flags) {
+ connection = new JDIConnection(this, connectorName, argumentName2Value, flags, state);
if (!connection.isLaunch() || openNow) {
connection.open();
}
--- a/langtools/src/jdk.jshell/share/classes/jdk/jshell/JDIEventHandler.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.jshell/share/classes/jdk/jshell/JDIEventHandler.java Fri Dec 18 09:56:17 2015 -0800
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1998, 2011, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1998, 2014, 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
--- a/langtools/src/jdk.jshell/share/classes/jdk/jshell/MaskCommentsAndModifiers.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.jshell/share/classes/jdk/jshell/MaskCommentsAndModifiers.java Fri Dec 18 09:56:17 2015 -0800
@@ -22,6 +22,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package jdk.jshell;
import java.util.Set;
--- a/langtools/src/jdk.jshell/share/classes/jdk/jshell/MethodSnippet.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.jshell/share/classes/jdk/jshell/MethodSnippet.java Fri Dec 18 09:56:17 2015 -0800
@@ -22,6 +22,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package jdk.jshell;
import java.util.Collection;
--- a/langtools/src/jdk.jshell/share/classes/jdk/jshell/OuterWrap.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.jshell/share/classes/jdk/jshell/OuterWrap.java Fri Dec 18 09:56:17 2015 -0800
@@ -22,6 +22,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package jdk.jshell;
import jdk.jshell.Wrap.CompoundWrap;
--- a/langtools/src/jdk.jshell/share/classes/jdk/jshell/PersistentSnippet.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.jshell/share/classes/jdk/jshell/PersistentSnippet.java Fri Dec 18 09:56:17 2015 -0800
@@ -22,6 +22,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package jdk.jshell;
/**
--- a/langtools/src/jdk.jshell/share/classes/jdk/jshell/ReplParser.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.jshell/share/classes/jdk/jshell/ReplParser.java Fri Dec 18 09:56:17 2015 -0800
@@ -22,6 +22,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package jdk.jshell;
import com.sun.tools.javac.code.TypeTag;
--- a/langtools/src/jdk.jshell/share/classes/jdk/jshell/ReplParserFactory.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.jshell/share/classes/jdk/jshell/ReplParserFactory.java Fri Dec 18 09:56:17 2015 -0800
@@ -22,6 +22,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package jdk.jshell;
import com.sun.tools.javac.parser.JavacParser;
--- a/langtools/src/jdk.jshell/share/classes/jdk/jshell/StatementSnippet.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.jshell/share/classes/jdk/jshell/StatementSnippet.java Fri Dec 18 09:56:17 2015 -0800
@@ -22,6 +22,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package jdk.jshell;
import jdk.jshell.Key.StatementKey;
--- a/langtools/src/jdk.jshell/share/classes/jdk/jshell/TypeDeclSnippet.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.jshell/share/classes/jdk/jshell/TypeDeclSnippet.java Fri Dec 18 09:56:17 2015 -0800
@@ -22,6 +22,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package jdk.jshell;
import java.util.Collection;
--- a/langtools/src/jdk.jshell/share/classes/jdk/jshell/TypePrinter.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.jshell/share/classes/jdk/jshell/TypePrinter.java Fri Dec 18 09:56:17 2015 -0800
@@ -41,15 +41,15 @@
* Print types in source form.
*/
class TypePrinter extends Printer {
+ private static final String OBJECT = "Object";
private final JavacMessages messages;
private final BinaryOperator<String> fullClassNameAndPackageToClass;
- private final Type typeToPrint;
+ private boolean useWildCard = false;
TypePrinter(JavacMessages messages, BinaryOperator<String> fullClassNameAndPackageToClass, Type typeToPrint) {
this.messages = messages;
this.fullClassNameAndPackageToClass = fullClassNameAndPackageToClass;
- this.typeToPrint = typeToPrint;
}
@Override
@@ -64,21 +64,40 @@
@Override
public String visitCapturedType(Type.CapturedType t, Locale locale) {
- if (t == typeToPrint) {
- return visit(t.getUpperBound(), locale);
- } else {
- return visit(t.wildcard, locale);
+ return visit(t.wildcard, locale);
+ }
+
+ @Override
+ public String visitWildcardType(Type.WildcardType wt, Locale locale) {
+ if (useWildCard) { // at TypeArgument(ex: List<? extends T>)
+ return super.visitWildcardType(wt, locale);
+ } else { // at TopLevelType(ex: ? extends List<T>, ? extends Number[][])
+ Type extendsBound = wt.getExtendsBound();
+ return extendsBound == null
+ ? OBJECT
+ : visit(extendsBound, locale);
}
}
@Override
public String visitType(Type t, Locale locale) {
String s = (t.tsym == null || t.tsym.name == null)
- ? "Object" // none
+ ? OBJECT // none
: t.tsym.name.toString();
return s;
}
+ @Override
+ public String visitClassType(ClassType ct, Locale locale) {
+ boolean prevUseWildCard = useWildCard;
+ try {
+ useWildCard = true;
+ return super.visitClassType(ct, locale);
+ } finally {
+ useWildCard = prevUseWildCard;
+ }
+ }
+
/**
* Converts a class name into a (possibly localized) string. Anonymous
* inner classes get converted into a localized string.
@@ -101,7 +120,7 @@
}
return s.toString();
***/
- return "Object";
+ return OBJECT;
} else if (sym.name.length() == 0) {
// Anonymous
String s;
--- a/langtools/src/jdk.jshell/share/classes/jdk/jshell/Util.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.jshell/share/classes/jdk/jshell/Util.java Fri Dec 18 09:56:17 2015 -0800
@@ -1,4 +1,4 @@
- /*
+/*
* Copyright (c) 2014, 2015, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
--- a/langtools/src/jdk.jshell/share/classes/jdk/jshell/VarSnippet.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.jshell/share/classes/jdk/jshell/VarSnippet.java Fri Dec 18 09:56:17 2015 -0800
@@ -22,6 +22,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package jdk.jshell;
import java.util.Collection;
--- a/langtools/src/jdk.jshell/share/classes/jdk/jshell/Wrap.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/src/jdk.jshell/share/classes/jdk/jshell/Wrap.java Fri Dec 18 09:56:17 2015 -0800
@@ -22,6 +22,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package jdk.jshell;
import java.util.ArrayList;
--- a/langtools/test/com/sun/javadoc/T6735320/SerialFieldTest.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/com/sun/javadoc/T6735320/SerialFieldTest.java Fri Dec 18 09:56:17 2015 -0800
@@ -20,6 +20,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
import java.io.ObjectStreamField;
import java.io.Serializable;
--- a/langtools/test/com/sun/javadoc/testCmndLineClass/C5.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/com/sun/javadoc/testCmndLineClass/C5.java Fri Dec 18 09:56:17 2015 -0800
@@ -21,7 +21,6 @@
* questions.
*/
-
/**
*This is a description for C5.
*/
--- a/langtools/test/com/sun/javadoc/testEncoding/EncodeTest.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/com/sun/javadoc/testEncoding/EncodeTest.java Fri Dec 18 09:56:17 2015 -0800
@@ -21,7 +21,6 @@
* questions.
*/
-
/**
* Testing en\u00e7\u00f4ded string.
* In the encoded comment string, Unicode U+00E7 is "Latin small letter C with cedilla"
--- a/langtools/test/com/sun/javadoc/testJavaFX/pkg1/C.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/com/sun/javadoc/testJavaFX/pkg1/C.java Fri Dec 18 09:56:17 2015 -0800
@@ -20,6 +20,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package pkg1;
public class C {
--- a/langtools/test/com/sun/javadoc/testJavaFX/pkg1/D.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/com/sun/javadoc/testJavaFX/pkg1/D.java Fri Dec 18 09:56:17 2015 -0800
@@ -20,6 +20,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package pkg1;
public class D extends C {}
--- a/langtools/test/com/sun/javadoc/testJavaFX/pkg2/Test.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/com/sun/javadoc/testJavaFX/pkg2/Test.java Fri Dec 18 09:56:17 2015 -0800
@@ -20,6 +20,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package pkg2;
import java.util.List;
--- a/langtools/test/com/sun/javadoc/testLegacyTaglet/C.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/com/sun/javadoc/testLegacyTaglet/C.java Fri Dec 18 09:56:17 2015 -0800
@@ -21,7 +21,6 @@
* questions.
*/
-
/**
* This is an {@underline underline}.
* @todo Finish this class.
--- a/langtools/test/com/sun/javadoc/testOrdering/pkg1/A.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/com/sun/javadoc/testOrdering/pkg1/A.java Fri Dec 18 09:56:17 2015 -0800
@@ -20,6 +20,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package pkg1;
import java.util.Collection;
import java.util.List;
--- a/langtools/test/com/sun/javadoc/testOrdering/pkg1/B.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/com/sun/javadoc/testOrdering/pkg1/B.java Fri Dec 18 09:56:17 2015 -0800
@@ -20,6 +20,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package pkg1;
public class B {
--- a/langtools/test/com/sun/javadoc/testOrdering/src-2/a/A.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/com/sun/javadoc/testOrdering/src-2/a/A.java Fri Dec 18 09:56:17 2015 -0800
@@ -20,6 +20,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package a;
/**
* A class
--- a/langtools/test/com/sun/javadoc/testOrdering/src-2/a/something.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/com/sun/javadoc/testOrdering/src-2/a/something.java Fri Dec 18 09:56:17 2015 -0800
@@ -20,6 +20,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package a;
/**
* A class
--- a/langtools/test/com/sun/javadoc/testOrdering/src-2/b/B.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/com/sun/javadoc/testOrdering/src-2/b/B.java Fri Dec 18 09:56:17 2015 -0800
@@ -20,6 +20,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package b;
/**
* Another class
--- a/langtools/test/com/sun/javadoc/testOrdering/src-2/b/something.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/com/sun/javadoc/testOrdering/src-2/b/something.java Fri Dec 18 09:56:17 2015 -0800
@@ -20,6 +20,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package b;
/**
* an annotation
--- a/langtools/test/com/sun/javadoc/testOrdering/src-2/e/something.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/com/sun/javadoc/testOrdering/src-2/e/something.java Fri Dec 18 09:56:17 2015 -0800
@@ -20,6 +20,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package e;
/**
* An enum
--- a/langtools/test/com/sun/javadoc/testOrdering/src-2/something/J.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/com/sun/javadoc/testOrdering/src-2/something/J.java Fri Dec 18 09:56:17 2015 -0800
@@ -20,6 +20,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package something;
public class J {
/**
--- a/langtools/test/com/sun/javadoc/testOrdering/src-2/something/package-info.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/com/sun/javadoc/testOrdering/src-2/something/package-info.java Fri Dec 18 09:56:17 2015 -0800
@@ -20,6 +20,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
/**
* A package
*/
--- a/langtools/test/com/sun/javadoc/testOrdering/src-2/something/something.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/com/sun/javadoc/testOrdering/src-2/something/something.java Fri Dec 18 09:56:17 2015 -0800
@@ -20,6 +20,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package something;
/**
* An interface
--- a/langtools/test/com/sun/javadoc/testSearch/pkgfx/C.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/com/sun/javadoc/testSearch/pkgfx/C.java Fri Dec 18 09:56:17 2015 -0800
@@ -20,6 +20,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package pkgfx;
public class C {
--- a/langtools/test/com/sun/javadoc/testSinceTag/pkg1/C1.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/com/sun/javadoc/testSinceTag/pkg1/C1.java Fri Dec 18 09:56:17 2015 -0800
@@ -20,6 +20,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package pkg1;
import java.io.IOException;
--- a/langtools/test/com/sun/javadoc/testThrowsInheritence/C.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/com/sun/javadoc/testThrowsInheritence/C.java Fri Dec 18 09:56:17 2015 -0800
@@ -21,7 +21,6 @@
* questions.
*/
-
public class C implements I {
/**
--- a/langtools/test/com/sun/javadoc/testThrowsInheritence/I.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/com/sun/javadoc/testThrowsInheritence/I.java Fri Dec 18 09:56:17 2015 -0800
@@ -21,7 +21,6 @@
* questions.
*/
-
public interface I {
/**
* @throws java.lang.NullPointerException Test 1 fails
--- a/langtools/test/com/sun/javadoc/testTypeAnnotations/typeannos/Varargs.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/com/sun/javadoc/testTypeAnnotations/typeannos/Varargs.java Fri Dec 18 09:56:17 2015 -0800
@@ -20,6 +20,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package typeannos;
import java.lang.annotation.*;
--- a/langtools/test/com/sun/javadoc/testUseOption/pkg1/AnAbstract.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/com/sun/javadoc/testUseOption/pkg1/AnAbstract.java Fri Dec 18 09:56:17 2015 -0800
@@ -20,5 +20,6 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package pkg1;
public abstract class AnAbstract implements UsedInterface {}
--- a/langtools/test/jdk/jshell/TypeNameTest.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/jdk/jshell/TypeNameTest.java Fri Dec 18 09:56:17 2015 -0800
@@ -23,7 +23,8 @@
/*
* @test
- * @summary null test
+ * @bug 8144903
+ * @summary Tests for determining the type from the expression
* @build KullaTesting TestingInputStream
* @run testng TypeNameTest
*/
@@ -34,7 +35,6 @@
import static jdk.jshell.Snippet.Status.VALID;
import static org.testng.Assert.assertEquals;
-import static jdk.jshell.Snippet.Status.OVERWRITTEN;
@Test
public class TypeNameTest extends KullaTesting {
@@ -62,6 +62,11 @@
assertEquals(sn.typeName(), "Class<? extends String>");
}
+ public void testArrayTypeOfCapturedTypeName() {
+ VarSnippet sn = (VarSnippet) varKey(assertEval("\"\".getClass().getEnumConstants();"));
+ assertEquals(sn.typeName(), "String[]");
+ }
+
public void testJavaLang() {
VarSnippet sn = (VarSnippet) varKey(assertEval("\"\";"));
assertEquals(sn.typeName(), "String");
@@ -83,14 +88,16 @@
VarSnippet sn3 = (VarSnippet) varKey(assertEval("list3.iterator().next()"));
assertEquals(sn3.typeName(), "Object");
assertEval("class Test1<X extends CharSequence> { public X get() { return null; } }");
- Snippet x = varKey(assertEval("Test1<?> x = new Test1<>();"));
- VarSnippet sn4 = (VarSnippet) varKey(assertEval("x.get()"));
- assertEquals(sn4.typeName(), "CharSequence");
- assertEval("class Foo<X extends Number & CharSequence> { public X get() { return null; } }");
- assertEval("Foo<?> x = new Foo<>();",
- ste(MAIN_SNIPPET, VALID, VALID, true, null),
- ste(x, VALID, OVERWRITTEN, false, MAIN_SNIPPET));
- VarSnippet sn5 = (VarSnippet) varKey(assertEval("x.get()"));
+ Snippet x = varKey(assertEval("Test1<?> test1 = new Test1<>();"));
+ VarSnippet sn4 = (VarSnippet) varKey(assertEval("test1.get()"));
+ assertEquals(sn4.typeName(), "Object");
+ assertEval("class Test2<X extends Number & CharSequence> { public X get() { return null; } }");
+ assertEval("Test2<?> test2 = new Test2<>();");
+ VarSnippet sn5 = (VarSnippet) varKey(assertEval("test2.get()"));
assertEquals(sn5.typeName(), "Object");
+ assertEval("class Test3<T> { T[][] get() { return null; } }", added(VALID));
+ assertEval("Test3<? extends String> test3 = new Test3<>();");
+ VarSnippet sn6 = (VarSnippet) varKey(assertEval("test3.get()"));
+ assertEquals(sn6.typeName(), "String[][]");
}
}
--- a/langtools/test/jdk/jshell/VariablesTest.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/jdk/jshell/VariablesTest.java Fri Dec 18 09:56:17 2015 -0800
@@ -23,6 +23,7 @@
/*
* @test
+ * @bug 8144903
* @summary Tests for EvaluationState.variables
* @build KullaTesting TestingInputStream ExpectedDiagnostic
* @run testng VariablesTest
@@ -184,6 +185,16 @@
assertActiveKeys();
}
+ public void variablesTemporaryArrayOfCapturedType() {
+ assertEval("class Test<T> { T[][] get() { return null; } }", added(VALID));
+ assertEval("Test<? extends String> test() { return new Test<>(); }", added(VALID));
+ assertEval("test().get()", added(VALID));
+ assertVariables(variable("String[][]", "$1"));
+ assertEval("\"\".getClass().getEnumConstants()", added(VALID));
+ assertVariables(variable("String[][]", "$1"), variable("String[]", "$2"));
+ assertActiveKeys();
+ }
+
public void variablesClassReplace() {
assertEval("import java.util.*;", added(VALID));
Snippet var = varKey(assertEval("List<Integer> list = new ArrayList<>();", "[]",
--- a/langtools/test/lib/combo/tools/javac/combo/Diagnostics.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/lib/combo/tools/javac/combo/Diagnostics.java Fri Dec 18 09:56:17 2015 -0800
@@ -20,6 +20,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package tools.javac.combo;
import javax.tools.Diagnostic;
--- a/langtools/test/lib/combo/tools/javac/combo/JavacTemplateTestBase.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/lib/combo/tools/javac/combo/JavacTemplateTestBase.java Fri Dec 18 09:56:17 2015 -0800
@@ -20,6 +20,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package tools.javac.combo;
import java.io.File;
--- a/langtools/test/lib/combo/tools/javac/combo/Template.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/lib/combo/tools/javac/combo/Template.java Fri Dec 18 09:56:17 2015 -0800
@@ -20,6 +20,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package tools.javac.combo;
import java.util.Map;
--- a/langtools/test/lib/combo/tools/javac/combo/TemplateTest.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/lib/combo/tools/javac/combo/TemplateTest.java Fri Dec 18 09:56:17 2015 -0800
@@ -19,8 +19,8 @@
* 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.
- *
*/
+
package tools.javac.combo;
import org.testng.annotations.BeforeTest;
--- a/langtools/test/tools/doclint/tidy/util/Main.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/tools/doclint/tidy/util/Main.java Fri Dec 18 09:56:17 2015 -0800
@@ -21,7 +21,6 @@
* questions.
*/
-
package tidystats;
import java.io.IOException;
--- a/langtools/test/tools/javac/6199662/TreeInfo.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/tools/javac/6199662/TreeInfo.java Fri Dec 18 09:56:17 2015 -0800
@@ -21,7 +21,6 @@
* questions.
*/
-
package p;
import p.Tree.*;
--- a/langtools/test/tools/javac/6199662/TreeScanner.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/tools/javac/6199662/TreeScanner.java Fri Dec 18 09:56:17 2015 -0800
@@ -21,7 +21,6 @@
* questions.
*/
-
package p;
import p.Tree.*;
--- a/langtools/test/tools/javac/6302184/T6302184.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/tools/javac/6302184/T6302184.java Fri Dec 18 09:56:17 2015 -0800
@@ -21,7 +21,6 @@
* questions.
*/
-
/**
* This is a test that uses ISO 8859 encoding.
*/
--- a/langtools/test/tools/javac/6400872/C.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/tools/javac/6400872/C.java Fri Dec 18 09:56:17 2015 -0800
@@ -21,8 +21,6 @@
* questions.
*/
-
-
class C {
A a = new A();
B b = new B();
--- a/langtools/test/tools/javac/6508981/p/A.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/tools/javac/6508981/p/A.java Fri Dec 18 09:56:17 2015 -0800
@@ -20,5 +20,6 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package p;
class A { }
--- a/langtools/test/tools/javac/6547131/T.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/tools/javac/6547131/T.java Fri Dec 18 09:56:17 2015 -0800
@@ -2,7 +2,7 @@
* @test
* @bug 6547131
* @summary java.lang.ClassFormatError when using old collection API
- * @compile T.java
+ * @compile p/Outer.jasm p/Outer$I.jasm T.java
* @run main T
*/
Binary file langtools/test/tools/javac/6547131/p/Outer$I.class has changed
Binary file langtools/test/tools/javac/6547131/p/Outer.class has changed
--- a/langtools/test/tools/javac/6917288/GraphicalInstallerTest.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/tools/javac/6917288/GraphicalInstallerTest.java Fri Dec 18 09:56:17 2015 -0800
@@ -21,7 +21,6 @@
* questions.
*/
-
/* @test
* @bug 6917288
* @summary Unnamed nested class is not generated
--- a/langtools/test/tools/javac/7153958/pkg/ClassToBeStaticallyImportedA.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/tools/javac/7153958/pkg/ClassToBeStaticallyImportedA.java Fri Dec 18 09:56:17 2015 -0800
@@ -20,6 +20,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package pkg;
public class ClassToBeStaticallyImportedA {
--- a/langtools/test/tools/javac/7153958/pkg/ClassToBeStaticallyImportedB.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/tools/javac/7153958/pkg/ClassToBeStaticallyImportedB.java Fri Dec 18 09:56:17 2015 -0800
@@ -20,6 +20,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package pkg;
public class ClassToBeStaticallyImportedB {
Binary file langtools/test/tools/javac/InnerClassesAttribute/Outside$1$Inside.class has changed
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/langtools/test/tools/javac/InnerClassesAttribute/Outside$1$Inside.jasm Fri Dec 18 09:56:17 2015 -0800
@@ -0,0 +1,38 @@
+/*
+ * Copyright (c) 2015, 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.
+ */
+
+super class Outside$1$Inside
+ version 45:3
+{
+
+Method "<init>":"()V"
+ stack 1 locals 1
+{
+ aload_0;
+ invokespecial Method java/lang/Object."<init>":"()V";
+ return;
+}
+
+private InnerClass Inside=class Outside$1$Inside;
+
+}
\ No newline at end of file
Binary file langtools/test/tools/javac/InnerClassesAttribute/Outside.class has changed
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/langtools/test/tools/javac/InnerClassesAttribute/Outside.jasm Fri Dec 18 09:56:17 2015 -0800
@@ -0,0 +1,44 @@
+/*
+ * Copyright (c) 2015, 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.
+ */
+
+super public class Outside
+ version 45:3
+{
+
+public Method "<init>":"()V"
+ stack 1 locals 1
+{
+ aload_0;
+ invokespecial Method java/lang/Object."<init>":"()V";
+ return;
+}
+
+Method method:"()V"
+ stack 0 locals 1
+{
+ return;
+}
+
+private InnerClass Inside=class Outside$1$Inside;
+
+}
\ No newline at end of file
--- a/langtools/test/tools/javac/InnerClassesAttribute/Test.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/tools/javac/InnerClassesAttribute/Test.java Fri Dec 18 09:56:17 2015 -0800
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1997, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1997, 2015 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
@@ -27,7 +27,7 @@
* @summary The compiler used to crash when it saw a correctly-formed
* InnerClasses attribute in a .class file.
* @author turnidge
- *
+ * @build Outside Outside$1$Inside
* @compile Test.java
*/
public
--- a/langtools/test/tools/javac/MethodParameters/ClassFileVisitor.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/tools/javac/MethodParameters/ClassFileVisitor.java Fri Dec 18 09:56:17 2015 -0800
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2013, 2015 Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2015, 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
@@ -279,7 +279,7 @@
userParam = param;
}
}
- if (expect != null && !param.equals(expect)) {
+ if (check > 0 && expect != null && !param.equals(expect)) {
error(prefix + "param[" + x + "]='"
+ param + "' expected '" + expect + "'");
return null;
@@ -346,6 +346,17 @@
}
}
}
+
+ if (synthetic && !mandated && !allowSynthetic) {
+ //patch treatment for local captures
+ if (isAnon || (isInner & !isStatic)) {
+ expect = "val\\$.*";
+ allowSynthetic = true;
+ if (isFinal) {
+ expect = "final val\\$.*";
+ }
+ }
+ }
} else if (isEnum && mNumParams == 1 && index == 0 && mName.equals("valueOf")) {
expect = "name";
allowMandated = true;
@@ -411,7 +422,6 @@
if (mSynthetic) {
return 0;
}
-
// Otherwise, do check test parameter naming convention.
return 1;
}
--- a/langtools/test/tools/javac/MethodParameters/LocalClassTest.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/tools/javac/MethodParameters/LocalClassTest.java Fri Dec 18 09:56:17 2015 -0800
@@ -45,6 +45,16 @@
}
new LocalClassTest().foo();
}
+
+ void test(final int i) {
+ class CapturingLocal {
+ CapturingLocal(final int j) {
+ this(new Object() { void test() { int x = i; } });
+ }
+ CapturingLocal(Object o) { }
+ }
+ new CapturingLocal(i) { };
+ }
}
--- a/langtools/test/tools/javac/MethodParameters/LocalClassTest.out Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/tools/javac/MethodParameters/LocalClassTest.out Fri Dec 18 09:56:17 2015 -0800
@@ -1,12 +1,21 @@
-class LocalClassTest$1Local_has_constructor -- inner
-LocalClassTest$1Local_has_constructor.<init>(final this$0/*implicit*/, a, ba)
-LocalClassTest$1Local_has_constructor.<init>(final this$0/*implicit*/)
-LocalClassTest$1Local_has_constructor.foo(m, nm)
-LocalClassTest$1Local_has_constructor.foo()
+class LocalClassTest$1 -- anon
+LocalClassTest$1.<init>(final this$0/*implicit*/, final j, final val$i/*synthetic*/)
+class LocalClassTest$1CapturingLocal$1 -- anon
+LocalClassTest$1CapturingLocal$1.<init>(final val$this$0/*synthetic*/, final val$val$i/*synthetic*/)
+LocalClassTest$1CapturingLocal$1.test()
+class LocalClassTest$1CapturingLocal -- inner
+LocalClassTest$1CapturingLocal.<init>(final this$0/*implicit*/, final j, final val$i/*synthetic*/)
+LocalClassTest$1CapturingLocal.<init>(final this$0/*implicit*/, o, final val$i/*synthetic*/)
class LocalClassTest$1Local_default_constructor -- inner
LocalClassTest$1Local_default_constructor.<init>(final this$0/*implicit*/)
LocalClassTest$1Local_default_constructor.foo()
LocalClassTest$1Local_default_constructor.foo(m, nm)
+class LocalClassTest$1Local_has_constructor -- inner
+LocalClassTest$1Local_has_constructor.<init>(final this$0/*implicit*/)
+LocalClassTest$1Local_has_constructor.<init>(final this$0/*implicit*/, a, ba)
+LocalClassTest$1Local_has_constructor.foo()
+LocalClassTest$1Local_has_constructor.foo(m, nm)
class LocalClassTest --
LocalClassTest.<init>()
-LocalClassTest.foo()
\ No newline at end of file
+LocalClassTest.foo()
+LocalClassTest.test(final i)
--- a/langtools/test/tools/javac/MethodParameters/ReflectionVisitor.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/tools/javac/MethodParameters/ReflectionVisitor.java Fri Dec 18 09:56:17 2015 -0800
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2013, 2015 Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2015, 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
@@ -164,6 +164,17 @@
}
}
+ if (p.isSynthetic() && !p.isImplicit() && !allowSynthetic) {
+ //patch treatment for local captures
+ if (isAnon || ((isLocal || isAnon) & !isStatic)) {
+ expect = "val\\$.*";
+ allowSynthetic = true;
+ if (isFinal) {
+ expect = "final val\\$.*";
+ }
+ }
+ }
+
// Check expected flags
if (p.isSynthetic() && p.isImplicit()) {
error(prefix + "param[" + i + "]='" + pname +
--- a/langtools/test/tools/javac/NameClash/NameClashTest.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/tools/javac/NameClash/NameClashTest.java Fri Dec 18 09:56:17 2015 -0800
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2015 Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2015, 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
Binary file langtools/test/tools/javac/T6435291/T.class has changed
--- a/langtools/test/tools/javac/T6435291/T6435291.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/tools/javac/T6435291/T6435291.java Fri Dec 18 09:56:17 2015 -0800
@@ -30,6 +30,7 @@
* jdk.compiler/com.sun.tools.javac.code
* jdk.compiler/com.sun.tools.javac.main
* jdk.compiler/com.sun.tools.javac.util
+ * @build T
* @run main/othervm T6435291
*/
--- a/langtools/test/tools/javac/T6458823/MyProcessor.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/tools/javac/T6458823/MyProcessor.java Fri Dec 18 09:56:17 2015 -0800
@@ -1,25 +1,25 @@
- /*
- * Copyright (c) 2010, 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.
- */
+/*
+ * Copyright (c) 2010, 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.
+ */
import java.util.Set;
import javax.annotation.processing.*;
--- a/langtools/test/tools/javac/T6942649.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/tools/javac/T6942649.java Fri Dec 18 09:56:17 2015 -0800
@@ -21,7 +21,6 @@
* questions.
*/
-
/*
* @test
* @bug 6942649
--- a/langtools/test/tools/javac/annotations/neg/8022765/VerifyAnnotationsAttributed.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/tools/javac/annotations/neg/8022765/VerifyAnnotationsAttributed.java Fri Dec 18 09:56:17 2015 -0800
@@ -20,6 +20,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
import com.sun.source.tree.CompilationUnitTree;
import com.sun.source.tree.IdentifierTree;
import com.sun.source.tree.MemberSelectTree;
--- a/langtools/test/tools/javac/annotations/typeAnnotations/TargetTypes.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/tools/javac/annotations/typeAnnotations/TargetTypes.java Fri Dec 18 09:56:17 2015 -0800
@@ -20,6 +20,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
import java.lang.annotation.*;
import static java.lang.annotation.ElementType.*;
import static java.lang.annotation.RetentionPolicy.*;
--- a/langtools/test/tools/javac/annotations/typeAnnotations/TypeProcOnly.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/tools/javac/annotations/typeAnnotations/TypeProcOnly.java Fri Dec 18 09:56:17 2015 -0800
@@ -20,6 +20,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
import java.io.*;
import java.util.Set;
import java.util.HashSet;
--- a/langtools/test/tools/javac/annotations/typeAnnotations/classfile/T8008769.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/tools/javac/annotations/typeAnnotations/classfile/T8008769.java Fri Dec 18 09:56:17 2015 -0800
@@ -20,6 +20,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
/*
* @test
* @summary Repeated type-annotations on type parm of local variable
--- a/langtools/test/tools/javac/annotations/typeAnnotations/packageanno/PackageProcessor.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/tools/javac/annotations/typeAnnotations/packageanno/PackageProcessor.java Fri Dec 18 09:56:17 2015 -0800
@@ -20,6 +20,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
import java.util.HashSet;
import java.util.Set;
--- a/langtools/test/tools/javac/annotations/typeAnnotations/packageanno/mypackage/Anno.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/tools/javac/annotations/typeAnnotations/packageanno/mypackage/Anno.java Fri Dec 18 09:56:17 2015 -0800
@@ -20,6 +20,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package mypackage;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Retention;
--- a/langtools/test/tools/javac/annotations/typeAnnotations/packageanno/mypackage/MyClass.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/tools/javac/annotations/typeAnnotations/packageanno/mypackage/MyClass.java Fri Dec 18 09:56:17 2015 -0800
@@ -20,6 +20,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package mypackage;
public class MyClass {}
--- a/langtools/test/tools/javac/api/6557752/T6557752.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/tools/javac/api/6557752/T6557752.java Fri Dec 18 09:56:17 2015 -0800
@@ -21,7 +21,6 @@
* questions.
*/
-
/*
* @test
* @bug 6557752
--- a/langtools/test/tools/javac/api/TestGetElementReferenceData.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/tools/javac/api/TestGetElementReferenceData.java Fri Dec 18 09:56:17 2015 -0800
@@ -20,6 +20,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package test;
/*getElement:PACKAGE:test*/
import java.lang.annotation.*;
--- a/langtools/test/tools/javac/classfiles/attributes/innerclasses/InnerClassesTest.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/tools/javac/classfiles/attributes/innerclasses/InnerClassesTest.java Fri Dec 18 09:56:17 2015 -0800
@@ -21,7 +21,6 @@
* questions.
*/
-
/*
* @test
* @bug 8034854 8042251
--- a/langtools/test/tools/javac/classfiles/attributes/innerclasses/InnerEnumInInnerAnnotationTest.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/tools/javac/classfiles/attributes/innerclasses/InnerEnumInInnerAnnotationTest.java Fri Dec 18 09:56:17 2015 -0800
@@ -21,7 +21,6 @@
* questions.
*/
-
/*
* @test
* @bug 8042251
--- a/langtools/test/tools/javac/defaultMethods/Assertions.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/tools/javac/defaultMethods/Assertions.java Fri Dec 18 09:56:17 2015 -0800
@@ -20,6 +20,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package test;
import java.util.Arrays;
--- a/langtools/test/tools/javac/defaultMethods/crossCompile/Clinit.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/tools/javac/defaultMethods/crossCompile/Clinit.java Fri Dec 18 09:56:17 2015 -0800
@@ -20,6 +20,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
interface Clinit {
String s = Inner.m();
--- a/langtools/test/tools/javac/diags/HTMLWriter.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/tools/javac/diags/HTMLWriter.java Fri Dec 18 09:56:17 2015 -0800
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1996,2010, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1996, 2010, 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
@@ -21,8 +21,6 @@
* questions.
*/
-
-
import java.io.BufferedWriter;
import java.io.File;
import java.io.IOException;
--- a/langtools/test/tools/javac/diags/examples/DiamondAndAnonClass.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/tools/javac/diags/examples/DiamondAndAnonClass.java Fri Dec 18 09:56:17 2015 -0800
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2011, 2015 Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2011, 2015, 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
--- a/langtools/test/tools/javac/diags/examples/DiamondAndNonDenotableTypes.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/tools/javac/diags/examples/DiamondAndNonDenotableTypes.java Fri Dec 18 09:56:17 2015 -0800
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2015 Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2015, 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
--- a/langtools/test/tools/javac/doctree/positions/TestPositionSource.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/tools/javac/doctree/positions/TestPositionSource.java Fri Dec 18 09:56:17 2015 -0800
@@ -20,6 +20,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
public class TestPositionSource {
/**First sentence.
--- a/langtools/test/tools/javac/file/zip/8003512/LoadClassFromJava6CreatedJarTest.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/tools/javac/file/zip/8003512/LoadClassFromJava6CreatedJarTest.java Fri Dec 18 09:56:17 2015 -0800
@@ -1,4 +1,3 @@
-
/*
* Copyright (c) 2002, 2015, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -22,6 +21,7 @@
* questions.
*/
+
/*
* @test
* @bug 8003512
--- a/langtools/test/tools/javac/flow/AliveRanges.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/tools/javac/flow/AliveRanges.java Fri Dec 18 09:56:17 2015 -0800
@@ -20,6 +20,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
import java.lang.annotation.*;
@Repeatable(AliveRanges.class)
--- a/langtools/test/tools/javac/generics/8004094/B.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/tools/javac/generics/8004094/B.java Fri Dec 18 09:56:17 2015 -0800
@@ -20,6 +20,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
abstract class A {
private static String s = null;
--- a/langtools/test/tools/javac/generics/bridges/Bridge.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/tools/javac/generics/bridges/Bridge.java Fri Dec 18 09:56:17 2015 -0800
@@ -20,6 +20,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
import java.lang.annotation.Repeatable;
@Repeatable(Bridges.class)
--- a/langtools/test/tools/javac/generics/bridges/Bridges.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/tools/javac/generics/bridges/Bridges.java Fri Dec 18 09:56:17 2015 -0800
@@ -20,6 +20,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
@interface Bridges {
Bridge[] value();
}
--- a/langtools/test/tools/javac/generics/bridges/tests/TestBridgeWithDefault.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/tools/javac/generics/bridges/tests/TestBridgeWithDefault.java Fri Dec 18 09:56:17 2015 -0800
@@ -20,6 +20,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
class TestBridgeWithDefault {
interface A { Object m(int x); }
--- a/langtools/test/tools/javac/generics/bridges/tests/TestClassAndInterfaceBridgeIdentical01.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/tools/javac/generics/bridges/tests/TestClassAndInterfaceBridgeIdentical01.java Fri Dec 18 09:56:17 2015 -0800
@@ -20,6 +20,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
class TestClassAndInterfaceBridgeIdentical01 {
interface A { Object m(); }
--- a/langtools/test/tools/javac/generics/bridges/tests/TestClassAndInterfaceBridgeIdentical02.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/tools/javac/generics/bridges/tests/TestClassAndInterfaceBridgeIdentical02.java Fri Dec 18 09:56:17 2015 -0800
@@ -20,6 +20,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
class TestClassAndInterfaceBridgeIdentical02 {
interface A<X extends Object> { void m(X x); }
--- a/langtools/test/tools/javac/generics/bridges/tests/TestNoBridgeInSiblingsSuper.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/tools/javac/generics/bridges/tests/TestNoBridgeInSiblingsSuper.java Fri Dec 18 09:56:17 2015 -0800
@@ -20,6 +20,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
class TestNoBridgeInSiblingSuper {
interface A { Object m(); }
interface B { String m(); }
--- a/langtools/test/tools/javac/generics/bridges/tests/TestNoDuplicateBridges01.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/tools/javac/generics/bridges/tests/TestNoDuplicateBridges01.java Fri Dec 18 09:56:17 2015 -0800
@@ -20,6 +20,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
class TestNoDuplicateBridges01 {
interface A1 { Object m(); }
interface A2 { Object m(); }
--- a/langtools/test/tools/javac/generics/bridges/tests/TestNoDuplicateBridges02.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/tools/javac/generics/bridges/tests/TestNoDuplicateBridges02.java Fri Dec 18 09:56:17 2015 -0800
@@ -20,6 +20,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
class TestNoDuplicateBridges02 {
interface A<T> {
A<T> get();
--- a/langtools/test/tools/javac/generics/diamond/pos/NestedDiamondAllocationTest.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/tools/javac/generics/diamond/pos/NestedDiamondAllocationTest.java Fri Dec 18 09:56:17 2015 -0800
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2015 Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2015, 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
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/langtools/test/tools/javac/generics/inference/CaptureInDeclaredBound.java Fri Dec 18 09:56:17 2015 -0800
@@ -0,0 +1,45 @@
+/*
+ * Copyright (c) 2015, 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 7190296 8033718
+ * @summary F-bounded capture variable is within its declared bound
+ * @compile CaptureInDeclaredBound.java
+ */
+
+public class CaptureInDeclaredBound {
+
+ class C<T> {}
+
+ interface I<X extends Comparable<X>> {
+ C<X> get();
+ }
+
+ <Z extends Comparable<? super Z>> void m(C<Z> arg) {}
+
+ void test(I<?> arg) {
+ m(arg.get());
+ }
+
+}
--- a/langtools/test/tools/javac/implicitCompile/Implicit.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/tools/javac/implicitCompile/Implicit.java Fri Dec 18 09:56:17 2015 -0800
@@ -20,5 +20,6 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
class Implicit {
}
--- a/langtools/test/tools/javac/importscope/TestDuplicateImport.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/tools/javac/importscope/TestDuplicateImport.java Fri Dec 18 09:56:17 2015 -0800
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2011-2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2011, 2015, 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
--- a/langtools/test/tools/javac/importscope/TestLazyImportScope.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/tools/javac/importscope/TestLazyImportScope.java Fri Dec 18 09:56:17 2015 -0800
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2011-2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2011, 2015, 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
--- a/langtools/test/tools/javac/lambda/8068399/T8068399.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/tools/javac/lambda/8068399/T8068399.java Fri Dec 18 09:56:17 2015 -0800
@@ -20,6 +20,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
/*
* @test
* @bug 8068399 8069545
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/langtools/test/tools/javac/lambda/8142876/T8142876.java Fri Dec 18 09:56:17 2015 -0800
@@ -0,0 +1,45 @@
+/*
+ * Copyright (c) 2015, 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. Oracle designates this
+ * particular file as subject to the "Classpath" exception as provided
+ * by Oracle in the LICENSE file that accompanied this code.
+ *
+ * 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 8142876
+ * @summary Javac does not correctly implement wildcards removal from functional interfaces
+ * @compile T8142876.java
+ */
+class T8142876 {
+ interface I<R extends Runnable, T> {
+ void m();
+ }
+
+ void test() {
+ I<? extends O, String> succeed = this::ff;
+ I<? extends Comparable<String>, String> failed = this::ff;
+ }
+
+ interface O {}
+
+ private void ff(){}
+}
--- a/langtools/test/tools/javac/lambda/LocalBreakAndContinue.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/tools/javac/lambda/LocalBreakAndContinue.java Fri Dec 18 09:56:17 2015 -0800
@@ -19,7 +19,6 @@
* 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.
-
*/
/*
--- a/langtools/test/tools/javac/lambda/bridge/template_tests/BridgeMethodTestCase.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/tools/javac/lambda/bridge/template_tests/BridgeMethodTestCase.java Fri Dec 18 09:56:17 2015 -0800
@@ -19,8 +19,8 @@
* 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.
- *
*/
+
import java.io.File;
import java.io.IOException;
import java.lang.reflect.Method;
--- a/langtools/test/tools/javac/lambda/bridge/template_tests/BridgeMethodsTemplateTest.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/tools/javac/lambda/bridge/template_tests/BridgeMethodsTemplateTest.java Fri Dec 18 09:56:17 2015 -0800
@@ -19,8 +19,8 @@
* 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.
- *
*/
+
import java.io.IOException;
import org.testng.annotations.Test;
--- a/langtools/test/tools/javac/lambda/inaccessibleMref01/p1/C.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/tools/javac/lambda/inaccessibleMref01/p1/C.java Fri Dec 18 09:56:17 2015 -0800
@@ -20,6 +20,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package p1;
public class C {
--- a/langtools/test/tools/javac/lambda/inaccessibleMref02/p1/C.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/tools/javac/lambda/inaccessibleMref02/p1/C.java Fri Dec 18 09:56:17 2015 -0800
@@ -20,6 +20,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package p1;
class Sup {
--- a/langtools/test/tools/javac/lambda/methodReferenceExecution/pkg/B.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/tools/javac/lambda/methodReferenceExecution/pkg/B.java Fri Dec 18 09:56:17 2015 -0800
@@ -20,6 +20,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package pkg;
class A {
public static void m() {
--- a/langtools/test/tools/javac/lambda/separate/Foo.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/tools/javac/lambda/separate/Foo.java Fri Dec 18 09:56:17 2015 -0800
@@ -20,6 +20,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
interface Foo<X extends Number> {
void m(X x);
}
--- a/langtools/test/tools/javac/missingSuperRecovery/MissingSuperRecovery.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/tools/javac/missingSuperRecovery/MissingSuperRecovery.java Fri Dec 18 09:56:17 2015 -0800
@@ -4,7 +4,7 @@
* @summary Check for proper error recovery when superclass of extended
* class is no longer available during a subsequent compilation.
* @author maddox
- *
+ * @build impl
* @compile/fail/ref=MissingSuperRecovery.out -XDdiags=%b:%l:%_%m MissingSuperRecovery.java
*/
Binary file langtools/test/tools/javac/missingSuperRecovery/impl.class has changed
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/langtools/test/tools/javac/missingSuperRecovery/impl.jasm Fri Dec 18 09:56:17 2015 -0800
@@ -0,0 +1,43 @@
+/*
+ * Copyright (c) 2015, 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.
+ */
+
+super public class impl
+ implements base
+ version 45:3
+{
+
+public Method "<init>":"()V"
+ stack 1 locals 1
+{
+ aload_0;
+ invokespecial Method java/lang/Object."<init>":"()V";
+ return;
+}
+
+public Method run:"()V"
+ stack 0 locals 1
+{
+ return;
+}
+
+}
\ No newline at end of file
--- a/langtools/test/tools/javac/options/T7022337.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/tools/javac/options/T7022337.java Fri Dec 18 09:56:17 2015 -0800
@@ -21,7 +21,6 @@
* questions.
*/
-
/*
* @test
* @bug 7022337
--- a/langtools/test/tools/javac/policy/test3/Test.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/tools/javac/policy/test3/Test.java Fri Dec 18 09:56:17 2015 -0800
@@ -21,7 +21,6 @@
* questions.
*/
-
/* @test
* @bug 6813059
* @summary
--- a/langtools/test/tools/javac/processing/6414633/A.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/tools/javac/processing/6414633/A.java Fri Dec 18 09:56:17 2015 -0800
@@ -21,7 +21,6 @@
* questions.
*/
-
import java.util.*;
import javax.annotation.*;
import javax.annotation.processing.*;
--- a/langtools/test/tools/javac/processing/TestWarnErrorCount.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/tools/javac/processing/TestWarnErrorCount.java Fri Dec 18 09:56:17 2015 -0800
@@ -21,7 +21,6 @@
* questions.
*/
-
/*
* @test
* @bug 7022337
--- a/langtools/test/tools/javac/processing/model/element/TestMissingElement/TestMissingElement.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/tools/javac/processing/model/element/TestMissingElement/TestMissingElement.java Fri Dec 18 09:56:17 2015 -0800
@@ -21,7 +21,6 @@
* questions.
*/
-
/*
* @test
* @bug 6639645 7026414 7025809
--- a/langtools/test/tools/javac/resolve/Candidate.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/tools/javac/resolve/Candidate.java Fri Dec 18 09:56:17 2015 -0800
@@ -20,6 +20,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
import java.lang.annotation.ElementType;
import java.lang.annotation.Target;
--- a/langtools/test/tools/javac/resolve/Pos.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/tools/javac/resolve/Pos.java Fri Dec 18 09:56:17 2015 -0800
@@ -20,6 +20,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
import java.lang.annotation.ElementType;
import java.lang.annotation.Target;
--- a/langtools/test/tools/javac/resolve/TraceResolve.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/tools/javac/resolve/TraceResolve.java Fri Dec 18 09:56:17 2015 -0800
@@ -20,6 +20,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
import java.lang.annotation.ElementType;
import java.lang.annotation.Target;
--- a/langtools/test/tools/javac/resolve/tests/AbstractMerge.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/tools/javac/resolve/tests/AbstractMerge.java Fri Dec 18 09:56:17 2015 -0800
@@ -20,6 +20,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
@TraceResolve
class AbstractMerge {
--- a/langtools/test/tools/javac/scope/DupUnsharedTest.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/tools/javac/scope/DupUnsharedTest.java Fri Dec 18 09:56:17 2015 -0800
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2014, 2015 Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2015, 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
--- a/langtools/test/tools/javac/scope/RemoveSymbolUnitTest.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/tools/javac/scope/RemoveSymbolUnitTest.java Fri Dec 18 09:56:17 2015 -0800
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2015 Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2015, 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
--- a/langtools/test/tools/javac/staticImport/6665223/pkg/A.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/tools/javac/staticImport/6665223/pkg/A.java Fri Dec 18 09:56:17 2015 -0800
@@ -20,6 +20,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package pkg;
import static pkg.B.b;
--- a/langtools/test/tools/javac/staticImport/6665223/pkg/B.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/tools/javac/staticImport/6665223/pkg/B.java Fri Dec 18 09:56:17 2015 -0800
@@ -20,6 +20,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package pkg;
class B extends B2 {}
--- a/langtools/test/tools/javac/tree/JavacTreeScannerTest.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/tools/javac/tree/JavacTreeScannerTest.java Fri Dec 18 09:56:17 2015 -0800
@@ -21,7 +21,6 @@
* questions.
*/
-
/**
* Utility and test program to check javac's internal TreeScanner class.
* The program can be run standalone, or as a jtreg test. For info on
--- a/langtools/test/tools/javac/tree/SourceTreeScannerTest.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/tools/javac/tree/SourceTreeScannerTest.java Fri Dec 18 09:56:17 2015 -0800
@@ -21,7 +21,6 @@
* questions.
*/
-
/**
* Utility and test program to check javac's internal TreeScanner class.
* The program can be run standalone, or as a jtreg test. For info on
--- a/langtools/test/tools/javac/tree/TestAnnotatedAnonClass.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/tools/javac/tree/TestAnnotatedAnonClass.java Fri Dec 18 09:56:17 2015 -0800
@@ -21,7 +21,6 @@
* questions.
*/
-
/*
* This file is not a regular test, but is processed by ./TreePosTest.java,
* which verifies the position info in the javac tree.
--- a/langtools/test/tools/javac/types/CastTest.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/tools/javac/types/CastTest.java Fri Dec 18 09:56:17 2015 -0800
@@ -35,8 +35,6 @@
*/
import com.sun.tools.javac.code.Type;
-import com.sun.tools.javac.code.Type.*;
-import com.sun.tools.javac.code.Symbol.*;
import java.lang.reflect.Array;
import static com.sun.tools.javac.code.Flags.*;
@@ -65,7 +63,7 @@
/*C*/ { F , F , F , F , F , F , F , F , T, F , T, T, F , F , F , F , F , F , F , F , F , F , F , F },
/*+C*/ { F , F , F , F , F , F , F , F , F, T , F, T, F , F , F , F , F , F , F , F , F , F , F , F },
/*I*/ { F , F , F , F , F , F , F , F , T, F , T, T, F , F , F , F , F , F , F , F , F , F , F , F },
- /*T*/ { F , F , F , F , F , F , F , F , T, T , T, T, T , T , T , T , T , T , T , T , T , T , T , T },
+ /*T*/ { T , T , T , T , T , T , T , T , T, T , T, T, T , T , T , T , T , T , T , T , T , T , T , T },
/*byte[]*/ { F , F , F , F , F , F , F , F , F, F , F, T, T , F , F , F , F , F , F , F , F , F , F , F },
/*short[]*/ { F , F , F , F , F , F , F , F , F, F , F, T, F , T , F , F , F , F , F , F , F , F , F , F },
/*int[]*/ { F , F , F , F , F , F , F , F , F, F , F, T, F , F , T , F , F , F , F , F , F , F , F , F },
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/langtools/test/tools/javac/types/CastToTypeVarTest.java Fri Dec 18 09:56:17 2015 -0800
@@ -0,0 +1,35 @@
+/*
+ * Copyright (c) 2015, 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 8144832
+ * @summary cast conversion fails when converting a type-variable to primitive type
+ * @compile -Werror -Xlint:all CastToTypeVarTest.java
+ */
+
+public class CastToTypeVarTest<X, Y extends X> {
+ void foo(Y y) {
+ X x = (X)y;
+ }
+}
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/langtools/test/tools/javac/types/CastTypeVarToPrimitiveTest.java Fri Dec 18 09:56:17 2015 -0800
@@ -0,0 +1,35 @@
+/*
+ * Copyright (c) 2015, 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 8144832
+ * @summary cast conversion fails when converting a type-variable to primitive type
+ * @compile CastTypeVarToPrimitiveTest.java
+ */
+
+public class CastTypeVarToPrimitiveTest<T> {
+ void foo(T valIn){
+ double val = (double)valIn;
+ }
+}
--- a/langtools/test/tools/javac/warnings/suppress/T8021112a.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/tools/javac/warnings/suppress/T8021112a.java Fri Dec 18 09:56:17 2015 -0800
@@ -20,6 +20,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package test;
/**
--- a/langtools/test/tools/javadoc/parser/7091528/p/C3.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/tools/javadoc/parser/7091528/p/C3.java Fri Dec 18 09:56:17 2015 -0800
@@ -21,7 +21,6 @@
* questions.
*/
-
/** This is class C3, and no package for me please */
public class C3 {}
--- a/langtools/test/tools/javadoc/subpackageIgnore/pkg1/not-subpkg/SomeJavaFile.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/tools/javadoc/subpackageIgnore/pkg1/not-subpkg/SomeJavaFile.java Fri Dec 18 09:56:17 2015 -0800
@@ -20,3 +20,4 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
--- a/langtools/test/tools/javap/ExtPath.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/tools/javap/ExtPath.java Fri Dec 18 09:56:17 2015 -0800
@@ -21,7 +21,6 @@
* questions.
*/
-
/**
* @test
* @bug 6428896
--- a/langtools/test/tools/javap/T4880672.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/tools/javap/T4880672.java Fri Dec 18 09:56:17 2015 -0800
@@ -21,7 +21,6 @@
* questions.
*/
-
/*
* @test
* @bug 4880672 7031005
--- a/langtools/test/tools/javap/T6729471.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/tools/javap/T6729471.java Fri Dec 18 09:56:17 2015 -0800
@@ -21,7 +21,6 @@
* questions.
*/
-
/*
* @test
* @bug 6729471
--- a/langtools/test/tools/javap/T6866657.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/tools/javap/T6866657.java Fri Dec 18 09:56:17 2015 -0800
@@ -21,7 +21,6 @@
* questions.
*/
-
/*
* @test
* @bug 6866657
--- a/langtools/test/tools/jdeps/VerboseFormat/JdepsDependencyClosure.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/tools/jdeps/VerboseFormat/JdepsDependencyClosure.java Fri Dec 18 09:56:17 2015 -0800
@@ -20,6 +20,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
import java.io.IOException;
import java.io.OutputStream;
import java.io.PrintWriter;
--- a/langtools/test/tools/jdeps/VerboseFormat/use/indirect/DontUseUnsafe2.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/tools/jdeps/VerboseFormat/use/indirect/DontUseUnsafe2.java Fri Dec 18 09:56:17 2015 -0800
@@ -20,6 +20,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package use.indirect;
import use.unsafe.*;
--- a/langtools/test/tools/jdeps/VerboseFormat/use/indirect/UseUnsafeIndirectly.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/tools/jdeps/VerboseFormat/use/indirect/UseUnsafeIndirectly.java Fri Dec 18 09:56:17 2015 -0800
@@ -20,6 +20,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package use.indirect;
import use.unsafe.UseClassWithUnsafe;
--- a/langtools/test/tools/jdeps/VerboseFormat/use/indirect2/DontUseUnsafe3.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/tools/jdeps/VerboseFormat/use/indirect2/DontUseUnsafe3.java Fri Dec 18 09:56:17 2015 -0800
@@ -20,6 +20,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package use.indirect2;
import use.unsafe.*;
--- a/langtools/test/tools/jdeps/VerboseFormat/use/indirect2/UseUnsafeIndirectly2.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/tools/jdeps/VerboseFormat/use/indirect2/UseUnsafeIndirectly2.java Fri Dec 18 09:56:17 2015 -0800
@@ -20,6 +20,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package use.indirect2;
import use.unsafe.UseUnsafeClass;
--- a/langtools/test/tools/jdeps/VerboseFormat/use/unsafe/DontUseUnsafe.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/tools/jdeps/VerboseFormat/use/unsafe/DontUseUnsafe.java Fri Dec 18 09:56:17 2015 -0800
@@ -20,6 +20,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package use.unsafe;
public class DontUseUnsafe {
--- a/langtools/test/tools/jdeps/VerboseFormat/use/unsafe/UseUnsafeClass.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/tools/jdeps/VerboseFormat/use/unsafe/UseUnsafeClass.java Fri Dec 18 09:56:17 2015 -0800
@@ -20,6 +20,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package use.unsafe;
import sun.misc.Unsafe;
--- a/langtools/test/tools/jdeps/VerboseFormat/use/unsafe/UseUnsafeClass2.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/tools/jdeps/VerboseFormat/use/unsafe/UseUnsafeClass2.java Fri Dec 18 09:56:17 2015 -0800
@@ -20,6 +20,7 @@
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+
package use.unsafe;
import sun.misc.Unsafe;
--- a/langtools/test/tools/lib/ToolBox.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/tools/lib/ToolBox.java Fri Dec 18 09:56:17 2015 -0800
@@ -124,9 +124,6 @@
/** The stream used for logging output. */
public PrintStream out = System.err;
- JavaCompiler compiler;
- StandardJavaFileManager standardJavaFileManager;
-
/**
* Checks if the host OS is some version of Windows.
* @return true if the host OS is some version of Windows
@@ -868,15 +865,18 @@
*/
public class JavacTask extends AbstractTask<JavacTask> {
private boolean includeStandardOptions;
- private String classpath;
- private String sourcepath;
- private String outdir;
+ private List<Path> classpath;
+ private List<Path> sourcepath;
+ private Path outdir;
private List<String> options;
private List<String> classes;
private List<String> files;
private List<JavaFileObject> fileObjects;
private JavaFileManager fileManager;
+ private JavaCompiler compiler;
+ private StandardJavaFileManager internalFileManager;
+
/**
* Creates a task to execute {@code javac} using API mode.
*/
@@ -898,7 +898,20 @@
* @return this task object
*/
public JavacTask classpath(String classpath) {
- this.classpath = classpath;
+ this.classpath = Stream.of(classpath.split(File.pathSeparator))
+ .filter(s -> !s.isEmpty())
+ .map(s -> Paths.get(s))
+ .collect(Collectors.toList());
+ return this;
+ }
+
+ /**
+ * Sets the classpath.
+ * @param classpath the classpath
+ * @return this task object
+ */
+ public JavacTask classpath(Path... classpath) {
+ this.classpath = Arrays.asList(classpath);
return this;
}
@@ -908,7 +921,20 @@
* @return this task object
*/
public JavacTask sourcepath(String sourcepath) {
- this.sourcepath = sourcepath;
+ this.sourcepath = Stream.of(sourcepath.split(File.pathSeparator))
+ .filter(s -> !s.isEmpty())
+ .map(s -> Paths.get(s))
+ .collect(Collectors.toList());
+ return this;
+ }
+
+ /**
+ * Sets the sourcepath.
+ * @param classpath the sourcepath
+ * @return this task object
+ */
+ public JavacTask sourcepath(Path... sourcepath) {
+ this.sourcepath = Arrays.asList(sourcepath);
return this;
}
@@ -918,6 +944,16 @@
* @return this task object
*/
public JavacTask outdir(String outdir) {
+ this.outdir = Paths.get(outdir);
+ return this;
+ }
+
+ /**
+ * Sets the output directory.
+ * @param outdir the output directory
+ * @return this task object
+ */
+ public JavacTask outdir(Path outdir) {
this.outdir = outdir;
return this;
}
@@ -1039,38 +1075,43 @@
}
private int runAPI(PrintWriter pw) throws IOException {
-// if (compiler == null) {
- // TODO: allow this to be set externally
-// compiler = ToolProvider.getSystemJavaCompiler();
- compiler = JavacTool.create();
-// }
+ try {
+// if (compiler == null) {
+ // TODO: allow this to be set externally
+// compiler = ToolProvider.getSystemJavaCompiler();
+ compiler = JavacTool.create();
+// }
- if (fileManager == null)
- fileManager = compiler.getStandardFileManager(null, null, null);
- if (outdir != null)
- setLocation(StandardLocation.CLASS_OUTPUT, toFiles(outdir));
- if (classpath != null)
- setLocation(StandardLocation.CLASS_PATH, toFiles(classpath));
- if (sourcepath != null)
- setLocation(StandardLocation.SOURCE_PATH, toFiles(sourcepath));
- List<String> allOpts = new ArrayList<>();
- if (options != null)
- allOpts.addAll(options);
+ if (fileManager == null)
+ fileManager = internalFileManager = compiler.getStandardFileManager(null, null, null);
+ if (outdir != null)
+ setLocationFromPaths(StandardLocation.CLASS_OUTPUT, Collections.singletonList(outdir));
+ if (classpath != null)
+ setLocationFromPaths(StandardLocation.CLASS_PATH, classpath);
+ if (sourcepath != null)
+ setLocationFromPaths(StandardLocation.SOURCE_PATH, sourcepath);
+ List<String> allOpts = new ArrayList<>();
+ if (options != null)
+ allOpts.addAll(options);
- Iterable<? extends JavaFileObject> allFiles = joinFiles(files, fileObjects);
- JavaCompiler.CompilationTask task = compiler.getTask(pw,
- fileManager,
- null, // diagnostic listener; should optionally collect diags
- allOpts,
- classes,
- allFiles);
- return ((JavacTaskImpl) task).doCall().exitCode;
+ Iterable<? extends JavaFileObject> allFiles = joinFiles(files, fileObjects);
+ JavaCompiler.CompilationTask task = compiler.getTask(pw,
+ fileManager,
+ null, // diagnostic listener; should optionally collect diags
+ allOpts,
+ classes,
+ allFiles);
+ return ((JavacTaskImpl) task).doCall().exitCode;
+ } finally {
+ if (internalFileManager != null)
+ internalFileManager.close();
+ }
}
- private void setLocation(StandardLocation location, List<File> files) throws IOException {
+ private void setLocationFromPaths(StandardLocation location, List<Path> files) throws IOException {
if (!(fileManager instanceof StandardJavaFileManager))
throw new IllegalStateException("not a StandardJavaFileManager");
- ((StandardJavaFileManager) fileManager).setLocation(location, files);
+ ((StandardJavaFileManager) fileManager).setLocationFromPaths(location, files);
}
private int runCommand(PrintWriter pw) {
@@ -1105,15 +1146,15 @@
args.addAll(options);
if (outdir != null) {
args.add("-d");
- args.add(outdir);
+ args.add(outdir.toString());
}
if (classpath != null) {
args.add("-classpath");
- args.add(classpath);
+ args.add(toSearchPath(classpath));
}
if (sourcepath != null) {
args.add("-sourcepath");
- args.add(sourcepath);
+ args.add(toSearchPath(sourcepath));
}
if (classes != null)
args.addAll(classes);
@@ -1123,23 +1164,20 @@
return args;
}
- private List<File> toFiles(String path) {
- List<File> result = new ArrayList<>();
- for (String s : path.split(File.pathSeparator)) {
- if (!s.isEmpty())
- result.add(new File(s));
- }
- return result;
+ private String toSearchPath(List<Path> files) {
+ return files.stream()
+ .map(Path::toString)
+ .collect(Collectors.joining(File.pathSeparator));
}
private Iterable<? extends JavaFileObject> joinFiles(
List<String> files, List<JavaFileObject> fileObjects) {
if (files == null)
return fileObjects;
- if (standardJavaFileManager == null)
- standardJavaFileManager = compiler.getStandardFileManager(null, null, null);
+ if (internalFileManager == null)
+ internalFileManager = compiler.getStandardFileManager(null, null, null);
Iterable<? extends JavaFileObject> filesAsFileObjects =
- standardJavaFileManager.getJavaFileObjectsFromStrings(files);
+ internalFileManager.getJavaFileObjectsFromStrings(files);
if (fileObjects == null)
return filesAsFileObjects;
List<JavaFileObject> combinedList = new ArrayList<>();
@@ -1364,6 +1402,15 @@
}
/**
+ * Creates a JarTask for use with a given jar file.
+ * @param path the file
+ */
+ public JarTask(Path path) {
+ this();
+ jar = path;
+ }
+
+ /**
* Sets a manifest for the jar file.
* @param manifest the manifest
* @return this task object
@@ -1417,6 +1464,16 @@
}
/**
+ * Sets the base directory for files to be written into the jar file.
+ * @param baseDir the base directory
+ * @return this task object
+ */
+ public JarTask baseDir(Path baseDir) {
+ this.baseDir = baseDir;
+ return this;
+ }
+
+ /**
* Sets the files to be written into the jar file.
* @param files the files
* @return this task object
--- a/langtools/test/tools/sjavac/ExclPattern.java Fri Dec 18 09:29:13 2015 -0800
+++ b/langtools/test/tools/sjavac/ExclPattern.java Fri Dec 18 09:56:17 2015 -0800
@@ -21,7 +21,6 @@
* questions.
*/
-
/*
* @test
* @bug 8037085