test/tools/javac/lambda/MostSpecific07.java

changeset 0
959103a6100f
equal deleted inserted replaced
-1:000000000000 0:959103a6100f
1 /*
2 * @test /nodynamiccopyright/
3 * @bug 8003280
4 * @summary Add lambda tests
5 * speculative cache contents are overwritten by deferred type-checking of nested stuck expressions
6 * @compile/fail/ref=MostSpecific07.out -XDrawDiagnostics MostSpecific07.java
7 */
8 import java.util.*;
9
10 class MostSpecific07 {
11
12 interface Predicate<X, Y> {
13 Y accept(X x);
14 }
15
16 interface VoidMapper {
17 void accept();
18 }
19
20 interface ExtPredicate<X, Y> extends Predicate<X, Y> { }
21
22 void test(boolean cond, ArrayList<String> als, VoidMapper vm) {
23 m(u -> ()->{}, als, als, vm);
24 m((u -> ()->{}), als, als, vm);
25 m(cond ? u -> ()->{} : u -> ()->{}, als, als, vm);
26 }
27
28 <U, V> U m(Predicate<U, V> p, List<U> lu, ArrayList<U> au, V v) { return null; }
29
30 <U, V> U m(ExtPredicate<U, V> ep, ArrayList<U> au, List<U> lu, V v) { return null; }
31 }

mercurial