Mon, 20 Jul 2015 11:41:52 -0700
Added tag jdk8u65-b06 for changeset ae5e31450299
mcimadamore@1415 | 1 | /* |
vromero@2370 | 2 | * @test /nodynamiccopyright/ |
vromero@2370 | 3 | * @bug 8003280 8029718 |
mcimadamore@1415 | 4 | * @summary Add lambda tests |
mcimadamore@1415 | 5 | * check overload resolution and target type inference w.r.t. generic methods |
vromero@2370 | 6 | * Should always use lambda body structure to disambiguate overload resolution |
mcimadamore@1415 | 7 | * @author Maurizio Cimadamore |
vromero@2000 | 8 | * @compile/fail/ref=TargetType02.out -XDrawDiagnostics TargetType02.java |
mcimadamore@1415 | 9 | */ |
mcimadamore@1415 | 10 | |
mcimadamore@1415 | 11 | public class TargetType02 { |
mcimadamore@1415 | 12 | |
mcimadamore@1415 | 13 | interface S1<X extends Number> { |
mcimadamore@1415 | 14 | X m(Integer x); |
mcimadamore@1415 | 15 | } |
mcimadamore@1415 | 16 | |
mcimadamore@1415 | 17 | interface S2<X extends String> { |
mcimadamore@1415 | 18 | abstract X m(Integer x); |
mcimadamore@1415 | 19 | } |
mcimadamore@1415 | 20 | |
vromero@2000 | 21 | static <Z extends Number> void call1(S1<Z> s) { } |
vromero@2000 | 22 | |
vromero@2000 | 23 | static <Z extends String> void call2(S2<Z> s) { } |
vromero@2000 | 24 | |
vromero@2000 | 25 | static <Z extends Number> void call3(S1<Z> s) { } |
vromero@2000 | 26 | static <Z extends String> void call3(S2<Z> s) { } |
mcimadamore@1415 | 27 | |
vromero@2370 | 28 | static <Z extends Number> Z call4(S1<Z> s) { return null; } |
vromero@2370 | 29 | static <Z extends String> Z call4(S2<Z> s) { return null; } |
vromero@2370 | 30 | |
mcimadamore@1415 | 31 | void test() { |
vromero@2000 | 32 | call1(i -> { toString(); return i; }); |
vromero@2000 | 33 | call2(i -> { toString(); return i; }); |
vromero@2000 | 34 | call3(i -> { toString(); return i; }); |
vromero@2370 | 35 | call3(i -> { |
vromero@2370 | 36 | toString(); |
vromero@2370 | 37 | return call4(j -> { |
vromero@2370 | 38 | return j; |
vromero@2370 | 39 | }); |
vromero@2370 | 40 | }); |
mcimadamore@1415 | 41 | } |
mcimadamore@1415 | 42 | } |