diff -r 843d3b191773 -r 01c9d4161882 test/tools/javac/lambda/MethodReference47.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/test/tools/javac/lambda/MethodReference47.java Sat Nov 17 19:01:03 2012 +0000 @@ -0,0 +1,40 @@ +/* + * @test /nodynamiccopyright/ + * @bug 8003280 + * @summary Add lambda tests + * check that generic method reference is inferred when type parameters are omitted + * @compile/fail/ref=MethodReference47.out -XDrawDiagnostics MethodReference47.java + */ +public class MethodReference47 { + + static int assertionCount = 0; + + static void assertTrue(boolean cond) { + assertionCount++; + if (!cond) + throw new AssertionError(); + } + + interface SAM1 { + void m(Integer s); + } + + interface SAM2 { + void m(Integer s); + } + + static class Foo { + Foo(X x) { } + } + + static void m(X fx) { } + + static void g1(SAM1 s) { } + static void g2(SAM1 s) { } + static void g2(SAM2 s) { } + + public static void main(String[] args) { + g1(MethodReference46::m); + g2(MethodReference46::m); + } +}