test/tools/javac/annotations/typeAnnotations/referenceinfos/Lambda.java

changeset 2222
8832b6048e65
parent 1755
ddb4a2bfcd82
child 2525
2eb010b6cb22
     1.1 --- a/test/tools/javac/annotations/typeAnnotations/referenceinfos/Lambda.java	Thu Dec 12 19:19:07 2013 -0800
     1.2 +++ b/test/tools/javac/annotations/typeAnnotations/referenceinfos/Lambda.java	Fri Dec 13 14:13:03 2013 +0000
     1.3 @@ -23,8 +23,9 @@
     1.4  
     1.5  /*
     1.6   * @test
     1.7 - * @bug 8008077
     1.8 + * @bug 8008077 8029721
     1.9   * @summary Test population of reference info for lambda expressions
    1.10 + * javac crash for annotated parameter type of lambda in a field
    1.11   * @compile -g Driver.java ReferenceInfoUtil.java Lambda.java
    1.12   * @run main Driver Lambda
    1.13   * @author Werner Dietl
    1.14 @@ -285,4 +286,24 @@
    1.15                  "  }" +
    1.16                  "}";
    1.17      }
    1.18 +
    1.19 +    @TADescriptions({
    1.20 +        @TADescription(annotation = "TA", type = METHOD_FORMAL_PARAMETER,
    1.21 +            paramIndex = 0)})
    1.22 +    public String lambdaField1() {
    1.23 +        return
    1.24 +            "class Test {" +
    1.25 +                " java.util.function.IntUnaryOperator field = (@TA int y) -> 1;" +
    1.26 +            "}";
    1.27 +    }
    1.28 +
    1.29 +    @TADescriptions({
    1.30 +        @TADescription(annotation = "TA", type = METHOD_FORMAL_PARAMETER,
    1.31 +            paramIndex = 0)})
    1.32 +    public String lambdaField2() {
    1.33 +        return
    1.34 +            "class Test {" +
    1.35 +                " static java.util.function.IntUnaryOperator field = (@TA int y) -> 1;" +
    1.36 +            "}";
    1.37 +    }
    1.38  }

mercurial