mcimadamore@1415: /* vromero@2015: * @test /nodynamiccopyright/ mcimadamore@1415: * @bug 8003280 mcimadamore@1415: * @summary Add lambda tests mcimadamore@1415: * check that diamond inference is applied when using raw constructor reference qualifier vromero@2000: * @compile/fail/ref=MethodReference42.out -XDrawDiagnostics MethodReference42.java mcimadamore@1415: */ vromero@2015: mcimadamore@1415: public class MethodReference42 { mcimadamore@1415: mcimadamore@1415: static class SuperFoo { } mcimadamore@1415: mcimadamore@1415: static class Foo extends SuperFoo { } mcimadamore@1415: mcimadamore@1415: interface SAM1 { mcimadamore@1415: SuperFoo m(); mcimadamore@1415: } mcimadamore@1415: mcimadamore@1415: interface SAM2 { mcimadamore@1415: SuperFoo m(); mcimadamore@1415: } mcimadamore@1415: mcimadamore@1415: interface SAM3 { mcimadamore@1415: SuperFoo m(); mcimadamore@1415: } mcimadamore@1415: vromero@2000: static void m1(SAM1 s) { } vromero@2000: vromero@2000: static void m2(SAM2 s) { } vromero@2000: vromero@2000: static void m3(SAM3 s) { } vromero@2000: vromero@2000: static void m4(SAM1 s) { } vromero@2000: static void m4(SAM2 s) { } vromero@2000: static void m4(SAM3 s) { } mcimadamore@1415: mcimadamore@1415: public static void main(String[] args) { vromero@2000: m1(Foo::new); vromero@2000: m2(Foo::new); vromero@2000: m3(Foo::new); vromero@2000: m4(Foo::new); mcimadamore@1415: } mcimadamore@1415: }