diff --git a/libasn1compiler/asn1c_C.c b/libasn1compiler/asn1c_C.c index 7d66b1b1944464bc8df2861f52202feaa172ce98..a2a09f27f833258583b6adee7ebfe4cd365f288b 100644 --- a/libasn1compiler/asn1c_C.c +++ b/libasn1compiler/asn1c_C.c @@ -1067,7 +1067,7 @@ asn1c_lang_C_type_SIMPLE_TYPE(arg_t *arg) { OUT("td->elements_count = asn_DEF_%s.elements_count;\n", type_name); if(etd_spec != ETD_NO_SPECIFICS) { INDENT(-1); - OUT(" /* "); + OUT(" /* "); } OUT("td->specifics = asn_DEF_%s.specifics;", type_name); if(etd_spec == ETD_NO_SPECIFICS) { diff --git a/libasn1compiler/asn1c_constraint.c b/libasn1compiler/asn1c_constraint.c index 0729d08e97e6c0cce158bab3b1d9af0dca2351a6..78097838e42bd7c0bff1340da3ba7a4e24843c51 100644 --- a/libasn1compiler/asn1c_constraint.c +++ b/libasn1compiler/asn1c_constraint.c @@ -170,8 +170,17 @@ asn1c_emit_constraint_checking_code(arg_t *arg) { INDENT(-1); OUT(") {\n"); INDENT(+1); - OUT("/* Constraint check succeeded */\n"); - OUT("return 0;\n"); + switch(etype) { + case ASN_CONSTR_SEQUENCE_OF: + OUT("/* SEQUENCE validation code is the same as SET */\n"); + case ASN_CONSTR_SET_OF: + OUT("/* Perform validation of the inner elements */\n"); + OUT("return SET_OF_constraint(td, list, app_errlog, app_key);\n"); + break; + default: + OUT("/* Constraint check succeeded */\n"); + OUT("return 0;\n"); + } INDENT(-1); OUT("} else {\n"); INDENT(+1);