moved -DASN_PDU_COLLECTION into compiler
diff --git a/libasn1fix/asn1fix_class.c b/libasn1fix/asn1fix_class.c
index bf35719..32ad896 100644
--- a/libasn1fix/asn1fix_class.c
+++ b/libasn1fix/asn1fix_class.c
@@ -65,7 +65,7 @@
if(TQ_FIRST(&classfield->members)) {
/* Already have something */
} else {
- expr = asn1p_expr_new(classfield->_lineno);
+ expr = asn1p_expr_new(classfield->_lineno, mod);
expr->expr_type = ASN_TYPE_ANY;
expr->meta_type = AMT_TYPE;
asn1p_expr_add(classfield, expr);
diff --git a/libasn1fix/asn1fix_constr.c b/libasn1fix/asn1fix_constr.c
index 353473d..0421a52 100644
--- a/libasn1fix/asn1fix_constr.c
+++ b/libasn1fix/asn1fix_constr.c
@@ -152,7 +152,7 @@
if(arg->mod->module_flags & MSF_EXTENSIBILITY_IMPLIED
&& ext_count == 0) {
- v = asn1p_expr_new(0);
+ v = asn1p_expr_new(0, arg->mod);
if(v) {
v->Identifier = strdup("...");
v->expr_type = A1TC_EXTENSIBLE;
diff --git a/libasn1fix/asn1fix_constraint_compat.c b/libasn1fix/asn1fix_constraint_compat.c
index 96bd042..954d5f5 100644
--- a/libasn1fix/asn1fix_constraint_compat.c
+++ b/libasn1fix/asn1fix_constraint_compat.c
@@ -87,6 +87,14 @@
return 0;
case ACT_CT_CTDBY:
return 1;
+ case ACT_CT_CTNG: /* X.682, #11 */
+ switch(expr_type) {
+ case ASN_BASIC_OCTET_STRING:
+ case ASN_BASIC_BIT_STRING:
+ return 1;
+ default:
+ return 0;
+ }
case ACT_CA_SET:
case ACT_CA_CRC:
case ACT_CA_CSV:
diff --git a/libasn1fix/asn1fix_cws.c b/libasn1fix/asn1fix_cws.c
index b545711..8931a92 100644
--- a/libasn1fix/asn1fix_cws.c
+++ b/libasn1fix/asn1fix_cws.c
@@ -192,7 +192,7 @@
FATAL("Value %s at line %d is too large for this compiler! Contact the asn1c author.\n", p, arg->expr->_lineno);
return -1;
}
- expr = asn1p_expr_new(arg->expr->_lineno);
+ expr = asn1p_expr_new(arg->expr->_lineno, arg->expr->module);
expr->Identifier = p;
expr->meta_type = AMT_VALUE;
expr->expr_type = ASN_BASIC_INTEGER;
diff --git a/libasn1fix/asn1fix_misc.c b/libasn1fix/asn1fix_misc.c
index 4af0fd8..69d08bd 100644
--- a/libasn1fix/asn1fix_misc.c
+++ b/libasn1fix/asn1fix_misc.c
@@ -81,6 +81,8 @@
/* Buffer is guaranteed to be null-terminated */
assert(v->value.string.buf[v->value.string.size] == '\0');
return (char *)v->value.string.buf;
+ case ATV_TYPE:
+ return "<Type>";
case ATV_BITVECTOR:
{
uint8_t *bitvector;