test/tools/javac/multicatch/7030606/T7030606.java

Thu, 31 Aug 2017 15:17:03 +0800

author
aoqi
date
Thu, 31 Aug 2017 15:17:03 +0800
changeset 2525
2eb010b6cb22
parent 0
959103a6100f
permissions
-rw-r--r--

merge

     1 /*
     2  * @test /nodynamiccopyright/
     3  * @bug 7030606
     4  *
     5  * @summary Project-coin: multi-catch types should be pairwise disjoint
     6  * @compile/fail/ref=T7030606.out -XDrawDiagnostics T7030606.java
     7  */
     9 class T7030606 {
    10     class E1 extends Exception { }
    11     class E2 extends E1 { }
    13     void e1() throws E1 { }
    14     void e2() throws E2 { }
    16     void m1() {
    17         try {
    18             e1();
    19             e2();
    20         } catch (NonExistentType | E2 | E1 e) { }
    21     }
    23     void m2() {
    24         try {
    25             e1();
    26             e2();
    27         } catch (NonExistentType | E1 | E2 e) { }
    28     }
    30     void m3() {
    31         try {
    32             e1();
    33             e2();
    34         } catch (E2 | NonExistentType | E1 e) { }
    35     }
    37     void m4() {
    38         try {
    39             e1();
    40             e2();
    41         } catch (E1 | NonExistentType | E2 e) { }
    42     }
    44     void m5() {
    45         try {
    46             e1();
    47             e2();
    48         } catch (E2 | E1 | NonExistentType e) { }
    49     }
    51     void m6() {
    52         try {
    53             e1();
    54             e2();
    55         } catch (E1 | E2 | NonExistentType  e) { }
    56     }
    57 }

mercurial