test/tools/javac/lambda/TargetType45.java

Thu, 31 Aug 2017 15:17:03 +0800

author
aoqi
date
Thu, 31 Aug 2017 15:17:03 +0800
changeset 2525
2eb010b6cb22
parent 1510
7873d37f5b37
parent 0
959103a6100f
permissions
-rw-r--r--

merge

     1 /*
     2  * @test /nodynamiccopyright/
     3  * @bug 8003280
     4  * @summary Add lambda tests
     5  *  compiler crashes during flow analysis as it fails to report diagnostics during attribution
     6  * @compile TargetType45.java
     7  */
     8 class TargetType45 {
    10     interface Predicate<X> {
    11         boolean apply(X x);
    12     }
    14     interface Mapper<X, Y> {
    15         Y apply(X x);
    16     }
    18     class Foo<X> {
    19         Foo<X> filter(Predicate<? super X> p) { return null; }
    20     }
    22     static <U, V> Predicate<U> compose(Predicate<? super V> pi, Mapper<? super U, ? extends V> m) { return null; }
    24     static Predicate<Integer> isOdd = i -> i % 2 != 0;
    26     void top10Counties(Foo<String> foos) {
    27         foos.filter(compose(isOdd, (String e) -> e.length()));
    28     }
    29 }

mercurial