import polyall.quals.*;
class Catch {
void defaultUnionType() throws Throwable {
try {
throw new Throwable();
} catch (IndexOutOfBoundsException | NullPointerException ex) {
}
}
void defaultDeclaredType() throws Throwable {
try {
throw new Throwable();
} catch (RuntimeException ex) {
}
}
void explictlyTopUnionType() throws Throwable {
try {
throw new Throwable();
} catch (@H1Top @H2Top IndexOutOfBoundsException | @H1Top @H2Top NullPointerException ex) {
}
}
void explictlyNotTopUnionType() throws Throwable {
try {
throw new Throwable();
//:: error: (exception.parameter.invalid)
} catch (@H1S1 @H2Top IndexOutOfBoundsException | @H1S1 @H2Top NullPointerException ex) {
}
}
void explictlyTopDeclaredType() throws Throwable {
try {
throw new Throwable();
} catch (@H1Top @H2Top NullPointerException ex) {
}
}
void explictlyNotTopDeclaredType() throws Throwable {
try {
throw new Throwable();
//:: error: (exception.parameter.invalid)
} catch (@H1S1 @H2Top RuntimeException ex) {
}
}
}