blob: efee943b8d693810e504287debd711f0f7de0fa2 [file] [log] [blame]
/*
* @test /nodynamiccopyright/
* @bug 8023549
* @summary Compiler emitting spurious errors when constructor reference type is inferred and explicit type arguments are supplied
* @compile/fail/ref=T8023549.out -XDrawDiagnostics T8023549.java
*/
public class T8023549 {
static class Foo<X> { }
interface Supplier<X> {
X make();
}
interface ExtSupplier<X> extends Supplier<X> { }
void m1(Supplier<Foo<String>> sfs) { }
void m2(Supplier<Foo<String>> sfs) { }
void m2(ExtSupplier<Foo<Integer>> sfs) { }
void test() {
Supplier<Foo<String>> sfs = Foo::<Number>new;
m1(Foo::<Number>new);
m2(Foo::<Number>new);
}
}