1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
|
// Test case for Issue 1415.
// https://github.com/typetools/checker-framework/issues/1415
@SuppressWarnings("") // Check for crashes.
class Issue1415 {
static class Optional<T> {
static <T> Optional<T> absent() {
return null;
}
static <T> Optional<T> of(T p) {
return null;
}
}
static class Box<T> {
void box(T p) {}
}
static class Crash9 {
<F extends Enum<F>> void foo(boolean b, Box<Optional<F>> box, Class<F> enumClass) {
box.box(b ? Optional.<F>absent() : Optional.of(Enum.valueOf(enumClass, "hi")));
box.box(b ? Optional.absent() : Optional.of(Enum.valueOf(enumClass, "hi")));
}
}
}
|