test/tools/javac/multicatch/Neg01.java

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

author
mcimadamore
date
Thu, 21 Feb 2013 15:26:46 +0000
changeset 1599
9f0ec00514b6
parent 0
959103a6100f
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

aoqi@0 1 /*
aoqi@0 2 * @test /nodynamiccopyright/
aoqi@0 3 * @bug 6943289
aoqi@0 4 *
aoqi@0 5 * @summary Project Coin: Improved Exception Handling for Java (aka 'multicatch')
aoqi@0 6 * @author darcy
aoqi@0 7 * @compile/fail/ref=Neg01.out -XDrawDiagnostics Neg01.java
aoqi@0 8 * @compile -source 6 -XDrawDiagnostics Neg01.java
aoqi@0 9 *
aoqi@0 10 */
aoqi@0 11
aoqi@0 12 class Neg01 {
aoqi@0 13 static class A extends Exception {}
aoqi@0 14 static class B1 extends A {}
aoqi@0 15 static class B2 extends A {}
aoqi@0 16
aoqi@0 17 class Test {
aoqi@0 18 void m() throws A {
aoqi@0 19 try {
aoqi@0 20 throw new B1();
aoqi@0 21 } catch (final A ex1) {
aoqi@0 22 try {
aoqi@0 23 throw ex1; // used to throw A, now throws B1!
aoqi@0 24 } catch (B2 ex2) { }//unreachable
aoqi@0 25 }
aoqi@0 26 }
aoqi@0 27 }
aoqi@0 28 }

mercurial