mcimadamore@1415: /* mcimadamore@1415: * @test /nodynamiccopyright/ mcimadamore@1415: * @bug 8003280 mcimadamore@1415: * @summary Add lambda tests mcimadamore@1415: * check that generic method reference is inferred when type parameters are omitted mcimadamore@1415: * @compile/fail/ref=MethodReference47.out -XDrawDiagnostics MethodReference47.java mcimadamore@1415: */ mcimadamore@1415: public class MethodReference47 { mcimadamore@1415: mcimadamore@1415: static int assertionCount = 0; mcimadamore@1415: mcimadamore@1415: static void assertTrue(boolean cond) { mcimadamore@1415: assertionCount++; mcimadamore@1415: if (!cond) mcimadamore@1415: throw new AssertionError(); mcimadamore@1415: } mcimadamore@1415: mcimadamore@1415: interface SAM1 { mcimadamore@1415: void m(Integer s); mcimadamore@1415: } mcimadamore@1415: mcimadamore@1415: interface SAM2 { mcimadamore@1415: void m(Integer s); mcimadamore@1415: } mcimadamore@1415: mcimadamore@1415: static class Foo { mcimadamore@1415: Foo(X x) { } mcimadamore@1415: } mcimadamore@1415: mcimadamore@1415: static void m(X fx) { } mcimadamore@1415: mcimadamore@1415: static void g1(SAM1 s) { } mcimadamore@1415: static void g2(SAM1 s) { } mcimadamore@1415: static void g2(SAM2 s) { } mcimadamore@1415: mcimadamore@1415: public static void main(String[] args) { mcimadamore@1415: g1(MethodReference46::m); mcimadamore@1415: g2(MethodReference46::m); mcimadamore@1415: } mcimadamore@1415: }