aoqi@0: /* aoqi@0: * @test /nodynamiccopyright/ aoqi@0: * @bug 8003280 aoqi@0: * @summary Add lambda tests aoqi@0: * spurious exceptions when checking references to inner constructors where aoqi@0: * the enclosing class is not defined in any outer context aoqi@0: * @compile/fail/ref=MethodReference37.out -XDrawDiagnostics MethodReference37.java aoqi@0: */ aoqi@0: aoqi@0: class MethodReference37 { aoqi@0: aoqi@0: interface SAM1 { aoqi@0: R invoke(); aoqi@0: } aoqi@0: aoqi@0: interface SAM2 { aoqi@0: R invoke(A a); aoqi@0: } aoqi@0: aoqi@0: static class Outer { aoqi@0: class Inner { } aoqi@0: aoqi@0: static void test1() { aoqi@0: SAM2 sam = Inner::new; aoqi@0: } aoqi@0: aoqi@0: void test2() { aoqi@0: SAM1 sam0 = Inner::new; aoqi@0: SAM2 sam1 = Inner::new; aoqi@0: } aoqi@0: } aoqi@0: aoqi@0: static void test1() { aoqi@0: SAM2 sam = Outer.Inner::new; aoqi@0: } aoqi@0: aoqi@0: void test2() { aoqi@0: SAM2 sam1 = Outer.Inner::new; aoqi@0: } aoqi@0: }