Fri, 08 Feb 2013 09:12:37 +0000
7166455: javac doesn't set ACC_STRICT bit on <clinit> for strictfp class
Reviewed-by: mcimadamore
aoqi@0 | 1 | /* |
aoqi@0 | 2 | * @test /nodynamiccopyright/ |
aoqi@0 | 3 | * @bug 8003280 |
aoqi@0 | 4 | * @summary Add lambda tests |
aoqi@0 | 5 | * check that incompatible return types in lambdas are flagged with error |
aoqi@0 | 6 | * @author Maurizio Cimadamore |
aoqi@0 | 7 | * @compile/fail/ref=BadReturn.out -XDrawDiagnostics BadReturn.java |
aoqi@0 | 8 | */ |
aoqi@0 | 9 | |
aoqi@0 | 10 | class BadReturn { |
aoqi@0 | 11 | |
aoqi@0 | 12 | interface SAM { |
aoqi@0 | 13 | Comparable<?> m(); |
aoqi@0 | 14 | } |
aoqi@0 | 15 | |
aoqi@0 | 16 | static void testNeg1() { |
aoqi@0 | 17 | SAM s = ()-> { |
aoqi@0 | 18 | if (true) { |
aoqi@0 | 19 | return ""; |
aoqi@0 | 20 | } else { |
aoqi@0 | 21 | return System.out.println(""); |
aoqi@0 | 22 | }}; |
aoqi@0 | 23 | } |
aoqi@0 | 24 | |
aoqi@0 | 25 | static void testNeg2() { |
aoqi@0 | 26 | SAM s = ()-> { return System.out.println(""); }; |
aoqi@0 | 27 | } |
aoqi@0 | 28 | |
aoqi@0 | 29 | static void testPos() { |
aoqi@0 | 30 | SAM s = ()-> { |
aoqi@0 | 31 | if (false) { |
aoqi@0 | 32 | return 10; |
aoqi@0 | 33 | } |
aoqi@0 | 34 | else { |
aoqi@0 | 35 | return true; |
aoqi@0 | 36 | }}; |
aoqi@0 | 37 | } |
aoqi@0 | 38 | } |