Tue, 29 Mar 2016 10:48:49 +0000
8143647: Javac compiles method reference that allows results in an IllegalAccessError
Summary: Lambda implementation method synthesized by javac should not mention inaccessible types.
Reviewed-by: mcimadamore
1 /*
2 * @test /nodynamiccopyright/
3 * @bug 8007464
4 * @summary Add graph inference support
5 * more smoke tests for graph inference
6 * @compile/fail/ref=TargetType57.out -XDrawDiagnostics TargetType57.java
7 */
8 import java.util.*;
9 import java.util.function.*;
11 class TargetType57 {
13 void test(List<Integer> list) {
14 m(list, s -> s.intValue(), s -> s.nonExistentMethod());
15 }
17 <U, R, S_IN, S_OUT> R m(List<S_IN> list,
18 Function<S_IN, S_OUT> f1,
19 Function<S_OUT, R> f2) { return null; }
20 }