test/tools/javac/unicode/SupplementaryJavaID6.java

Thu, 21 Feb 2013 15:26:46 +0000

author
mcimadamore
date
Thu, 21 Feb 2013 15:26:46 +0000
changeset 1599
9f0ec00514b6
parent 1591
dc8b7aa7cef3
child 2525
2eb010b6cb22
permissions
-rw-r--r--

8007461: Regression: bad overload resolution when inner class and outer class have method with same name
Summary: Fix regression in varargs method resolution introduced by bad refactoring
Reviewed-by: jjg

duke@1 1 /*
vromero@1591 2 * Copyright (c) 2003, 2013, Oracle and/or its affiliates. All rights reserved.
duke@1 3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
duke@1 4 *
duke@1 5 * This code is free software; you can redistribute it and/or modify it
duke@1 6 * under the terms of the GNU General Public License version 2 only, as
duke@1 7 * published by the Free Software Foundation.
duke@1 8 *
duke@1 9 * This code is distributed in the hope that it will be useful, but WITHOUT
duke@1 10 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
duke@1 11 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
duke@1 12 * version 2 for more details (a copy is included in the LICENSE file that
duke@1 13 * accompanied this code).
duke@1 14 *
duke@1 15 * You should have received a copy of the GNU General Public License version
duke@1 16 * 2 along with this work; if not, write to the Free Software Foundation,
duke@1 17 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
duke@1 18 *
ohair@554 19 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
ohair@554 20 * or visit www.oracle.com if you need additional information or have any
ohair@554 21 * questions.
duke@1 22 */
duke@1 23
vromero@1591 24 /*
vromero@1591 25 * @test
vromero@1591 26 * @bug 4914724 4973116 5014511
vromero@1591 27 * @summary Ensure that a supplementary character can be used as part/whole of a
vromero@1591 28 * class name on platforms that have Unicode aware filesystems.
vromero@1591 29 * @run main SupplementaryJavaID6
vromero@1591 30 */
vromero@1591 31
duke@1 32 public class SupplementaryJavaID6 {
duke@1 33 public static void main(String[] s) {
vromero@1591 34 new SupplementaryJavaID6().test();
duke@1 35 }
duke@1 36
vromero@1591 37 void test() {
duke@1 38 \ud801\udc00 instance = new \ud801\udc00();
duke@1 39 instance.\ud801\udc01();
duke@1 40 }
duke@1 41
duke@1 42 class \ud801\udc00 {
duke@1 43 void \ud801\udc01() {
duke@1 44 // If Java can create the strangely named class file,
duke@1 45 // then Java can delete it, while `rm' might be unable to.
duke@1 46 new java.io.File(this.getClass().getName() + ".class")
duke@1 47 .deleteOnExit();
duke@1 48 System.out.println("success");
duke@1 49 }
duke@1 50 }
duke@1 51 }

mercurial