/hg/release/icedtea7-forest-2.5/langtools: 16 new changesets

andrew at icedtea.classpath.org andrew at icedtea.classpath.org
Wed Apr 2 01:21:22 UTC 2014


changeset 772aad4e9681 in /hg/release/icedtea7-forest-2.5/langtools
details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/langtools?cmd=changeset;node=772aad4e9681
author: katleman
date: Thu Jan 16 11:52:25 2014 -0800

	Added tag jdk7u60-b03 for changeset 4170784840d5


changeset 744287fccf3b in /hg/release/icedtea7-forest-2.5/langtools
details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/langtools?cmd=changeset;node=744287fccf3b
author: katleman
date: Wed Jan 22 12:34:48 2014 -0800

	Added tag jdk7u60-b04 for changeset 772aad4e9681


changeset 8f6db72756f3 in /hg/release/icedtea7-forest-2.5/langtools
details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/langtools?cmd=changeset;node=8f6db72756f3
author: katleman
date: Wed Feb 05 12:31:51 2014 -0800

	Added tag jdk7u60-b05 for changeset 744287fccf3b


changeset e63a64c50c0c in /hg/release/icedtea7-forest-2.5/langtools
details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/langtools?cmd=changeset;node=e63a64c50c0c
author: katleman
date: Wed Feb 12 14:57:01 2014 -0800

	Added tag jdk7u60-b06 for changeset 8f6db72756f3


changeset ff6a1c2be8b8 in /hg/release/icedtea7-forest-2.5/langtools
details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/langtools?cmd=changeset;node=ff6a1c2be8b8
author: bpatel
date: Mon Feb 10 09:50:12 2014 -0800

	8016328: Regression : Javadoc i18n regression caused by fix for 8012375
	Reviewed-by: jjg


changeset da87f2bc8fd9 in /hg/release/icedtea7-forest-2.5/langtools
details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/langtools?cmd=changeset;node=da87f2bc8fd9
author: vromero
date: Tue Feb 11 21:01:12 2014 +0000

	8033294: javac, spurious warning for instanceof operator
	Reviewed-by: jjg, jlahoda


changeset 02f050bc5569 in /hg/release/icedtea7-forest-2.5/langtools
details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/langtools?cmd=changeset;node=02f050bc5569
author: lana
date: Sat Feb 15 17:58:10 2014 -0800

	Merge


changeset be8e34e4920e in /hg/release/icedtea7-forest-2.5/langtools
details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/langtools?cmd=changeset;node=be8e34e4920e
author: katleman
date: Wed Feb 19 14:04:42 2014 -0800

	Added tag jdk7u60-b07 for changeset 02f050bc5569


changeset 3f8b585403e5 in /hg/release/icedtea7-forest-2.5/langtools
details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/langtools?cmd=changeset;node=3f8b585403e5
author: katleman
date: Wed Feb 26 12:47:21 2014 -0800

	Added tag jdk7u60-b08 for changeset be8e34e4920e


changeset 5048b510be42 in /hg/release/icedtea7-forest-2.5/langtools
details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/langtools?cmd=changeset;node=5048b510be42
author: katleman
date: Wed Mar 05 12:27:59 2014 -0800

	Added tag jdk7u60-b09 for changeset 3f8b585403e5


changeset f5883f43767d in /hg/release/icedtea7-forest-2.5/langtools
details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/langtools?cmd=changeset;node=f5883f43767d
author: mfang
date: Wed Mar 05 09:16:34 2014 -0800

	8035988: 7u60 l10n resource file translation update 1
	Reviewed-by: naoto, yhuang


changeset 661c81c7f560 in /hg/release/icedtea7-forest-2.5/langtools
details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/langtools?cmd=changeset;node=661c81c7f560
author: kizune
date: Wed Feb 26 17:51:19 2014 +0400

	7186887: Test T6567415.java can fail on a slow machine
	Reviewed-by: jjg, ksrini


changeset 3ee98cd07065 in /hg/release/icedtea7-forest-2.5/langtools
details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/langtools?cmd=changeset;node=3ee98cd07065
author: lana
date: Wed Mar 05 16:26:11 2014 -0800

	Merge


changeset 3cc64ba8cf85 in /hg/release/icedtea7-forest-2.5/langtools
details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/langtools?cmd=changeset;node=3cc64ba8cf85
author: katleman
date: Wed Mar 12 14:36:05 2014 -0700

	Added tag jdk7u60-b10 for changeset 3ee98cd07065


changeset b79b8b1dc88f in /hg/release/icedtea7-forest-2.5/langtools
details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/langtools?cmd=changeset;node=b79b8b1dc88f
author: katleman
date: Wed Mar 19 10:04:37 2014 -0700

	Added tag jdk7u60-b11 for changeset 3cc64ba8cf85


changeset f38810d86876 in /hg/release/icedtea7-forest-2.5/langtools
details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/langtools?cmd=changeset;node=f38810d86876
author: andrew
date: Wed Apr 02 02:16:03 2014 +0100

	Merge jdk7u60-b12


diffstat:

 .hgtags                                                                                     |   24 +++
 .jcheck/conf                                                                                |    2 -
 make/Makefile                                                                               |    4 +
 make/build.properties                                                                       |    3 +-
 make/build.xml                                                                              |    2 +-
 src/share/classes/com/sun/tools/doclets/formats/html/markup/HtmlDocWriter.java              |    8 +-
 src/share/classes/com/sun/tools/doclets/formats/html/markup/HtmlTree.java                   |   45 ++++++-
 src/share/classes/com/sun/tools/doclets/formats/html/markup/HtmlWriter.java                 |   11 +-
 src/share/classes/com/sun/tools/doclets/formats/html/resources/standard_ja.properties       |   14 +-
 src/share/classes/com/sun/tools/doclets/internal/toolkit/resources/doclets_ja.properties    |   46 ++++--
 src/share/classes/com/sun/tools/doclets/internal/toolkit/resources/doclets_zh_CN.properties |   14 +-
 src/share/classes/com/sun/tools/javac/code/Type.java                                        |    6 +-
 src/share/classes/com/sun/tools/javac/code/Types.java                                       |   52 ++++---
 src/share/classes/com/sun/tools/javac/resources/javac_ja.properties                         |   10 +-
 src/share/classes/com/sun/tools/javah/resources/l10n_ja.properties                          |    4 +-
 src/share/classes/com/sun/tools/javap/resources/javap_ja.properties                         |   63 ++++++++++
 src/share/classes/com/sun/tools/javap/resources/javap_zh_CN.properties                      |   63 ++++++++++
 test/com/sun/javadoc/testHref/TestHref.java                                                 |   12 +-
 test/com/sun/javadoc/testJavascript/TestJavascript.java                                     |   13 +-
 test/com/sun/javadoc/testLinkTaglet/TestLinkTaglet.java                                     |   10 +-
 test/com/sun/javadoc/testPrivateClasses/TestPrivateClasses.java                             |    6 +-
 test/tools/javac/6567415/T6567415.java                                                      |    4 +-
 test/tools/javac/T5090006/broken.jar                                                        |  Bin 
 test/tools/javac/T8033294/RedundantWarningInIntersectionTest.java                           |   58 +++++++++
 24 files changed, 386 insertions(+), 88 deletions(-)

diffs (truncated from 918 to 500 lines):

diff -r 4170784840d5 -r f38810d86876 .hgtags
--- a/.hgtags	Thu Jan 02 10:11:59 2014 -0800
+++ b/.hgtags	Wed Apr 02 02:16:03 2014 +0100
@@ -50,6 +50,7 @@
 9596dff460935f09684c11d156ce591f92584f0d jdk7-b73
 1a66b08deed0459054b5b1bea3dfbead30d258fa jdk7-b74
 2485f5641ed0829205aaaeb31ad711c2c2ef0de3 jdk7-b75
+83367f01297bf255f511f5291bbbbaa24a9c8459 icedtea7-1.12
 8fb9b4be3cb1574302acde90549a4d333ef51e93 jdk7-b76
 0398ae15b90ac76d87ee21844453e95ff8613e43 jdk7-b77
 acc1e40a5874ebf32bebcb6ada565b3b40b7461c jdk7-b78
@@ -63,6 +64,7 @@
 ef07347428f2198ae6b8144ac0b9086bbe39fd16 jdk7-b86
 409db93d19c002333980df5b797c6b965150c7a0 jdk7-b87
 f9b5d4867a26f8c4b90ad37fe2c345b721e93d6b jdk7-b88
+681f1f51926faf4c73d8905a429ff4ead6e9d622 icedtea7-1.13
 6cea9a143208bc1185ced046942c0f4e45dbeba5 jdk7-b89
 71c2c23a7c35b2896c87004023b9743b6d1b7758 jdk7-b90
 97b6fa97b8ddb3a49394011c2a0ec5d6535e594c jdk7-b91
@@ -111,6 +113,7 @@
 3d7acdbb72cab55deedfd35f60d4732abc9d6ac4 jdk7-b134
 9d0a61ac567b983da7cc8f4a7030f2245bb6dbab jdk7-b135
 ed0f7f1f9511db4f9615b1426d22f8b961629275 jdk7-b136
+8e26c4aee63c04ee129bf9068f5eea47cc385177 icedtea-1.14
 a15c9b058ae007d4ccb7e35ce44e4dfa977f090b jdk7-b137
 53f212bed4f4304dce7f0bf0fa01c998c65bacd6 jdk7-b138
 853b6bb99f9b58eb7cf8211c67d3b6e4f1228a3e jdk7-b139
@@ -123,6 +126,7 @@
 9425dd4f53d5bfcd992d9aecea0eb7d8b2d4f62b jdk7-b146
 d34578643d1c6c752d4a6b5e79c6ab1b60850b4a jdk7u1-b01
 58bc532d63418ac3c9b42460d89cdaf595c6f3e1 jdk7-b147
+fb7fb3071b642334520e5b9f4a87ce28717af61c icedtea-2.0-branchpoint
 cd2cc8b5edb045b950aed46d159b4fb8fc2fd1df jdk7u1-b02
 82820a30201dbf4b80f1916f3d0f4a92ad21b61a jdk7u1-b03
 baa2c13c70fea3d6e259a34f0903197fdceb64b5 jdk7u1-b04
@@ -141,6 +145,7 @@
 f0802d8a0909f66ce19d3d44b33ddf4943aee076 jdk7u2-b12
 f474527e77e4797d78bd6c3b31923fddcfd9d5c6 jdk7u2-b13
 fc0769df8cd03fffc38c7a1ab6b2e2e7cc2506a8 jdk7u2-b21
+58f6a950cd726220e81eddb126ca5c57e3b368f2 icedtea-2.1-branchpoint
 fc0769df8cd03fffc38c7a1ab6b2e2e7cc2506a8 jdk7u3-b02
 0ffc4995457773085f61c39f6d33edc242b41bcf jdk7u3-b03
 f6de36b195cd315646213c7affd2cc15702edbfb jdk7u3-b04
@@ -157,6 +162,7 @@
 8919b2b02fcba65f833c68374f3bfdd9bc3ba814 jdk7u4-b10
 4672e092f0968d503dc37f860b15ae7e2653f8d7 jdk7u4-b11
 a4bf6a1aff54a98e9ff2b3fb53c719f658bec677 jdk7u4-b12
+e3537a4f75c7fcca16c349c3175bb0cdc2fbc29c icedtea-2.2-branchpoint
 56eb9150d9ffdb71c47d72871e8ecc98b5f402de jdk7u4-b13
 0e55881c2ee2984048c179d1e031cefb56a36bec jdk7u4-b14
 0bea057f7ce1577e1b0306f2027c057e35394398 jdk7u5-b01
@@ -186,11 +192,15 @@
 21d2313dfeac8c52a04b837d13958c86346a4b12 jdk7u6-b10
 13d3c624291615593b4299a273085441b1dd2f03 jdk7u6-b11
 f0be10a26af08c33d9afe8fe51df29572d431bac jdk7u6-b12
+e3eeee75b861baf378d41adcd29ae70ed047eae7 ppc-aix-port-b01
+e3eeee75b861baf378d41adcd29ae70ed047eae7 ppc-aix-port-b02
+e3eeee75b861baf378d41adcd29ae70ed047eae7 ppc-aix-port-b03
 fcebf337f5c1d342973573d9c6f758443c8aefcf jdk7u6-b13
 35b2699c6243e9fb33648c2c25e97ec91d0e3553 jdk7u6-b14
 47ae28da508861d77ee6dd408d822acf507b28ec jdk7u6-b15
 5c7763489f4d2727c6d9de11f4114fb8ed839042 jdk7u6-b16
 66c671f28cb2840ceec5b44c44bac073fc0b4256 jdk7u6-b17
+cee31ee38a190f77b1e21c0515bb28802dcd9678 icedtea-2.3-branchpoint
 6aa859ef42876c51bb1b1d7fb4db32a916a7dcaa jdk7u6-b18
 474a52eeeafb1feccffda68b96f651e65415c01d jdk7u6-b19
 32acb67a79531daf678577c7ef1bde1867da807d jdk7u6-b20
@@ -258,11 +268,13 @@
 382bab6d9682eefa2185a1643dfa32d65b6c20e5 jdk7u12-b07
 7c0c3aeb2c603baba2cabba9adc5a0a49afb4f47 jdk7u12-b08
 96c4f3ec63552a87a825baabd7f0dfafec299483 jdk7u12-b09
+85fb9d7ce4af53f0a47d2b73d983c96239f9ff33 icedtea-2.4-branchpoint
 e5b1403fa68abe3ac7174c031f19e6ecf77624a0 jdk7u14-b10
 db94066df63468172e074d59e71d82dc874ed7cb jdk7u14-b11
 f9a326e92fafc4724f0af550c2cba82fea202a31 jdk7u14-b12
 5a52c6cc8db94b68eaacb42a9b4df30a40b09d82 jdk7u14-b13
 5febc4e479fad801424cdcce90a0d463a2ef9223 jdk7u14-b14
+d52538e72925a1da7b1fcff051b591beeb2452b4 ppc-aix-port-b04
 5fdb509d1f1a0533b14c61c92d77ff21e0ce2488 jdk7u14-b15
 1298307076c2f0c2a4acd3a2a132cbe98d399009 jdk7u15-b01
 8db0105f00ce9fe6899ece52d46d78995111c456 jdk7u15-b02
@@ -382,6 +394,7 @@
 ba3ff27d4082f2cf0d06e635b2b6e01f80e78589 jdk7u45-b18
 164cf7491ba2f371354ba343a604eee4c61c529d jdk7u45-b30
 7f5cfaedb25c2c2774d6839810d6ae543557ca01 jdk7u45-b31
+849b17bc6e9a08fa41e0ef631e51366a09842e64 jdk7u60-b00
 ef7bdbe7f1fa42fd58723e541d9cdedcacb2649a jdk7u45-b33
 bcb3e939d046d75436c7c8511600b6edce42e6da jdk7u45-b34
 18d1864abca976ca68cb71612e9b20c908455d3d jdk7u51-b00
@@ -403,3 +416,14 @@
 849b17bc6e9a08fa41e0ef631e51366a09842e64 jdk7u60-b00
 b19e375d9829daf207b1bdc7f908a3e1d548462c jdk7u60-b01
 954e1616449af74f68aed57261cbeb62403377f1 jdk7u60-b02
+0d89cc5766d72e870eaf16696ec9b7b1ca4901fd icedtea-2.5pre01
+f75a642c2913e1ecbd22fc46812cffa2e7739169 icedtea-2.5pre02
+4170784840d510b4e8ae7ae250b92279aaf5eb25 jdk7u60-b03
+772aad4e9681828b8ee193b9ed971cbfe6c7f347 jdk7u60-b04
+744287fccf3b2c4fba2abf105863f0a44c3bd4da jdk7u60-b05
+8f6db72756f3e4c3cca8731d20e978fb741846d2 jdk7u60-b06
+02f050bc5569fb058ace44ed705bbb0f9022a6fe jdk7u60-b07
+be8e34e4920ebd1cfb89739d636e363c7881a548 jdk7u60-b08
+3f8b585403e596b7eadc231484f5480361c52c4b jdk7u60-b09
+3ee98cd07065dfa9a982e6692a3e875684a7e820 jdk7u60-b10
+3cc64ba8cf85942929b15c5ef21360f96db3b99c jdk7u60-b11
diff -r 4170784840d5 -r f38810d86876 .jcheck/conf
--- a/.jcheck/conf	Thu Jan 02 10:11:59 2014 -0800
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,2 +0,0 @@
-project=jdk7
-bugids=dup
diff -r 4170784840d5 -r f38810d86876 make/Makefile
--- a/make/Makefile	Thu Jan 02 10:11:59 2014 -0800
+++ b/make/Makefile	Wed Apr 02 02:16:03 2014 +0100
@@ -111,6 +111,10 @@
   ANT_OPTIONS += -Ddebug.classfiles=true
 endif
 
+ifeq ($(JAVAC_WARNINGS_FATAL), false)
+  ANT_OPTIONS += -Djavac.warnings.fatal=
+endif
+
 # Note: jdk/make/common/Defs.gmk uses LANGUAGE_VERSION (-source NN)
 # and the somewhat misnamed CLASS_VERSION (-target NN)
 ifdef TARGET_CLASS_VERSION
diff -r 4170784840d5 -r f38810d86876 make/build.properties
--- a/make/build.properties	Thu Jan 02 10:11:59 2014 -0800
+++ b/make/build.properties	Wed Apr 02 02:16:03 2014 +0100
@@ -68,7 +68,8 @@
 # set the following to -version to verify the versions of javac being used
 javac.version.opt =
 # in time, there should be no exceptions to -Xlint:all
-javac.lint.opts = -Xlint:all,-deprecation -Werror
+javac.warnings.fatal = -Werror
+javac.lint.opts = -Xlint:all,-deprecation ${javac.warnings.fatal}
 
 # options for the <javadoc> task for javac
 #javadoc.jls3.url=http://java.sun.com/docs/books/jls/
diff -r 4170784840d5 -r f38810d86876 make/build.xml
--- a/make/build.xml	Thu Jan 02 10:11:59 2014 -0800
+++ b/make/build.xml	Wed Apr 02 02:16:03 2014 +0100
@@ -877,7 +877,7 @@
         </javac>
         <taskdef name="genstubs"
                  classname="GenStubs$$Ant"
-                 classpath="${build.toolclasses.dir}/"/>
+                 classpath="${build.toolclasses.dir}:${build.bootstrap.dir}/classes:${ant.home}/lib/ant.jar"/>
     </target>
 
     <target name="-def-javadoc-tool" depends="-check-target.java.home">
diff -r 4170784840d5 -r f38810d86876 src/share/classes/com/sun/tools/doclets/formats/html/markup/HtmlDocWriter.java
--- a/src/share/classes/com/sun/tools/doclets/formats/html/markup/HtmlDocWriter.java	Thu Jan 02 10:11:59 2014 -0800
+++ b/src/share/classes/com/sun/tools/doclets/formats/html/markup/HtmlDocWriter.java	Wed Apr 02 02:16:03 2014 +0100
@@ -181,12 +181,14 @@
                                String label, boolean strong,
                                String stylename, String title, String target) {
         StringBuffer retlink = new StringBuffer();
+        StringBuilder lnk = new StringBuilder();
         retlink.append("<a href=\"");
-        retlink.append(link);
+        lnk.append(link);
         if (where != null && where.length() != 0) {
-            retlink.append("#");
-            retlink.append(where);
+            lnk.append("#");
+            lnk.append(where);
         }
+        retlink.append(HtmlTree.encodeURL(lnk.toString()));
         retlink.append("\"");
         if (title != null && title.length() != 0) {
             retlink.append(" title=\"" + title + "\"");
diff -r 4170784840d5 -r f38810d86876 src/share/classes/com/sun/tools/doclets/formats/html/markup/HtmlTree.java
--- a/src/share/classes/com/sun/tools/doclets/formats/html/markup/HtmlTree.java	Thu Jan 02 10:11:59 2014 -0800
+++ b/src/share/classes/com/sun/tools/doclets/formats/html/markup/HtmlTree.java	Wed Apr 02 02:16:03 2014 +0100
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2010, 2011, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2010, 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
@@ -26,6 +26,7 @@
 package com.sun.tools.doclets.formats.html.markup;
 
 import java.util.*;
+import java.nio.charset.*;
 import com.sun.tools.doclets.internal.toolkit.Content;
 import com.sun.tools.doclets.internal.toolkit.util.*;
 
@@ -116,6 +117,46 @@
     }
 
     /**
+     * A set of ASCII URI characters to be left unencoded.
+     */
+    public static final BitSet NONENCODING_CHARS = new BitSet(256);
+
+    static {
+        // alphabetic characters
+        for (int i = 'a'; i <= 'z'; i++) {
+            NONENCODING_CHARS.set(i);
+        }
+        for (int i = 'A'; i <= 'Z'; i++) {
+            NONENCODING_CHARS.set(i);
+        }
+        // numeric characters
+        for (int i = '0'; i <= '9'; i++) {
+            NONENCODING_CHARS.set(i);
+        }
+        // Reserved characters as per RFC 3986. These are set of delimiting characters.
+        String noEnc = ":/?#[]@!$&'()*+,;=";
+        // Unreserved characters as per RFC 3986 which should not be percent encoded.
+        noEnc += "-._~";
+        for (int i = 0; i < noEnc.length(); i++) {
+            NONENCODING_CHARS.set(noEnc.charAt(i));
+        }
+    }
+
+    protected static String encodeURL(String url) {
+        byte[] urlBytes = url.getBytes(Charset.forName("UTF-8"));
+        StringBuilder sb = new StringBuilder();
+        for (int i = 0; i < urlBytes.length; i++) {
+            int c = urlBytes[i];
+            if (NONENCODING_CHARS.get(c & 0xFF)) {
+                sb.append((char) c);
+            } else {
+                sb.append(String.format("%%%02X", c & 0xFF));
+            }
+        }
+        return sb.toString();
+    }
+
+    /**
      * Generates an HTML anchor tag.
      *
      * @param ref reference url for the anchor tag
@@ -124,7 +165,7 @@
      */
     public static HtmlTree A(String ref, Content body) {
         HtmlTree htmltree = new HtmlTree(HtmlTag.A, nullCheck(body));
-        htmltree.addAttr(HtmlAttr.HREF, nullCheck(ref));
+        htmltree.addAttr(HtmlAttr.HREF, encodeURL(ref));
         return htmltree;
     }
 
diff -r 4170784840d5 -r f38810d86876 src/share/classes/com/sun/tools/doclets/formats/html/markup/HtmlWriter.java
--- a/src/share/classes/com/sun/tools/doclets/formats/html/markup/HtmlWriter.java	Thu Jan 02 10:11:59 2014 -0800
+++ b/src/share/classes/com/sun/tools/doclets/formats/html/markup/HtmlWriter.java	Wed Apr 02 02:16:03 2014 +0100
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1997, 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
@@ -362,6 +362,12 @@
                 "    if (targetPage.indexOf(\":\") != -1 || (targetPage != \"\" && !validURL(targetPage)))" + DocletConstants.NL +
                 "        targetPage = \"undefined\";" + DocletConstants.NL +
                 "    function validURL(url) {" + DocletConstants.NL +
+                "        try {" + DocletConstants.NL +
+                "            url = decodeURIComponent(url);" + DocletConstants.NL +
+                "        }" + DocletConstants.NL +
+                "        catch (error) {" + DocletConstants.NL +
+                "            return false;" + DocletConstants.NL +
+                "        }" + DocletConstants.NL +
                 "        var pos = url.indexOf(\".html\");" + DocletConstants.NL +
                 "        if (pos == -1 || pos != url.length - 5)" + DocletConstants.NL +
                 "            return false;" + DocletConstants.NL +
@@ -373,7 +379,8 @@
                 "            if ('a' <= ch && ch <= 'z' ||" + DocletConstants.NL +
                 "                    'A' <= ch && ch <= 'Z' ||" + DocletConstants.NL +
                 "                    ch == '$' ||" + DocletConstants.NL +
-                "                    ch == '_') {" + DocletConstants.NL +
+                "                    ch == '_' ||" + DocletConstants.NL +
+                "                    ch.charCodeAt(0) > 127) {" + DocletConstants.NL +
                 "                allowNumber = true;" + DocletConstants.NL +
                 "                allowSep = true;" + DocletConstants.NL +
                 "            } else if ('0' <= ch && ch <= '9'" + DocletConstants.NL +
diff -r 4170784840d5 -r f38810d86876 src/share/classes/com/sun/tools/doclets/formats/html/resources/standard_ja.properties
--- a/src/share/classes/com/sun/tools/doclets/formats/html/resources/standard_ja.properties	Thu Jan 02 10:11:59 2014 -0800
+++ b/src/share/classes/com/sun/tools/doclets/formats/html/resources/standard_ja.properties	Wed Apr 02 02:16:03 2014 +0100
@@ -25,7 +25,7 @@
 doclet.Href_Enum_Title={0}\u5185\u306E\u5217\u6319\u578B
 doclet.Href_Type_Param_Title={0}\u5185\u306E\u578B\u30D1\u30E9\u30E1\u30FC\u30BF
 doclet.Href_Class_Or_Interface_Title={0}\u5185\u306E\u30AF\u30E9\u30B9\u307E\u305F\u306F\u30A4\u30F3\u30BF\u30D5\u30A7\u30FC\u30B9
-doclet.Summary=\u6982\u8981:
+doclet.Summary=\u30B5\u30DE\u30EA\u30FC:
 doclet.Detail=\u8A73\u7D30:
 doclet.navNested=\u30CD\u30B9\u30C8
 doclet.navAnnotationTypeOptionalMember=\u30AA\u30D7\u30B7\u30E7\u30F3
@@ -68,7 +68,7 @@
 doclet.see.class_or_package_not_found=\u30BF\u30B0{0}: \u53C2\u7167\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093: {1}
 doclet.see.class_or_package_not_accessible=\u30BF\u30B0{0}: \u53C2\u7167\u306B\u30A2\u30AF\u30BB\u30B9\u3067\u304D\u307E\u305B\u3093: {1}
 doclet.see.malformed_tag={0}\u30BF\u30B0: \u4E0D\u6B63\u306A{1}\u30BF\u30B0
-doclet.Inherited_API_Summary=\u7D99\u627F\u3055\u308C\u305FAPI\u306E\u6982\u8981
+doclet.Inherited_API_Summary=\u7D99\u627F\u3055\u308C\u305FAPI\u306E\u30B5\u30DE\u30EA\u30FC
 doclet.Deprecated_API=\u975E\u63A8\u5968\u306EAPI
 doclet.Deprecated_Packages=\u975E\u63A8\u5968\u306E\u30D1\u30C3\u30B1\u30FC\u30B8
 doclet.Deprecated_Classes=\u975E\u63A8\u5968\u306E\u30AF\u30E9\u30B9
@@ -135,18 +135,18 @@
 doclet.Help_title=API\u30D8\u30EB\u30D7
 doclet.Window_Help_title=API\u30D8\u30EB\u30D7
 doclet.Help_line_1=API\u30C9\u30AD\u30E5\u30E1\u30F3\u30C8\u306E\u69CB\u6210
-doclet.Help_line_2=\u3053\u306EAPI(Application Programming Interface)\u30C9\u30AD\u30E5\u30E1\u30F3\u30C8\u306B\u306F\u3001\u6B21\u306B\u8AAC\u660E\u3059\u308B\u30CA\u30D3\u30B2\u30FC\u30B7\u30E7\u30F3\u30FB\u30D0\u30FC\u306B\u3042\u308B\u9805\u76EE\u306B\u5BFE\u5FDC\u3059\u308B\u30DA\u30FC\u30B8\u304C\u542B\u307E\u308C\u307E\u3059\u3002
-doclet.Help_line_3={0}\u30DA\u30FC\u30B8\u306FAPI\u30C9\u30AD\u30E5\u30E1\u30F3\u30C8\u306E\u30D5\u30ED\u30F3\u30C8\u30FB\u30DA\u30FC\u30B8\u3067\u3001\u5404\u30D1\u30C3\u30B1\u30FC\u30B8\u306E\u6982\u8981\u3092\u542B\u3080\u5168\u30D1\u30C3\u30B1\u30FC\u30B8\u306E\u30EA\u30B9\u30C8\u304C\u8868\u793A\u3055\u308C\u307E\u3059\u3002\u4E00\u9023\u306E\u30D1\u30C3\u30B1\u30FC\u30B8\u306E\u6982\u8981\u8AAC\u660E\u3082\u8868\u793A\u3055\u308C\u307E\u3059\u3002
-doclet.Help_line_4=\u5404\u30D1\u30C3\u30B1\u30FC\u30B8\u306B\u306F\u3001\u305D\u306E\u30D1\u30C3\u30B1\u30FC\u30B8\u306E\u30AF\u30E9\u30B9\u304A\u3088\u3073\u30A4\u30F3\u30BF\u30D5\u30A7\u30FC\u30B9\u306E\u30EA\u30B9\u30C8\u3068\u3001\u305D\u308C\u305E\u308C\u306E\u6982\u8981\u3092\u542B\u3080\u30DA\u30FC\u30B8\u304C\u3042\u308A\u307E\u3059\u3002\u3053\u306E\u30DA\u30FC\u30B8\u306F6\u3064\u306E\u30AB\u30C6\u30B4\u30EA\u3067\u69CB\u6210\u3055\u308C\u307E\u3059\u3002
+doclet.Help_line_2=\u3053\u306EAPI (Application Programming Interface)\u30C9\u30AD\u30E5\u30E1\u30F3\u30C8\u306B\u306F\u3001\u6B21\u306B\u8AAC\u660E\u3059\u308B\u30CA\u30D3\u30B2\u30FC\u30B7\u30E7\u30F3\u30FB\u30D0\u30FC\u306B\u3042\u308B\u9805\u76EE\u306B\u5BFE\u5FDC\u3059\u308B\u30DA\u30FC\u30B8\u304C\u542B\u307E\u308C\u307E\u3059\u3002
+doclet.Help_line_3={0}\u30DA\u30FC\u30B8\u306FAPI\u30C9\u30AD\u30E5\u30E1\u30F3\u30C8\u306E\u30D5\u30ED\u30F3\u30C8\u30FB\u30DA\u30FC\u30B8\u3067\u3001\u5404\u30D1\u30C3\u30B1\u30FC\u30B8\u306E\u30B5\u30DE\u30EA\u30FC\u3092\u542B\u3080\u5168\u30D1\u30C3\u30B1\u30FC\u30B8\u306E\u30EA\u30B9\u30C8\u304C\u8868\u793A\u3055\u308C\u307E\u3059\u3002\u4E00\u9023\u306E\u30D1\u30C3\u30B1\u30FC\u30B8\u306E\u5168\u4F53\u7684\u306A\u8AAC\u660E\u3082\u8868\u793A\u3055\u308C\u307E\u3059\u3002
+doclet.Help_line_4=\u5404\u30D1\u30C3\u30B1\u30FC\u30B8\u306B\u306F\u3001\u305D\u306E\u30D1\u30C3\u30B1\u30FC\u30B8\u306E\u30AF\u30E9\u30B9\u304A\u3088\u3073\u30A4\u30F3\u30BF\u30D5\u30A7\u30FC\u30B9\u306E\u30EA\u30B9\u30C8\u3068\u3001\u305D\u308C\u305E\u308C\u306E\u30B5\u30DE\u30EA\u30FC\u3092\u542B\u3080\u30DA\u30FC\u30B8\u304C\u3042\u308A\u307E\u3059\u3002\u3053\u306E\u30DA\u30FC\u30B8\u306F6\u3064\u306E\u30AB\u30C6\u30B4\u30EA\u3067\u69CB\u6210\u3055\u308C\u307E\u3059\u3002
 doclet.Help_line_5=\u30AF\u30E9\u30B9\u307E\u305F\u306F\u30A4\u30F3\u30BF\u30D5\u30A7\u30FC\u30B9
-doclet.Help_line_6=\u5404\u30AF\u30E9\u30B9\u3001\u30A4\u30F3\u30BF\u30D5\u30A7\u30FC\u30B9\u3001\u30CD\u30B9\u30C8\u3055\u308C\u305F\u30AF\u30E9\u30B9\u304A\u3088\u3073\u30CD\u30B9\u30C8\u3055\u308C\u305F\u30A4\u30F3\u30BF\u30D5\u30A7\u30FC\u30B9\u306B\u306F\u500B\u5225\u306E\u30DA\u30FC\u30B8\u304C\u3042\u308A\u307E\u3059\u3002\u5404\u30DA\u30FC\u30B8\u306B\u306F\u6B21\u306E\u3088\u3046\u306B\u3001\u30AF\u30E9\u30B9\u307E\u305F\u306F\u30A4\u30F3\u30BF\u30D5\u30A7\u30FC\u30B9\u306E\u8AAC\u660E\u3068\u3001\u6982\u8981\u8868\u304A\u3088\u3073\u30E1\u30F3\u30D0\u30FC\u306E\u8A73\u7D30\u8AAC\u660E\u304C\u542B\u307E\u308C\u307E\u3059\u3002
+doclet.Help_line_6=\u5404\u30AF\u30E9\u30B9\u3001\u30A4\u30F3\u30BF\u30D5\u30A7\u30FC\u30B9\u3001\u30CD\u30B9\u30C8\u3055\u308C\u305F\u30AF\u30E9\u30B9\u304A\u3088\u3073\u30CD\u30B9\u30C8\u3055\u308C\u305F\u30A4\u30F3\u30BF\u30D5\u30A7\u30FC\u30B9\u306B\u306F\u500B\u5225\u306E\u30DA\u30FC\u30B8\u304C\u3042\u308A\u307E\u3059\u3002\u5404\u30DA\u30FC\u30B8\u306B\u306F\u6B21\u306E\u3088\u3046\u306B\u3001\u30AF\u30E9\u30B9\u307E\u305F\u306F\u30A4\u30F3\u30BF\u30D5\u30A7\u30FC\u30B9\u306E\u8AAC\u660E\u3068\u3001\u30B5\u30DE\u30EA\u30FC\u8868\u304A\u3088\u3073\u30E1\u30F3\u30D0\u30FC\u306E\u8A73\u7D30\u8AAC\u660E\u304C\u542B\u307E\u308C\u307E\u3059\u3002
 doclet.Help_line_7=\u30AF\u30E9\u30B9\u968E\u5C64\u8868\u793A
 doclet.Help_line_8=\u76F4\u7CFB\u306E\u30B5\u30D6\u30AF\u30E9\u30B9
 doclet.Help_line_9=\u65E2\u77E5\u306E\u30B5\u30D6\u30A4\u30F3\u30BF\u30D5\u30A7\u30FC\u30B9\u306E\u30EA\u30B9\u30C8
 doclet.Help_line_10=\u65E2\u77E5\u306E\u5B9F\u88C5\u30AF\u30E9\u30B9\u306E\u30EA\u30B9\u30C8
 doclet.Help_line_11=\u30AF\u30E9\u30B9\u307E\u305F\u306F\u30A4\u30F3\u30BF\u30D5\u30A7\u30FC\u30B9\u306E\u5BA3\u8A00
 doclet.Help_line_12=\u30AF\u30E9\u30B9\u307E\u305F\u306F\u30A4\u30F3\u30BF\u30D5\u30A7\u30FC\u30B9\u306E\u8AAC\u660E
-doclet.Help_line_13=\u5404\u6982\u8981\u30A8\u30F3\u30C8\u30EA\u306B\u306F\u3001\u305D\u306E\u9805\u76EE\u306E\u8A73\u7D30\u306A\u8AAC\u660E\u306E\u4E2D\u304B\u30891\u884C\u76EE\u306E\u6587\u304C\u8868\u793A\u3055\u308C\u307E\u3059\u3002\u8A73\u7D30\u306A\u8AAC\u660E\u306F\u30BD\u30FC\u30B9\u30FB\u30B3\u30FC\u30C9\u306B\u73FE\u308C\u308B\u9806\u306B\u4E26\u3079\u3089\u308C\u307E\u3059\u304C\u3001\u6982\u8981\u30A8\u30F3\u30C8\u30EA\u306F\u30A2\u30EB\u30D5\u30A1\u30D9\u30C3\u30C8\u9806\u306B\u4E26\u3079\u3089\u308C\u307E\u3059\u3002\u3053\u308C\u306B\u3088\u3063\u3066\u3001\u30D7\u30ED\u30B0\u30E9\u30DE\u304C\u8A2D\u5B9A\u3057\u305F\u8AD6\u7406\u7684\u306A\u30B0\u30EB\u30FC\u30D7\u5206\u3051\u304C\u4FDD\u6301\u3055\u308C\u307E\u3059\u3002
+doclet.Help_line_13=\u5404\u30B5\u30DE\u30EA\u30FC\u30FB\u30A8\u30F3\u30C8\u30EA\u306B\u306F\u3001\u305D\u306E\u9805\u76EE\u306E\u8A73\u7D30\u8AAC\u660E\u306E\u4E2D\u304B\u30891\u884C\u76EE\u306E\u6587\u304C\u8868\u793A\u3055\u308C\u307E\u3059\u3002\u30B5\u30DE\u30EA\u30FC\u30FB\u30A8\u30F3\u30C8\u30EA\u306F\u30A2\u30EB\u30D5\u30A1\u30D9\u30C3\u30C8\u9806\u3067\u3059\u304C\u3001\u8A73\u7D30\u8AAC\u660E\u306F\u30BD\u30FC\u30B9\u30FB\u30B3\u30FC\u30C9\u306B\u73FE\u308C\u308B\u9806\u306B\u306A\u3063\u3066\u3044\u307E\u3059\u3002\u3053\u308C\u306B\u3088\u3063\u3066\u3001\u30D7\u30ED\u30B0\u30E9\u30DE\u304C\u8A2D\u5B9A\u3057\u305F\u8AD6\u7406\u7684\u306A\u30B0\u30EB\u30FC\u30D7\u5206\u3051\u304C\u4FDD\u6301\u3055\u308C\u307E\u3059\u3002
 doclet.Help_line_14=\u4F7F\u7528
 doclet.Help_line_15=\u5404\u30C9\u30AD\u30E5\u30E1\u30F3\u30C8\u5316\u3055\u308C\u305F\u30D1\u30C3\u30B1\u30FC\u30B8\u3001\u30AF\u30E9\u30B9\u304A\u3088\u3073\u30A4\u30F3\u30BF\u30D5\u30A7\u30FC\u30B9\u306B\u306F\u305D\u308C\u305E\u308C\u300C\u4F7F\u7528\u300D\u30DA\u30FC\u30B8\u304C\u3042\u308A\u307E\u3059\u3002\u3053\u306E\u30DA\u30FC\u30B8\u306B\u306F\u3001\u3069\u306E\u3088\u3046\u306A\u30D1\u30C3\u30B1\u30FC\u30B8\u3001\u30AF\u30E9\u30B9\u3001\u30E1\u30BD\u30C3\u30C9\u3001\u30B3\u30F3\u30B9\u30C8\u30E9\u30AF\u30BF\u304A\u3088\u3073\u30D5\u30A3\u30FC\u30EB\u30C9\u304C\u3001\u7279\u5B9A\u306E\u30AF\u30E9\u30B9\u307E\u305F\u306F\u30D1\u30C3\u30B1\u30FC\u30B8\u306E\u4E00\u90E8\u3092\u4F7F\u7528\u3057\u3066\u3044\u308B\u304B\u304C\u8A18\u8FF0\u3055\u308C\u3066\u3044\u307E\u3059\u3002\u305F\u3068\u3048\u3070\u3001\u30AF\u30E9\u30B9A\u307E\u305F\u306F\u30A4\u30F3\u30BF\u30D5\u30A7\u30FC\u30B9A\u306E\u5834\u5408\u3001\u305D\u306E\u300C\u4F7F\u7528\u300D\u30DA\u30FC\u30B8\u306B\u306F\u3001A\u306E\u30B5\u30D6\u30AF\u30E9\u30B9\u3001A\u3068\u3057\u3066\u5BA3\u8A00\u3055\u308C\u308B\u30D5\u30A3\u30FC\u30EB\u30C9\u3001A\u3092\u8FD4\u3059\u30E1\u30BD\u30C3\u30C9\u3068\u3001\u578BA\u3092\u6301\u3064\u30E1\u30BD\u30C3\u30C9\u304A\u3088\u3073\u30B3\u30F3\u30B9\u30C8\u30E9\u30AF\u30BF\u304C\u542B\u307E\u308C\u307E\u3059\u3002\u3053\u306E\u30DA\u30FC\u30B8\u306B\u30A2\u30AF\u30BB\u30B9\u3059\u308B\u306B\u306F\u3001\u307E\u305A\u305D\u306E\u30D1\u30C3\u30B1\u30FC\u30B8\u3001\u30AF\u30E9\u30B9\u307E\u305F\u306F\u30A4\u30F3\u30BF\u30D5\u30A7\u30FC\u30B9\u306B\u79FB\u52D5\u3057\u3001\u30CA\u30D3\u30B2\u30FC\u30B7\u30E7\u30F3\u30FB\u30D0\u30FC\u306E\u300C\u4F7F\u7528\u300D\u30EA\u30F3\u30AF\u3092\u30AF\u30EA\u30C3\u30AF\u3057\u3066\u304F\u3060\u3055\u3044\u3002
 doclet.Help_line_16=\u968E\u5C64\u30C4\u30EA\u30FC(\u30AF\u30E9\u30B9\u968E\u5C64)
diff -r 4170784840d5 -r f38810d86876 src/share/classes/com/sun/tools/doclets/internal/toolkit/resources/doclets_ja.properties
--- a/src/share/classes/com/sun/tools/doclets/internal/toolkit/resources/doclets_ja.properties	Thu Jan 02 10:11:59 2014 -0800
+++ b/src/share/classes/com/sun/tools/doclets/internal/toolkit/resources/doclets_ja.properties	Wed Apr 02 02:16:03 2014 +0100
@@ -66,22 +66,22 @@
 doclet.malformed_html_link_tag=<a> \u30BF\u30B0\u306E\u5F62\u5F0F\u304C\u4E0D\u6B63:\n"{0}"
 doclet.tag_misuse={0}\u30BF\u30B0\u306F{1}\u30C9\u30AD\u30E5\u30E1\u30F3\u30C8\u5185\u3067\u306F\u4F7F\u7528\u3067\u304D\u307E\u305B\u3093\u3002\u4F7F\u7528\u3067\u304D\u308B\u306E\u306F\u6B21\u306E\u30BF\u30A4\u30D7\u306E\u30C9\u30AD\u30E5\u30E1\u30F3\u30C8\u5185\u306E\u307F\u3067\u3059: {2}\u3002
 doclet.javafx_tag_misuse=\u30BF\u30B0 at propertyGetter\u3001 at propertySetter\u304A\u3088\u3073 at propertyDescription\u306F\u3001JavaFX\u306E\u30D7\u30ED\u30D1\u30C6\u30A3getter\u3068setter\u306E\u307F\u3067\u4F7F\u7528\u3067\u304D\u307E\u3059\u3002
-doclet.Package_Summary=\u30D1\u30C3\u30B1\u30FC\u30B8\u306E\u6982\u8981
-doclet.Interface_Summary=\u30A4\u30F3\u30BF\u30D5\u30A7\u30FC\u30B9\u306E\u6982\u8981
-doclet.Annotation_Types_Summary=\u6CE8\u91C8\u578B\u306E\u6982\u8981
-doclet.Enum_Summary=\u5217\u6319\u578B\u306E\u6982\u8981
-doclet.Exception_Summary=\u4F8B\u5916\u306E\u6982\u8981
-doclet.Error_Summary=\u30A8\u30E9\u30FC\u306E\u6982\u8981
-doclet.Class_Summary=\u30AF\u30E9\u30B9\u306E\u6982\u8981
-doclet.Nested_Class_Summary=\u30CD\u30B9\u30C8\u3055\u308C\u305F\u30AF\u30E9\u30B9\u306E\u6982\u8981
-doclet.Annotation_Type_Optional_Member_Summary=\u4EFB\u610F\u8981\u7D20\u306E\u6982\u8981
-doclet.Annotation_Type_Required_Member_Summary=\u5FC5\u9808\u8981\u7D20\u306E\u6982\u8981
-doclet.Field_Summary=\u30D5\u30A3\u30FC\u30EB\u30C9\u306E\u6982\u8981
-doclet.Property_Summary=\u30D7\u30ED\u30D1\u30C6\u30A3\u306E\u6982\u8981
-doclet.Enum_Constant_Summary=\u5217\u6319\u578B\u5B9A\u6570\u306E\u6982\u8981
-doclet.Constructor_Summary=\u30B3\u30F3\u30B9\u30C8\u30E9\u30AF\u30BF\u306E\u6982\u8981
-doclet.Method_Summary=\u30E1\u30BD\u30C3\u30C9\u306E\u6982\u8981
-doclet.Factory_Method_Summary=static\u30D5\u30A1\u30AF\u30C8\u30EA\u30FB\u30E1\u30BD\u30C3\u30C9\u306E\u6982\u8981
+doclet.Package_Summary=\u30D1\u30C3\u30B1\u30FC\u30B8\u306E\u30B5\u30DE\u30EA\u30FC
+doclet.Interface_Summary=\u30A4\u30F3\u30BF\u30D5\u30A7\u30FC\u30B9\u306E\u30B5\u30DE\u30EA\u30FC
+doclet.Annotation_Types_Summary=\u6CE8\u91C8\u578B\u306E\u30B5\u30DE\u30EA\u30FC
+doclet.Enum_Summary=\u5217\u6319\u578B\u306E\u30B5\u30DE\u30EA\u30FC
+doclet.Exception_Summary=\u4F8B\u5916\u306E\u30B5\u30DE\u30EA\u30FC
+doclet.Error_Summary=\u30A8\u30E9\u30FC\u306E\u30B5\u30DE\u30EA\u30FC
+doclet.Class_Summary=\u30AF\u30E9\u30B9\u306E\u30B5\u30DE\u30EA\u30FC
+doclet.Nested_Class_Summary=\u30CD\u30B9\u30C8\u3055\u308C\u305F\u30AF\u30E9\u30B9\u306E\u30B5\u30DE\u30EA\u30FC
+doclet.Annotation_Type_Optional_Member_Summary=\u4EFB\u610F\u8981\u7D20\u306E\u30B5\u30DE\u30EA\u30FC
+doclet.Annotation_Type_Required_Member_Summary=\u5FC5\u9808\u8981\u7D20\u306E\u30B5\u30DE\u30EA\u30FC
+doclet.Field_Summary=\u30D5\u30A3\u30FC\u30EB\u30C9\u306E\u30B5\u30DE\u30EA\u30FC
+doclet.Property_Summary=\u30D7\u30ED\u30D1\u30C6\u30A3\u306E\u30B5\u30DE\u30EA\u30FC
+doclet.Enum_Constant_Summary=\u5217\u6319\u578B\u5B9A\u6570\u306E\u30B5\u30DE\u30EA\u30FC
+doclet.Constructor_Summary=\u30B3\u30F3\u30B9\u30C8\u30E9\u30AF\u30BF\u306E\u30B5\u30DE\u30EA\u30FC
+doclet.Method_Summary=\u30E1\u30BD\u30C3\u30C9\u306E\u30B5\u30DE\u30EA\u30FC
+doclet.Factory_Method_Summary=static\u30D5\u30A1\u30AF\u30C8\u30EA\u30FB\u30E1\u30BD\u30C3\u30C9\u306E\u30B5\u30DE\u30EA\u30FC
 doclet.Interfaces=\u30A4\u30F3\u30BF\u30D5\u30A7\u30FC\u30B9
 doclet.Enums=\u5217\u6319\u578B
 doclet.AnnotationTypes=\u6CE8\u91C8\u578B
@@ -180,6 +180,16 @@
 doclet.0_and_1={0}\u3068{1}
 
 #Documentation for Enums
-doclet.enum_values_doc=\n\u3053\u306E\u5217\u6319\u578B\u306E\u5B9A\u6570\u3092\u542B\u3080\u914D\u5217\u3092\u5BA3\u8A00\u3055\u308C\u3066\u3044\u308B\u9806\u5E8F\u3067\u8FD4\u3057\u307E\u3059\u3002\n\u3053\u306E\u30E1\u30BD\u30C3\u30C9\u306F\u6B21\u306E\u3088\u3046\u306B\u3057\u3066\u5B9A\u6570\u3092\u53CD\u5FA9\u3059\u308B\u305F\u3081\u306B\n\u4F7F\u7528\u3067\u304D\u307E\u3059:\n<pre>\nfor({0} c: {0}.values())\n  System.out.println(c);\n</pre>\n at return \u3053\u306E\u5217\u6319\u578B\u306E\u5B9A\u6570\u3092\u5BA3\u8A00\u3055\u308C\u3066\u3044\u308B\u9806\u5E8F\u3067\n\u542B\u3080\u914D\u5217
+doclet.enum_values_doc.main=\n\u3053\u306E\u5217\u6319\u578B\u306E\u5B9A\u6570\u3092\u542B\u3080\u914D\u5217\u3092\u5BA3\u8A00\u3055\u308C\u3066\u3044\u308B\u9806\u5E8F\u3067\u8FD4\u3057\u307E\u3059\u3002\n\u3053\u306E\u30E1\u30BD\u30C3\u30C9\u306F\u6B21\u306E\u3088\u3046\u306B\u3057\u3066\u5B9A\u6570\u3092\u53CD\u5FA9\u3059\u308B\u305F\u3081\u306B\n\u4F7F\u7528\u3067\u304D\u307E\u3059:\n<pre>\nfor({0} c: {0}.values())\n  System.out.println(c);\n</pre>\n
 
-doclet.enum_valueof_doc=\n\u6307\u5B9A\u3057\u305F\u540D\u524D\u3092\u6301\u3064\u3053\u306E\u578B\u306E\u5217\u6319\u578B\u5B9A\u6570\u3092\u8FD4\u3057\u307E\u3059\u3002\n\u6587\u5B57\u5217\u306F\u3001\u3053\u306E\u578B\u306E\u5217\u6319\u578B\u5B9A\u6570\u3092\u5BA3\u8A00\u3059\u308B\u306E\u306B\u4F7F\u7528\u3057\u305F\u8B58\u5225\u5B50\u3068<i>\u6B63\u78BA\u306B</i>\n\u4E00\u81F4\u3057\u3066\u3044\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002\n(\u4F59\u5206\u306A\u7A7A\u767D\u6587\u5B57\u3092\u542B\u3081\u308B\u3053\u3068\u306F\u3067\u304D\u307E\u305B\u3093\u3002)\n\n at param name \u8FD4\u3055\u308C\u308B\u5217\u6319\u578B\u5B9A\u6570\u306E\u540D\u524D\n at return \u6307\u5B9A\u3055\u308C\u305F\u540D\u524D\u3092\u6301\u3064\u5217\u6319\u578B\u5B9A\u6570\n at throws IllegalArgumentException \u6307\u5B9A\u3055\u308C\u305F\u540D\u524D\u3092\u6301\u3064\u5B9A\u6570\u3092\n\u3053\u306E\u5217\u6319\u578B\u304C\u6301\u3063\u3066\u3044\u306A\u3044\u5834\u5408\n at throws NullPointerException \u5F15\u6570\u304Cnull\u306E\u5834\u5408
+doclet.enum_values_doc.return=\n\u3053\u306E\u5217\u6319\u578B\u306E\u5B9A\u6570\u3092\u542B\u3080\u3001\u5BA3\u8A00\u3055\u308C\u3066\u3044\u308B\u9806\u5E8F\u3067\u306E\u914D\u5217
+
+doclet.enum_valueof_doc.main=\n\u6307\u5B9A\u3057\u305F\u540D\u524D\u3092\u6301\u3064\u3053\u306E\u578B\u306E\u5217\u6319\u578B\u5B9A\u6570\u3092\u8FD4\u3057\u307E\u3059\u3002\n\u6587\u5B57\u5217\u306F\u3001\u3053\u306E\u578B\u306E\u5217\u6319\u578B\u5B9A\u6570\u3092\u5BA3\u8A00\u3059\u308B\u306E\u306B\u4F7F\u7528\u3057\u305F\u8B58\u5225\u5B50\u3068<i>\u6B63\u78BA\u306B</i>\n\u4E00\u81F4\u3057\u3066\u3044\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002\n(\u4F59\u5206\u306A\u7A7A\u767D\u6587\u5B57\u3092\u542B\u3081\u308B\u3053\u3068\u306F\u3067\u304D\u307E\u305B\u3093\u3002)\n
+
+doclet.enum_valueof_doc.param_name=\u8FD4\u3055\u308C\u308B\u5217\u6319\u578B\u5B9A\u6570\u306E\u540D\u524D\u3002
+
+doclet.enum_valueof_doc.return=\u6307\u5B9A\u3057\u305F\u540D\u524D\u306E\u5217\u6319\u578B\u5B9A\u6570
+
+doclet.enum_valueof_doc.throws_ila=\u3053\u306E\u5217\u6319\u578B\u306B\u3001\u6307\u5B9A\u3057\u305F\u540D\u524D\u306E\u5B9A\u6570\u304C\u306A\u3044\u5834\u5408
+
+doclet.enum_valueof_doc.throws_npe=\u5F15\u6570\u304Cnull\u306E\u5834\u5408
diff -r 4170784840d5 -r f38810d86876 src/share/classes/com/sun/tools/doclets/internal/toolkit/resources/doclets_zh_CN.properties
--- a/src/share/classes/com/sun/tools/doclets/internal/toolkit/resources/doclets_zh_CN.properties	Thu Jan 02 10:11:59 2014 -0800
+++ b/src/share/classes/com/sun/tools/doclets/internal/toolkit/resources/doclets_zh_CN.properties	Wed Apr 02 02:16:03 2014 +0100
@@ -180,6 +180,16 @@
 doclet.0_and_1={0}\u548C{1}
 
 #Documentation for Enums
-doclet.enum_values_doc=\n\u6309\u7167\u58F0\u660E\u8BE5\u679A\u4E3E\u7C7B\u578B\u7684\u5E38\u91CF\u7684\u987A\u5E8F, \u8FD4\u56DE\n\u5305\u542B\u8FD9\u4E9B\u5E38\u91CF\u7684\u6570\u7EC4\u3002\u8BE5\u65B9\u6CD5\u53EF\u7528\u4E8E\u8FED\u4EE3\n\u5E38\u91CF, \u5982\u4E0B\u6240\u793A:\n<pre>\nfor ({0} c : {0}.values())\n    System.out.println(c);\n</pre>\n at return \u6309\u7167\u58F0\u660E\u8BE5\u679A\u4E3E\u7C7B\u578B\u7684\u5E38\u91CF\u7684\u987A\u5E8F, \u8FD4\u56DE\n\u5305\u542B\u8FD9\u4E9B\u5E38\u91CF\u7684\u6570\u7EC4
+doclet.enum_values_doc.main=\n\u6309\u7167\u58F0\u660E\u8BE5\u679A\u4E3E\u7C7B\u578B\u7684\u5E38\u91CF\u7684\u987A\u5E8F, \u8FD4\u56DE\n\u5305\u542B\u8FD9\u4E9B\u5E38\u91CF\u7684\u6570\u7EC4\u3002\u8BE5\u65B9\u6CD5\u53EF\u7528\u4E8E\u8FED\u4EE3\n\u5E38\u91CF, \u5982\u4E0B\u6240\u793A:\n<pre>\nfor ({0} c : {0}.values())\n    System.out.println(c);\n</pre>
 
-doclet.enum_valueof_doc=\n\u8FD4\u56DE\u5E26\u6709\u6307\u5B9A\u540D\u79F0\u7684\u8BE5\u7C7B\u578B\u7684\u679A\u4E3E\u5E38\u91CF\u3002\n\u5B57\u7B26\u4E32\u5FC5\u987B\u4E0E\u7528\u4E8E\u58F0\u660E\u8BE5\u7C7B\u578B\u7684\u679A\u4E3E\u5E38\u91CF\u7684\n\u6807\u8BC6\u7B26<i>\u5B8C\u5168</i>\u5339\u914D\u3002(\u4E0D\u5141\u8BB8\u6709\u591A\u4F59\n\u7684\u7A7A\u683C\u5B57\u7B26\u3002)\n\n at param name \u8981\u8FD4\u56DE\u7684\u679A\u4E3E\u5E38\u91CF\u7684\u540D\u79F0\u3002\n at return \u8FD4\u56DE\u5E26\u6709\u6307\u5B9A\u540D\u79F0\u7684\u679A\u4E3E\u5E38\u91CF\n at throws IllegalArgumentException \u5982\u679C\u8BE5\u679A\u4E3E\u7C7B\u578B\u6CA1\u6709\u5E26\u6709\u6307\u5B9A\u540D\u79F0\u7684\u5E38\u91CF, \n\u5219\u629B\u51FA IllegalArgumentException\n at throws NullPointerException \u5982\u679C\u53C2\u6570\u4E3A\u7A7A\u503C, \u5219\u629B\u51FA NullPointerException
+doclet.enum_values_doc.return=\n\u6309\u7167\u58F0\u660E\u8BE5\u679A\u4E3E\u7C7B\u578B\u7684\u5E38\u91CF\u7684\u987A\u5E8F\u8FD4\u56DE\u7684\u5305\u542B\u8FD9\u4E9B\u5E38\u91CF\u7684\u6570\u7EC4
+
+doclet.enum_valueof_doc.main=\n\u8FD4\u56DE\u5E26\u6709\u6307\u5B9A\u540D\u79F0\u7684\u8BE5\u7C7B\u578B\u7684\u679A\u4E3E\u5E38\u91CF\u3002\n\u5B57\u7B26\u4E32\u5FC5\u987B\u4E0E\u7528\u4E8E\u58F0\u660E\u8BE5\u7C7B\u578B\u7684\u679A\u4E3E\u5E38\u91CF\u7684\n\u6807\u8BC6\u7B26<i>\u5B8C\u5168</i>\u5339\u914D\u3002(\u4E0D\u5141\u8BB8\u6709\u591A\u4F59\n\u7684\u7A7A\u683C\u5B57\u7B26\u3002)
+
+doclet.enum_valueof_doc.param_name=\u8981\u8FD4\u56DE\u7684\u679A\u4E3E\u5E38\u91CF\u7684\u540D\u79F0\u3002
+
+doclet.enum_valueof_doc.return=\u8FD4\u56DE\u5E26\u6709\u6307\u5B9A\u540D\u79F0\u7684\u679A\u4E3E\u5E38\u91CF
+
+doclet.enum_valueof_doc.throws_ila=\u5982\u679C\u8BE5\u679A\u4E3E\u7C7B\u578B\u6CA1\u6709\u5E26\u6709\u6307\u5B9A\u540D\u79F0\u7684\u5E38\u91CF
+
+doclet.enum_valueof_doc.throws_npe=\u5982\u679C\u53C2\u6570\u4E3A\u7A7A\u503C
diff -r 4170784840d5 -r f38810d86876 src/share/classes/com/sun/tools/javac/code/Type.java
--- a/src/share/classes/com/sun/tools/javac/code/Type.java	Thu Jan 02 10:11:59 2014 -0800
+++ b/src/share/classes/com/sun/tools/javac/code/Type.java	Wed Apr 02 02:16:03 2014 +0100
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1999, 2011, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1999, 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
@@ -597,6 +597,10 @@
                 };
         }
 
+        public List<Type> getComponents() {
+            return interfaces_field.prepend(supertype_field);
+        }
+
         /** The Java source which this type represents.
          */
         public String toString() {
diff -r 4170784840d5 -r f38810d86876 src/share/classes/com/sun/tools/javac/code/Types.java
--- a/src/share/classes/com/sun/tools/javac/code/Types.java	Thu Jan 02 10:11:59 2014 -0800
+++ b/src/share/classes/com/sun/tools/javac/code/Types.java	Wed Apr 02 02:16:03 2014 +0100
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2011, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 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
@@ -1012,23 +1012,10 @@
                     }
                 }
 
-                if (t.isCompound()) {
-                    Warner oldWarner = warnStack.head;
-                    warnStack.head = Warner.noWarnings;
-                    if (!visit(supertype(t), s))
-                        return false;
-                    for (Type intf : interfaces(t)) {
-                        if (!visit(intf, s))
-                            return false;
-                    }
-                    if (warnStack.head.hasLint(LintCategory.UNCHECKED))
-                        oldWarner.warn(LintCategory.UNCHECKED);
-                    return true;
-                }
-
-                if (s.isCompound()) {
-                    // call recursively to reuse the above code
-                    return visitClassType((ClassType)s, t);
+                if (t.isCompound() || s.isCompound()) {
+                    return !t.isCompound() ?
+                            visitIntersectionType((ClassType)s, t, true) :
+                            visitIntersectionType(t, s, false);
                 }
 
                 if (s.tag == CLASS || s.tag == ARRAY) {
@@ -1106,6 +1093,18 @@
                 return false;
             }
 
+            boolean visitIntersectionType(ClassType ict, Type s, boolean reverse) {
+                Warner warn = Warner.noWarnings;
+                for (Type c : ict.getComponents()) {
+                    warn.clear();
+                    if (reverse ? !isCastable(s, c, warn) : !isCastable(c, s, warn))
+                        return false;
+                }
+                if (warn.hasLint(LintCategory.UNCHECKED))
+                    warnStack.head.warn(LintCategory.UNCHECKED);
+                return true;
+            }
+
             @Override
             public Boolean visitArrayType(ArrayType t, Type s) {
                 switch (s.tag) {
@@ -3369,11 +3368,18 @@
     }
 
     private boolean giveWarning(Type from, Type to) {
-        Type subFrom = asSub(from, to.tsym);
-        return to.isParameterized() &&
-                (!(isUnbounded(to) ||
-                isSubtype(from, to) ||
-                ((subFrom != null) && containsType(to.allparams(), subFrom.allparams()))));
+        List<Type> bounds = to.isCompound() ?
+                ((ClassType)to).getComponents() : List.of(to);
+        for (Type b : bounds) {
+            Type subFrom = asSub(from, b.tsym);
+            if (b.isParameterized() &&
+                    (!(isUnbounded(b) ||
+                    isSubtype(from, b) ||
+                    ((subFrom != null) && containsType(b.allparams(), subFrom.allparams()))))) {


More information about the distro-pkg-dev mailing list