# HG changeset patch # User lana # Date 1450461377 28800 # Node ID a0135741d02f56f8e23de796e966e3f356e9c597 # Parent dcce1212d33922e07da4c2fd08c278d244fb7433# Parent c51faae315826fa9aa7bbe00d1cc3b07ef70d5a0 Merge diff -r dcce1212d339 -r a0135741d02f langtools/make/tools/propertiesparser/parser/Message.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/make/tools/propertiesparser/parser/MessageFile.java --- 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.*; diff -r dcce1212d339 -r a0135741d02f langtools/make/tools/propertiesparser/parser/MessageInfo.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/make/tools/propertiesparser/parser/MessageLine.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/src/java.compiler/share/classes/javax/tools/DocumentationTool.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/ErroneousTree.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/UnknownBlockTagTree.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.compiler/share/classes/com/sun/source/doctree/UnknownInlineTagTree.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.compiler/share/classes/com/sun/source/util/DocTreePathScanner.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.compiler/share/classes/com/sun/source/util/Plugin.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/api/ClientCodeWrapper.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/api/DiagnosticFormatter.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/code/AnnoConstruct.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/code/TypeMetadata.java --- 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 diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/code/Types.java --- 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 typeargs = new ListBuffer<>(); - List actualTypeargs = site.getTypeArguments(); - List 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 actuals = site.getTypeArguments(); + List formals = site.tsym.type.getTypeArguments(); + ListBuffer 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); diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/comp/LambdaToMethod.java --- 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.*; diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Lower.java --- 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 addedargtypes = List.nil(); for (List 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)); } diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/file/JRTIndex.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/file/Locations.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/jvm/Profile.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/main/Arguments.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/parser/Parser.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/platform/JDKPlatformProvider.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/platform/PlatformDescription.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/platform/PlatformProvider.java --- 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} diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/platform/PlatformUtils.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/sym/Profiles.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/tree/DocCommentTable.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/util/AbstractDiagnosticFormatter.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/util/ForwardingDiagnosticFormatter.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/util/Iterators.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/util/RawDiagnosticFormatter.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/util/RichDiagnosticFormatter.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.compiler/share/classes/com/sun/tools/javah/LLNI.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.compiler/share/classes/com/sun/tools/javah/Mangle.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.compiler/share/classes/com/sun/tools/javah/TypeSignature.java --- 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.*; diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.compiler/share/classes/com/sun/tools/javah/Util.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.compiler/share/classes/com/sun/tools/sjavac/PubApiExtractor.java --- 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 diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.compiler/share/classes/com/sun/tools/sjavac/client/PortFileInaccessibleException.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.compiler/share/classes/com/sun/tools/sjavac/comp/FileObjectWithLocation.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.compiler/share/classes/com/sun/tools/sjavac/comp/JavaFileObjectWithLocation.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.compiler/share/classes/com/sun/tools/sjavac/comp/PathAndPackageVerifier.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.compiler/share/classes/com/sun/tools/sjavac/comp/PooledSjavac.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.compiler/share/classes/com/sun/tools/sjavac/comp/SjavacImpl.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.compiler/share/classes/com/sun/tools/sjavac/comp/SmartWriter.java --- 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.*; diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.compiler/share/classes/com/sun/tools/sjavac/pubapi/ArrayTypeDesc.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.compiler/share/classes/com/sun/tools/sjavac/pubapi/PrimitiveTypeDesc.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.compiler/share/classes/com/sun/tools/sjavac/pubapi/PubApi.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.compiler/share/classes/com/sun/tools/sjavac/pubapi/PubMethod.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.compiler/share/classes/com/sun/tools/sjavac/pubapi/PubType.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.compiler/share/classes/com/sun/tools/sjavac/pubapi/PubVar.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.compiler/share/classes/com/sun/tools/sjavac/pubapi/ReferenceTypeDesc.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.compiler/share/classes/com/sun/tools/sjavac/pubapi/TypeDesc.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.compiler/share/classes/com/sun/tools/sjavac/pubapi/TypeVarTypeDesc.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.compiler/share/classes/com/sun/tools/sjavac/server/IdleResetSjavac.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.compiler/share/classes/com/sun/tools/sjavac/server/PortFileMonitor.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.compiler/share/classes/com/sun/tools/sjavac/server/RequestHandler.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.compiler/share/classes/com/sun/tools/sjavac/server/Sjavac.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.compiler/share/classes/com/sun/tools/sjavac/server/SjavacServer.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.compiler/share/classes/com/sun/tools/sjavac/server/Terminable.java --- 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; /** diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/AbstractProfileIndexWriter.java --- 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 diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/AnnotationTypeFieldWriterImpl.java --- 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 diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/HtmlDoclet.java --- 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.*; diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/LinkInfoImpl.java --- 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.*; diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/AnnotationTypeWriter.java --- 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.*; diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/ClassWriter.java --- 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.*; diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/ProfilePackageSummaryWriter.java --- 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 diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/ProfileSummaryWriter.java --- 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 diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/builders/LayoutParser.java --- 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.*; diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/taglets/CodeTaglet.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/taglets/IndexTaglet.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/taglets/LiteralTaglet.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/util/MessageRetriever.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/util/TextTag.java --- 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.*; diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.javadoc/share/classes/com/sun/tools/javadoc/api/JavadocTaskImpl.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.jdeps/share/classes/com/sun/tools/classfile/ClassWriter.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.jdeps/share/classes/com/sun/tools/classfile/CompilationID_attribute.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.jdeps/share/classes/com/sun/tools/classfile/ConstantPoolException.java --- 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; /* diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.jdeps/share/classes/com/sun/tools/classfile/Dependencies.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.jdeps/share/classes/com/sun/tools/classfile/Descriptor.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.jdeps/share/classes/com/sun/tools/classfile/DescriptorException.java --- 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; /* diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.jdeps/share/classes/com/sun/tools/classfile/EnclosingMethod_attribute.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.jdeps/share/classes/com/sun/tools/classfile/SourceID_attribute.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.jdeps/share/classes/com/sun/tools/javap/TypeAnnotationWriter.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.jdeps/share/classes/com/sun/tools/jdeps/Analyzer.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.jdeps/share/classes/com/sun/tools/jdeps/Archive.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.jdeps/share/classes/com/sun/tools/jdeps/ClassFileReader.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.jdeps/share/classes/com/sun/tools/jdeps/JdepsTask.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.jdeps/share/classes/com/sun/tools/jdeps/Module.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.jdeps/share/classes/com/sun/tools/jdeps/ModulesXmlReader.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.jdeps/share/classes/com/sun/tools/jdeps/PlatformClassPath.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.jdeps/share/classes/com/sun/tools/jdeps/Profile.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.jshell/share/classes/jdk/internal/jshell/remote/RemoteCodes.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.jshell/share/classes/jdk/internal/jshell/tool/EditingHistory.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.jshell/share/classes/jdk/internal/jshell/tool/StopDetectingInputStream.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.jshell/share/classes/jdk/jshell/DeclarationSnippet.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.jshell/share/classes/jdk/jshell/ErroneousSnippet.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.jshell/share/classes/jdk/jshell/Eval.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.jshell/share/classes/jdk/jshell/ExecutionControl.java --- 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 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()) { /* diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.jshell/share/classes/jdk/jshell/ExpressionSnippet.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.jshell/share/classes/jdk/jshell/ImportSnippet.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.jshell/share/classes/jdk/jshell/JDIConnection.java --- 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 parseConnectorArgs(Connector connector, String argString) { - Map arguments = connector.defaultArguments(); + private Map mergeConnectorArgs(Connector connector, Map argumentName2Value) { + Map 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 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 argumentName2Value, int traceFlags, JShell proc) { + this.env = env; + this.proc = proc; + this.connector = findConnector(connectorName); - private static List splitStringAtNonEnclosedWhiteSpace(String value) throws IllegalArgumentException { - List 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 - 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; } diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.jshell/share/classes/jdk/jshell/JDIEnv.java --- 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 argumentName2Value, boolean openNow, int flags) { + connection = new JDIConnection(this, connectorName, argumentName2Value, flags, state); if (!connection.isLaunch() || openNow) { connection.open(); } diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.jshell/share/classes/jdk/jshell/JDIEventHandler.java --- 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 diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.jshell/share/classes/jdk/jshell/MaskCommentsAndModifiers.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.jshell/share/classes/jdk/jshell/MethodSnippet.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.jshell/share/classes/jdk/jshell/OuterWrap.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.jshell/share/classes/jdk/jshell/PersistentSnippet.java --- 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; /** diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.jshell/share/classes/jdk/jshell/ReplParser.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.jshell/share/classes/jdk/jshell/ReplParserFactory.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.jshell/share/classes/jdk/jshell/StatementSnippet.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.jshell/share/classes/jdk/jshell/TypeDeclSnippet.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.jshell/share/classes/jdk/jshell/TypePrinter.java --- 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 fullClassNameAndPackageToClass; - private final Type typeToPrint; + private boolean useWildCard = false; TypePrinter(JavacMessages messages, BinaryOperator 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) + return super.visitWildcardType(wt, locale); + } else { // at TopLevelType(ex: ? extends List, ? 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; diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.jshell/share/classes/jdk/jshell/Util.java --- 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. * diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.jshell/share/classes/jdk/jshell/VarSnippet.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/src/jdk.jshell/share/classes/jdk/jshell/Wrap.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/test/com/sun/javadoc/T6735320/SerialFieldTest.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/test/com/sun/javadoc/testCmndLineClass/C5.java --- 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. */ diff -r dcce1212d339 -r a0135741d02f langtools/test/com/sun/javadoc/testEncoding/EncodeTest.java --- 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" diff -r dcce1212d339 -r a0135741d02f langtools/test/com/sun/javadoc/testJavaFX/pkg1/C.java --- 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 { diff -r dcce1212d339 -r a0135741d02f langtools/test/com/sun/javadoc/testJavaFX/pkg1/D.java --- 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 {} diff -r dcce1212d339 -r a0135741d02f langtools/test/com/sun/javadoc/testJavaFX/pkg2/Test.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/test/com/sun/javadoc/testLegacyTaglet/C.java --- 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. diff -r dcce1212d339 -r a0135741d02f langtools/test/com/sun/javadoc/testOrdering/pkg1/A.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/test/com/sun/javadoc/testOrdering/pkg1/B.java --- 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 { diff -r dcce1212d339 -r a0135741d02f langtools/test/com/sun/javadoc/testOrdering/src-2/a/A.java --- 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 diff -r dcce1212d339 -r a0135741d02f langtools/test/com/sun/javadoc/testOrdering/src-2/a/something.java --- 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 diff -r dcce1212d339 -r a0135741d02f langtools/test/com/sun/javadoc/testOrdering/src-2/b/B.java --- 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 diff -r dcce1212d339 -r a0135741d02f langtools/test/com/sun/javadoc/testOrdering/src-2/b/something.java --- 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 diff -r dcce1212d339 -r a0135741d02f langtools/test/com/sun/javadoc/testOrdering/src-2/e/something.java --- 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 diff -r dcce1212d339 -r a0135741d02f langtools/test/com/sun/javadoc/testOrdering/src-2/something/J.java --- 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 { /** diff -r dcce1212d339 -r a0135741d02f langtools/test/com/sun/javadoc/testOrdering/src-2/something/package-info.java --- 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 */ diff -r dcce1212d339 -r a0135741d02f langtools/test/com/sun/javadoc/testOrdering/src-2/something/something.java --- 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 diff -r dcce1212d339 -r a0135741d02f langtools/test/com/sun/javadoc/testSearch/pkgfx/C.java --- 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 { diff -r dcce1212d339 -r a0135741d02f langtools/test/com/sun/javadoc/testSinceTag/pkg1/C1.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/test/com/sun/javadoc/testThrowsInheritence/C.java --- 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 { /** diff -r dcce1212d339 -r a0135741d02f langtools/test/com/sun/javadoc/testThrowsInheritence/I.java --- 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 diff -r dcce1212d339 -r a0135741d02f langtools/test/com/sun/javadoc/testTypeAnnotations/typeannos/Varargs.java --- 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.*; diff -r dcce1212d339 -r a0135741d02f langtools/test/com/sun/javadoc/testUseOption/pkg1/AnAbstract.java --- 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 {} diff -r dcce1212d339 -r a0135741d02f langtools/test/jdk/jshell/TypeNameTest.java --- 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"); } + 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 { 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 { 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 { 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[][] get() { return null; } }", added(VALID)); + assertEval("Test3 test3 = new Test3<>();"); + VarSnippet sn6 = (VarSnippet) varKey(assertEval("test3.get()")); + assertEquals(sn6.typeName(), "String[][]"); } } diff -r dcce1212d339 -r a0135741d02f langtools/test/jdk/jshell/VariablesTest.java --- 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[][] get() { return null; } }", added(VALID)); + assertEval("Test 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 list = new ArrayList<>();", "[]", diff -r dcce1212d339 -r a0135741d02f langtools/test/lib/combo/tools/javac/combo/Diagnostics.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/test/lib/combo/tools/javac/combo/JavacTemplateTestBase.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/test/lib/combo/tools/javac/combo/Template.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/test/lib/combo/tools/javac/combo/TemplateTest.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/doclint/tidy/util/Main.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/javac/6199662/TreeInfo.java --- 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.*; diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/javac/6199662/TreeScanner.java --- 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.*; diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/javac/6302184/T6302184.java --- 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. */ diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/javac/6400872/C.java --- 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(); diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/javac/6508981/p/A.java --- 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 { } diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/javac/6547131/T.java --- 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 */ diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/javac/6547131/p/Outer$I.class Binary file langtools/test/tools/javac/6547131/p/Outer$I.class has changed diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/javac/6547131/p/Outer.class Binary file langtools/test/tools/javac/6547131/p/Outer.class has changed diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/javac/6917288/GraphicalInstallerTest.java --- 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 diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/javac/7153958/pkg/ClassToBeStaticallyImportedA.java --- 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 { diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/javac/7153958/pkg/ClassToBeStaticallyImportedB.java --- 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 { diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/javac/InnerClassesAttribute/Outside$1$Inside.class Binary file langtools/test/tools/javac/InnerClassesAttribute/Outside$1$Inside.class has changed diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/javac/InnerClassesAttribute/Outside$1$Inside.jasm --- /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 "":"()V" + stack 1 locals 1 +{ + aload_0; + invokespecial Method java/lang/Object."":"()V"; + return; +} + +private InnerClass Inside=class Outside$1$Inside; + +} \ No newline at end of file diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/javac/InnerClassesAttribute/Outside.class Binary file langtools/test/tools/javac/InnerClassesAttribute/Outside.class has changed diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/javac/InnerClassesAttribute/Outside.jasm --- /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 "":"()V" + stack 1 locals 1 +{ + aload_0; + invokespecial Method java/lang/Object."":"()V"; + return; +} + +Method method:"()V" + stack 0 locals 1 +{ + return; +} + +private InnerClass Inside=class Outside$1$Inside; + +} \ No newline at end of file diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/javac/InnerClassesAttribute/Test.java --- 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 diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/javac/MethodParameters/ClassFileVisitor.java --- 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; } diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/javac/MethodParameters/LocalClassTest.java --- 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) { }; + } } diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/javac/MethodParameters/LocalClassTest.out --- 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.(final this$0/*implicit*/, a, ba) -LocalClassTest$1Local_has_constructor.(final this$0/*implicit*/) -LocalClassTest$1Local_has_constructor.foo(m, nm) -LocalClassTest$1Local_has_constructor.foo() +class LocalClassTest$1 -- anon +LocalClassTest$1.(final this$0/*implicit*/, final j, final val$i/*synthetic*/) +class LocalClassTest$1CapturingLocal$1 -- anon +LocalClassTest$1CapturingLocal$1.(final val$this$0/*synthetic*/, final val$val$i/*synthetic*/) +LocalClassTest$1CapturingLocal$1.test() +class LocalClassTest$1CapturingLocal -- inner +LocalClassTest$1CapturingLocal.(final this$0/*implicit*/, final j, final val$i/*synthetic*/) +LocalClassTest$1CapturingLocal.(final this$0/*implicit*/, o, final val$i/*synthetic*/) class LocalClassTest$1Local_default_constructor -- inner LocalClassTest$1Local_default_constructor.(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.(final this$0/*implicit*/) +LocalClassTest$1Local_has_constructor.(final this$0/*implicit*/, a, ba) +LocalClassTest$1Local_has_constructor.foo() +LocalClassTest$1Local_has_constructor.foo(m, nm) class LocalClassTest -- LocalClassTest.() -LocalClassTest.foo() \ No newline at end of file +LocalClassTest.foo() +LocalClassTest.test(final i) diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/javac/MethodParameters/ReflectionVisitor.java --- 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 + diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/javac/NameClash/NameClashTest.java --- 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 diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/javac/T6435291/T.class Binary file langtools/test/tools/javac/T6435291/T.class has changed diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/javac/T6435291/T6435291.java --- 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 */ diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/javac/T6458823/MyProcessor.java --- 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.*; diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/javac/T6942649.java --- 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 diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/javac/annotations/neg/8022765/VerifyAnnotationsAttributed.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/javac/annotations/typeAnnotations/TargetTypes.java --- 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.*; diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/javac/annotations/typeAnnotations/TypeProcOnly.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/javac/annotations/typeAnnotations/classfile/T8008769.java --- 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 diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/javac/annotations/typeAnnotations/packageanno/PackageProcessor.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/javac/annotations/typeAnnotations/packageanno/mypackage/Anno.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/javac/annotations/typeAnnotations/packageanno/mypackage/MyClass.java --- 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 {} diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/javac/api/6557752/T6557752.java --- 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 diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/javac/api/TestGetElementReferenceData.java --- 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.*; diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/javac/classfiles/attributes/innerclasses/InnerClassesTest.java --- 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 diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/javac/classfiles/attributes/innerclasses/InnerEnumInInnerAnnotationTest.java --- 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 diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/javac/defaultMethods/Assertions.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/javac/defaultMethods/crossCompile/Clinit.java --- 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(); diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/javac/diags/HTMLWriter.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/javac/diags/examples/DiamondAndAnonClass.java --- 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 diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/javac/diags/examples/DiamondAndNonDenotableTypes.java --- 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 diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/javac/doctree/positions/TestPositionSource.java --- 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. diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/javac/file/zip/8003512/LoadClassFromJava6CreatedJarTest.java --- 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 diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/javac/flow/AliveRanges.java --- 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) diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/javac/generics/8004094/B.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/javac/generics/bridges/Bridge.java --- 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) diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/javac/generics/bridges/Bridges.java --- 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(); } diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/javac/generics/bridges/tests/TestBridgeWithDefault.java --- 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); } diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/javac/generics/bridges/tests/TestClassAndInterfaceBridgeIdentical01.java --- 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(); } diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/javac/generics/bridges/tests/TestClassAndInterfaceBridgeIdentical02.java --- 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 { void m(X x); } diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/javac/generics/bridges/tests/TestNoBridgeInSiblingsSuper.java --- 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(); } diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/javac/generics/bridges/tests/TestNoDuplicateBridges01.java --- 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(); } diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/javac/generics/bridges/tests/TestNoDuplicateBridges02.java --- 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 { A get(); diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/javac/generics/diamond/pos/NestedDiamondAllocationTest.java --- 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 diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/javac/generics/inference/CaptureInDeclaredBound.java --- /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 {} + + interface I> { + C get(); + } + + > void m(C arg) {} + + void test(I arg) { + m(arg.get()); + } + +} diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/javac/implicitCompile/Implicit.java --- 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 { } diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/javac/importscope/TestDuplicateImport.java --- 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 diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/javac/importscope/TestLazyImportScope.java --- 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 diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/javac/lambda/8068399/T8068399.java --- 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 diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/javac/lambda/8142876/T8142876.java --- /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 { + void m(); + } + + void test() { + I succeed = this::ff; + I, String> failed = this::ff; + } + + interface O {} + + private void ff(){} +} diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/javac/lambda/LocalBreakAndContinue.java --- 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. - */ /* diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/javac/lambda/bridge/template_tests/BridgeMethodTestCase.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/javac/lambda/bridge/template_tests/BridgeMethodsTemplateTest.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/javac/lambda/inaccessibleMref01/p1/C.java --- 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 { diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/javac/lambda/inaccessibleMref02/p1/C.java --- 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 { diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/javac/lambda/methodReferenceExecution/pkg/B.java --- 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() { diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/javac/lambda/separate/Foo.java --- 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 { void m(X x); } diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/javac/missingSuperRecovery/MissingSuperRecovery.java --- 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 */ diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/javac/missingSuperRecovery/impl.class Binary file langtools/test/tools/javac/missingSuperRecovery/impl.class has changed diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/javac/missingSuperRecovery/impl.jasm --- /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 "":"()V" + stack 1 locals 1 +{ + aload_0; + invokespecial Method java/lang/Object."":"()V"; + return; +} + +public Method run:"()V" + stack 0 locals 1 +{ + return; +} + +} \ No newline at end of file diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/javac/options/T7022337.java --- 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 diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/javac/policy/test3/Test.java --- 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 diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/javac/processing/6414633/A.java --- 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.*; diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/javac/processing/TestWarnErrorCount.java --- 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 diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/javac/processing/model/element/TestMissingElement/TestMissingElement.java --- 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 diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/javac/resolve/Candidate.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/javac/resolve/Pos.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/javac/resolve/TraceResolve.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/javac/resolve/tests/AbstractMerge.java --- 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 { diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/javac/scope/DupUnsharedTest.java --- 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 diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/javac/scope/RemoveSymbolUnitTest.java --- 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 diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/javac/staticImport/6665223/pkg/A.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/javac/staticImport/6665223/pkg/B.java --- 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 {} diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/javac/tree/JavacTreeScannerTest.java --- 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 diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/javac/tree/SourceTreeScannerTest.java --- 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 diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/javac/tree/TestAnnotatedAnonClass.java --- 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. diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/javac/types/CastTest.java --- 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 }, diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/javac/types/CastToTypeVarTest.java --- /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 { + void foo(Y y) { + X x = (X)y; + } +} diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/javac/types/CastTypeVarToPrimitiveTest.java --- /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 { + void foo(T valIn){ + double val = (double)valIn; + } +} diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/javac/warnings/suppress/T8021112a.java --- 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; /** diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/javadoc/parser/7091528/p/C3.java --- 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 {} diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/javadoc/subpackageIgnore/pkg1/not-subpkg/SomeJavaFile.java --- 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. */ + diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/javap/ExtPath.java --- 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 diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/javap/T4880672.java --- 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 diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/javap/T6729471.java --- 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 diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/javap/T6866657.java --- 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 diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/jdeps/VerboseFormat/JdepsDependencyClosure.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/jdeps/VerboseFormat/use/indirect/DontUseUnsafe2.java --- 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.*; diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/jdeps/VerboseFormat/use/indirect/UseUnsafeIndirectly.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/jdeps/VerboseFormat/use/indirect2/DontUseUnsafe3.java --- 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.*; diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/jdeps/VerboseFormat/use/indirect2/UseUnsafeIndirectly2.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/jdeps/VerboseFormat/use/unsafe/DontUseUnsafe.java --- 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 { diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/jdeps/VerboseFormat/use/unsafe/UseUnsafeClass.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/jdeps/VerboseFormat/use/unsafe/UseUnsafeClass2.java --- 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; diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/lib/ToolBox.java --- 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 { private boolean includeStandardOptions; - private String classpath; - private String sourcepath; - private String outdir; + private List classpath; + private List sourcepath; + private Path outdir; private List options; private List classes; private List files; private List 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 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 allOpts = new ArrayList<>(); + if (options != null) + allOpts.addAll(options); - Iterable 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 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 files) throws IOException { + private void setLocationFromPaths(StandardLocation location, List 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 toFiles(String path) { - List result = new ArrayList<>(); - for (String s : path.split(File.pathSeparator)) { - if (!s.isEmpty()) - result.add(new File(s)); - } - return result; + private String toSearchPath(List files) { + return files.stream() + .map(Path::toString) + .collect(Collectors.joining(File.pathSeparator)); } private Iterable joinFiles( List files, List 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 filesAsFileObjects = - standardJavaFileManager.getJavaFileObjectsFromStrings(files); + internalFileManager.getJavaFileObjectsFromStrings(files); if (fileObjects == null) return filesAsFileObjects; List 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 diff -r dcce1212d339 -r a0135741d02f langtools/test/tools/sjavac/ExclPattern.java --- 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