8164819: Make javac's toString() on annotation objects consistent with core reflection
authordarcy
Thu, 13 Jun 2019 11:50:45 -0700
changeset 55387 761b86d5563d
parent 55386 2f4e214781a1
child 55388 d57d61aafef9
8164819: Make javac's toString() on annotation objects consistent with core reflection Reviewed-by: jjg, coleenp
src/java.base/share/classes/sun/reflect/annotation/AnnotationInvocationHandler.java
src/jdk.compiler/share/classes/com/sun/tools/javac/code/Attribute.java
src/jdk.compiler/share/classes/com/sun/tools/javac/model/AnnotationProxyMaker.java
test/hotspot/jtreg/runtime/8007320/ConstMethodTest.java
test/jdk/java/lang/annotation/AnnotationToStringTest.java
test/jdk/java/lang/annotation/ParameterAnnotations.java
test/jdk/java/lang/annotation/TestConstructorParameterAnnotations.java
test/jdk/java/lang/annotation/typeAnnotations/TestConstructorParameterTypeAnnotations.java
test/jdk/java/lang/annotation/typeAnnotations/TestObjectMethods.java
test/langtools/tools/javac/annotations/repeatingAnnotations/combo/ReflectionTest.java
test/langtools/tools/javac/annotations/typeAnnotations/classfile/AnonymousExtendsTest.java
test/langtools/tools/javac/modules/AnnotationsOnModules.java
test/langtools/tools/javac/processing/messager/6388543/T6388543.out
test/langtools/tools/javac/processing/model/element/AnnotationToStringTest.java
test/langtools/tools/javac/processing/model/element/repeatingAnnotations/MixRepeatableAndOfficialContainerBasicTest.java
test/langtools/tools/javac/processing/model/element/repeatingAnnotations/MixRepeatableAndOfficialContainerInheritedA1Test.java
test/langtools/tools/javac/processing/model/element/repeatingAnnotations/MixRepeatableAndOfficialContainerInheritedA2Test.java
test/langtools/tools/javac/processing/model/element/repeatingAnnotations/MixRepeatableAndOfficialContainerInheritedB1Test.java
test/langtools/tools/javac/processing/model/element/repeatingAnnotations/MixRepeatableAndOfficialContainerInheritedB2Test.java
test/langtools/tools/javac/processing/model/element/repeatingAnnotations/MixSingularAndUnofficialContainerBasicTest.java
test/langtools/tools/javac/processing/model/element/repeatingAnnotations/MixSingularAndUnofficialContainerInheritedA1Test.java
test/langtools/tools/javac/processing/model/element/repeatingAnnotations/MixSingularAndUnofficialContainerInheritedA2Test.java
test/langtools/tools/javac/processing/model/element/repeatingAnnotations/MixSingularAndUnofficialContainerInheritedB1Test.java
test/langtools/tools/javac/processing/model/element/repeatingAnnotations/MixSingularAndUnofficialContainerInheritedB2Test.java
test/langtools/tools/javac/processing/model/element/repeatingAnnotations/OfficialContainerBasicTest.java
test/langtools/tools/javac/processing/model/element/repeatingAnnotations/OfficialContainerInheritedTest.java
test/langtools/tools/javac/processing/model/element/repeatingAnnotations/RepeatableBasicTest.java
test/langtools/tools/javac/processing/model/element/repeatingAnnotations/RepeatableInheritedTest.java
test/langtools/tools/javac/processing/model/element/repeatingAnnotations/RepeatableOfficialContainerBasicTest.java
test/langtools/tools/javac/processing/model/element/repeatingAnnotations/RepeatableOfficialContainerInheritedTest.java
test/langtools/tools/javac/processing/model/element/repeatingAnnotations/RepeatableOverrideATest.java
test/langtools/tools/javac/processing/model/element/repeatingAnnotations/RepeatableOverrideBTest.java
test/langtools/tools/javac/processing/model/element/repeatingAnnotations/SingularBasicTest.java
test/langtools/tools/javac/processing/model/element/repeatingAnnotations/SingularInheritedATest.java
test/langtools/tools/javac/processing/model/element/repeatingAnnotations/SingularInheritedBTest.java
test/langtools/tools/javac/processing/model/element/repeatingAnnotations/UnofficialContainerBasicTest.java
test/langtools/tools/javac/processing/model/element/repeatingAnnotations/UnofficialContainerInheritedTest.java
test/langtools/tools/javac/sym/ElementStructureTest.java
--- a/src/java.base/share/classes/sun/reflect/annotation/AnnotationInvocationHandler.java	Thu Jun 13 11:21:50 2019 -0700
+++ b/src/java.base/share/classes/sun/reflect/annotation/AnnotationInvocationHandler.java	Thu Jun 13 11:50:45 2019 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2016, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2019, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -145,14 +145,20 @@
         result.append(type.getName());
         result.append('(');
         boolean firstMember = true;
-        for (Map.Entry<String, Object> e : memberValues.entrySet()) {
+        Set<Map.Entry<String, Object>> entries = memberValues.entrySet();
+        boolean loneValue = entries.size() == 1;
+        for (Map.Entry<String, Object> e : entries) {
             if (firstMember)
                 firstMember = false;
             else
                 result.append(", ");
 
-            result.append(e.getKey());
-            result.append('=');
+            String key = e.getKey();
+            if (!loneValue || !"value".equals(key)) {
+                result.append(key);
+                result.append('=');
+            }
+            loneValue = false;
             result.append(memberValueToString(e.getValue()));
         }
         result.append(')');
@@ -178,6 +184,8 @@
                 return  toSourceString((float) value);
             else if (type == Long.class)
                 return  toSourceString((long) value);
+            else if (type == Byte.class)
+                return  toSourceString((byte) value);
             else
                 return value.toString();
         } else {
@@ -221,14 +229,14 @@
      */
     private static String toSourceString(Class<?> clazz) {
         Class<?> finalComponent = clazz;
-        StringBuilder arrayBackets = new StringBuilder();
+        StringBuilder arrayBrackets = new StringBuilder();
 
         while(finalComponent.isArray()) {
             finalComponent = finalComponent.getComponentType();
-            arrayBackets.append("[]");
+            arrayBrackets.append("[]");
         }
 
-        return finalComponent.getName() + arrayBackets.toString() + ".class" ;
+        return finalComponent.getName() + arrayBrackets.toString() + ".class";
     }
 
     private static String toSourceString(float f) {
@@ -256,18 +264,44 @@
     private static String toSourceString(char c) {
         StringBuilder sb = new StringBuilder(4);
         sb.append('\'');
-        if (c == '\'')
-            sb.append("\\'");
-        else
-            sb.append(c);
-        return sb.append('\'')
-                .toString();
+        sb.append(quote(c));
+        return sb.append('\'') .toString();
+    }
+
+    /**
+     * Escapes a character if it has an escape sequence or is
+     * non-printable ASCII.  Leaves non-ASCII characters alone.
+     */
+    private static String quote(char ch) {
+        switch (ch) {
+        case '\b':  return "\\b";
+        case '\f':  return "\\f";
+        case '\n':  return "\\n";
+        case '\r':  return "\\r";
+        case '\t':  return "\\t";
+        case '\'':  return "\\'";
+        case '\"':  return "\\\"";
+        case '\\':  return "\\\\";
+        default:
+            return (isPrintableAscii(ch))
+                ? String.valueOf(ch)
+                : String.format("\\u%04x", (int) ch);
+        }
+    }
+
+    /**
+     * Is a character printable ASCII?
+     */
+    private static boolean isPrintableAscii(char ch) {
+        return ch >= ' ' && ch <= '~';
+    }
+
+    private static String toSourceString(byte b) {
+        return String.format("(byte)0x%02x", b);
     }
 
     private static String toSourceString(long ell) {
-        String str = String.valueOf(ell);
-        return (ell < Integer.MIN_VALUE || ell > Integer.MAX_VALUE)
-                ? (str + 'L') : str;
+        return String.valueOf(ell) + "L";
     }
 
     /**
@@ -277,9 +311,9 @@
     private static String toSourceString(String s) {
         StringBuilder sb = new StringBuilder();
         sb.append('"');
-        // Escape embedded quote characters, if present, but don't do
-        // anything more heroic.
-        sb.append(s.replace("\"", "\\\""));
+        for (int i = 0; i < s.length(); i++) {
+            sb.append(quote(s.charAt(i)));
+        }
         sb.append('"');
         return sb.toString();
     }
@@ -287,7 +321,7 @@
     private static Stream<String> convert(byte[] values) {
         List<String> list = new ArrayList<>(values.length);
         for (byte b : values)
-            list.add(Byte.toString(b));
+            list.add(toSourceString(b));
         return list.stream();
     }
 
--- a/src/jdk.compiler/share/classes/com/sun/tools/javac/code/Attribute.java	Thu Jun 13 11:21:50 2019 -0700
+++ b/src/jdk.compiler/share/classes/com/sun/tools/javac/code/Attribute.java	Thu Jun 13 11:50:45 2019 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2019, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -247,7 +247,8 @@
                 buf.append('(');
                 boolean first = true;
                 for (Pair<MethodSymbol, Attribute> value : values) {
-                    if (!first) buf.append(", ");
+                    if (!first)
+                        buf.append(", ");
                     first = false;
 
                     Name name = value.fst.name;
@@ -368,7 +369,7 @@
         public void accept(Visitor v) { v.visitEnum(this); }
         @DefinedBy(Api.LANGUAGE_MODEL)
         public String toString() {
-            return value.enclClass() + "." + value;     // qualified name
+            return value.toString();
         }
         @DefinedBy(Api.LANGUAGE_MODEL)
         public VarSymbol getValue() {
--- a/src/jdk.compiler/share/classes/com/sun/tools/javac/model/AnnotationProxyMaker.java	Thu Jun 13 11:21:50 2019 -0700
+++ b/src/jdk.compiler/share/classes/com/sun/tools/javac/model/AnnotationProxyMaker.java	Thu Jun 13 11:50:45 2019 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2019, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -32,6 +32,7 @@
 import java.lang.reflect.Method;
 import java.util.LinkedHashMap;
 import java.util.Map;
+import java.util.stream.Collectors;
 import sun.reflect.annotation.*;
 
 import javax.lang.model.type.MirroredTypeException;
@@ -292,7 +293,7 @@
         }
 
         public String toString() {
-            return typeString;
+            return typeString + ".class";
         }
 
         public int hashCode() {
@@ -335,7 +336,9 @@
         }
 
         public String toString() {
-            return typeStrings;
+            return types.stream()
+                .map(t -> t.toString() + ".class")
+                .collect(Collectors.joining(", ", "{", "}"));
         }
 
         public int hashCode() {
--- a/test/hotspot/jtreg/runtime/8007320/ConstMethodTest.java	Thu Jun 13 11:21:50 2019 -0700
+++ b/test/hotspot/jtreg/runtime/8007320/ConstMethodTest.java	Thu Jun 13 11:50:45 2019 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, 2016, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2019, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -122,8 +122,8 @@
                 equal(ann.length, 3);
                 Annotation foo = ann[0][0];
                 Annotation bar = ann[1][0];
-                equal(foo.toString(), "@Named(value=\"aName\")");
-                equal(bar.toString(), "@Named(value=\"bName\")");
+                equal(foo.toString(), "@Named(\"aName\")");
+                equal(bar.toString(), "@Named(\"bName\")");
                 check(foo.equals(foo));
                 check(bar.equals(bar));
                 check(! foo.equals(bar));
--- a/test/jdk/java/lang/annotation/AnnotationToStringTest.java	Thu Jun 13 11:21:50 2019 -0700
+++ b/test/jdk/java/lang/annotation/AnnotationToStringTest.java	Thu Jun 13 11:50:45 2019 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2016, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2016, 2019, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,9 @@
  * @summary Test of toString on normal annotations
  */
 
+// See also the sibling compile-time test
+// test/langtools/tools/javac/processing/model/element/AnnotationToStringTest.java
+
 import java.lang.annotation.*;
 import java.lang.reflect.*;
 import java.util.*;
@@ -62,22 +65,25 @@
     @ExpectedString(
         "@MostlyPrimitive(c0='a', "+
         "c1='\\'', " +
+        "b0=(byte)0x01, " +
         "i0=1, " +
         "i1=2, " +
         "f0=1.0f, " +
         "f1=0.0f/0.0f, " +
         "d0=0.0, " +
         "d1=1.0/0.0, " +
-        "l0=5, " +
+        "l0=5L, " +
         "l1=9223372036854775807L, " +
         "l2=-9223372036854775808L, " +
-        "l3=-2147483648, " +
+        "l3=-2147483648L, " +
         "s0=\"Hello world.\", " +
         "s1=\"a\\\"b\", " +
-        "class0=Obj[].class)")
+        "class0=Obj[].class, " +
+        "classArray={Obj[].class})")
     @MostlyPrimitive(
         c0='a',
         c1='\'',
+        b0=1,
         i0=1,
         i1=2,
         f0=1.0f,
@@ -90,7 +96,8 @@
         l3=Integer.MIN_VALUE,
         s0="Hello world.",
         s1="a\"b",
-        class0=Obj[].class
+        class0=Obj[].class,
+        classArray={Obj[].class}
     )
     static class PrimHost{}
 
@@ -107,33 +114,33 @@
 
     static class AnnotationHost {
         @ExpectedString(
-       "@Classy(value=Obj.class)")
-        @Classy(value=Obj.class)
+       "@Classy(Obj.class)")
+        @Classy(Obj.class)
         public int f0;
 
         @ExpectedString(
-       "@Classy(value=Obj[].class)")
-        @Classy(value=Obj[].class)
+       "@Classy(Obj[].class)")
+        @Classy(Obj[].class)
         public int f1;
 
         @ExpectedString(
-       "@Classy(value=Obj[][].class)")
-        @Classy(value=Obj[][].class)
+       "@Classy(Obj[][].class)")
+        @Classy(Obj[][].class)
         public int f2;
 
         @ExpectedString(
-       "@Classy(value=Obj[][][].class)")
-        @Classy(value=Obj[][][].class)
+       "@Classy(Obj[][][].class)")
+        @Classy(Obj[][][].class)
         public int f3;
 
         @ExpectedString(
-       "@Classy(value=int.class)")
-        @Classy(value=int.class)
+       "@Classy(int.class)")
+        @Classy(int.class)
         public int f4;
 
         @ExpectedString(
-       "@Classy(value=int[][][].class)")
-        @Classy(value=int[][][].class)
+       "@Classy(int[][][].class)")
+        @Classy(int[][][].class)
         public int f5;
     }
 
@@ -154,60 +161,60 @@
 
     static class ArrayAnnotationHost {
         @ExpectedString(
-       "@BooleanArray(value={true, false, true})")
-        @BooleanArray(value={true, false, true})
+       "@BooleanArray({true, false, true})")
+        @BooleanArray({true, false, true})
         public boolean[]   f0;
 
         @ExpectedString(
-       "@FloatArray(value={3.0f, 4.0f, 0.0f/0.0f, -1.0f/0.0f, 1.0f/0.0f})")
-        @FloatArray(value={3.0f, 4.0f, Float.NaN, Float.NEGATIVE_INFINITY, Float.POSITIVE_INFINITY})
+       "@FloatArray({3.0f, 4.0f, 0.0f/0.0f, -1.0f/0.0f, 1.0f/0.0f})")
+        @FloatArray({3.0f, 4.0f, Float.NaN, Float.NEGATIVE_INFINITY, Float.POSITIVE_INFINITY})
         public float[]     f1;
 
         @ExpectedString(
-       "@DoubleArray(value={1.0, 2.0, 0.0/0.0, 1.0/0.0, -1.0/0.0})")
-        @DoubleArray(value={1.0, 2.0, Double.NaN, Double.POSITIVE_INFINITY, Double.NEGATIVE_INFINITY,})
+       "@DoubleArray({1.0, 2.0, 0.0/0.0, 1.0/0.0, -1.0/0.0})")
+        @DoubleArray({1.0, 2.0, Double.NaN, Double.POSITIVE_INFINITY, Double.NEGATIVE_INFINITY,})
         public double[]    f2;
 
         @ExpectedString(
-       "@ByteArray(value={10, 11, 12})")
-        @ByteArray(value={10, 11, 12})
+       "@ByteArray({(byte)0x0a, (byte)0x0b, (byte)0x0c})")
+        @ByteArray({10, 11, 12})
         public byte[]      f3;
 
         @ExpectedString(
-       "@ShortArray(value={0, 4, 5})")
-        @ShortArray(value={0, 4, 5})
+       "@ShortArray({0, 4, 5})")
+        @ShortArray({0, 4, 5})
         public short[]     f4;
 
         @ExpectedString(
-       "@CharArray(value={'a', 'b', 'c', '\\''})")
-        @CharArray(value={'a', 'b', 'c', '\''})
+       "@CharArray({'a', 'b', 'c', '\\''})")
+        @CharArray({'a', 'b', 'c', '\''})
         public char[]      f5;
 
         @ExpectedString(
-       "@IntArray(value={1})")
-        @IntArray(value={1})
+       "@IntArray({1})")
+        @IntArray({1})
         public int[]       f6;
 
         @ExpectedString(
-       "@LongArray(value={-9223372036854775808L, -2147483649L, -2147483648," +
-                " -2147483647, 2147483648L, 9223372036854775807L})")
-        @LongArray(value={Long.MIN_VALUE, Integer.MIN_VALUE-1L, Integer.MIN_VALUE,
+       "@LongArray({-9223372036854775808L, -2147483649L, -2147483648L," +
+                " -2147483647L, 2147483648L, 9223372036854775807L})")
+        @LongArray({Long.MIN_VALUE, Integer.MIN_VALUE-1L, Integer.MIN_VALUE,
                 -Integer.MAX_VALUE, Integer.MAX_VALUE+1L, Long.MAX_VALUE})
         public long[]      f7;
 
         @ExpectedString(
-       "@StringArray(value={\"A\", \"B\", \"C\", \"\\\"Quote\\\"\"})")
-        @StringArray(value={"A", "B", "C", "\"Quote\""})
+       "@StringArray({\"A\", \"B\", \"C\", \"\\\"Quote\\\"\"})")
+        @StringArray({"A", "B", "C", "\"Quote\""})
         public String[]    f8;
 
         @ExpectedString(
-       "@ClassArray(value={int.class, Obj[].class})")
-        @ClassArray(value={int.class, Obj[].class})
+       "@ClassArray({int.class, Obj[].class})")
+        @ClassArray({int.class, Obj[].class})
         public Class<?>[]  f9;
 
         @ExpectedString(
-       "@EnumArray(value={SOURCE})")
-        @EnumArray(value={RetentionPolicy.SOURCE})
+       "@EnumArray({SOURCE})")
+        @EnumArray({RetentionPolicy.SOURCE})
         public RetentionPolicy[]  f10;
     }
 }
@@ -285,6 +292,7 @@
 @interface MostlyPrimitive {
     char   c0();
     char   c1();
+    byte   b0();
     int    i0();
     int    i1();
     float  f0();
@@ -298,4 +306,5 @@
     String s0();
     String s1();
     Class<?> class0();
+    Class<?>[] classArray();
 }
--- a/test/jdk/java/lang/annotation/ParameterAnnotations.java	Thu Jun 13 11:21:50 2019 -0700
+++ b/test/jdk/java/lang/annotation/ParameterAnnotations.java	Thu Jun 13 11:50:45 2019 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2008, 2016, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2008, 2019, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -89,8 +89,8 @@
                 equal(ann.length, 2);
                 Annotation foo = ann[0][0];
                 Annotation bar = ann[1][0];
-                equal(foo.toString(), "@Named(value=\"foo\")");
-                equal(bar.toString(), "@Named(value=\"bar\")");
+                equal(foo.toString(), "@Named(\"foo\")");
+                equal(bar.toString(), "@Named(\"bar\")");
                 check(foo.equals(foo));
                 check(! foo.equals(bar));
             }
--- a/test/jdk/java/lang/annotation/TestConstructorParameterAnnotations.java	Thu Jun 13 11:21:50 2019 -0700
+++ b/test/jdk/java/lang/annotation/TestConstructorParameterAnnotations.java	Thu Jun 13 11:50:45 2019 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2017, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2017, 2019, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -129,21 +129,21 @@
 
     @ExpectedGetParameterAnnotations(
         "[[], " +
-        "[@TestConstructorParameterAnnotations$MarkerAnnotation(value=1)]]")
+        "[@TestConstructorParameterAnnotations$MarkerAnnotation(1)]]")
     @ExpectedParameterAnnotations({
         "null",
-        "@TestConstructorParameterAnnotations$MarkerAnnotation(value=1)"})
+        "@TestConstructorParameterAnnotations$MarkerAnnotation(1)"})
     public class NestedClass1 {
         public NestedClass1(@MarkerAnnotation(1) int parameter) {}
     }
 
     @ExpectedGetParameterAnnotations(
         "[[], " +
-        "[@TestConstructorParameterAnnotations$MarkerAnnotation(value=2)], " +
+        "[@TestConstructorParameterAnnotations$MarkerAnnotation(2)], " +
         "[]]")
     @ExpectedParameterAnnotations({
         "null",
-        "@TestConstructorParameterAnnotations$MarkerAnnotation(value=2)",
+        "@TestConstructorParameterAnnotations$MarkerAnnotation(2)",
         "null"})
     public class NestedClass2 {
         public NestedClass2(@MarkerAnnotation(2) int parameter1,
@@ -152,11 +152,11 @@
 
     @ExpectedGetParameterAnnotations(
         "[[], " +
-        "[@TestConstructorParameterAnnotations$MarkerAnnotation(value=3)], " +
+        "[@TestConstructorParameterAnnotations$MarkerAnnotation(3)], " +
         "[]]")
     @ExpectedParameterAnnotations({
         "null",
-        "@TestConstructorParameterAnnotations$MarkerAnnotation(value=3)",
+        "@TestConstructorParameterAnnotations$MarkerAnnotation(3)",
             "null"})
     public class NestedClass3 {
         public <P> NestedClass3(@MarkerAnnotation(3) P parameter1,
@@ -165,11 +165,11 @@
 
     @ExpectedGetParameterAnnotations(
         "[[], " +
-        "[@TestConstructorParameterAnnotations$MarkerAnnotation(value=4)], " +
+        "[@TestConstructorParameterAnnotations$MarkerAnnotation(4)], " +
         "[]]")
     @ExpectedParameterAnnotations({
         "null",
-        "@TestConstructorParameterAnnotations$MarkerAnnotation(value=4)",
+        "@TestConstructorParameterAnnotations$MarkerAnnotation(4)",
         "null"})
     public class NestedClass4 {
         public <P, Q> NestedClass4(@MarkerAnnotation(4) P parameter1,
@@ -183,18 +183,18 @@
     }
 
     @ExpectedGetParameterAnnotations(
-        "[[@TestConstructorParameterAnnotations$MarkerAnnotation(value=1)]]")
+        "[[@TestConstructorParameterAnnotations$MarkerAnnotation(1)]]")
     @ExpectedParameterAnnotations({
-        "@TestConstructorParameterAnnotations$MarkerAnnotation(value=1)"})
+        "@TestConstructorParameterAnnotations$MarkerAnnotation(1)"})
     public static class StaticNestedClass1 {
         public StaticNestedClass1(@MarkerAnnotation(1) int parameter) {}
     }
 
     @ExpectedGetParameterAnnotations(
-        "[[@TestConstructorParameterAnnotations$MarkerAnnotation(value=2)], " +
+        "[[@TestConstructorParameterAnnotations$MarkerAnnotation(2)], " +
         "[]]")
     @ExpectedParameterAnnotations({
-        "@TestConstructorParameterAnnotations$MarkerAnnotation(value=2)",
+        "@TestConstructorParameterAnnotations$MarkerAnnotation(2)",
         "null"})
     public static class StaticNestedClass2 {
         public StaticNestedClass2(@MarkerAnnotation(2) int parameter1,
@@ -202,10 +202,10 @@
     }
 
     @ExpectedGetParameterAnnotations(
-        "[[@TestConstructorParameterAnnotations$MarkerAnnotation(value=3)], " +
+        "[[@TestConstructorParameterAnnotations$MarkerAnnotation(3)], " +
         "[]]")
     @ExpectedParameterAnnotations({
-        "@TestConstructorParameterAnnotations$MarkerAnnotation(value=3)",
+        "@TestConstructorParameterAnnotations$MarkerAnnotation(3)",
         "null"})
     public static class StaticNestedClass3 {
         public <P> StaticNestedClass3(@MarkerAnnotation(3) P parameter1,
@@ -213,10 +213,10 @@
     }
 
     @ExpectedGetParameterAnnotations(
-        "[[@TestConstructorParameterAnnotations$MarkerAnnotation(value=4)], " +
+        "[[@TestConstructorParameterAnnotations$MarkerAnnotation(4)], " +
         "[]]")
     @ExpectedParameterAnnotations({
-        "@TestConstructorParameterAnnotations$MarkerAnnotation(value=4)",
+        "@TestConstructorParameterAnnotations$MarkerAnnotation(4)",
         "null"})
     public static class StaticNestedClass4 {
         public <P, Q> StaticNestedClass4(@MarkerAnnotation(4) P parameter1,
--- a/test/jdk/java/lang/annotation/typeAnnotations/TestConstructorParameterTypeAnnotations.java	Thu Jun 13 11:21:50 2019 -0700
+++ b/test/jdk/java/lang/annotation/typeAnnotations/TestConstructorParameterTypeAnnotations.java	Thu Jun 13 11:50:45 2019 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2017, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2017, 2019, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -128,7 +128,7 @@
     @ExpectedGetParameterAnnotations("[[], []]")
     @ExpectedParameterTypeAnnotations({
         "null",
-        "@TestConstructorParameterTypeAnnotations$MarkerTypeAnnotation(value=1)"})
+        "@TestConstructorParameterTypeAnnotations$MarkerTypeAnnotation(1)"})
     public class NestedClass1 {
         public NestedClass1(@MarkerTypeAnnotation(1) int parameter) {}
     }
@@ -136,7 +136,7 @@
     @ExpectedGetParameterAnnotations("[[], [], []]")
     @ExpectedParameterTypeAnnotations({
         "null",
-        "@TestConstructorParameterTypeAnnotations$MarkerTypeAnnotation(value=2)",
+        "@TestConstructorParameterTypeAnnotations$MarkerTypeAnnotation(2)",
         "null"})
     public class NestedClass2 {
         public NestedClass2(@MarkerTypeAnnotation(2) int parameter1,
@@ -146,7 +146,7 @@
     @ExpectedGetParameterAnnotations("[[], [], []]")
     @ExpectedParameterTypeAnnotations({
         "null",
-        "@TestConstructorParameterTypeAnnotations$MarkerTypeAnnotation(value=3)",
+        "@TestConstructorParameterTypeAnnotations$MarkerTypeAnnotation(3)",
         "null"})
     public class NestedClass3 {
         public <P> NestedClass3(@MarkerTypeAnnotation(3) P parameter1,
@@ -156,7 +156,7 @@
     @ExpectedGetParameterAnnotations("[[], [], []]")
     @ExpectedParameterTypeAnnotations({
         "null",
-        "@TestConstructorParameterTypeAnnotations$MarkerTypeAnnotation(value=4)",
+        "@TestConstructorParameterTypeAnnotations$MarkerTypeAnnotation(4)",
         "null"})
     public class NestedClass4 {
         public <P, Q> NestedClass4(@MarkerTypeAnnotation(4) P parameter1,
@@ -171,14 +171,14 @@
 
     @ExpectedGetParameterAnnotations("[[]]")
     @ExpectedParameterTypeAnnotations({
-        "@TestConstructorParameterTypeAnnotations$MarkerTypeAnnotation(value=1)"})
+        "@TestConstructorParameterTypeAnnotations$MarkerTypeAnnotation(1)"})
     public static class StaticNestedClass1 {
         public StaticNestedClass1(@MarkerTypeAnnotation(1) int parameter) {}
     }
 
     @ExpectedGetParameterAnnotations("[[], []]")
     @ExpectedParameterTypeAnnotations({
-        "@TestConstructorParameterTypeAnnotations$MarkerTypeAnnotation(value=2)",
+        "@TestConstructorParameterTypeAnnotations$MarkerTypeAnnotation(2)",
         "null"})
     public static class StaticNestedClass2 {
         public StaticNestedClass2(@MarkerTypeAnnotation(2) int parameter1,
@@ -187,7 +187,7 @@
 
     @ExpectedGetParameterAnnotations("[[], []]")
     @ExpectedParameterTypeAnnotations({
-        "@TestConstructorParameterTypeAnnotations$MarkerTypeAnnotation(value=3)",
+        "@TestConstructorParameterTypeAnnotations$MarkerTypeAnnotation(3)",
         "null"})
     public static class StaticNestedClass3 {
          public <P> StaticNestedClass3(@MarkerTypeAnnotation(3) P parameter1,
@@ -196,7 +196,7 @@
 
     @ExpectedGetParameterAnnotations("[[], []]")
     @ExpectedParameterTypeAnnotations({
-        "@TestConstructorParameterTypeAnnotations$MarkerTypeAnnotation(value=4)",
+        "@TestConstructorParameterTypeAnnotations$MarkerTypeAnnotation(4)",
         "null"})
     public static class StaticNestedClass4 {
         public <P, Q> StaticNestedClass4(@MarkerTypeAnnotation(4) P parameter1,
--- a/test/jdk/java/lang/annotation/typeAnnotations/TestObjectMethods.java	Thu Jun 13 11:21:50 2019 -0700
+++ b/test/jdk/java/lang/annotation/typeAnnotations/TestObjectMethods.java	Thu Jun 13 11:50:45 2019 -0700
@@ -177,7 +177,7 @@
         }
     }
 
-    private static final Pattern annotationRegex = Pattern.compile("@TestObjectMethods\\$AnnotType\\(value=(\\p{Digit})+\\)");
+    private static final Pattern annotationRegex = Pattern.compile("@TestObjectMethods\\$AnnotType\\((\\p{Digit})+\\)");
 
     static void testGetAnnotations(Class<?> clazz, boolean annotationsExpectedOnMethods) {
         System.err.println("Testing getAnnotations on methods of class " + clazz.getName());
--- a/test/langtools/tools/javac/annotations/repeatingAnnotations/combo/ReflectionTest.java	Thu Jun 13 11:21:50 2019 -0700
+++ b/test/langtools/tools/javac/annotations/repeatingAnnotations/combo/ReflectionTest.java	Thu Jun 13 11:50:45 2019 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, 2016, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2019, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -193,12 +193,12 @@
     enum TestCase {
         BasicNonRepeatable_Legacy(
         "@ExpectedBase(value=Foo.class, "
-                + "getAnnotationVal = \"@Foo(value=0)\", "
-                + "getAnnotationsVals = {\"ExpectedBase\", \"ExpectedContainer\", \"@Foo(value=0)\"}, "
-                + "getDeclAnnosVals = {\"ExpectedBase\", \"ExpectedContainer\", \"@Foo(value=0)\"}, "
-                + "getDeclAnnoVal = \"@Foo(value=0)\", "
-                + "getAnnosArgs = {\"@Foo(value=0)\"}, "
-                + "getDeclAnnosArgs = {\"@Foo(value=0)\"}) ",
+                + "getAnnotationVal = \"@Foo(0)\", "
+                + "getAnnotationsVals = {\"ExpectedBase\", \"ExpectedContainer\", \"@Foo(0)\"}, "
+                + "getDeclAnnosVals = {\"ExpectedBase\", \"ExpectedContainer\", \"@Foo(0)\"}, "
+                + "getDeclAnnoVal = \"@Foo(0)\", "
+                + "getAnnosArgs = {\"@Foo(0)\"}, "
+                + "getDeclAnnosArgs = {\"@Foo(0)\"}) ",
         "@ExpectedContainer") {
 
             @Override
@@ -274,11 +274,11 @@
         },
         SingleAnnoInherited_Legacy(
         "@ExpectedBase(value=Foo.class, "
-                + "getAnnotationVal = \"@Foo(value=0)\", "
-                + "getAnnotationsVals = {\"@Foo(value=0)\", \"ExpectedBase\", \"ExpectedContainer\"}, "
+                + "getAnnotationVal = \"@Foo(0)\", "
+                + "getAnnotationsVals = {\"@Foo(0)\", \"ExpectedBase\", \"ExpectedContainer\"}, "
                 + "getDeclAnnosVals = {\"ExpectedBase\", \"ExpectedContainer\"}, "
                 + "getDeclAnnoVal = \"NULL\", "
-                + "getAnnosArgs = {\"@Foo(value=0)\"}, "
+                + "getAnnosArgs = {\"@Foo(0)\"}, "
                 + "getDeclAnnosArgs = {})",
         "@ExpectedContainer") {
 
@@ -401,18 +401,18 @@
         },
         AnnoOnSuperAndSubClass_Inherited_Legacy(
         "@ExpectedBase(value=Foo.class, "
-                + "getAnnotationVal = \"@Foo(value=2)\", "
-                + "getAnnotationsVals = {\"ExpectedBase\", \"ExpectedContainer\", \"@Foo(value=2)\"}, "
+                + "getAnnotationVal = \"@Foo(2)\", "
+                + "getAnnotationsVals = {\"ExpectedBase\", \"ExpectedContainer\", \"@Foo(2)\"}, "
                 + // override every annotation on superClass
-                "getDeclAnnosVals = {\"ExpectedBase\", \"ExpectedContainer\", \"@Foo(value=2)\"}, "
+                "getDeclAnnosVals = {\"ExpectedBase\", \"ExpectedContainer\", \"@Foo(2)\"}, "
                 + // ignores inherited annotations
-                "getDeclAnnoVal = \"@Foo(value=2)\", " // ignores inherited
-                + "getAnnosArgs = {\"@Foo(value=2)\"}, "
-                + "getDeclAnnosArgs = { \"@Foo(value=2)\" })", // ignores inherited
+                "getDeclAnnoVal = \"@Foo(2)\", " // ignores inherited
+                + "getAnnosArgs = {\"@Foo(2)\"}, "
+                + "getDeclAnnosArgs = { \"@Foo(2)\" })", // ignores inherited
         "@ExpectedContainer(value=FooContainer.class, "
                 + "getAnnotationVal = \"NULL\", "
-                + "getAnnotationsVals = {\"ExpectedBase\", \"ExpectedContainer\", \"@Foo(value=2)\"}, "
-                + "getDeclAnnosVals = {\"ExpectedBase\", \"ExpectedContainer\", \"@Foo(value=2)\"}, "
+                + "getAnnotationsVals = {\"ExpectedBase\", \"ExpectedContainer\", \"@Foo(2)\"}, "
+                + "getDeclAnnosVals = {\"ExpectedBase\", \"ExpectedContainer\", \"@Foo(2)\"}, "
                 + // ignores inherited annotations
                 "getDeclAnnoVal = \"NULL\", " + // ignores inherited
                 "getAnnosArgs = {}, " + "getDeclAnnosArgs = {})") { // ignores inherited
@@ -481,19 +481,19 @@
             }
         },
         BasicContainer_Legacy(
-        "@ExpectedBase(value = Foo.class, "
+        "@ExpectedBase(value=Foo.class, "
                 + "getAnnotationVal = \"NULL\","
-                + "getAnnotationsVals = {\"ExpectedBase\", \"ExpectedContainer\", \"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\"}, "
-                + "getDeclAnnosVals = {\"ExpectedBase\", \"ExpectedContainer\", \"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\"}, "
+                + "getAnnotationsVals = {\"ExpectedBase\", \"ExpectedContainer\", \"@FooContainer({@Foo(1), @Foo(2)})\"}, "
+                + "getDeclAnnosVals = {\"ExpectedBase\", \"ExpectedContainer\", \"@FooContainer({@Foo(1), @Foo(2)})\"}, "
                 + "getDeclAnnoVal = \"NULL\", " + "getAnnosArgs = {}, "
                 + "getDeclAnnosArgs = {} )",
         "@ExpectedContainer(value=FooContainer.class, "
-                + "getAnnotationVal = \"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\", "
-                + "getAnnotationsVals = {\"ExpectedBase\", \"ExpectedContainer\", \"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\"}, "
-                + "getDeclAnnosVals = {\"ExpectedBase\", \"ExpectedContainer\", \"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\"}, "
-                + "getDeclAnnoVal = \"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\", "
-                + "getAnnosArgs = {\"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\"}, "
-                + "getDeclAnnosArgs = {\"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\"} )") {
+                + "getAnnotationVal = \"@FooContainer({@Foo(1), @Foo(2)})\", "
+                + "getAnnotationsVals = {\"ExpectedBase\", \"ExpectedContainer\", \"@FooContainer({@Foo(1), @Foo(2)})\"}, "
+                + "getDeclAnnosVals = {\"ExpectedBase\", \"ExpectedContainer\", \"@FooContainer({@Foo(1), @Foo(2)})\"}, "
+                + "getDeclAnnoVal = \"@FooContainer({@Foo(1), @Foo(2)})\", "
+                + "getAnnosArgs = {\"@FooContainer({@Foo(1), @Foo(2)})\"}, "
+                + "getDeclAnnosArgs = {\"@FooContainer({@Foo(1), @Foo(2)})\"} )") {
 
             @Override
             public Iterable<? extends JavaFileObject> getTestFiles(SrcType srcType,
@@ -580,24 +580,24 @@
             }
         },
         SingleAndContainerOnSuper_Legacy(
-        "@ExpectedBase(value = Foo.class, "
-                + "getAnnotationVal = \"@Foo(value=0)\","
+        "@ExpectedBase(value=Foo.class, "
+                + "getAnnotationVal = \"@Foo(0)\","
                 + "getAnnotationsVals = {"
-                +       "\"ExpectedBase\", \"ExpectedContainer\", \"@Foo(value=0)\", \"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\"}, "
+                +       "\"ExpectedBase\", \"ExpectedContainer\", \"@Foo(0)\", \"@FooContainer({@Foo(1), @Foo(2)})\"}, "
                 + "getDeclAnnosVals = {"
-                +       "\"ExpectedBase\", \"ExpectedContainer\", \"@Foo(value=0)\", \"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\"}, "
-                + "getDeclAnnoVal = \"@Foo(value=0)\", "
-                + "getAnnosArgs = {\"@Foo(value=0)\"}, "
-                + "getDeclAnnosArgs = {\"@Foo(value=0)\"} )",
+                +       "\"ExpectedBase\", \"ExpectedContainer\", \"@Foo(0)\", \"@FooContainer({@Foo(1), @Foo(2)})\"}, "
+                + "getDeclAnnoVal = \"@Foo(0)\", "
+                + "getAnnosArgs = {\"@Foo(0)\"}, "
+                + "getDeclAnnosArgs = {\"@Foo(0)\"} )",
         "@ExpectedContainer(value=FooContainer.class, "
-                + "getAnnotationVal = \"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\", "
+                + "getAnnotationVal = \"@FooContainer({@Foo(1), @Foo(2)})\", "
                 + "getAnnotationsVals = {"
-                +       "\"ExpectedBase\", \"ExpectedContainer\", \"@Foo(value=0)\", \"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\"}, "
+                +       "\"ExpectedBase\", \"ExpectedContainer\", \"@Foo(0)\", \"@FooContainer({@Foo(1), @Foo(2)})\"}, "
                 + "getDeclAnnosVals = {"
-                +       "\"ExpectedBase\", \"ExpectedContainer\", \"@Foo(value=0)\", \"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\"}, "
-                + "getDeclAnnoVal = \"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\", "
-                + "getAnnosArgs = {\"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\"}, "
-                + "getDeclAnnosArgs = {\"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\"} )") {
+                +       "\"ExpectedBase\", \"ExpectedContainer\", \"@Foo(0)\", \"@FooContainer({@Foo(1), @Foo(2)})\"}, "
+                + "getDeclAnnoVal = \"@FooContainer({@Foo(1), @Foo(2)})\", "
+                + "getAnnosArgs = {\"@FooContainer({@Foo(1), @Foo(2)})\"}, "
+                + "getDeclAnnosArgs = {\"@FooContainer({@Foo(1), @Foo(2)})\"} )") {
 
             @Override
             public Iterable<? extends JavaFileObject> getTestFiles(SrcType srcType,
@@ -689,19 +689,19 @@
             }
         },
         BasicContainer_Inherited_Legacy(
-        "@ExpectedBase(value = Foo.class, "
+        "@ExpectedBase(value=Foo.class, "
                 + "getAnnotationVal = \"NULL\","
-                + "getAnnotationsVals = {\"ExpectedBase\", \"ExpectedContainer\", \"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\"}, "
+                + "getAnnotationsVals = {\"ExpectedBase\", \"ExpectedContainer\", \"@FooContainer({@Foo(1), @Foo(2)})\"}, "
                 + "getDeclAnnosVals = {\"ExpectedBase\", \"ExpectedContainer\"}, "
                 + "getDeclAnnoVal = \"NULL\", "
                 + "getAnnosArgs = {}, "
                 + "getDeclAnnosArgs = {} )",
         "@ExpectedContainer(value=FooContainer.class, "
-                + "getAnnotationVal = \"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\", "
-                + "getAnnotationsVals = {\"ExpectedBase\", \"ExpectedContainer\", \"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\"}, "
+                + "getAnnotationVal = \"@FooContainer({@Foo(1), @Foo(2)})\", "
+                + "getAnnotationsVals = {\"ExpectedBase\", \"ExpectedContainer\", \"@FooContainer({@Foo(1), @Foo(2)})\"}, "
                 + "getDeclAnnosVals = {\"ExpectedBase\", \"ExpectedContainer\"}, "
                 + "getDeclAnnoVal = \"NULL\", "
-                + "getAnnosArgs = {\"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\"}, "
+                + "getAnnosArgs = {\"@FooContainer({@Foo(1), @Foo(2)})\"}, "
                 + "getDeclAnnosArgs = {} )") {
 
             @Override
@@ -763,20 +763,20 @@
         },
         ContainerOnSuperSingleOnSub_Inherited_Legacy(
         "@ExpectedBase(value=Foo.class, "
-                + "getAnnotationVal = \"@Foo(value=0)\", "
+                + "getAnnotationVal = \"@Foo(0)\", "
                 + "getAnnotationsVals = {"
-                +       "\"ExpectedBase\", \"ExpectedContainer\", \"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\", \"@Foo(value=0)\"}, "
-                + "getDeclAnnosVals = {\"ExpectedBase\", \"ExpectedContainer\", \"@Foo(value=0)\"},"
-                + "getDeclAnnoVal = \"@Foo(value=0)\","
-                + "getAnnosArgs = {\"@Foo(value=0)\"},"
-                + "getDeclAnnosArgs = {\"@Foo(value=0)\"})",
+                +       "\"ExpectedBase\", \"ExpectedContainer\", \"@FooContainer({@Foo(1), @Foo(2)})\", \"@Foo(0)\"}, "
+                + "getDeclAnnosVals = {\"ExpectedBase\", \"ExpectedContainer\", \"@Foo(0)\"},"
+                + "getDeclAnnoVal = \"@Foo(0)\","
+                + "getAnnosArgs = {\"@Foo(0)\"},"
+                + "getDeclAnnosArgs = {\"@Foo(0)\"})",
         "@ExpectedContainer(value=FooContainer.class, "
-                + "getAnnotationVal = \"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\", "
+                + "getAnnotationVal = \"@FooContainer({@Foo(1), @Foo(2)})\", "
                 + "getAnnotationsVals = {"
-                +       "\"ExpectedBase\", \"ExpectedContainer\", \"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\", \"@Foo(value=0)\"}, "
-                + "getDeclAnnosVals = {\"ExpectedBase\", \"ExpectedContainer\", \"@Foo(value=0)\"},"
+                +       "\"ExpectedBase\", \"ExpectedContainer\", \"@FooContainer({@Foo(1), @Foo(2)})\", \"@Foo(0)\"}, "
+                + "getDeclAnnosVals = {\"ExpectedBase\", \"ExpectedContainer\", \"@Foo(0)\"},"
                 + "getDeclAnnoVal = \"NULL\","
-                + "getAnnosArgs = {\"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\"},"
+                + "getAnnosArgs = {\"@FooContainer({@Foo(1), @Foo(2)})\"},"
                 + "getDeclAnnosArgs = {})") {
 
             @Override
@@ -842,20 +842,20 @@
         // fail with ordering issues
         ContainerAndSingleOnSuperSingleOnSub_Inherited_Legacy(
         "@ExpectedBase(value=Foo.class, "
-                + "getAnnotationVal = \"@Foo(value=0)\", "
+                + "getAnnotationVal = \"@Foo(0)\", "
                 + "getAnnotationsVals = {"
-                +       "\"ExpectedBase\", \"ExpectedContainer\", \"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\", \"@Foo(value=0)\"}, "
-                + "getDeclAnnosVals = {\"ExpectedBase\", \"ExpectedContainer\", \"@Foo(value=0)\"},"
-                + "getDeclAnnoVal = \"@Foo(value=0)\","
-                + "getAnnosArgs = {\"@Foo(value=0)\"},"
-                + "getDeclAnnosArgs = {\"@Foo(value=0)\"})",
+                +       "\"ExpectedBase\", \"ExpectedContainer\", \"@FooContainer({@Foo(1), @Foo(2)})\", \"@Foo(0)\"}, "
+                + "getDeclAnnosVals = {\"ExpectedBase\", \"ExpectedContainer\", \"@Foo(0)\"},"
+                + "getDeclAnnoVal = \"@Foo(0)\","
+                + "getAnnosArgs = {\"@Foo(0)\"},"
+                + "getDeclAnnosArgs = {\"@Foo(0)\"})",
         "@ExpectedContainer(value=FooContainer.class, "
-                + "getAnnotationVal = \"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\", "
+                + "getAnnotationVal = \"@FooContainer({@Foo(1), @Foo(2)})\", "
                 + "getAnnotationsVals = {"
-                +       "\"ExpectedBase\", \"ExpectedContainer\", \"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\", \"@Foo(value=0)\"}, "
-                + "getDeclAnnosVals = {\"ExpectedBase\", \"ExpectedContainer\", \"@Foo(value=0)\"},"
+                +       "\"ExpectedBase\", \"ExpectedContainer\", \"@FooContainer({@Foo(1), @Foo(2)})\", \"@Foo(0)\"}, "
+                + "getDeclAnnosVals = {\"ExpectedBase\", \"ExpectedContainer\", \"@Foo(0)\"},"
                 + "getDeclAnnoVal = \"NULL\","
-                + "getAnnosArgs = {\"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\"},"
+                + "getAnnosArgs = {\"@FooContainer({@Foo(1), @Foo(2)})\"},"
                 + "getDeclAnnosArgs = {})") {
 
             @Override
@@ -921,21 +921,21 @@
         // fail with ordering issues
         SingleOnSuperContainerOnSub_Inherited_Legacy(
         "@ExpectedBase(value=Foo.class, "
-                + "getAnnotationVal = \"@Foo(value=0)\", "
+                + "getAnnotationVal = \"@Foo(0)\", "
                 + "getAnnotationsVals = {"
-                +       "\"ExpectedBase\", \"ExpectedContainer\", \"@Foo(value=0)\", \"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\"}, "
-                + "getDeclAnnosVals = {\"ExpectedBase\", \"ExpectedContainer\", \"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\"},"
+                +       "\"ExpectedBase\", \"ExpectedContainer\", \"@Foo(0)\", \"@FooContainer({@Foo(1), @Foo(2)})\"}, "
+                + "getDeclAnnosVals = {\"ExpectedBase\", \"ExpectedContainer\", \"@FooContainer({@Foo(1), @Foo(2)})\"},"
                 + "getDeclAnnoVal = \"NULL\","
-                + "getAnnosArgs = {\"@Foo(value=0)\"},"
+                + "getAnnosArgs = {\"@Foo(0)\"},"
                 + "getDeclAnnosArgs = {})",
         "@ExpectedContainer(value=FooContainer.class, "
-                + "getAnnotationVal = \"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\", "
+                + "getAnnotationVal = \"@FooContainer({@Foo(1), @Foo(2)})\", "
                 + "getAnnotationsVals = {"
-                +       "\"ExpectedBase\", \"ExpectedContainer\", \"@Foo(value=0)\", \"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\"}, "
-                + "getDeclAnnosVals = {\"ExpectedBase\", \"ExpectedContainer\", \"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\"},"
-                + "getDeclAnnoVal = \"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\","
-                + "getAnnosArgs = {\"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\"},"
-                + "getDeclAnnosArgs = {\"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\"})") {
+                +       "\"ExpectedBase\", \"ExpectedContainer\", \"@Foo(0)\", \"@FooContainer({@Foo(1), @Foo(2)})\"}, "
+                + "getDeclAnnosVals = {\"ExpectedBase\", \"ExpectedContainer\", \"@FooContainer({@Foo(1), @Foo(2)})\"},"
+                + "getDeclAnnoVal = \"@FooContainer({@Foo(1), @Foo(2)})\","
+                + "getAnnosArgs = {\"@FooContainer({@Foo(1), @Foo(2)})\"},"
+                + "getDeclAnnosArgs = {\"@FooContainer({@Foo(1), @Foo(2)})\"})") {
 
             @Override
             public Iterable<? extends JavaFileObject> getTestFiles(SrcType srcType,
@@ -998,23 +998,23 @@
         // fail with ordering issues
         SingleOnSuperContainerAndSingleOnSub_Inherited_Legacy(
         "@ExpectedBase(value=Foo.class, "
-                + "getAnnotationVal = \"@Foo(value=3)\", "
+                + "getAnnotationVal = \"@Foo(3)\", "
                 + "getAnnotationsVals = {"
-                +       "\"ExpectedBase\", \"ExpectedContainer\", \"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\", \"@Foo(value=3)\"}, "
+                +       "\"ExpectedBase\", \"ExpectedContainer\", \"@FooContainer({@Foo(1), @Foo(2)})\", \"@Foo(3)\"}, "
                 + "getDeclAnnosVals = {"
-                +       "\"ExpectedBase\", \"ExpectedContainer\", \"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\", \"@Foo(value=3)\"},"
-                + "getDeclAnnoVal = \"@Foo(value=3)\","
-                + "getAnnosArgs = {\"@Foo(value=3)\"},"
-                + "getDeclAnnosArgs = {\"@Foo(value=3)\"})",
+                +       "\"ExpectedBase\", \"ExpectedContainer\", \"@FooContainer({@Foo(1), @Foo(2)})\", \"@Foo(3)\"},"
+                + "getDeclAnnoVal = \"@Foo(3)\","
+                + "getAnnosArgs = {\"@Foo(3)\"},"
+                + "getDeclAnnosArgs = {\"@Foo(3)\"})",
         "@ExpectedContainer(value=FooContainer.class, "
-                + "getAnnotationVal = \"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\", "
+                + "getAnnotationVal = \"@FooContainer({@Foo(1), @Foo(2)})\", "
                 + "getAnnotationsVals = {"
-                +       "\"ExpectedBase\", \"ExpectedContainer\", \"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\", \"@Foo(value=3)\"}, "
+                +       "\"ExpectedBase\", \"ExpectedContainer\", \"@FooContainer({@Foo(1), @Foo(2)})\", \"@Foo(3)\"}, "
                 + "getDeclAnnosVals = {"
-                +       "\"ExpectedBase\", \"ExpectedContainer\", \"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\", \"@Foo(value=3)\"},"
-                + "getDeclAnnoVal = \"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\","
-                + "getAnnosArgs = {\"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\"},"
-                + "getDeclAnnosArgs = {\"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\"})") {
+                +       "\"ExpectedBase\", \"ExpectedContainer\", \"@FooContainer({@Foo(1), @Foo(2)})\", \"@Foo(3)\"},"
+                + "getDeclAnnoVal = \"@FooContainer({@Foo(1), @Foo(2)})\","
+                + "getAnnosArgs = {\"@FooContainer({@Foo(1), @Foo(2)})\"},"
+                + "getDeclAnnosArgs = {\"@FooContainer({@Foo(1), @Foo(2)})\"})") {
 
             @Override
             public Iterable<? extends JavaFileObject> getTestFiles(SrcType srcType,
@@ -1077,18 +1077,18 @@
         BasicRepeatable(
         "@ExpectedBase(value=Foo.class, "
                 + "getAnnotationVal = \"NULL\", "
-                + "getAnnotationsVals = {\"ExpectedBase\", \"ExpectedContainer\", \"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\" }, "
-                + "getDeclAnnosVals = {\"ExpectedBase\", \"ExpectedContainer\", \"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\"},"
+                + "getAnnotationsVals = {\"ExpectedBase\", \"ExpectedContainer\", \"@FooContainer({@Foo(1), @Foo(2)})\" }, "
+                + "getDeclAnnosVals = {\"ExpectedBase\", \"ExpectedContainer\", \"@FooContainer({@Foo(1), @Foo(2)})\"},"
                 + "getDeclAnnoVal = \"NULL\","
-                + "getAnnosArgs = {\"@Foo(value=1)\", \"@Foo(value=2)\"},"
-                + "getDeclAnnosArgs = {\"@Foo(value=1)\", \"@Foo(value=2)\"})",
+                + "getAnnosArgs = {\"@Foo(1)\", \"@Foo(2)\"},"
+                + "getDeclAnnosArgs = {\"@Foo(1)\", \"@Foo(2)\"})",
         "@ExpectedContainer(value=FooContainer.class, "
-                + "getAnnotationVal = \"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\","
-                + "getAnnotationsVals = {\"ExpectedBase\", \"ExpectedContainer\", \"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\"},"
-                + "getDeclAnnosVals = {\"ExpectedBase\", \"ExpectedContainer\", \"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\"}, "
-                + "getDeclAnnoVal = \"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\","
-                + "getAnnosArgs = {\"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\"},"
-                + "getDeclAnnosArgs = {\"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\"} )") {
+                + "getAnnotationVal = \"@FooContainer({@Foo(1), @Foo(2)})\","
+                + "getAnnotationsVals = {\"ExpectedBase\", \"ExpectedContainer\", \"@FooContainer({@Foo(1), @Foo(2)})\"},"
+                + "getDeclAnnosVals = {\"ExpectedBase\", \"ExpectedContainer\", \"@FooContainer({@Foo(1), @Foo(2)})\"}, "
+                + "getDeclAnnoVal = \"@FooContainer({@Foo(1), @Foo(2)})\","
+                + "getAnnosArgs = {\"@FooContainer({@Foo(1), @Foo(2)})\"},"
+                + "getDeclAnnosArgs = {\"@FooContainer({@Foo(1), @Foo(2)})\"} )") {
 
             @Override
             public Iterable<? extends JavaFileObject> getTestFiles(SrcType srcType,
@@ -1179,21 +1179,21 @@
         "@ExpectedBase(value=Foo.class, "
                 + "getAnnotationVal = \"NULL\", "
                 + "getAnnotationsVals = {"
-                +       "\"ExpectedBase\", \"ExpectedContainer\", \"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\"}, "
+                +       "\"ExpectedBase\", \"ExpectedContainer\", \"@FooContainer({@Foo(1), @Foo(2)})\"}, "
                 + "getDeclAnnosVals = {"
-                +       "\"ExpectedBase\", \"ExpectedContainer\", \"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\"},"
+                +       "\"ExpectedBase\", \"ExpectedContainer\", \"@FooContainer({@Foo(1), @Foo(2)})\"},"
                 + "getDeclAnnoVal = \"NULL\","
-                + "getAnnosArgs = {\"@Foo(value=1)\", \"@Foo(value=2)\"},"
-                + "getDeclAnnosArgs = {\"@Foo(value=1)\", \"@Foo(value=2)\"})",
+                + "getAnnosArgs = {\"@Foo(1)\", \"@Foo(2)\"},"
+                + "getDeclAnnosArgs = {\"@Foo(1)\", \"@Foo(2)\"})",
         "@ExpectedContainer(value=FooContainer.class, "
-                + "getAnnotationVal = \"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\","
+                + "getAnnotationVal = \"@FooContainer({@Foo(1), @Foo(2)})\","
                 + "getAnnotationsVals = {"
-                +       "\"ExpectedBase\", \"ExpectedContainer\", \"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\"},"
+                +       "\"ExpectedBase\", \"ExpectedContainer\", \"@FooContainer({@Foo(1), @Foo(2)})\"},"
                 + "getDeclAnnosVals = {"
-                +       "\"ExpectedBase\", \"ExpectedContainer\", \"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\"}, "
-                + "getDeclAnnoVal = \"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\","
-                + "getAnnosArgs = {\"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\"},"
-                + "getDeclAnnosArgs = {\"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\"} )") {
+                +       "\"ExpectedBase\", \"ExpectedContainer\", \"@FooContainer({@Foo(1), @Foo(2)})\"}, "
+                + "getDeclAnnoVal = \"@FooContainer({@Foo(1), @Foo(2)})\","
+                + "getAnnosArgs = {\"@FooContainer({@Foo(1), @Foo(2)})\"},"
+                + "getDeclAnnosArgs = {\"@FooContainer({@Foo(1), @Foo(2)})\"} )") {
 
             @Override
             public Iterable<? extends JavaFileObject> getTestFiles(SrcType srcType,
@@ -1283,17 +1283,17 @@
         BasicContainerRepeatable_Inherited(
         "@ExpectedBase(value=Foo.class, "
                 + "getAnnotationVal = \"NULL\", "
-                + "getAnnotationsVals = {\"ExpectedBase\", \"ExpectedContainer\", \"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\"}, "
+                + "getAnnotationsVals = {\"ExpectedBase\", \"ExpectedContainer\", \"@FooContainer({@Foo(1), @Foo(2)})\"}, "
                 + "getDeclAnnosVals = {\"ExpectedBase\", \"ExpectedContainer\"}, "
                 + "getDeclAnnoVal = \"NULL\", "
-                + "getAnnosArgs = {\"@Foo(value=1)\", \"@Foo(value=2)\"}, "
+                + "getAnnosArgs = {\"@Foo(1)\", \"@Foo(2)\"}, "
                 + "getDeclAnnosArgs = {})",
         "@ExpectedContainer(value=FooContainer.class, "
-                + "getAnnotationVal = \"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\", "
-                + "getAnnotationsVals = {\"ExpectedBase\", \"ExpectedContainer\", \"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\"}, "
+                + "getAnnotationVal = \"@FooContainer({@Foo(1), @Foo(2)})\", "
+                + "getAnnotationsVals = {\"ExpectedBase\", \"ExpectedContainer\", \"@FooContainer({@Foo(1), @Foo(2)})\"}, "
                 + "getDeclAnnosVals = { \"ExpectedBase\", \"ExpectedContainer\"}, "
                 + "getDeclAnnoVal = \"NULL\", "
-                + "getAnnosArgs = {\"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\"}, "
+                + "getAnnosArgs = {\"@FooContainer({@Foo(1), @Foo(2)})\"}, "
                 + "getDeclAnnosArgs = {})") {
 
             @Override
@@ -1356,21 +1356,21 @@
         RepeatableAnnoInherited(
         "@ExpectedBase(value=Foo.class, "
                 + "getAnnotationVal = \"NULL\", "
-                + "getAnnotationsVals = {\"ExpectedBase\", \"ExpectedContainer\", \"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\"}, "
+                + "getAnnotationsVals = {\"ExpectedBase\", \"ExpectedContainer\", \"@FooContainer({@Foo(1), @Foo(2)})\"}, "
                 + "getDeclAnnosVals = {\"ExpectedBase\", \"ExpectedContainer\"}, "
                 + // ignores inherited annotations
                 "getDeclAnnoVal = \"NULL\", "
                 + // ignores inherited
-                "getAnnosArgs = {\"@Foo(value=1)\", \"@Foo(value=2)\"}, "
+                "getAnnosArgs = {\"@Foo(1)\", \"@Foo(2)\"}, "
                 + "getDeclAnnosArgs = {})", // ignores inherited
         "@ExpectedContainer(value=FooContainer.class, "
-                + "getAnnotationVal = \"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\", "
-                + "getAnnotationsVals = {\"ExpectedBase\", \"ExpectedContainer\", \"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\"}, "
+                + "getAnnotationVal = \"@FooContainer({@Foo(1), @Foo(2)})\", "
+                + "getAnnotationsVals = {\"ExpectedBase\", \"ExpectedContainer\", \"@FooContainer({@Foo(1), @Foo(2)})\"}, "
                 + "getDeclAnnosVals = { \"ExpectedBase\", \"ExpectedContainer\"}, "
                 + // ignores inherited annotations
                 "getDeclAnnoVal = \"NULL\", "
                 + // ignores inherited
-                "getAnnosArgs = {\"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\"}, "
+                "getAnnosArgs = {\"@FooContainer({@Foo(1), @Foo(2)})\"}, "
                 + "getDeclAnnosArgs = {})") { // ignores inherited
 
             @Override
@@ -1434,23 +1434,23 @@
         // fail with ordering issues
         SingleAnnoWithContainer(
         "@ExpectedBase(value=Foo.class, "
-                + "getAnnotationVal = \"@Foo(value=0)\", "
+                + "getAnnotationVal = \"@Foo(0)\", "
                 + "getAnnotationsVals = {"
-                +       "\"ExpectedBase\", \"ExpectedContainer\", \"@Foo(value=0)\", \"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\"},"
+                +       "\"ExpectedBase\", \"ExpectedContainer\", \"@Foo(0)\", \"@FooContainer({@Foo(1), @Foo(2)})\"},"
                 + "getDeclAnnosVals = {"
-                +       "\"ExpectedBase\", \"ExpectedContainer\", \"@Foo(value=0)\", \"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\"},"
-                + "getDeclAnnoVal = \"@Foo(value=0)\","
-                + "getAnnosArgs = {\"@Foo(value=0)\", \"@Foo(value=1)\", \"@Foo(value=2)\"},"
-                + "getDeclAnnosArgs = {\"@Foo(value=0)\", \"@Foo(value=1)\",\"@Foo(value=2)\"})",
+                +       "\"ExpectedBase\", \"ExpectedContainer\", \"@Foo(0)\", \"@FooContainer({@Foo(1), @Foo(2)})\"},"
+                + "getDeclAnnoVal = \"@Foo(0)\","
+                + "getAnnosArgs = {\"@Foo(0)\", \"@Foo(1)\", \"@Foo(2)\"},"
+                + "getDeclAnnosArgs = {\"@Foo(0)\", \"@Foo(1)\",\"@Foo(2)\"})",
         "@ExpectedContainer(value=FooContainer.class, "
-                + "getAnnotationVal = \"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\", "
+                + "getAnnotationVal = \"@FooContainer({@Foo(1), @Foo(2)})\", "
                 + "getAnnotationsVals = {"
-                +       "\"ExpectedBase\", \"ExpectedContainer\", \"@Foo(value=0)\", \"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\"},"
+                +       "\"ExpectedBase\", \"ExpectedContainer\", \"@Foo(0)\", \"@FooContainer({@Foo(1), @Foo(2)})\"},"
                 + "getDeclAnnosVals = {"
-                +       "\"ExpectedBase\", \"ExpectedContainer\", \"@Foo(value=0)\", \"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\"}, "
-                + "getDeclAnnoVal = \"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\","
-                + "getDeclAnnosArgs = {\"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\"},"
-                + "getAnnosArgs = {\"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\"})") {
+                +       "\"ExpectedBase\", \"ExpectedContainer\", \"@Foo(0)\", \"@FooContainer({@Foo(1), @Foo(2)})\"}, "
+                + "getDeclAnnoVal = \"@FooContainer({@Foo(1), @Foo(2)})\","
+                + "getDeclAnnosArgs = {\"@FooContainer({@Foo(1), @Foo(2)})\"},"
+                + "getAnnosArgs = {\"@FooContainer({@Foo(1), @Foo(2)})\"})") {
 
             @Override
             public Iterable<? extends JavaFileObject> getTestFiles(SrcType srcType,
@@ -1543,18 +1543,18 @@
         },
         AnnoOnSuperAndSubClass_Inherited(
         "@ExpectedBase(value=Foo.class, "
-                + "getAnnotationVal = \"@Foo(value=1)\", "
-                + "getAnnotationsVals = {\"ExpectedBase\", \"ExpectedContainer\", \"@Foo(value=1)\" }, "
+                + "getAnnotationVal = \"@Foo(1)\", "
+                + "getAnnotationsVals = {\"ExpectedBase\", \"ExpectedContainer\", \"@Foo(1)\" }, "
                 + // override every annotation on superClass
-                "getDeclAnnosVals = {\"ExpectedBase\", \"ExpectedContainer\", \"@Foo(value=1)\"}, "
+                "getDeclAnnosVals = {\"ExpectedBase\", \"ExpectedContainer\", \"@Foo(1)\"}, "
                 + // ignores inherited annotations
-                "getDeclAnnoVal = \"@Foo(value=1)\", " // ignores inherited
-                + "getAnnosArgs = {\"@Foo(value=1)\"}, "
-                + "getDeclAnnosArgs = { \"@Foo(value=1)\" })", // ignores inherited
+                "getDeclAnnoVal = \"@Foo(1)\", " // ignores inherited
+                + "getAnnosArgs = {\"@Foo(1)\"}, "
+                + "getDeclAnnosArgs = { \"@Foo(1)\" })", // ignores inherited
         "@ExpectedContainer(value=FooContainer.class, "
                 + "getAnnotationVal = \"NULL\", "
-                + "getAnnotationsVals = {\"ExpectedBase\", \"ExpectedContainer\", \"@Foo(value=1)\" }, "
-                + "getDeclAnnosVals = {\"ExpectedBase\", \"ExpectedContainer\", \"@Foo(value=1)\"}, "
+                + "getAnnotationsVals = {\"ExpectedBase\", \"ExpectedContainer\", \"@Foo(1)\" }, "
+                + "getDeclAnnosVals = {\"ExpectedBase\", \"ExpectedContainer\", \"@Foo(1)\"}, "
                 + // ignores inherited annotations
                 "getDeclAnnoVal = \"NULL\", " + // ignores inherited
                 "getAnnosArgs = {}, " + "getDeclAnnosArgs = {})") {
@@ -1622,23 +1622,23 @@
         // fail with ordering issues
         RepeatableOnSuperSingleOnSub_Inherited(
         "@ExpectedBase(value=Foo.class, "
-                + "getAnnotationVal = \"@Foo(value=3)\", "
+                + "getAnnotationVal = \"@Foo(3)\", "
                 + "getAnnotationsVals = {"
-                + "\"ExpectedBase\", \"ExpectedContainer\", \"@Foo(value=3)\", \"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\"}, "
+                + "\"ExpectedBase\", \"ExpectedContainer\", \"@Foo(3)\", \"@FooContainer({@Foo(1), @Foo(2)})\"}, "
                 + //override every annotation on superClass
-                "getDeclAnnosVals = {\"ExpectedBase\", \"ExpectedContainer\", \"@Foo(value=3)\"}, "
+                "getDeclAnnosVals = {\"ExpectedBase\", \"ExpectedContainer\", \"@Foo(3)\"}, "
                 + // ignores inherited annotations
-                "getDeclAnnoVal = \"@Foo(value=3)\", " // ignores inherited
-                + "getAnnosArgs = {\"@Foo(value=3)\"}, "
-                + "getDeclAnnosArgs = { \"@Foo(value=3)\" })", // ignores inherited
+                "getDeclAnnoVal = \"@Foo(3)\", " // ignores inherited
+                + "getAnnosArgs = {\"@Foo(3)\"}, "
+                + "getDeclAnnosArgs = { \"@Foo(3)\" })", // ignores inherited
         "@ExpectedContainer(value=FooContainer.class, "
-                + "getAnnotationVal = \"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\", "
+                + "getAnnotationVal = \"@FooContainer({@Foo(1), @Foo(2)})\", "
                 + "getAnnotationsVals = {"
-                + "\"ExpectedBase\", \"ExpectedContainer\", \"@Foo(value=3)\", \"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\"}, "
-                + "getDeclAnnosVals = {\"ExpectedBase\", \"ExpectedContainer\", \"@Foo(value=3)\"}, "
+                + "\"ExpectedBase\", \"ExpectedContainer\", \"@Foo(3)\", \"@FooContainer({@Foo(1), @Foo(2)})\"}, "
+                + "getDeclAnnosVals = {\"ExpectedBase\", \"ExpectedContainer\", \"@Foo(3)\"}, "
                 + // ignores inherited annotations
                 "getDeclAnnoVal = \"NULL\", "
-                + "getAnnosArgs = {\"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\"}, "
+                + "getAnnosArgs = {\"@FooContainer({@Foo(1), @Foo(2)})\"}, "
                 + "getDeclAnnosArgs = {}) // ignores inherited ") {
 
             @Override
@@ -1702,24 +1702,24 @@
         // fail with ordering issues
         SingleOnSuperRepeatableOnSub_Inherited(
         "@ExpectedBase(value=Foo.class, "
-                + "getAnnotationVal = \"@Foo(value=0)\", "
+                + "getAnnotationVal = \"@Foo(0)\", "
                 + "getAnnotationsVals = {"
-                + "\"ExpectedBase\", \"ExpectedContainer\", \"@Foo(value=0)\", \"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\"}, "
+                + "\"ExpectedBase\", \"ExpectedContainer\", \"@Foo(0)\", \"@FooContainer({@Foo(1), @Foo(2)})\"}, "
                 + //override every annotation on superClass
-                "getDeclAnnosVals = {\"ExpectedBase\", \"ExpectedContainer\", \"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\"}, "
+                "getDeclAnnosVals = {\"ExpectedBase\", \"ExpectedContainer\", \"@FooContainer({@Foo(1), @Foo(2)})\"}, "
                 + // ignores inherited annotations
                 "getDeclAnnoVal = \"NULL\","// ignores inherited
-                + "getAnnosArgs = {\"@Foo(value=1)\", \"@Foo(value=2)\"}, "
-                + "getDeclAnnosArgs = { \"@Foo(value=1)\", \"@Foo(value=2)\"})",
+                + "getAnnosArgs = {\"@Foo(1)\", \"@Foo(2)\"}, "
+                + "getDeclAnnosArgs = { \"@Foo(1)\", \"@Foo(2)\"})",
         "@ExpectedContainer(value=FooContainer.class, "
-                + "getAnnotationVal = \"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\", "
+                + "getAnnotationVal = \"@FooContainer({@Foo(1), @Foo(2)})\", "
                 + "getAnnotationsVals = {"
-                + "\"ExpectedBase\", \"ExpectedContainer\", \"@Foo(value=0)\", \"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\"}, "
-                + "getDeclAnnosVals = {\"ExpectedBase\", \"ExpectedContainer\", \"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\"}, "
+                + "\"ExpectedBase\", \"ExpectedContainer\", \"@Foo(0)\", \"@FooContainer({@Foo(1), @Foo(2)})\"}, "
+                + "getDeclAnnosVals = {\"ExpectedBase\", \"ExpectedContainer\", \"@FooContainer({@Foo(1), @Foo(2)})\"}, "
                 + // ignores inherited annotations
-                "getDeclAnnoVal = \"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\", "// ignores inherited
-                + "getAnnosArgs = {\"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\"}, "
-                + "getDeclAnnosArgs = {\"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\"})") {
+                "getDeclAnnoVal = \"@FooContainer({@Foo(1), @Foo(2)})\", "// ignores inherited
+                + "getAnnosArgs = {\"@FooContainer({@Foo(1), @Foo(2)})\"}, "
+                + "getDeclAnnosArgs = {\"@FooContainer({@Foo(1), @Foo(2)})\"})") {
 
             @Override
             public Iterable<? extends JavaFileObject> getTestFiles(SrcType srcType,
@@ -1783,20 +1783,20 @@
         // fail with ordering issues
         ContainerOnSuperSingleOnSub_Inherited(
         "@ExpectedBase(value=Foo.class, "
-                + "getAnnotationVal = \"@Foo(value=0)\", "
+                + "getAnnotationVal = \"@Foo(0)\", "
                 + "getAnnotationsVals = {"
-                + "\"ExpectedBase\", \"ExpectedContainer\", \"@Foo(value=0)\", \"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\"}, "
-                + "getDeclAnnosVals = {\"ExpectedBase\", \"ExpectedContainer\", \"@Foo(value=0)\"},"
-                + "getDeclAnnoVal = \"@Foo(value=0)\","
-                + "getAnnosArgs = {\"@Foo(value=0)\"},"
-                + "getDeclAnnosArgs = {\"@Foo(value=0)\"})",
+                + "\"ExpectedBase\", \"ExpectedContainer\", \"@Foo(0)\", \"@FooContainer({@Foo(1), @Foo(2)})\"}, "
+                + "getDeclAnnosVals = {\"ExpectedBase\", \"ExpectedContainer\", \"@Foo(0)\"},"
+                + "getDeclAnnoVal = \"@Foo(0)\","
+                + "getAnnosArgs = {\"@Foo(0)\"},"
+                + "getDeclAnnosArgs = {\"@Foo(0)\"})",
         "@ExpectedContainer(value=FooContainer.class, "
-                + "getAnnotationVal = \"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\", "
+                + "getAnnotationVal = \"@FooContainer({@Foo(1), @Foo(2)})\", "
                 + "getAnnotationsVals = {"
-                + "\"ExpectedBase\", \"ExpectedContainer\", \"@Foo(value=0)\", \"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\"}, "
-                + "getDeclAnnosVals = {\"ExpectedBase\", \"ExpectedContainer\", \"@Foo(value=0)\"},"
+                + "\"ExpectedBase\", \"ExpectedContainer\", \"@Foo(0)\", \"@FooContainer({@Foo(1), @Foo(2)})\"}, "
+                + "getDeclAnnosVals = {\"ExpectedBase\", \"ExpectedContainer\", \"@Foo(0)\"},"
                 + "getDeclAnnoVal = \"NULL\","
-                + "getAnnosArgs = {\"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\"},"
+                + "getAnnosArgs = {\"@FooContainer({@Foo(1), @Foo(2)})\"},"
                 + "getDeclAnnosArgs = {})") {
 
             @Override
@@ -1861,21 +1861,21 @@
         // fail with ordering issues
         SingleOnSuperContainerOnSub_Inherited(
         "@ExpectedBase(value=Foo.class, "
-                + "getAnnotationVal = \"@Foo(value=0)\", "
+                + "getAnnotationVal = \"@Foo(0)\", "
                 + "getAnnotationsVals = {"
-                + "\"ExpectedBase\", \"ExpectedContainer\", \"@Foo(value=0)\", \"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\"}, "
-                + "getDeclAnnosVals = {\"ExpectedBase\", \"ExpectedContainer\", \"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\"},"
+                + "\"ExpectedBase\", \"ExpectedContainer\", \"@Foo(0)\", \"@FooContainer({@Foo(1), @Foo(2)})\"}, "
+                + "getDeclAnnosVals = {\"ExpectedBase\", \"ExpectedContainer\", \"@FooContainer({@Foo(1), @Foo(2)})\"},"
                 + "getDeclAnnoVal = \"NULL\","
-                + "getAnnosArgs = {\"@Foo(value=1)\", \"@Foo(value=2)\"},"
-                + "getDeclAnnosArgs = {\"@Foo(value=1)\", \"@Foo(value=2)\"})",
+                + "getAnnosArgs = {\"@Foo(1)\", \"@Foo(2)\"},"
+                + "getDeclAnnosArgs = {\"@Foo(1)\", \"@Foo(2)\"})",
         "@ExpectedContainer(value=FooContainer.class, "
-                + "getAnnotationVal = \"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\", "
+                + "getAnnotationVal = \"@FooContainer({@Foo(1), @Foo(2)})\", "
                 + "getAnnotationsVals = {"
-                + "\"ExpectedBase\", \"ExpectedContainer\", \"@Foo(value=0)\", \"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\"}, "
-                + "getDeclAnnosVals = {\"ExpectedBase\", \"ExpectedContainer\", \"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\"},"
-                + "getDeclAnnoVal = \"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\","
-                + "getAnnosArgs = {\"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\"},"
-                + "getDeclAnnosArgs = {\"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\"})") {
+                + "\"ExpectedBase\", \"ExpectedContainer\", \"@Foo(0)\", \"@FooContainer({@Foo(1), @Foo(2)})\"}, "
+                + "getDeclAnnosVals = {\"ExpectedBase\", \"ExpectedContainer\", \"@FooContainer({@Foo(1), @Foo(2)})\"},"
+                + "getDeclAnnoVal = \"@FooContainer({@Foo(1), @Foo(2)})\","
+                + "getAnnosArgs = {\"@FooContainer({@Foo(1), @Foo(2)})\"},"
+                + "getDeclAnnosArgs = {\"@FooContainer({@Foo(1), @Foo(2)})\"})") {
 
             @Override
             public Iterable<? extends JavaFileObject> getTestFiles(SrcType srcType,
@@ -1939,23 +1939,23 @@
         // fail with ordering issues
         SingleOnSuperContainerAndSingleOnSub_Inherited(
         "@ExpectedBase(value=Foo.class, "
-                + "getAnnotationVal = \"@Foo(value=3)\", "
+                + "getAnnotationVal = \"@Foo(3)\", "
                 + "getAnnotationsVals = {"
-                +       "\"ExpectedBase\", \"ExpectedContainer\", \"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\", \"@Foo(value=3)\"}, "
+                +       "\"ExpectedBase\", \"ExpectedContainer\", \"@FooContainer({@Foo(1), @Foo(2)})\", \"@Foo(3)\"}, "
                 + "getDeclAnnosVals = {"
-                +       "\"ExpectedBase\", \"ExpectedContainer\", \"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\", \"@Foo(value=3)\"},"
-                + "getDeclAnnoVal = \"@Foo(value=3)\","
-                + "getAnnosArgs = {\"@Foo(value=1)\", \"@Foo(value=2)\", \"@Foo(value=3)\"},"
-                + "getDeclAnnosArgs = {\"@Foo(value=1)\", \"@Foo(value=2)\", \"@Foo(value=3)\"})",
+                +       "\"ExpectedBase\", \"ExpectedContainer\", \"@FooContainer({@Foo(1), @Foo(2)})\", \"@Foo(3)\"},"
+                + "getDeclAnnoVal = \"@Foo(3)\","
+                + "getAnnosArgs = {\"@Foo(1)\", \"@Foo(2)\", \"@Foo(3)\"},"
+                + "getDeclAnnosArgs = {\"@Foo(1)\", \"@Foo(2)\", \"@Foo(3)\"})",
         "@ExpectedContainer(value=FooContainer.class, "
-                + "getAnnotationVal = \"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\", "
+                + "getAnnotationVal = \"@FooContainer({@Foo(1), @Foo(2)})\", "
                 + "getAnnotationsVals = {"
-                +       "\"ExpectedBase\", \"ExpectedContainer\", \"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\", \"@Foo(value=3)\"}, "
+                +       "\"ExpectedBase\", \"ExpectedContainer\", \"@FooContainer({@Foo(1), @Foo(2)})\", \"@Foo(3)\"}, "
                 + "getDeclAnnosVals = {"
-                +       "\"ExpectedBase\", \"ExpectedContainer\", \"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\", \"@Foo(value=3)\"},"
-                + "getDeclAnnoVal = \"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\","
-                + "getAnnosArgs = {\"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\"},"
-                + "getDeclAnnosArgs = {\"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\"})") {
+                +       "\"ExpectedBase\", \"ExpectedContainer\", \"@FooContainer({@Foo(1), @Foo(2)})\", \"@Foo(3)\"},"
+                + "getDeclAnnoVal = \"@FooContainer({@Foo(1), @Foo(2)})\","
+                + "getAnnosArgs = {\"@FooContainer({@Foo(1), @Foo(2)})\"},"
+                + "getDeclAnnosArgs = {\"@FooContainer({@Foo(1), @Foo(2)})\"})") {
 
             @Override
             public Iterable<? extends JavaFileObject> getTestFiles(SrcType srcType,
@@ -2019,20 +2019,20 @@
         // fail with ordering issues
         ContainerAndSingleOnSuperSingleOnSub_Inherited(
         "@ExpectedBase(value=Foo.class, "
-                + "getAnnotationVal = \"@Foo(value=0)\", "
+                + "getAnnotationVal = \"@Foo(0)\", "
                 + "getAnnotationsVals = {"
-                + "\"ExpectedBase\", \"ExpectedContainer\", \"@Foo(value=0)\", \"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\"}, "
-                + "getDeclAnnosVals = {\"ExpectedBase\", \"ExpectedContainer\", \"@Foo(value=0)\"},"
-                + "getDeclAnnoVal = \"@Foo(value=0)\","
-                + "getAnnosArgs = {\"@Foo(value=0)\"},"
-                + "getDeclAnnosArgs = {\"@Foo(value=0)\"})",
+                + "\"ExpectedBase\", \"ExpectedContainer\", \"@Foo(0)\", \"@FooContainer({@Foo(1), @Foo(2)})\"}, "
+                + "getDeclAnnosVals = {\"ExpectedBase\", \"ExpectedContainer\", \"@Foo(0)\"},"
+                + "getDeclAnnoVal = \"@Foo(0)\","
+                + "getAnnosArgs = {\"@Foo(0)\"},"
+                + "getDeclAnnosArgs = {\"@Foo(0)\"})",
         "@ExpectedContainer(value=FooContainer.class, "
-                + "getAnnotationVal = \"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\", "
+                + "getAnnotationVal = \"@FooContainer({@Foo(1), @Foo(2)})\", "
                 + "getAnnotationsVals = {"
-                + "\"ExpectedBase\", \"ExpectedContainer\", \"@Foo(value=0)\", \"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\"}, "
-                + "getDeclAnnosVals = {\"ExpectedBase\", \"ExpectedContainer\", \"@Foo(value=0)\"},"
+                + "\"ExpectedBase\", \"ExpectedContainer\", \"@Foo(0)\", \"@FooContainer({@Foo(1), @Foo(2)})\"}, "
+                + "getDeclAnnosVals = {\"ExpectedBase\", \"ExpectedContainer\", \"@Foo(0)\"},"
                 + "getDeclAnnoVal = \"NULL\","
-                + "getAnnosArgs = {\"@FooContainer(value={@Foo(value=1), @Foo(value=2)})\"},"
+                + "getAnnosArgs = {\"@FooContainer({@Foo(1), @Foo(2)})\"},"
                 + "getDeclAnnosArgs = {})") {
 
             @Override
--- a/test/langtools/tools/javac/annotations/typeAnnotations/classfile/AnonymousExtendsTest.java	Thu Jun 13 11:21:50 2019 -0700
+++ b/test/langtools/tools/javac/annotations/typeAnnotations/classfile/AnonymousExtendsTest.java	Thu Jun 13 11:50:45 2019 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2016, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2016, 2019, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -52,10 +52,10 @@
 
     public void testIt() {
         checkAnnotations(TestClass.class.getAnnotatedSuperclass(),
-              "[@AnonymousExtendsTest$TA(value=1)],[@AnonymousExtendsTest$TA(value=2)]");
+              "[@AnonymousExtendsTest$TA(1)],[@AnonymousExtendsTest$TA(2)]");
         checkAnnotations(new @TA(3) ArrayList<@TA(4) List<Number>>() {
                          }.getClass().getAnnotatedSuperclass(),
-              "[@AnonymousExtendsTest$TA(value=3)],[@AnonymousExtendsTest$TA(value=4)]");
+              "[@AnonymousExtendsTest$TA(3)],[@AnonymousExtendsTest$TA(4)]");
     }
 
     public void checkAnnotations(AnnotatedType type, String expected) {
@@ -74,4 +74,4 @@
     public static void main(String[] args) {
         new AnonymousExtendsTest().testIt();
     }
-}
\ No newline at end of file
+}
--- a/test/langtools/tools/javac/modules/AnnotationsOnModules.java	Thu Jun 13 11:21:50 2019 -0700
+++ b/test/langtools/tools/javac/modules/AnnotationsOnModules.java	Thu Jun 13 11:50:45 2019 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2016, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2016, 2019, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -609,11 +609,11 @@
             new TestCase("package test; public enum E {A, B;}",
                          "public E value();",
                          "test.E.A",
-                         "@test.A(test.E.A)"),
+                         "@test.A(A)"),
             new TestCase("package test; public enum E {A, B;}",
                          "public E[] value();",
                          "{test.E.A, test.E.B}",
-                         "@test.A({test.E.A, test.E.B})"),
+                         "@test.A({A, B})"),
             new TestCase("package test; public class Extra {}",
                          "public Class value();",
                          "test.Extra.class",
@@ -641,7 +641,7 @@
             new TestCase("package test; public enum E {A;}",
                         "int integer(); boolean flag(); double value(); String string(); E enumeration(); ",
                         "enumeration = test.E.A, integer = 42, flag = true, value = 3.5, string = \"Text\"",
-                        "@test.A(enumeration=test.E.A, integer=42, flag=true, value=3.5, string=\"Text\")"),
+                        "@test.A(enumeration=A, integer=42, flag=true, value=3.5, string=\"Text\")"),
         };
 
         Path extraSrc = base.resolve("extra-src");
--- a/test/langtools/tools/javac/processing/messager/6388543/T6388543.out	Thu Jun 13 11:21:50 2019 -0700
+++ b/test/langtools/tools/javac/processing/messager/6388543/T6388543.out	Thu Jun 13 11:50:45 2019 -0700
@@ -7,9 +7,9 @@
 T6388543.java:33:16: compiler.note.proc.messager: note:value @A({4, 5}) + {4, 5}
 T6388543.java:33:17: compiler.note.proc.messager: note:value @A({4, 5}) + 4
 T6388543.java:33:20: compiler.note.proc.messager: note:value @A({4, 5}) + 5
-T6388543.java:36:12: compiler.note.proc.messager: note:value @B(x=@C(x=E.ONE, y=E.TWO), y=@C(x=E.ONE, y=E.TWO)) + @C(x=E.ONE, y=E.TWO)
-T6388543.java:36:20: compiler.note.proc.messager: note:value @B(x=@C(x=E.ONE, y=E.TWO), y=@C(x=E.ONE, y=E.TWO)) + E.ONE
-T6388543.java:36:31: compiler.note.proc.messager: note:value @B(x=@C(x=E.ONE, y=E.TWO), y=@C(x=E.ONE, y=E.TWO)) + E.TWO
-T6388543.java:36:42: compiler.note.proc.messager: note:value @B(x=@C(x=E.ONE, y=E.TWO), y=@C(x=E.ONE, y=E.TWO)) + @C(x=E.ONE, y=E.TWO)
-T6388543.java:36:50: compiler.note.proc.messager: note:value @B(x=@C(x=E.ONE, y=E.TWO), y=@C(x=E.ONE, y=E.TWO)) + E.ONE
-T6388543.java:36:61: compiler.note.proc.messager: note:value @B(x=@C(x=E.ONE, y=E.TWO), y=@C(x=E.ONE, y=E.TWO)) + E.TWO
+T6388543.java:36:12: compiler.note.proc.messager: note:value @B(x=@C(x=ONE, y=TWO), y=@C(x=ONE, y=TWO)) + @C(x=ONE, y=TWO)
+T6388543.java:36:20: compiler.note.proc.messager: note:value @B(x=@C(x=ONE, y=TWO), y=@C(x=ONE, y=TWO)) + ONE
+T6388543.java:36:31: compiler.note.proc.messager: note:value @B(x=@C(x=ONE, y=TWO), y=@C(x=ONE, y=TWO)) + TWO
+T6388543.java:36:42: compiler.note.proc.messager: note:value @B(x=@C(x=ONE, y=TWO), y=@C(x=ONE, y=TWO)) + @C(x=ONE, y=TWO)
+T6388543.java:36:50: compiler.note.proc.messager: note:value @B(x=@C(x=ONE, y=TWO), y=@C(x=ONE, y=TWO)) + ONE
+T6388543.java:36:61: compiler.note.proc.messager: note:value @B(x=@C(x=ONE, y=TWO), y=@C(x=ONE, y=TWO)) + TWO
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test/langtools/tools/javac/processing/model/element/AnnotationToStringTest.java	Thu Jun 13 11:50:45 2019 -0700
@@ -0,0 +1,405 @@
+/*
+ * Copyright (c) 2016, 2019, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+/*
+ * @test
+ * @bug 8164819
+ * @summary Test of toString on normal annotations
+ * @library /tools/javac/lib
+ * @build   JavacTestingAbstractProcessor AnnotationToStringTest
+ * @compile -processor AnnotationToStringTest -proc:only AnnotationToStringTest.java
+ */
+
+// See also the sibling core reflection test
+// test/jdk/java/lang/annotation/AnnotationToStringTest.java
+
+import java.lang.annotation.*;
+import java.lang.reflect.*;
+import java.util.*;
+import javax.annotation.processing.*;
+import javax.lang.model.AnnotatedConstruct;
+import javax.lang.model.element.*;
+import javax.lang.model.util.*;
+
+/**
+ * The expected string values are stored in @ExpectedString
+ * annotations. The essence of the test is comparing the toString()
+ * result of annotations to the corresponding ExpectedString.value().
+ *
+ * Two flavors of comparison are made:
+ *
+ * 1) Against the AnnotationMirror value from getAnnotationMirrors()
+ *
+ * 2) Against the *Annotation* from getAnnotation(Class<A>)
+ *
+ * These have separate but related implementations.
+ */
+public class AnnotationToStringTest extends JavacTestingAbstractProcessor {
+    public boolean process(Set<? extends TypeElement> annotations,
+                           RoundEnvironment roundEnv) {
+        if (!roundEnv.processingOver()) {
+
+            int failures = 0;
+
+            TypeElement primHostElt =
+                Objects.requireNonNull(elements.getTypeElement("AnnotationToStringTest.PrimHost"));
+
+            List<? extends AnnotationMirror> annotMirrors = primHostElt.getAnnotationMirrors();
+
+            String expectedString = primHostElt.getAnnotation(MostlyPrimitive.class).toString();
+
+            failures += check(expectedString,
+                              primHostElt.getAnnotation(ExpectedString.class).value());
+
+            failures += check(expectedString,
+                              retrieveAnnotationMirrorAsString(primHostElt,
+                                                               "MostlyPrimitive"));
+            failures += classyTest();
+            failures += arrayAnnotationTest();
+
+            if (failures > 0)
+                throw new RuntimeException(failures + " failures");
+        }
+        return true;
+    }
+
+    /**
+     * Examine annotation mirrors, find the one that matches
+     * annotationName, and return its toString value.
+     */
+    private String retrieveAnnotationMirrorAsString(AnnotatedConstruct annotated,
+                                                    String annotationName) {
+        return retrieveAnnotationMirror(annotated, annotationName).toString();
+    }
+
+    private String retrieveAnnotationMirrorValue(AnnotatedConstruct annotated,
+                                                 String annotationName) {
+        AnnotationMirror annotationMirror =
+            retrieveAnnotationMirror(annotated, annotationName);
+        for (var entry : annotationMirror.getElementValues().entrySet()) {
+            if (entry.getKey().getSimpleName().contentEquals("value")) {
+                return entry.getValue().toString();
+            }
+        }
+        throw new RuntimeException("Annotation value() method not found: " +
+                                   annotationMirror.toString());
+    }
+
+    private AnnotationMirror retrieveAnnotationMirror(AnnotatedConstruct annotated,
+                                                      String annotationName) {
+        for (AnnotationMirror annotationMirror : annotated.getAnnotationMirrors()) {
+            System.out.println(annotationMirror.getAnnotationType());
+            if (annotationMirror
+                .getAnnotationType()
+                .toString()
+                .equals(annotationName) ) {
+                return annotationMirror;
+            }
+        }
+        throw new RuntimeException("Annotation " + annotationName + " not found.");
+    }
+
+    private static int check(String expected, String actual) {
+        if (!expected.equals(actual)) {
+            System.err.printf("ERROR: Expected ''%s'';%ngot             ''%s''.\n",
+                              expected, actual);
+            return 1;
+        } else
+            return 0;
+    }
+
+    @ExpectedString(
+        "@MostlyPrimitive(c0='a', "+
+        "c1='\\'', " +
+        "b0=(byte)0x01, " +
+        "i0=1, " +
+        "i1=2, " +
+        "f0=1.0f, " +
+        "f1=0.0f/0.0f, " +
+        "d0=0.0, " +
+        "d1=1.0/0.0, " +
+        "l0=5L, " +
+        "l1=9223372036854775807L, " +
+        "l2=-9223372036854775808L, " +
+        "l3=-2147483648L, " +
+        "s0=\"Hello world.\", " +
+        "s1=\"a\\\"b\", " +
+        "class0=Obj[].class, " +
+        "classArray={Obj[].class})")
+    @MostlyPrimitive(
+        c0='a',
+        c1='\'',
+        b0=1,
+        i0=1,
+        i1=2,
+        f0=1.0f,
+        f1=Float.NaN,
+        d0=0.0,
+        d1=2.0/0.0,
+        l0=5,
+        l1=Long.MAX_VALUE,
+        l2=Long.MIN_VALUE,
+        l3=Integer.MIN_VALUE,
+        s0="Hello world.",
+        s1="a\"b",
+        class0=Obj[].class,
+        classArray={Obj[].class}
+    )
+    static class PrimHost{}
+
+    private int classyTest() {
+        int failures = 0;
+
+        TypeElement annotationHostElt =
+            Objects.requireNonNull(elements.getTypeElement("AnnotationToStringTest.AnnotationHost"));
+
+        for (VariableElement f : ElementFilter.fieldsIn(annotationHostElt.getEnclosedElements())) {
+            String expected = f.getAnnotation(ExpectedString.class).value();
+            Annotation a = f.getAnnotation(Classy.class);
+
+            System.out.println(a);
+            failures += check(expected, a.toString());
+
+            failures += check(expected,
+                              retrieveAnnotationMirrorAsString(f, "Classy") );
+        }
+        return failures;
+    }
+
+    static class AnnotationHost {
+        @ExpectedString(
+       "@Classy(Obj.class)")
+        @Classy(Obj.class)
+        public int f0;
+
+        @ExpectedString(
+       "@Classy(Obj[].class)")
+        @Classy(Obj[].class)
+        public int f1;
+
+        @ExpectedString(
+       "@Classy(Obj[][].class)")
+        @Classy(Obj[][].class)
+        public int f2;
+
+        @ExpectedString(
+       "@Classy(Obj[][][].class)")
+        @Classy(Obj[][][].class)
+        public int f3;
+
+        @ExpectedString(
+       "@Classy(int.class)")
+        @Classy(int.class)
+        public int f4;
+
+        @ExpectedString(
+       "@Classy(int[][][].class)")
+        @Classy(int[][][].class)
+        public int f5;
+    }
+
+    /**
+     * Each field should have two annotations, the first being
+     * @ExpectedString and the second the annotation under test.
+     */
+    private int arrayAnnotationTest() {
+        int failures = 0;
+
+        TypeElement arrayAnnotationHostElt =
+            Objects.requireNonNull(elements
+                                   .getTypeElement("AnnotationToStringTest.ArrayAnnotationHost"));
+
+        for (VariableElement f :
+                 ElementFilter.fieldsIn(arrayAnnotationHostElt.getEnclosedElements())) {
+            var annotations = f.getAnnotationMirrors();
+            // String expected = retrieveAnnotationMirrorValue(f, "ExpectedString");
+            String expected = f.getAnnotation(ExpectedString.class).value();
+
+            // Problem with
+            // Need a de-quote method...
+            // expected = expected.substring(1, expected.length() - 1);
+
+              failures +=
+                  check(expected,
+                        annotations.get(1).toString());
+
+            // Get the array-valued annotation as an annotation
+              failures +=
+                  check(expected,
+                        retrieveAnnotationMirrorAsString(f,
+                                                         annotations.get(1)
+                                                         .getAnnotationType().toString()));
+        }
+        return failures;
+    }
+
+    static class ArrayAnnotationHost {
+        @ExpectedString(
+       "@BooleanArray({true, false, true})")
+        @BooleanArray({true, false, true})
+        public boolean[]   f0;
+
+        @ExpectedString(
+       "@FloatArray({3.0f, 4.0f, 0.0f/0.0f, -1.0f/0.0f, 1.0f/0.0f})")
+        @FloatArray({3.0f, 4.0f, Float.NaN, Float.NEGATIVE_INFINITY, Float.POSITIVE_INFINITY})
+        public float[]     f1;
+
+        @ExpectedString(
+       "@DoubleArray({1.0, 2.0, 0.0/0.0, 1.0/0.0, -1.0/0.0})")
+        @DoubleArray({1.0, 2.0, Double.NaN, Double.POSITIVE_INFINITY, Double.NEGATIVE_INFINITY,})
+        public double[]    f2;
+
+
+        @ExpectedString(
+       "@ByteArray({(byte)0x0a, (byte)0x0b, (byte)0x0c})")
+        @ByteArray({10, 11, 12})
+        public byte[]      f3;
+
+        @ExpectedString(
+       "@ShortArray({0, 4, 5})")
+        @ShortArray({0, 4, 5})
+        public short[]     f4;
+
+        @ExpectedString(
+       "@CharArray({'a', 'b', 'c', '\\''})")
+        @CharArray({'a', 'b', 'c', '\''})
+        public char[]      f5;
+
+        @ExpectedString(
+       "@IntArray({1})")
+        @IntArray({1})
+        public int[]       f6;
+
+        @ExpectedString(
+       "@LongArray({-9223372036854775808L, -2147483649L, -2147483648L," +
+                " -2147483647L, 2147483648L, 9223372036854775807L})")
+        @LongArray({Long.MIN_VALUE, Integer.MIN_VALUE-1L, Integer.MIN_VALUE,
+                -Integer.MAX_VALUE, Integer.MAX_VALUE+1L, Long.MAX_VALUE})
+        public long[]      f7;
+
+        @ExpectedString(
+       "@StringArray({\"A\", \"B\", \"C\", \"\\\"Quote\\\"\"})")
+        @StringArray({"A", "B", "C", "\"Quote\""})
+        public String[]    f8;
+
+        @ExpectedString(
+       "@ClassArray({int.class, Obj[].class})")
+        @ClassArray({int.class, Obj[].class})
+        public Class<?>[]  f9;
+
+        @ExpectedString(
+       "@EnumArray({SOURCE})")
+        @EnumArray({RetentionPolicy.SOURCE})
+        public RetentionPolicy[]  f10;
+    }
+}
+
+// ------------ Supporting types ------------
+
+class Obj {}
+
+@Retention(RetentionPolicy.RUNTIME)
+@interface ExpectedString {
+    String value();
+}
+
+@Retention(RetentionPolicy.RUNTIME)
+@interface Classy {
+    Class<?> value();
+}
+
+@Retention(RetentionPolicy.RUNTIME)
+@interface BooleanArray {
+    boolean[] value();
+}
+
+@Retention(RetentionPolicy.RUNTIME)
+@interface FloatArray {
+    float[] value();
+}
+
+@Retention(RetentionPolicy.RUNTIME)
+@interface DoubleArray {
+    double[] value();
+}
+
+@Retention(RetentionPolicy.RUNTIME)
+@interface ByteArray {
+    byte[] value();
+}
+
+@Retention(RetentionPolicy.RUNTIME)
+@interface ShortArray {
+    short[] value();
+}
+
+@Retention(RetentionPolicy.RUNTIME)
+@interface CharArray {
+    char[] value();
+}
+
+@Retention(RetentionPolicy.RUNTIME)
+@interface IntArray {
+    int[] value();
+}
+
+@Retention(RetentionPolicy.RUNTIME)
+@interface LongArray {
+    long[] value();
+}
+
+@Retention(RetentionPolicy.RUNTIME)
+@interface ClassArray {
+    Class<?>[] value() default {int.class, Obj[].class};
+}
+
+@Retention(RetentionPolicy.RUNTIME)
+@interface StringArray {
+    String[] value();
+}
+
+@Retention(RetentionPolicy.RUNTIME)
+@interface EnumArray {
+    RetentionPolicy[] value();
+}
+
+@Retention(RetentionPolicy.RUNTIME)
+@interface MostlyPrimitive {
+    char   c0();
+    char   c1();
+    byte   b0();
+    int    i0();
+    int    i1();
+    float  f0();
+    float  f1();
+    double d0();
+    double d1();
+    long   l0();
+    long   l1();
+    long   l2();
+    long   l3();
+    String s0();
+    String s1();
+    Class<?> class0();
+    Class<?>[] classArray();
+}
--- a/test/langtools/tools/javac/processing/model/element/repeatingAnnotations/MixRepeatableAndOfficialContainerBasicTest.java	Thu Jun 13 11:21:50 2019 -0700
+++ b/test/langtools/tools/javac/processing/model/element/repeatingAnnotations/MixRepeatableAndOfficialContainerBasicTest.java	Thu Jun 13 11:50:45 2019 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, 2016, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2019, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -37,11 +37,11 @@
 
 @ExpectedBase(
         value = Bar.class,
-        getAnnotation = "@Bar(value=0)",
+        getAnnotation = "@Bar(0)",
         getAnnotationsByType = {
-            "@Bar(value=0)",
-            "@Bar(value=1)",
-            "@Bar(value=2)"
+            "@Bar(0)",
+            "@Bar(1)",
+            "@Bar(2)"
         },
         getAllAnnotationMirrors = {
             "@Bar(0)",
@@ -57,19 +57,19 @@
         })
 @ExpectedContainer(
         value = BarContainer.class,
-        getAnnotation = "@BarContainer(value={@Bar(value=1), @Bar(value=2)})",
-        getAnnotationsByType = {"@BarContainer(value={@Bar(value=1), @Bar(value=2)})"})
+        getAnnotation = "@BarContainer({@Bar(1), @Bar(2)})",
+        getAnnotationsByType = {"@BarContainer({@Bar(1), @Bar(2)})"})
 @Bar(value = 0)
 @BarContainer(value = {@Bar(value = 1), @Bar(value = 2)})
 class MixRepeatableAndOfficialContainerBasicTest {
 
     @ExpectedBase(
             value = Bar.class,
-            getAnnotation = "@Bar(value=0)",
+            getAnnotation = "@Bar(0)",
             getAnnotationsByType = {
-                "@Bar(value=0)",
-                "@Bar(value=1)",
-                "@Bar(value=2)"
+                "@Bar(0)",
+                "@Bar(1)",
+                "@Bar(2)"
             },
             getAllAnnotationMirrors = {
                 "@Bar(0)",
@@ -85,19 +85,19 @@
             })
     @ExpectedContainer(
             value = BarContainer.class,
-            getAnnotation = "@BarContainer(value={@Bar(value=1), @Bar(value=2)})",
-            getAnnotationsByType = {"@BarContainer(value={@Bar(value=1), @Bar(value=2)})"})
+            getAnnotation = "@BarContainer({@Bar(1), @Bar(2)})",
+            getAnnotationsByType = {"@BarContainer({@Bar(1), @Bar(2)})"})
     @Bar(value = 0)
     @BarContainer(value = {@Bar(value = 1), @Bar(value = 2)})
     int testField = 0;
 
     @ExpectedBase(
             value = Bar.class,
-            getAnnotation = "@Bar(value=0)",
+            getAnnotation = "@Bar(0)",
             getAnnotationsByType = {
-                "@Bar(value=0)",
-                "@Bar(value=1)",
-                "@Bar(value=2)"
+                "@Bar(0)",
+                "@Bar(1)",
+                "@Bar(2)"
             },
             getAllAnnotationMirrors = {
                 "@Bar(0)",
@@ -113,8 +113,8 @@
             })
     @ExpectedContainer(
             value = BarContainer.class,
-            getAnnotation = "@BarContainer(value={@Bar(value=1), @Bar(value=2)})",
-            getAnnotationsByType = {"@BarContainer(value={@Bar(value=1), @Bar(value=2)})"})
+            getAnnotation = "@BarContainer({@Bar(1), @Bar(2)})",
+            getAnnotationsByType = {"@BarContainer({@Bar(1), @Bar(2)})"})
     @Bar(value = 0)
     @BarContainer(value = {@Bar(value = 1), @Bar(value = 2)})
     void testMethod() {}
--- a/test/langtools/tools/javac/processing/model/element/repeatingAnnotations/MixRepeatableAndOfficialContainerInheritedA1Test.java	Thu Jun 13 11:21:50 2019 -0700
+++ b/test/langtools/tools/javac/processing/model/element/repeatingAnnotations/MixRepeatableAndOfficialContainerInheritedA1Test.java	Thu Jun 13 11:50:45 2019 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, 2016, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2019, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -35,15 +35,15 @@
  * MixRepeatableAndOfficialContainerInheritedA1Test.java
  */
 
-@BarInherited(value = 0)
+@BarInherited(0)
 class E {}
 
 @ExpectedBase(
         value = BarInherited.class,
-        getAnnotation = "@BarInherited(value=0)",
+        getAnnotation = "@BarInherited(0)",
         getAnnotationsByType = {
-            "@BarInherited(value=1)",
-            "@BarInherited(value=2)"
+            "@BarInherited(1)",
+            "@BarInherited(2)"
         },
         getAllAnnotationMirrors = {
             "@BarInherited(0)",
@@ -59,8 +59,8 @@
 @ExpectedContainer(
         value = BarInheritedContainer.class,
         getAnnotation = "@BarInheritedContainer("
-        + "value={@BarInherited(value=1), @BarInherited(value=2)})",
+        + "{@BarInherited(1), @BarInherited(2)})",
         getAnnotationsByType = {"@BarInheritedContainer("
-                + "value={@BarInherited(value=1), @BarInherited(value=2)})"})
-@BarInheritedContainer(value = {@BarInherited(value = 1), @BarInherited(value = 2)})
+                + "{@BarInherited(1), @BarInherited(2)})"})
+@BarInheritedContainer({@BarInherited(1), @BarInherited(2)})
 class MixRepeatableAndOfficialContainerInheritedA1Test extends E {}
--- a/test/langtools/tools/javac/processing/model/element/repeatingAnnotations/MixRepeatableAndOfficialContainerInheritedA2Test.java	Thu Jun 13 11:21:50 2019 -0700
+++ b/test/langtools/tools/javac/processing/model/element/repeatingAnnotations/MixRepeatableAndOfficialContainerInheritedA2Test.java	Thu Jun 13 11:50:45 2019 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, 2016, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2019, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -35,16 +35,16 @@
  * MixRepeatableAndOfficialContainerInheritedA2Test.java
  */
 
-@BarInherited(value = 0)
+@BarInherited(0)
 class N {}
 
 @ExpectedBase(
         value = BarInherited.class,
-        getAnnotation = "@BarInherited(value=3)",
+        getAnnotation = "@BarInherited(3)",
         getAnnotationsByType = {
-            "@BarInherited(value=1)",
-            "@BarInherited(value=2)",
-            "@BarInherited(value=3)"
+            "@BarInherited(1)",
+            "@BarInherited(2)",
+            "@BarInherited(3)"
         },
         getAllAnnotationMirrors = {
             "@BarInherited(3)",
@@ -61,9 +61,9 @@
 @ExpectedContainer(
         value = BarInheritedContainer.class,
         getAnnotation = "@BarInheritedContainer("
-        + "value={@BarInherited(value=1), @BarInherited(value=2)})",
+        + "{@BarInherited(1), @BarInherited(2)})",
         getAnnotationsByType = {"@BarInheritedContainer("
-                + "value={@BarInherited(value=1), @BarInherited(value=2)})"})
-@BarInheritedContainer(value = {@BarInherited(value = 1), @BarInherited(value = 2)})
-@BarInherited(value = 3)
+                + "{@BarInherited(1), @BarInherited(2)})"})
+@BarInheritedContainer({@BarInherited(1), @BarInherited(2)})
+@BarInherited(3)
 class MixRepeatableAndOfficialContainerInheritedA2Test extends N {}
--- a/test/langtools/tools/javac/processing/model/element/repeatingAnnotations/MixRepeatableAndOfficialContainerInheritedB1Test.java	Thu Jun 13 11:21:50 2019 -0700
+++ b/test/langtools/tools/javac/processing/model/element/repeatingAnnotations/MixRepeatableAndOfficialContainerInheritedB1Test.java	Thu Jun 13 11:50:45 2019 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, 2016, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2019, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -40,8 +40,8 @@
 
 @ExpectedBase(
         value = BarInherited.class,
-        getAnnotation = "@BarInherited(value=0)",
-        getAnnotationsByType = {"@BarInherited(value=0)"},
+        getAnnotation = "@BarInherited(0)",
+        getAnnotationsByType = {"@BarInherited(0)"},
         getAllAnnotationMirrors = {
             "@BarInherited(0)",
             "@BarInheritedContainer({@BarInherited(1), @BarInherited(2)})",
@@ -56,8 +56,8 @@
 @ExpectedContainer(
         value = BarInheritedContainer.class,
         getAnnotation = "@BarInheritedContainer("
-        + "value={@BarInherited(value=1), @BarInherited(value=2)})",
+        + "{@BarInherited(1), @BarInherited(2)})",
         getAnnotationsByType = {"@BarInheritedContainer("
-                + "value={@BarInherited(value=1), @BarInherited(value=2)})"})
-@BarInherited(value = 0)
+                + "{@BarInherited(1), @BarInherited(2)})"})
+@BarInherited(0)
 class MixRepeatableAndOfficialContainerInheritedB1Test extends M {}
--- a/test/langtools/tools/javac/processing/model/element/repeatingAnnotations/MixRepeatableAndOfficialContainerInheritedB2Test.java	Thu Jun 13 11:21:50 2019 -0700
+++ b/test/langtools/tools/javac/processing/model/element/repeatingAnnotations/MixRepeatableAndOfficialContainerInheritedB2Test.java	Thu Jun 13 11:50:45 2019 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, 2016, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2019, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -35,14 +35,14 @@
  * MixRepeatableAndOfficialContainerInheritedB2Test.java
  */
 
-@BarInheritedContainer(value = {@BarInherited(value = 1), @BarInherited(value = 2)})
-@BarInherited(value = 3)
+@BarInheritedContainer({@BarInherited(1), @BarInherited(2)})
+@BarInherited(3)
 class H {}
 
 @ExpectedBase(
         value = BarInherited.class,
-        getAnnotation = "@BarInherited(value=0)",
-        getAnnotationsByType = {"@BarInherited(value=0)"},
+        getAnnotation = "@BarInherited(0)",
+        getAnnotationsByType = {"@BarInherited(0)"},
         getAllAnnotationMirrors = {
             "@BarInherited(0)",
             "@BarInheritedContainer({@BarInherited(1), @BarInherited(2)})",
@@ -57,8 +57,8 @@
 @ExpectedContainer(
         value = BarInheritedContainer.class,
         getAnnotation = "@BarInheritedContainer("
-        + "value={@BarInherited(value=1), @BarInherited(value=2)})",
+        + "{@BarInherited(1), @BarInherited(2)})",
         getAnnotationsByType = {"@BarInheritedContainer("
-                + "value={@BarInherited(value=1), @BarInherited(value=2)})"})
-@BarInherited(value = 0)
+                + "{@BarInherited(1), @BarInherited(2)})"})
+@BarInherited(0)
 class MixRepeatableAndOfficialContainerInheritedB2Test extends H {}
--- a/test/langtools/tools/javac/processing/model/element/repeatingAnnotations/MixSingularAndUnofficialContainerBasicTest.java	Thu Jun 13 11:21:50 2019 -0700
+++ b/test/langtools/tools/javac/processing/model/element/repeatingAnnotations/MixSingularAndUnofficialContainerBasicTest.java	Thu Jun 13 11:50:45 2019 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, 2016, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2019, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -36,8 +36,8 @@
 
 @ExpectedBase(
         value = Foo.class,
-        getAnnotation = "@Foo(value=0)",
-        getAnnotationsByType = {"@Foo(value=0)"},
+        getAnnotation = "@Foo(0)",
+        getAnnotationsByType = {"@Foo(0)"},
         getAllAnnotationMirrors = {
             "@Foo(0)",
             "@UnofficialContainer({@Foo(1), @Foo(2)})",
@@ -53,17 +53,17 @@
 @ExpectedContainer(
         value = UnofficialContainer.class,
         getAnnotation = "@UnofficialContainer("
-        + "value={@Foo(value=1), @Foo(value=2)})",
+        + "{@Foo(1), @Foo(2)})",
         getAnnotationsByType = {"@UnofficialContainer("
-                + "value={@Foo(value=1), @Foo(value=2)})"})
-@Foo(value = 0)
-@UnofficialContainer(value = {@Foo(value = 1), @Foo(value = 2)})
+                + "{@Foo(1), @Foo(2)})"})
+@Foo(0)
+@UnofficialContainer({@Foo(1), @Foo(2)})
 class MixSingularAndUnofficialContainerBasicTest {
 
     @ExpectedBase(
             value = Foo.class,
-            getAnnotation = "@Foo(value=0)",
-            getAnnotationsByType = {"@Foo(value=0)"},
+            getAnnotation = "@Foo(0)",
+            getAnnotationsByType = {"@Foo(0)"},
             getAllAnnotationMirrors = {
                 "@Foo(0)",
                 "@UnofficialContainer({@Foo(1), @Foo(2)})",
@@ -79,17 +79,17 @@
     @ExpectedContainer(
             value = UnofficialContainer.class,
             getAnnotation = "@UnofficialContainer("
-            + "value={@Foo(value=1), @Foo(value=2)})",
+            + "{@Foo(1), @Foo(2)})",
             getAnnotationsByType = {"@UnofficialContainer("
-                    + "value={@Foo(value=1), @Foo(value=2)})"})
-    @Foo(value = 0)
-    @UnofficialContainer(value = {@Foo(value = 1), @Foo(value = 2)})
+                    + "{@Foo(1), @Foo(2)})"})
+    @Foo(0)
+    @UnofficialContainer({@Foo(1), @Foo(2)})
     int testField = 0;
 
     @ExpectedBase(
             value = Foo.class,
-            getAnnotation = "@Foo(value=0)",
-            getAnnotationsByType = {"@Foo(value=0)"},
+            getAnnotation = "@Foo(0)",
+            getAnnotationsByType = {"@Foo(0)"},
             getAllAnnotationMirrors = {
                 "@Foo(0)",
                 "@UnofficialContainer({@Foo(1), @Foo(2)})",
@@ -105,10 +105,10 @@
     @ExpectedContainer(
             value = UnofficialContainer.class,
             getAnnotation = "@UnofficialContainer("
-            + "value={@Foo(value=1), @Foo(value=2)})",
+            + "{@Foo(1), @Foo(2)})",
             getAnnotationsByType = {"@UnofficialContainer("
-                    + "value={@Foo(value=1), @Foo(value=2)})"})
-    @Foo(value = 0)
-    @UnofficialContainer(value = {@Foo(value = 1), @Foo(value = 2)})
+                    + "{@Foo(1), @Foo(2)})"})
+    @Foo(0)
+    @UnofficialContainer({@Foo(1), @Foo(2)})
     void testMethod() {}
 }
--- a/test/langtools/tools/javac/processing/model/element/repeatingAnnotations/MixSingularAndUnofficialContainerInheritedA1Test.java	Thu Jun 13 11:21:50 2019 -0700
+++ b/test/langtools/tools/javac/processing/model/element/repeatingAnnotations/MixSingularAndUnofficialContainerInheritedA1Test.java	Thu Jun 13 11:50:45 2019 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, 2016, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2019, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -35,13 +35,13 @@
  * MixSingularAndUnofficialContainerInheritedA1Test.java
  */
 
-@FooInherited(value = 0)
+@FooInherited(0)
 class L {}
 
 @ExpectedBase(
         value = FooInherited.class,
-        getAnnotation = "@FooInherited(value=0)",
-        getAnnotationsByType = {"@FooInherited(value=0)"},
+        getAnnotation = "@FooInherited(0)",
+        getAnnotationsByType = {"@FooInherited(0)"},
         getAllAnnotationMirrors = {
             "@FooInherited(0)",
             "@UnofficialInheritedContainer({@FooInherited(1), @FooInherited(2)})",
@@ -56,8 +56,8 @@
 @ExpectedContainer(
         value = UnofficialInheritedContainer.class,
         getAnnotation = "@UnofficialInheritedContainer("
-        + "value={@FooInherited(value=1), @FooInherited(value=2)})",
+        + "{@FooInherited(1), @FooInherited(2)})",
         getAnnotationsByType = {"@UnofficialInheritedContainer("
-                + "value={@FooInherited(value=1), @FooInherited(value=2)})"})
-@UnofficialInheritedContainer(value = {@FooInherited(value = 1), @FooInherited(value = 2)})
+                + "{@FooInherited(1), @FooInherited(2)})"})
+@UnofficialInheritedContainer({@FooInherited(1), @FooInherited(2)})
 class MixSingularAndUnofficialContainerInheritedA1Test extends L {}
--- a/test/langtools/tools/javac/processing/model/element/repeatingAnnotations/MixSingularAndUnofficialContainerInheritedA2Test.java	Thu Jun 13 11:21:50 2019 -0700
+++ b/test/langtools/tools/javac/processing/model/element/repeatingAnnotations/MixSingularAndUnofficialContainerInheritedA2Test.java	Thu Jun 13 11:50:45 2019 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, 2016, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2019, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -35,13 +35,13 @@
  * MixSingularAndUnofficialContainerInheritedA2Test.java
  */
 
-@FooInherited(value = 0)
+@FooInherited(0)
 class K {}
 
 @ExpectedBase(
         value = FooInherited.class,
-        getAnnotation = "@FooInherited(value=3)",
-        getAnnotationsByType = {"@FooInherited(value=3)"},
+        getAnnotation = "@FooInherited(3)",
+        getAnnotationsByType = {"@FooInherited(3)"},
         getAllAnnotationMirrors = {
             "@FooInherited(3)",
             "@UnofficialInheritedContainer({@FooInherited(1), @FooInherited(2)})",
@@ -57,9 +57,9 @@
 @ExpectedContainer(
         value = UnofficialInheritedContainer.class,
         getAnnotation = "@UnofficialInheritedContainer("
-        + "value={@FooInherited(value=1), @FooInherited(value=2)})",
+        + "{@FooInherited(1), @FooInherited(2)})",
         getAnnotationsByType = {"@UnofficialInheritedContainer("
-                + "value={@FooInherited(value=1), @FooInherited(value=2)})"})
-@UnofficialInheritedContainer(value = {@FooInherited(value = 1), @FooInherited(value = 2)})
-@FooInherited(value = 3)
+                + "{@FooInherited(1), @FooInherited(2)})"})
+@UnofficialInheritedContainer({@FooInherited(1), @FooInherited(2)})
+@FooInherited(3)
 class MixSingularAndUnofficialContainerInheritedA2Test extends K {}
--- a/test/langtools/tools/javac/processing/model/element/repeatingAnnotations/MixSingularAndUnofficialContainerInheritedB1Test.java	Thu Jun 13 11:21:50 2019 -0700
+++ b/test/langtools/tools/javac/processing/model/element/repeatingAnnotations/MixSingularAndUnofficialContainerInheritedB1Test.java	Thu Jun 13 11:50:45 2019 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, 2016, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2019, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -35,13 +35,13 @@
  * MixSingularAndUnofficialContainerInheritedB1Test.java
  */
 
-@UnofficialInheritedContainer(value = {@FooInherited(value = 1),@FooInherited(value = 2)})
+@UnofficialInheritedContainer({@FooInherited(1),@FooInherited(2)})
 class J {}
 
 @ExpectedBase(
         value = FooInherited.class,
-        getAnnotation = "@FooInherited(value=0)",
-        getAnnotationsByType = {"@FooInherited(value=0)"},
+        getAnnotation = "@FooInherited(0)",
+        getAnnotationsByType = {"@FooInherited(0)"},
         getAllAnnotationMirrors = {
             "@FooInherited(0)",
             "@UnofficialInheritedContainer({@FooInherited(1), @FooInherited(2)})",
@@ -56,8 +56,8 @@
 @ExpectedContainer(
         value = UnofficialInheritedContainer.class,
         getAnnotation = "@UnofficialInheritedContainer("
-        + "value={@FooInherited(value=1), @FooInherited(value=2)})",
+        + "{@FooInherited(1), @FooInherited(2)})",
         getAnnotationsByType = {"@UnofficialInheritedContainer("
-                + "value={@FooInherited(value=1), @FooInherited(value=2)})"})
-@FooInherited(value = 0)
+                + "{@FooInherited(1), @FooInherited(2)})"})
+@FooInherited(0)
 class MixSingularAndUnofficialContainerInheritedB1Test extends J {}
--- a/test/langtools/tools/javac/processing/model/element/repeatingAnnotations/MixSingularAndUnofficialContainerInheritedB2Test.java	Thu Jun 13 11:21:50 2019 -0700
+++ b/test/langtools/tools/javac/processing/model/element/repeatingAnnotations/MixSingularAndUnofficialContainerInheritedB2Test.java	Thu Jun 13 11:50:45 2019 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, 2016, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2019, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -35,14 +35,14 @@
  * MixSingularAndUnofficialContainerInheritedB2Test.java
  */
 
-@UnofficialInheritedContainer(value = {@FooInherited(value = 1), @FooInherited(value = 2)})
-@FooInherited(value = 3)
+@UnofficialInheritedContainer({@FooInherited(1), @FooInherited(2)})
+@FooInherited(3)
 class G {}
 
 @ExpectedBase(
         value = FooInherited.class,
-        getAnnotation = "@FooInherited(value=0)",
-        getAnnotationsByType = {"@FooInherited(value=0)"},
+        getAnnotation = "@FooInherited(0)",
+        getAnnotationsByType = {"@FooInherited(0)"},
         getAllAnnotationMirrors = {
             "@FooInherited(0)",
             "@UnofficialInheritedContainer({@FooInherited(1), @FooInherited(2)})",
@@ -57,8 +57,8 @@
 @ExpectedContainer(
         value = UnofficialInheritedContainer.class,
         getAnnotation = "@UnofficialInheritedContainer("
-        + "value={@FooInherited(value=1), @FooInherited(value=2)})",
+        + "{@FooInherited(1), @FooInherited(2)})",
         getAnnotationsByType = {"@UnofficialInheritedContainer("
-                + "value={@FooInherited(value=1), @FooInherited(value=2)})"})
-@FooInherited(value = 0)
+                + "{@FooInherited(1), @FooInherited(2)})"})
+@FooInherited(0)
 class MixSingularAndUnofficialContainerInheritedB2Test extends G{}
--- a/test/langtools/tools/javac/processing/model/element/repeatingAnnotations/OfficialContainerBasicTest.java	Thu Jun 13 11:21:50 2019 -0700
+++ b/test/langtools/tools/javac/processing/model/element/repeatingAnnotations/OfficialContainerBasicTest.java	Thu Jun 13 11:50:45 2019 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, 2016, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2019, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -38,8 +38,8 @@
         value = Bar.class,
         getAnnotation = "null",
         getAnnotationsByType = {
-            "@Bar(value=1)",
-            "@Bar(value=2)"
+            "@Bar(1)",
+            "@Bar(2)"
         },
         getAllAnnotationMirrors = {
             "@BarContainer({@Bar(1), @Bar(2)})",
@@ -53,17 +53,17 @@
         })
 @ExpectedContainer(
         value = BarContainer.class,
-        getAnnotation = "@BarContainer(value={@Bar(value=1), @Bar(value=2)})",
-        getAnnotationsByType = {"@BarContainer(value={@Bar(value=1), @Bar(value=2)})"})
-@BarContainer(value = {@Bar(value = 1), @Bar(value = 2)})
+        getAnnotation = "@BarContainer({@Bar(1), @Bar(2)})",
+        getAnnotationsByType = {"@BarContainer({@Bar(1), @Bar(2)})"})
+@BarContainer({@Bar(1), @Bar(2)})
 class OfficialContainerBasicTest {
 
     @ExpectedBase(
             value = Bar.class,
             getAnnotation = "null",
             getAnnotationsByType = {
-                "@Bar(value=1)",
-                "@Bar(value=2)"
+                "@Bar(1)",
+                "@Bar(2)"
             },
             getAllAnnotationMirrors = {
                 "@BarContainer({@Bar(1), @Bar(2)})",
@@ -77,17 +77,17 @@
             })
     @ExpectedContainer(
             value = BarContainer.class,
-            getAnnotation = "@BarContainer(value={@Bar(value=1), @Bar(value=2)})",
-            getAnnotationsByType = {"@BarContainer(value={@Bar(value=1), @Bar(value=2)})"})
-    @BarContainer(value = {@Bar(value = 1), @Bar(value = 2)})
+            getAnnotation = "@BarContainer({@Bar(1), @Bar(2)})",
+            getAnnotationsByType = {"@BarContainer({@Bar(1), @Bar(2)})"})
+    @BarContainer({@Bar(1), @Bar(2)})
     int testField = 0;
 
     @ExpectedBase(
             value = Bar.class,
             getAnnotation = "null",
             getAnnotationsByType = {
-                "@Bar(value=1)",
-                "@Bar(value=2)"
+                "@Bar(1)",
+                "@Bar(2)"
             },
             getAllAnnotationMirrors = {
                 "@BarContainer({@Bar(1), @Bar(2)})",
@@ -101,8 +101,8 @@
             })
     @ExpectedContainer(
             value = BarContainer.class,
-            getAnnotation = "@BarContainer(value={@Bar(value=1), @Bar(value=2)})",
-            getAnnotationsByType = {"@BarContainer(value={@Bar(value=1), @Bar(value=2)})"})
-    @BarContainer(value = {@Bar(value = 1), @Bar(value = 2)})
+            getAnnotation = "@BarContainer({@Bar(1), @Bar(2)})",
+            getAnnotationsByType = {"@BarContainer({@Bar(1), @Bar(2)})"})
+    @BarContainer({@Bar(1), @Bar(2)})
     void testMethod() {}
 }
--- a/test/langtools/tools/javac/processing/model/element/repeatingAnnotations/OfficialContainerInheritedTest.java	Thu Jun 13 11:21:50 2019 -0700
+++ b/test/langtools/tools/javac/processing/model/element/repeatingAnnotations/OfficialContainerInheritedTest.java	Thu Jun 13 11:50:45 2019 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, 2016, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2019, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -34,15 +34,15 @@
  * @compile -processor ElementRepAnnoTester -proc:only OfficialContainerInheritedTest.java
  */
 
-@BarInheritedContainer(value = {@BarInherited(value = 1), @BarInherited(value = 2)})
+@BarInheritedContainer({@BarInherited(1), @BarInherited(2)})
 class D {}
 
 @ExpectedBase(
         value = BarInherited.class,
         getAnnotation = "null",
         getAnnotationsByType = {
-            "@BarInherited(value=1)",
-            "@BarInherited(value=2)"
+            "@BarInherited(1)",
+            "@BarInherited(2)"
         },
         getAllAnnotationMirrors = {
             "@BarInheritedContainer({@BarInherited(1), @BarInherited(2)})",
@@ -56,7 +56,7 @@
 @ExpectedContainer(
         value = BarInheritedContainer.class,
         getAnnotation = "@BarInheritedContainer("
-        + "value={@BarInherited(value=1), @BarInherited(value=2)})",
+        + "{@BarInherited(1), @BarInherited(2)})",
         getAnnotationsByType = {"@BarInheritedContainer("
-                + "value={@BarInherited(value=1), @BarInherited(value=2)})"})
+                + "{@BarInherited(1), @BarInherited(2)})"})
 class OfficialContainerInheritedTest extends D {}
--- a/test/langtools/tools/javac/processing/model/element/repeatingAnnotations/RepeatableBasicTest.java	Thu Jun 13 11:21:50 2019 -0700
+++ b/test/langtools/tools/javac/processing/model/element/repeatingAnnotations/RepeatableBasicTest.java	Thu Jun 13 11:50:45 2019 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, 2016, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2019, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -38,8 +38,8 @@
         value = Bar.class,
         getAnnotation = "null",
         getAnnotationsByType = {
-            "@Bar(value=1)",
-            "@Bar(value=2)"
+            "@Bar(1)",
+            "@Bar(2)"
         },
         getAllAnnotationMirrors = {
             "@BarContainer({@Bar(1), @Bar(2)})",
@@ -53,18 +53,18 @@
         })
 @ExpectedContainer(
         value = BarContainer.class,
-        getAnnotation = "@BarContainer(value={@Bar(value=1), @Bar(value=2)})",
-        getAnnotationsByType = {"@BarContainer(value={@Bar(value=1), @Bar(value=2)})"})
-@Bar(value = 1)
-@Bar(value = 2)
+        getAnnotation = "@BarContainer({@Bar(1), @Bar(2)})",
+        getAnnotationsByType = {"@BarContainer({@Bar(1), @Bar(2)})"})
+@Bar(1)
+@Bar(2)
 class RepeatableBasicTest {
 
     @ExpectedBase(
             value = Bar.class,
             getAnnotation = "null",
             getAnnotationsByType = {
-                "@Bar(value=1)",
-                "@Bar(value=2)"
+                "@Bar(1)",
+                "@Bar(2)"
             },
             getAllAnnotationMirrors = {
                 "@BarContainer({@Bar(1), @Bar(2)})",
@@ -78,18 +78,18 @@
             })
     @ExpectedContainer(
             value = BarContainer.class,
-            getAnnotation = "@BarContainer(value={@Bar(value=1), @Bar(value=2)})",
-            getAnnotationsByType = {"@BarContainer(value={@Bar(value=1), @Bar(value=2)})"})
-    @Bar(value = 1)
-    @Bar(value = 2)
+            getAnnotation = "@BarContainer({@Bar(1), @Bar(2)})",
+            getAnnotationsByType = {"@BarContainer({@Bar(1), @Bar(2)})"})
+    @Bar(1)
+    @Bar(2)
     int testField = 0;
 
     @ExpectedBase(
             value = Bar.class,
             getAnnotation = "null",
             getAnnotationsByType = {
-                "@Bar(value=1)",
-                "@Bar(value=2)"
+                "@Bar(1)",
+                "@Bar(2)"
             },
             getAllAnnotationMirrors = {
                 "@BarContainer({@Bar(1), @Bar(2)})",
@@ -103,9 +103,9 @@
             })
     @ExpectedContainer(
             value = BarContainer.class,
-            getAnnotation = "@BarContainer(value={@Bar(value=1), @Bar(value=2)})",
-            getAnnotationsByType = {"@BarContainer(value={@Bar(value=1), @Bar(value=2)})"})
-    @Bar(value = 1)
-    @Bar(value = 2)
+            getAnnotation = "@BarContainer({@Bar(1), @Bar(2)})",
+            getAnnotationsByType = {"@BarContainer({@Bar(1), @Bar(2)})"})
+    @Bar(1)
+    @Bar(2)
     void testMethod() {}
 }
--- a/test/langtools/tools/javac/processing/model/element/repeatingAnnotations/RepeatableInheritedTest.java	Thu Jun 13 11:21:50 2019 -0700
+++ b/test/langtools/tools/javac/processing/model/element/repeatingAnnotations/RepeatableInheritedTest.java	Thu Jun 13 11:50:45 2019 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, 2016, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2019, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -34,16 +34,16 @@
  * @compile -processor ElementRepAnnoTester -proc:only RepeatableInheritedTest.java
  */
 
-@BarInherited(value = 1)
-@BarInherited(value = 2)
+@BarInherited(1)
+@BarInherited(2)
 class I {}
 
 @ExpectedBase(
         value = BarInherited.class,
         getAnnotation = "null",
         getAnnotationsByType = {
-            "@BarInherited(value=1)",
-            "@BarInherited(value=2)"
+            "@BarInherited(1)",
+            "@BarInherited(2)"
         },
         getAllAnnotationMirrors = {
             "@BarInheritedContainer({@BarInherited(1), @BarInherited(2)})",
@@ -57,7 +57,7 @@
 @ExpectedContainer(
         value = BarInheritedContainer.class,
         getAnnotation = "@BarInheritedContainer("
-        + "value={@BarInherited(value=1), @BarInherited(value=2)})",
+        + "{@BarInherited(1), @BarInherited(2)})",
         getAnnotationsByType = {"@BarInheritedContainer("
-                + "value={@BarInherited(value=1), @BarInherited(value=2)})"})
+                + "{@BarInherited(1), @BarInherited(2)})"})
 class RepeatableInheritedTest extends I {}
--- a/test/langtools/tools/javac/processing/model/element/repeatingAnnotations/RepeatableOfficialContainerBasicTest.java	Thu Jun 13 11:21:50 2019 -0700
+++ b/test/langtools/tools/javac/processing/model/element/repeatingAnnotations/RepeatableOfficialContainerBasicTest.java	Thu Jun 13 11:50:45 2019 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, 2016, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2019, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -52,10 +52,10 @@
         value = BarContainer.class,
         getAnnotation = "null",
         getAnnotationsByType = {
-            "@BarContainer(value={@Bar(value=1)})",
-            "@BarContainer(value={@Bar(value=2)})"})
-@BarContainer(value = {@Bar(value = 1)})
-@BarContainer(value = {@Bar(value = 2)})
+            "@BarContainer({@Bar(1)})",
+            "@BarContainer({@Bar(2)})"})
+@BarContainer({@Bar(1)})
+@BarContainer({@Bar(2)})
 class RepeatableOfficialContainerBasicTest {
 
     @ExpectedBase(
@@ -76,10 +76,10 @@
             value = BarContainer.class,
             getAnnotation = "null",
             getAnnotationsByType = {
-                "@BarContainer(value={@Bar(value=1)})",
-                "@BarContainer(value={@Bar(value=2)})"})
-    @BarContainer(value = {@Bar(value = 1)})
-    @BarContainer(value = {@Bar(value = 2)})
+                "@BarContainer({@Bar(1)})",
+                "@BarContainer({@Bar(2)})"})
+    @BarContainer({@Bar(1)})
+    @BarContainer({@Bar(2)})
     int testField = 0;
 
     @ExpectedBase(
@@ -100,9 +100,9 @@
             value = BarContainer.class,
             getAnnotation = "null",
             getAnnotationsByType = {
-                "@BarContainer(value={@Bar(value=1)})",
-                "@BarContainer(value={@Bar(value=2)})"})
-    @BarContainer(value = {@Bar(value = 1)})
-    @BarContainer(value = {@Bar(value = 2)})
+                "@BarContainer({@Bar(1)})",
+                "@BarContainer({@Bar(2)})"})
+    @BarContainer({@Bar(1)})
+    @BarContainer({@Bar(2)})
     void testMethod() {}
 }
--- a/test/langtools/tools/javac/processing/model/element/repeatingAnnotations/RepeatableOfficialContainerInheritedTest.java	Thu Jun 13 11:21:50 2019 -0700
+++ b/test/langtools/tools/javac/processing/model/element/repeatingAnnotations/RepeatableOfficialContainerInheritedTest.java	Thu Jun 13 11:50:45 2019 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, 2016, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2019, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -35,16 +35,16 @@
  * RepeatableOfficialContainerInheritedTest.java
  */
 
-@BarInheritedContainer(value = {@BarInherited(value = 1)})
-@BarInheritedContainer(value = {@BarInherited(value = 2)})
+@BarInheritedContainer({@BarInherited(1)})
+@BarInheritedContainer({@BarInherited(2)})
 class O {}
 
 @ExpectedBase(
         value = BarInheritedContainer.class,
         getAnnotation = "null",
         getAnnotationsByType = {
-            "@BarInheritedContainer(value={@BarInherited(value=1)})",
-            "@BarInheritedContainer(value={@BarInherited(value=2)})"
+            "@BarInheritedContainer({@BarInherited(1)})",
+            "@BarInheritedContainer({@BarInherited(2)})"
         },
         getAllAnnotationMirrors = {
             "@BarInheritedContainerContainer("
@@ -60,9 +60,9 @@
 @ExpectedContainer(
         value = BarInheritedContainerContainer.class,
         getAnnotation = "@BarInheritedContainerContainer("
-        + "value={@BarInheritedContainer(value={@BarInherited(value=1)}),"
-        + " @BarInheritedContainer(value={@BarInherited(value=2)})})",
+        + "{@BarInheritedContainer({@BarInherited(1)}),"
+        + " @BarInheritedContainer({@BarInherited(2)})})",
         getAnnotationsByType = {"@BarInheritedContainerContainer("
-                + "value={@BarInheritedContainer(value={@BarInherited(value=1)}),"
-        + " @BarInheritedContainer(value={@BarInherited(value=2)})})"})
+                + "{@BarInheritedContainer({@BarInherited(1)}),"
+        + " @BarInheritedContainer({@BarInherited(2)})})"})
 class RepeatableOfficialContainerInheritedTest extends O {}
--- a/test/langtools/tools/javac/processing/model/element/repeatingAnnotations/RepeatableOverrideATest.java	Thu Jun 13 11:21:50 2019 -0700
+++ b/test/langtools/tools/javac/processing/model/element/repeatingAnnotations/RepeatableOverrideATest.java	Thu Jun 13 11:50:45 2019 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, 2016, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2019, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -34,14 +34,14 @@
  * @compile -processor ElementRepAnnoTester -proc:only RepeatableOverrideATest.java
  */
 
-@BarInherited(value = 1)
-@BarInherited(value = 2)
+@BarInherited(1)
+@BarInherited(2)
 class B {}
 
 @ExpectedBase(
         value = BarInherited.class,
-        getAnnotation = "@BarInherited(value=3)",
-        getAnnotationsByType = {"@BarInherited(value=3)"},
+        getAnnotation = "@BarInherited(3)",
+        getAnnotationsByType = {"@BarInherited(3)"},
         getAllAnnotationMirrors = {
             "@BarInherited(3)",
             "@BarInheritedContainer({@BarInherited(1), @BarInherited(2)})",
@@ -56,8 +56,8 @@
 @ExpectedContainer(
         value = BarInheritedContainer.class,
         getAnnotation = "@BarInheritedContainer("
-        + "value={@BarInherited(value=1), @BarInherited(value=2)})",
+        + "{@BarInherited(1), @BarInherited(2)})",
         getAnnotationsByType = {"@BarInheritedContainer("
-                + "value={@BarInherited(value=1), @BarInherited(value=2)})"})
-@BarInherited(value = 3)
+                + "{@BarInherited(1), @BarInherited(2)})"})
+@BarInherited(3)
 class RepeatableOverrideATest extends B {}
--- a/test/langtools/tools/javac/processing/model/element/repeatingAnnotations/RepeatableOverrideBTest.java	Thu Jun 13 11:21:50 2019 -0700
+++ b/test/langtools/tools/javac/processing/model/element/repeatingAnnotations/RepeatableOverrideBTest.java	Thu Jun 13 11:50:45 2019 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, 2016, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2019, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -34,15 +34,15 @@
  * @compile -processor ElementRepAnnoTester -proc:only RepeatableOverrideBTest.java
  */
 
-@BarInherited(value = 0)
+@BarInherited(0)
 class C {}
 
 @ExpectedBase(
         value = BarInherited.class,
-        getAnnotation = "@BarInherited(value=0)",
+        getAnnotation = "@BarInherited(0)",
         getAnnotationsByType = {
-            "@BarInherited(value=1)",
-            "@BarInherited(value=2)"
+            "@BarInherited(1)",
+            "@BarInherited(2)"
         },
         getAllAnnotationMirrors = {
             "@BarInherited(0)",
@@ -58,9 +58,9 @@
 @ExpectedContainer(
         value = BarInheritedContainer.class,
         getAnnotation = "@BarInheritedContainer("
-        + "value={@BarInherited(value=1), @BarInherited(value=2)})",
+        + "{@BarInherited(1), @BarInherited(2)})",
         getAnnotationsByType = {"@BarInheritedContainer("
-                + "value={@BarInherited(value=1), @BarInherited(value=2)})"})
-@BarInherited(value = 1)
-@BarInherited(value = 2)
+                + "{@BarInherited(1), @BarInherited(2)})"})
+@BarInherited(1)
+@BarInherited(2)
 class RepeatableOverrideBTest extends C {}
--- a/test/langtools/tools/javac/processing/model/element/repeatingAnnotations/SingularBasicTest.java	Thu Jun 13 11:21:50 2019 -0700
+++ b/test/langtools/tools/javac/processing/model/element/repeatingAnnotations/SingularBasicTest.java	Thu Jun 13 11:50:45 2019 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2019, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -36,8 +36,8 @@
 
 @ExpectedBase(
         value = Foo.class,
-        getAnnotation = "@Foo(value=0)",
-        getAnnotationsByType = {"@Foo(value=0)"},
+        getAnnotation = "@Foo(0)",
+        getAnnotationsByType = {"@Foo(0)"},
         getAllAnnotationMirrors = {
             "@Foo(0)",
             "ExpectedBase",
@@ -49,13 +49,13 @@
             "ExpectedContainer"
         })
 @ExpectedContainer
-@Foo(value = 0)
+@Foo(0)
 public class SingularBasicTest {
 
     @ExpectedBase(
             value = Foo.class,
-            getAnnotation = "@Foo(value=0)",
-            getAnnotationsByType = {"@Foo(value=0)"},
+            getAnnotation = "@Foo(0)",
+            getAnnotationsByType = {"@Foo(0)"},
             getAllAnnotationMirrors = {
                 "@Foo(0)",
                 "ExpectedBase",
@@ -67,13 +67,13 @@
                 "ExpectedContainer"
             })
     @ExpectedContainer
-    @Foo(value = 0)
+    @Foo(0)
     int testField = 0;
 
     @ExpectedBase(
             value = Foo.class,
-            getAnnotation = "@Foo(value=0)",
-            getAnnotationsByType = {"@Foo(value=0)"},
+            getAnnotation = "@Foo(0)",
+            getAnnotationsByType = {"@Foo(0)"},
             getAllAnnotationMirrors = {
                 "@Foo(0)",
                 "ExpectedBase",
@@ -85,7 +85,7 @@
                 "ExpectedContainer"
             })
     @ExpectedContainer
-    @Foo(value = 0)
+    @Foo(0)
     void testMethod() {
     }
 }
--- a/test/langtools/tools/javac/processing/model/element/repeatingAnnotations/SingularInheritedATest.java	Thu Jun 13 11:21:50 2019 -0700
+++ b/test/langtools/tools/javac/processing/model/element/repeatingAnnotations/SingularInheritedATest.java	Thu Jun 13 11:50:45 2019 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2019, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -34,13 +34,13 @@
  * @compile -processor ElementRepAnnoTester -proc:only SingularInheritedATest.java
  */
 
-@FooInherited(value = 0)
+@FooInherited(0)
 class A {}
 
 @ExpectedBase(
         value = FooInherited.class,
-        getAnnotation = "@FooInherited(value=0)",
-        getAnnotationsByType = {"@FooInherited(value=0)"},
+        getAnnotation = "@FooInherited(0)",
+        getAnnotationsByType = {"@FooInherited(0)"},
         getAllAnnotationMirrors = {
             "@FooInherited(0)",
             "ExpectedBase",
--- a/test/langtools/tools/javac/processing/model/element/repeatingAnnotations/SingularInheritedBTest.java	Thu Jun 13 11:21:50 2019 -0700
+++ b/test/langtools/tools/javac/processing/model/element/repeatingAnnotations/SingularInheritedBTest.java	Thu Jun 13 11:50:45 2019 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2019, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -34,13 +34,13 @@
  * @compile -processor ElementRepAnnoTester -proc:only SingularInheritedBTest.java
  */
 
-@FooInherited(value = 1)
+@FooInherited(1)
 class P {}
 
 @ExpectedBase(
         value = FooInherited.class,
-        getAnnotation = "@FooInherited(value=2)",
-        getAnnotationsByType = {"@FooInherited(value=2)"},
+        getAnnotation = "@FooInherited(2)",
+        getAnnotationsByType = {"@FooInherited(2)"},
         getAllAnnotationMirrors = {
             "@FooInherited(2)",
             "ExpectedBase",
@@ -55,5 +55,5 @@
         value = UnofficialInheritedContainer.class,
         getAnnotation = "null",
         getAnnotationsByType = {})
-@FooInherited(value = 2)
+@FooInherited(2)
 class SingularInheritedBTest extends P {}
--- a/test/langtools/tools/javac/processing/model/element/repeatingAnnotations/UnofficialContainerBasicTest.java	Thu Jun 13 11:21:50 2019 -0700
+++ b/test/langtools/tools/javac/processing/model/element/repeatingAnnotations/UnofficialContainerBasicTest.java	Thu Jun 13 11:50:45 2019 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, 2016, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2019, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -50,9 +50,9 @@
         })
 @ExpectedContainer(
         value = UnofficialContainer.class,
-        getAnnotation = "@UnofficialContainer(value={@Foo(value=1), @Foo(value=2)})",
-        getAnnotationsByType = {"@UnofficialContainer(value={@Foo(value=1), @Foo(value=2)})"})
-@UnofficialContainer(value = {@Foo(value = 1), @Foo(value = 2)})
+        getAnnotation = "@UnofficialContainer({@Foo(1), @Foo(2)})",
+        getAnnotationsByType = {"@UnofficialContainer({@Foo(1), @Foo(2)})"})
+@UnofficialContainer({@Foo(1), @Foo(2)})
 class UnofficialContainerBasicTest {
 
     @ExpectedBase(
@@ -71,9 +71,9 @@
             })
     @ExpectedContainer(
             value = UnofficialContainer.class,
-            getAnnotation = "@UnofficialContainer(value={@Foo(value=1), @Foo(value=2)})",
-            getAnnotationsByType = {"@UnofficialContainer(value={@Foo(value=1), @Foo(value=2)})"})
-    @UnofficialContainer(value = {@Foo(value = 1), @Foo(value = 2)})
+            getAnnotation = "@UnofficialContainer({@Foo(1), @Foo(2)})",
+            getAnnotationsByType = {"@UnofficialContainer({@Foo(1), @Foo(2)})"})
+    @UnofficialContainer({@Foo(1), @Foo(2)})
     int testField = 0;
 
     @ExpectedBase(
@@ -92,8 +92,8 @@
             })
     @ExpectedContainer(
             value = UnofficialContainer.class,
-            getAnnotation = "@UnofficialContainer(value={@Foo(value=1), @Foo(value=2)})",
-            getAnnotationsByType = {"@UnofficialContainer(value={@Foo(value=1), @Foo(value=2)})"})
-    @UnofficialContainer(value = {@Foo(value = 1), @Foo(value = 2)})
+            getAnnotation = "@UnofficialContainer({@Foo(1), @Foo(2)})",
+            getAnnotationsByType = {"@UnofficialContainer({@Foo(1), @Foo(2)})"})
+    @UnofficialContainer({@Foo(1), @Foo(2)})
     void testMethod() {}
 }
--- a/test/langtools/tools/javac/processing/model/element/repeatingAnnotations/UnofficialContainerInheritedTest.java	Thu Jun 13 11:21:50 2019 -0700
+++ b/test/langtools/tools/javac/processing/model/element/repeatingAnnotations/UnofficialContainerInheritedTest.java	Thu Jun 13 11:50:45 2019 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, 2016, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2019, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -35,7 +35,7 @@
  * UnofficialContainerInheritedTest.java
  */
 
-@UnofficialInheritedContainer(value = {@FooInherited(value = 1),@FooInherited(value = 2)})
+@UnofficialInheritedContainer({@FooInherited(1),@FooInherited(2)})
 class F {}
 
 @ExpectedBase(
@@ -54,7 +54,7 @@
 @ExpectedContainer(
         value = UnofficialInheritedContainer.class,
         getAnnotation = "@UnofficialInheritedContainer("
-        + "value={@FooInherited(value=1), @FooInherited(value=2)})",
+        + "{@FooInherited(1), @FooInherited(2)})",
         getAnnotationsByType = {"@UnofficialInheritedContainer("
-                + "value={@FooInherited(value=1), @FooInherited(value=2)})"})
+                + "{@FooInherited(1), @FooInherited(2)})"})
 class UnofficialContainerInheritedTest extends F {}
--- a/test/langtools/tools/javac/sym/ElementStructureTest.java	Thu Jun 13 11:21:50 2019 -0700
+++ b/test/langtools/tools/javac/sym/ElementStructureTest.java	Thu Jun 13 11:50:45 2019 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2015, 2018, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2015, 2019, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -128,16 +128,16 @@
         (byte) 0xB7, (byte) 0x52, (byte) 0x0F, (byte) 0x68
     };
     static final byte[] hash7 = new byte[] {
-        (byte) 0x6B, (byte) 0xA2, (byte) 0xE9, (byte) 0x8E,
-        (byte) 0xE1, (byte) 0x8E, (byte) 0x60, (byte) 0xBE,
-        (byte) 0x54, (byte) 0xC4, (byte) 0x33, (byte) 0x3E,
-        (byte) 0x0C, (byte) 0x2D, (byte) 0x3A, (byte) 0x7C
+        (byte) 0x3C, (byte) 0x03, (byte) 0xEA, (byte) 0x4A,
+        (byte) 0x62, (byte) 0xD2, (byte) 0x18, (byte) 0xE5,
+        (byte) 0xA5, (byte) 0xC2, (byte) 0xB7, (byte) 0x85,
+        (byte) 0x90, (byte) 0xFA, (byte) 0x98, (byte) 0xCD
     };
     static final byte[] hash8 = new byte[] {
-        (byte) 0x44, (byte) 0x77, (byte) 0x6E, (byte) 0x52,
-        (byte) 0x2B, (byte) 0x16, (byte) 0xD3, (byte) 0x3C,
-        (byte) 0x78, (byte) 0x75, (byte) 0xF5, (byte) 0x0A,
-        (byte) 0x01, (byte) 0x24, (byte) 0xBD, (byte) 0x2A
+        (byte) 0x0B, (byte) 0xEB, (byte) 0x16, (byte) 0xF5,
+        (byte) 0x7F, (byte) 0xB0, (byte) 0x18, (byte) 0xF1,
+        (byte) 0x78, (byte) 0x11, (byte) 0xED, (byte) 0x30,
+        (byte) 0x19, (byte) 0x4D, (byte) 0xDE, (byte) 0x8A
     };
 
     final static Map<String, byte[]> version2Hash = new HashMap<>();