private void setTagMode(ASN1TagMode tagMode, ASN1TagDefault tagDefault,
Class<? extends ASN1Type> type, String fieldName) {
if (tagMode == ASN1TagMode.DEFAULT) {
- if (tagDefault == ASN1TagDefault.IMPLICIT_TAGS) {
+ if (tagDefault == ASN1TagDefault.IMPLICIT_TAGS
+ || (tagDefault == ASN1TagDefault.AUTOMATIC_TAGS && canImplicitTagging(type))) {
this.tagMode = ASN1TagMode.IMPLICIT;
} else {
this.tagMode = ASN1TagMode.EXPLICIT;