test/tools/javac/lambda/MethodReference39.java

Thu, 21 Feb 2013 15:26:46 +0000

author
mcimadamore
date
Thu, 21 Feb 2013 15:26:46 +0000
changeset 1599
9f0ec00514b6
parent 0
959103a6100f
permissions
-rw-r--r--

8007461: Regression: bad overload resolution when inner class and outer class have method with same name
Summary: Fix regression in varargs method resolution introduced by bad refactoring
Reviewed-by: jjg

aoqi@0 1 /*
aoqi@0 2 * @test /nodynamiccopyright/
aoqi@0 3 * @bug 8003280
aoqi@0 4 * @summary Add lambda tests
aoqi@0 5 * check that bad enclosing class parameter type is discarded accordingly
aoqi@0 6 * @compile/fail/ref=MethodReference39.out -XDrawDiagnostics MethodReference39.java
aoqi@0 7 */
aoqi@0 8 class MethodReference39 {
aoqi@0 9
aoqi@0 10 static class Sup {}
aoqi@0 11
aoqi@0 12
aoqi@0 13 static class Sub extends Sup {
aoqi@0 14
aoqi@0 15 interface SAM { Sup m(Sup x, String str); }
aoqi@0 16
aoqi@0 17 class Inner extends Sup {
aoqi@0 18 Inner(String val) { }
aoqi@0 19 }
aoqi@0 20
aoqi@0 21 void test() {
aoqi@0 22 SAM var = Sub.Inner::new;;
aoqi@0 23 }
aoqi@0 24 }
aoqi@0 25 }

mercurial