test/tools/javac/multicatch/Neg04eff_final.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 mcimadamore
aoqi@0 7 * @compile/fail/ref=Neg04eff_final.out -XDrawDiagnostics Neg04eff_final.java
aoqi@0 8 *
aoqi@0 9 */
aoqi@0 10
aoqi@0 11 class Neg04eff_final {
aoqi@0 12 static class A extends Exception {}
aoqi@0 13 static class B extends Exception {}
aoqi@0 14
aoqi@0 15 void test() throws B {
aoqi@0 16 try {
aoqi@0 17 if (true) {
aoqi@0 18 throw new A();
aoqi@0 19 } else if (false) {
aoqi@0 20 throw new B();
aoqi@0 21 } else {
aoqi@0 22 throw (Throwable)new Exception();
aoqi@0 23 }
aoqi@0 24 }
aoqi@0 25 catch (A e) {}
aoqi@0 26 catch (Exception e) {
aoqi@0 27 throw e;
aoqi@0 28 }
aoqi@0 29 catch (Throwable t) {}
aoqi@0 30 }
aoqi@0 31 }

mercurial