test/tools/javac/enum/T6724345.java

Thu, 09 Oct 2008 16:04:29 +0100

author
mcimadamore
date
Thu, 09 Oct 2008 16:04:29 +0100
changeset 135
ac6ce899d007
child 525
9871ce4fd56f
permissions
-rw-r--r--

6724345: incorrect method resolution for enum classes entered as source files
Summary: Enum's abstract methods shouldn't be skipped during method resolution
Reviewed-by: jjg

mcimadamore@135 1 /*
mcimadamore@135 2 * Copyright 2008 Sun Microsystems, Inc. All Rights Reserved.
mcimadamore@135 3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
mcimadamore@135 4 *
mcimadamore@135 5 * This code is free software; you can redistribute it and/or modify it
mcimadamore@135 6 * under the terms of the GNU General Public License version 2 only, as
mcimadamore@135 7 * published by the Free Software Foundation.
mcimadamore@135 8 *
mcimadamore@135 9 * This code is distributed in the hope that it will be useful, but WITHOUT
mcimadamore@135 10 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
mcimadamore@135 11 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
mcimadamore@135 12 * version 2 for more details (a copy is included in the LICENSE file that
mcimadamore@135 13 * accompanied this code).
mcimadamore@135 14 *
mcimadamore@135 15 * You should have received a copy of the GNU General Public License version
mcimadamore@135 16 * 2 along with this work; if not, write to the Free Software Foundation,
mcimadamore@135 17 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
mcimadamore@135 18 *
mcimadamore@135 19 * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
mcimadamore@135 20 * CA 95054 USA or visit www.sun.com if you need additional information or
mcimadamore@135 21 * have any questions.
mcimadamore@135 22 */
mcimadamore@135 23
mcimadamore@135 24 /*
mcimadamore@135 25 * @test
mcimadamore@135 26 * @bug 6724345
mcimadamore@135 27 *
mcimadamore@135 28 * @summary incorrect method resolution for enum classes entered as source files
mcimadamore@135 29 * @author Maurizio Cimadamore
mcimadamore@135 30 *
mcimadamore@135 31 * @compile T6509042.java
mcimadamore@135 32 */
mcimadamore@135 33
mcimadamore@135 34 class T6724345 {
mcimadamore@135 35
mcimadamore@135 36 interface I {
mcimadamore@135 37 void i();
mcimadamore@135 38 }
mcimadamore@135 39
mcimadamore@135 40 class U {
mcimadamore@135 41 {
mcimadamore@135 42 I i = E.V;
mcimadamore@135 43 i.i();
mcimadamore@135 44 E.V.i();
mcimadamore@135 45 }
mcimadamore@135 46 }
mcimadamore@135 47
mcimadamore@135 48 enum E implements I {
mcimadamore@135 49 V {public void i() {}};
mcimadamore@135 50 }
mcimadamore@135 51 }

mercurial