diff --git a/asn1c/asn1c.1 b/asn1c/asn1c.1 index 359724b2..7ac0015c 100644 --- a/asn1c/asn1c.1 +++ b/asn1c/asn1c.1 @@ -22,7 +22,7 @@ and other encoding standards. .TP \fILanguage Options\fR .br -\fB\-fall-defs-global \-fbless-SIZE \-fnative-types \-funnamed-unions \-ftypes88\fR +\fB\-fall-defs-global \-fbless-SIZE \-fnative-types \-fno-constraints \-funnamed-unions \-ftypes88\fR .TP \fIOutput Options\fR .br @@ -82,6 +82,9 @@ an ASN.1 standard and compiler may fail to produce the meaningful code. Use the native machine's data types (int, double) whenever possible, instead of the compound ASN.1 INTEGER_t, ENUMERATED_t and REAL_t types. .TP +.B \-fno-constraints +Do not generate ASN.1 subtype constraint checking code. This may make a shorter executable. +.TP .B \-funnamed-unions Enable unnamed unions in the definitions of target language's structures. .TP diff --git a/asn1c/asn1c.c b/asn1c/asn1c.c index 8c3a7e58..ad0cab43 100644 --- a/asn1c/asn1c.c +++ b/asn1c/asn1c.c @@ -91,6 +91,8 @@ main(int ac, char **av) { asn1_compiler_flags |= A1C_USE_NATIVE_TYPES; } else if(strcmp(optarg, "native-types") == 0) { asn1_compiler_flags |= A1C_USE_NATIVE_TYPES; + } else if(strcmp(optarg, "no-constraints") == 0) { + asn1_compiler_flags |= A1C_NO_CONSTRAINTS; } else if(strcmp(optarg, "unnamed-unions") == 0) { asn1_compiler_flags |= A1C_UNNAMED_UNIONS; } else if(strcmp(optarg, "types88") == 0) { @@ -309,6 +311,7 @@ usage(const char *av0) { " -fbless-SIZE Allow SIZE() constraint for INTEGER etc (non-std.)\n" " -fknown-extern-type= Pretend this type is known\n" " -fnative-types Use \"int\" instead of INTEGER_t whenever possible\n" +" -fno-constraints Do not generate constraint checking code\n" " -funnamed-unions Enable unnamed unions in structures\n" " -ftypes88 Use only ASN.1:1988 embedded types\n" "\n" diff --git a/doc/asn1c-usage.lyx b/doc/asn1c-usage.lyx index 03d8a970..b1467441 100644 --- a/doc/asn1c-usage.lyx +++ b/doc/asn1c-usage.lyx @@ -1315,7 +1315,7 @@ collapsed false \begin_inset Tabular - + @@ -1646,6 +1646,25 @@ Use the native machine's data types (int, double) whenever possible, instead \layout Standard +-fno-constraints +\end_inset + + +\begin_inset Text + +\layout Standard + +Do not generate ASN.1 subtype constraint checking code. + This may make a shorter executable. +\end_inset + + + + +\begin_inset Text + +\layout Standard + -funnamed-unions \end_inset diff --git a/doc/asn1c-usage.pdf b/doc/asn1c-usage.pdf index 85b31086..85ce3b05 100644 Binary files a/doc/asn1c-usage.pdf and b/doc/asn1c-usage.pdf differ