/**
  * Return a string describing the access modifier flags. Don't include native or synchronized.
  *
  * <p>The modifier names are returned in canonical order, as specified by <em>The Java Language
  * Specification</em>.
  */
 protected String modifierString(MemberDoc member) {
   int ms = member.modifierSpecifier();
   int no = Modifier.NATIVE | Modifier.SYNCHRONIZED;
   return Modifier.toString(ms & ~no);
 }