test/tools/javac/lambda/BadReturn.java

Tue, 05 Feb 2013 18:55:13 +0000

author
jjh
date
Tue, 05 Feb 2013 18:55:13 +0000
changeset 1546
2480aec9a3f1
parent 0
959103a6100f
permissions
-rw-r--r--

8007504: Remove @ignore from tests that no longer need it
Reviewed-by: mcimadamore

     1 /*
     2  * @test /nodynamiccopyright/
     3  * @bug 8003280
     4  * @summary Add lambda tests
     5  *  check that incompatible return types in lambdas are flagged with error
     6  * @author  Maurizio Cimadamore
     7  * @compile/fail/ref=BadReturn.out -XDrawDiagnostics BadReturn.java
     8  */
    10 class BadReturn {
    12     interface SAM {
    13         Comparable<?> m();
    14     }
    16     static void testNeg1() {
    17         SAM s = ()-> {
    18             if (true) {
    19                 return "";
    20             } else {
    21                 return System.out.println("");
    22             }};
    23     }
    25     static void testNeg2() {
    26         SAM s = ()-> { return System.out.println(""); };
    27     }
    29     static void testPos() {
    30         SAM s = ()-> {
    31             if (false) {
    32                 return 10;
    33             }
    34             else {
    35                 return true;
    36             }};
    37     }
    38 }

mercurial