langtools/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/AbstractMemberWriter.java
--- a/langtools/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/AbstractMemberWriter.java Mon Feb 15 14:02:57 2016 -0800
+++ b/langtools/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/AbstractMemberWriter.java Mon Feb 15 17:17:58 2016 -0800
@@ -261,10 +261,13 @@
// According to JLS, we should not be showing public modifier for
// interface methods.
if ((utils.isField(member) || utils.isMethod(member))
- && writer instanceof ClassWriterImpl
- && utils.isInterface(((ClassWriterImpl) writer).getTypeElement())) {
+ && ((writer instanceof ClassWriterImpl
+ && utils.isInterface(((ClassWriterImpl) writer).getTypeElement()) ||
+ writer instanceof AnnotationTypeWriterImpl) )) {
// Remove the implicit abstract and public modifiers
- if (utils.isMethod(member) && utils.isInterface(member.getEnclosingElement())) {
+ if (utils.isMethod(member) &&
+ (utils.isInterface(member.getEnclosingElement()) ||
+ utils.isAnnotationType(member.getEnclosingElement()))) {
set.remove(ABSTRACT);
set.remove(PUBLIC);
}