Index: MemberValuePair.java =================================================================== RCS file: /home/eclipse/org.eclipse.jdt.core/compiler/org/eclipse/jdt/internal/compiler/ast/MemberValuePair.java,v retrieving revision 1.5 diff -u -r1.5 MemberValuePair.java --- MemberValuePair.java 30 Nov 2004 12:55:02 -0000 1.5 +++ MemberValuePair.java 1 Dec 2004 04:44:11 -0000 @@ -103,7 +103,17 @@ } break checkAnnotationMethodType; case T_JavaLangClass : - if (!(this.value instanceof ClassLiteralAccess)) { + if (this.value instanceof ArrayInitializer) { + ArrayInitializer initializer = (ArrayInitializer) this.value; + final Expression[] expressions = initializer.expressions; + if (expressions != null) { + for (int i =0, max = expressions.length; i < max; i++) { + if (!(expressions[i] instanceof ClassLiteralAccess)) { + scope.problemReporter().annotationValueMustBeClassLiteral(this.binding.declaringClass, this.name, expressions[i]); + } + } + } + } else if (!(this.value instanceof ClassLiteralAccess)) { scope.problemReporter().annotationValueMustBeClassLiteral(this.binding.declaringClass, this.name, this.value); } break checkAnnotationMethodType;