| /* |
| * @test /nodynamiccopyright/ |
| * @bug 8033483 |
| * @summary Should ignore nested lambda bodies during overload resolution |
| * @compile/fail/ref=IgnoreLambdaBodyDuringResolutionTest2.out -XDrawDiagnostics IgnoreLambdaBodyDuringResolutionTest2.java |
| */ |
| |
| class IgnoreLambdaBodyDuringResolutionTest2 { |
| interface SAM<S> { |
| boolean test(S t); |
| } |
| |
| <I, T extends I> I bar(final T l) { |
| return null; |
| } |
| |
| class D<D1, D2> { |
| void foo() { |
| m(bar(e -> false)); |
| } |
| |
| void m(Class<D1> arg) {} |
| void m(SAM<D2> arg) {} |
| } |
| |
| class F { |
| void foo() { |
| m(bar((String e) -> false)); |
| } |
| |
| <F1> void m(Class<F1> arg) {} |
| <F2> void m(SAM<F2> arg) {} |
| } |
| } |