diff -r 519bbd41590c -r 0ffce164e4a4 jdk/src/share/classes/java/lang/reflect/Field.java --- a/jdk/src/share/classes/java/lang/reflect/Field.java Mon Mar 02 15:10:55 2009 -0800 +++ b/jdk/src/share/classes/java/lang/reflect/Field.java Tue Mar 03 19:26:43 2009 -0800 @@ -1018,13 +1018,11 @@ return (T) declaredAnnotations().get(annotationClass); } - private static final Annotation[] EMPTY_ANNOTATION_ARRAY=new Annotation[0]; - /** * @since 1.5 */ public Annotation[] getDeclaredAnnotations() { - return declaredAnnotations().values().toArray(EMPTY_ANNOTATION_ARRAY); + return AnnotationParser.toArray(declaredAnnotations()); } private transient Map declaredAnnotations;