code: int writeMemberAttrs(Symbol sym) {
          int acount = writeFlagAttrs(sym.flags());
          long flags = sym.flags();
          if ((flags & (SYNTHETIC | BRIDGE)) != SYNTHETIC &&
              (flags & ANONCONSTR) == 0 &&
              (!types.isSameType(sym.type, sym.erasure(types)) ||
               signatureGen.hasTypeVar(sym.type.getThrownTypes()))) {
              // note that a local class with captured variables
              // will get a signature attribute
              int alenIdx = writeAttr(names.Signature);
              databuf.appendChar(pool.put(typeSig(sym.type)));
              endAttr(alenIdx);
              acount++;
          }
          acount += writeJavaAnnotations(sym.getRawAttributes());
          acount += writeTypeAnnotations(sym.getRawTypeAttributes(), false);
          return acount;
      }
docs: Write member (field or method) attributes;
  return number of attributes written.