test/tools/javac/lambda/BadReturn.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 * 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 */
9
10 class BadReturn {
11
12 interface SAM {
13 Comparable<?> m();
14 }
15
16 static void testNeg1() {
17 SAM s = ()-> {
18 if (true) {
19 return "";
20 } else {
21 return System.out.println("");
22 }};
23 }
24
25 static void testNeg2() {
26 SAM s = ()-> { return System.out.println(""); };
27 }
28
29 static void testPos() {
30 SAM s = ()-> {
31 if (false) {
32 return 10;
33 }
34 else {
35 return true;
36 }};
37 }
38 }

mercurial