Commit 1949e868 authored by Bi-Ruei, Chiu's avatar Bi-Ruei, Chiu

Use a straightforward way to add tailing semicolon

parent 47d8ef47
......@@ -372,7 +372,6 @@ asn1c_lang_C_type_SEQUENCE(arg_t *arg) {
}
INDENT(-1);
tmp_arg.embed--;
if(v->expr_type != A1TC_EXTENSIBLE) OUT(";\n");
} else {
EMBED_WITH_IOCT(v, ioc_tao);
}
......@@ -391,6 +390,7 @@ asn1c_lang_C_type_SEQUENCE(arg_t *arg) {
} else {
OUT("} %s%s", (expr->marker.flags & EM_INDIRECT)?"*":"",
c_name(arg).short_name);
if(!expr->_anonymous_type) OUT(";\n");
}
return asn1c_lang_C_type_SEQUENCE_def(arg, ioc_tao.ioct ? &ioc_tao : 0);
......@@ -633,6 +633,7 @@ asn1c_lang_C_type_SET(arg_t *arg) {
} else {
OUT("} %s%s", (expr->marker.flags & EM_INDIRECT)?"*":"",
c_name(arg).short_name);
if(!expr->_anonymous_type) OUT(";\n");
}
return asn1c_lang_C_type_SET_def(arg);
......@@ -861,6 +862,7 @@ asn1c_lang_C_type_SEx_OF(arg_t *arg) {
} else {
OUT("} %s%s", (expr->marker.flags & EM_INDIRECT)?"*":"",
c_name(arg).short_name);
if(!expr->_anonymous_type) OUT(";\n");
}
/*
......@@ -957,7 +959,8 @@ asn1c_lang_C_type_CHOICE(arg_t *arg) {
OUT("typedef %s {\n", c_name(arg).presence_enum);
INDENTED(
int skipComma = 1;
OUT("%s,\t/* No components present */\n", c_presence_name(arg, 0));
OUT("%s", c_presence_name(arg, 0));
OUT("%s\t/* No components present */\n", !TQ_FIRST(&(expr->members)) ? "" : ",");
TQ_FOR(v, &(expr->members), next) {
if(skipComma) skipComma = 0;
else if (v->expr_type == A1TC_EXTENSIBLE && !TQ_NEXT(v, next)) OUT("\n");
......@@ -1015,6 +1018,7 @@ asn1c_lang_C_type_CHOICE(arg_t *arg) {
OUT("} %s%s", (expr->marker.flags & EM_INDIRECT)?"*":"",
c_name(arg).short_name);
}
if(!expr->_anonymous_type) OUT(";\n");
return asn1c_lang_C_type_CHOICE_def(arg);
}
......@@ -1287,7 +1291,7 @@ asn1c_lang_C_type_SIMPLE_TYPE(arg_t *arg) {
if(!expr->_anonymous_type) {
OUT("%s", (expr->marker.flags&EM_INDIRECT)?"\t*":"\t ");
OUT("%s", MKID_safe(expr));
OUT("%s;", MKID_safe(expr));
if((expr->marker.flags & (EM_DEFAULT & ~EM_INDIRECT))
== (EM_DEFAULT & ~EM_INDIRECT))
OUT("\t/* DEFAULT %s */",
......@@ -1296,6 +1300,7 @@ asn1c_lang_C_type_SIMPLE_TYPE(arg_t *arg) {
else if((expr->marker.flags & EM_OPTIONAL)
== EM_OPTIONAL)
OUT("\t/* OPTIONAL */");
OUT("\n");
}
} else {
......@@ -1305,9 +1310,10 @@ asn1c_lang_C_type_SIMPLE_TYPE(arg_t *arg) {
OUT("typedef %s\t",
asn1c_type_name(arg, arg->expr, TNF_CTYPE));
OUT("%s%s_t",
OUT("%s%s_t%s",
(expr->marker.flags & EM_INDIRECT)?"*":" ",
MKID(expr));
MKID(expr),
expr->_anonymous_type ? "":";\n");
}
if((expr->expr_type == ASN_BASIC_ENUMERATED)
......
......@@ -65,7 +65,6 @@ int asn1c_compiled_output(arg_t *arg, const char *file, int lineno,
INDENTED(arg_t _tmp = *arg; _tmp.expr = ev; \
_tmp.default_cb(&_tmp, NULL);); \
arg->embed--; \
if(ev->expr_type != A1TC_EXTENSIBLE) OUT(";\n"); \
assert(arg->target->target == OT_TYPE_DECLS \
|| arg->target->target == OT_FWD_DEFS); \
} while(0)
......@@ -76,7 +75,6 @@ int asn1c_compiled_output(arg_t *arg, const char *file, int lineno,
INDENTED(arg_t _tmp = *arg; _tmp.expr = ev; \
_tmp.default_cb(&_tmp, ((ioc).ioct ? &ioc : 0));); \
arg->embed--; \
if(ev->expr_type != A1TC_EXTENSIBLE) OUT(";\n"); \
assert(arg->target->target == OT_TYPE_DECLS \
|| arg->target->target == OT_FWD_DEFS); \
} while(0)
......
......@@ -131,9 +131,6 @@ asn1c_compile_expr(arg_t *arg, const asn1c_ioc_table_and_objset_t *opt_ioc) {
arg->expr = expr; /* Restore */
} else {
ret = type_cb(arg);
if(arg->target->destination[OT_TYPE_DECLS]
.indent_level == 0)
OUT(";\n");
}
} else {
ret = -1;
......
......@@ -7,9 +7,9 @@
/*** <<< TYPE-DECLS [Narrow] >>> ***/
typedef struct Narrow_15P0 {
long *narrow1 /* DEFAULT 3 */;
long *narrow1; /* DEFAULT 3 */
long narrow2;
long *narrow3 /* OPTIONAL */;
long *narrow3; /* OPTIONAL */
/* Context for parsing across buffer boundaries */
asn_struct_ctx_t _asn_ctx;
......
......@@ -21,13 +21,13 @@ typedef enum Flag_15P1__field {
/*** <<< TYPE-DECLS [Flag] >>> ***/
typedef struct Flag_15P0 {
long *field /* DEFAULT 5 */;
long *field; /* DEFAULT 5 */
/* Context for parsing across buffer boundaries */
asn_struct_ctx_t _asn_ctx;
} Flag_15P0_t;
typedef struct Flag_15P1 {
long *field /* DEFAULT 5 */;
long *field; /* DEFAULT 5 */
/* Context for parsing across buffer boundaries */
asn_struct_ctx_t _asn_ctx;
......
......@@ -27,36 +27,36 @@ typedef struct PDU {
/* Context for parsing across buffer boundaries */
asn_struct_ctx_t _asn_ctx;
} *many;
IA5String_t *ia5 /* OPTIONAL */;
IA5String_t *ia5_c /* OPTIONAL */;
IA5String_t *ia5_ce /* OPTIONAL */;
IA5String_t *ia5_ir /* OPTIONAL */;
VisibleString_t *vs /* OPTIONAL */;
VisibleString_t *vs_c /* OPTIONAL */;
VisibleString_t *vs_ce /* OPTIONAL */;
VisibleString_t *vs_ir /* OPTIONAL */;
PrintableString_t *pr /* OPTIONAL */;
PrintableString_t *pr_c /* OPTIONAL */;
PrintableString_t *pr_ir /* OPTIONAL */;
NumericString_t *ns /* OPTIONAL */;
NumericString_t *ns_c /* OPTIONAL */;
NumericString_t *ns_ce /* OPTIONAL */;
NumericString_t *ns_ir /* OPTIONAL */;
UTF8String_t *ut_c /* OPTIONAL */;
UTF8String_t *ut_ce /* OPTIONAL */;
UTF8String_t *ut_ir /* OPTIONAL */;
BMPString_t *bm /* OPTIONAL */;
BMPString_t *bm_c /* OPTIONAL */;
BMPString_t *bm_cs /* OPTIONAL */;
BMPString_t *bm_ce /* OPTIONAL */;
BMPString_t *bm_ir /* OPTIONAL */;
UniversalString_t *us /* OPTIONAL */;
UniversalString_t *us_c /* OPTIONAL */;
UniversalString_t *us_cs /* OPTIONAL */;
UniversalString_t *us_ce /* OPTIONAL */;
UniversalString_t *us_ir /* OPTIONAL */;
double *real /* OPTIONAL */;
OBJECT_IDENTIFIER_t *oid /* OPTIONAL */;
IA5String_t *ia5; /* OPTIONAL */
IA5String_t *ia5_c; /* OPTIONAL */
IA5String_t *ia5_ce; /* OPTIONAL */
IA5String_t *ia5_ir; /* OPTIONAL */
VisibleString_t *vs; /* OPTIONAL */
VisibleString_t *vs_c; /* OPTIONAL */
VisibleString_t *vs_ce; /* OPTIONAL */
VisibleString_t *vs_ir; /* OPTIONAL */
PrintableString_t *pr; /* OPTIONAL */
PrintableString_t *pr_c; /* OPTIONAL */
PrintableString_t *pr_ir; /* OPTIONAL */
NumericString_t *ns; /* OPTIONAL */
NumericString_t *ns_c; /* OPTIONAL */
NumericString_t *ns_ce; /* OPTIONAL */
NumericString_t *ns_ir; /* OPTIONAL */
UTF8String_t *ut_c; /* OPTIONAL */
UTF8String_t *ut_ce; /* OPTIONAL */
UTF8String_t *ut_ir; /* OPTIONAL */
BMPString_t *bm; /* OPTIONAL */
BMPString_t *bm_c; /* OPTIONAL */
BMPString_t *bm_cs; /* OPTIONAL */
BMPString_t *bm_ce; /* OPTIONAL */
BMPString_t *bm_ir; /* OPTIONAL */
UniversalString_t *us; /* OPTIONAL */
UniversalString_t *us_c; /* OPTIONAL */
UniversalString_t *us_cs; /* OPTIONAL */
UniversalString_t *us_ce; /* OPTIONAL */
UniversalString_t *us_ir; /* OPTIONAL */
double *real; /* OPTIONAL */
OBJECT_IDENTIFIER_t *oid; /* OPTIONAL */
/* Context for parsing across buffer boundaries */
asn_struct_ctx_t _asn_ctx;
......
......@@ -17,10 +17,10 @@ typedef struct PDU {
* This type is extensible,
* possible extensions are below.
*/
IA5String_t *str_o /* OPTIONAL */;
IA5String_t *str_o; /* OPTIONAL */
IA5String_t *str_m;
struct Singleton *singl;
struct PDU_2 *pdu_2 /* OPTIONAL */;
struct PDU_2 *pdu_2; /* OPTIONAL */
/* Context for parsing across buffer boundaries */
asn_struct_ctx_t _asn_ctx;
......@@ -118,7 +118,7 @@ asn_TYPE_descriptor_t asn_DEF_PDU = {
/*** <<< TYPE-DECLS [Singleton] >>> ***/
typedef struct Singleton {
IA5String_t *opt_z /* DEFAULT z */;
IA5String_t *opt_z; /* DEFAULT z */
/* Context for parsing across buffer boundaries */
asn_struct_ctx_t _asn_ctx;
......
......@@ -13,12 +13,12 @@ typedef struct T {
long unsigned16stack;
long unsigned16stack_ext;
INTEGER_t unsigned33;
long *minmax /* OPTIONAL */;
long *minmax; /* OPTIONAL */
/*
* This type is extensible,
* possible extensions are below.
*/
long *signed8 /* DEFAULT 3 */;
long *signed8; /* DEFAULT 3 */
long *signed16;
long *signed16stack;
long *signed16stack_ext;
......
......@@ -27,7 +27,7 @@ typedef struct Test_structure_1 {
/* Context for parsing across buffer boundaries */
asn_struct_ctx_t _asn_ctx;
} t_member2;
struct Test_structure_1 *t_member3 /* OPTIONAL */;
struct Test_structure_1 *t_member3; /* OPTIONAL */
INTEGER_t t_member4;
/* Context for parsing across buffer boundaries */
......@@ -370,7 +370,7 @@ struct Test_structure_3;
/*** <<< TYPE-DECLS [Test-structure-2] >>> ***/
typedef struct Test_structure_2 {
struct Test_structure_3 *m1 /* OPTIONAL */;
struct Test_structure_3 *m1; /* OPTIONAL */
/* Presence bitmask: ASN_SET_ISPRESENT(pTest_structure_2, Test_structure_2_PR_x) */
unsigned int _presence_map
......@@ -461,7 +461,7 @@ struct Test_structure_2;
/*** <<< TYPE-DECLS [Test-structure-3] >>> ***/
typedef struct Test_structure_3 {
struct Test_structure_2 *m1 /* OPTIONAL */;
struct Test_structure_2 *m1; /* OPTIONAL */
/* Presence bitmask: ASN_SET_ISPRESENT(pTest_structure_3, Test_structure_3_PR_x) */
unsigned int _presence_map
......
......@@ -1901,17 +1901,17 @@ typedef enum enum_c {
/*** <<< TYPE-DECLS [Sequence] >>> ***/
typedef struct Sequence {
Int1_t *int1_c /* DEFAULT 3 */;
Int1_t *int1_c; /* DEFAULT 3 */
Int4_t int4;
Int4_t int4_c;
BOOLEAN_t *Bool /* DEFAULT 1 */;
BOOLEAN_t *Bool; /* DEFAULT 1 */
ENUMERATED_t enum_c;
NULL_t *null /* OPTIONAL */;
NULL_t *null; /* OPTIONAL */
/*
* This type is extensible,
* possible extensions are below.
*/
Int5_t *int5_c /* OPTIONAL */;
Int5_t *int5_c; /* OPTIONAL */
/* Context for parsing across buffer boundaries */
asn_struct_ctx_t _asn_ctx;
......
......@@ -2126,17 +2126,17 @@ typedef enum enum_c {
/*** <<< TYPE-DECLS [Sequence] >>> ***/
typedef struct Sequence {
Int1_t *int1_c /* DEFAULT 3 */;
Int1_t *int1_c; /* DEFAULT 3 */
Int4_t int4;
Int4_t int4_c;
BOOLEAN_t *Bool /* DEFAULT 1 */;
BOOLEAN_t *Bool; /* DEFAULT 1 */
long enum_c;
NULL_t *null /* OPTIONAL */;
NULL_t *null; /* OPTIONAL */
/*
* This type is extensible,
* possible extensions are below.
*/
Int5_t *int5_c /* OPTIONAL */;
Int5_t *int5_c; /* OPTIONAL */
/* Context for parsing across buffer boundaries */
asn_struct_ctx_t _asn_ctx;
......
......@@ -82,7 +82,7 @@ asn_TYPE_descriptor_t asn_DEF_T1 = {
typedef struct T2 {
INTEGER_t i;
ANY_t *any /* OPTIONAL */;
ANY_t *any; /* OPTIONAL */
/* Context for parsing across buffer boundaries */
asn_struct_ctx_t _asn_ctx;
......
......@@ -371,7 +371,7 @@ asn_TYPE_descriptor_t asn_DEF_T = {
typedef struct Ts {
T2_t m1;
T3_t *m2 /* OPTIONAL */;
T3_t *m2; /* OPTIONAL */
T3_t m3;
/* Context for parsing across buffer boundaries */
......
......@@ -371,7 +371,7 @@ asn_TYPE_descriptor_t asn_DEF_T = {
typedef struct Ts {
T2_t m1;
T3_t *m2 /* OPTIONAL */;
T3_t *m2; /* OPTIONAL */
T3_t m3;
/* Context for parsing across buffer boundaries */
......
......@@ -271,8 +271,8 @@ struct Sequence;
typedef struct Sequence {
INTEGER_t integer;
struct Sequence *sequence /* OPTIONAL */;
BIT_STRING_t *bits /* OPTIONAL */;
struct Sequence *sequence; /* OPTIONAL */
BIT_STRING_t *bits; /* OPTIONAL */
UTF8String_t string;
/* Context for parsing across buffer boundaries */
......@@ -384,7 +384,7 @@ typedef enum Set_PR {
typedef struct Set {
RELATIVE_OID_t roid;
OCTET_STRING_t *opaque /* OPTIONAL */;
OCTET_STRING_t *opaque; /* OPTIONAL */
/* Presence bitmask: ASN_SET_ISPRESENT(pSet, Set_PR_x) */
unsigned int _presence_map
......@@ -484,7 +484,7 @@ typedef enum Enum {
/*** <<< TYPE-DECLS [ExtensibleSet] >>> ***/
typedef struct ExtensibleSet {
UTF8String_t *string /* OPTIONAL */;
UTF8String_t *string; /* OPTIONAL */
/*
* This type is extensible,
* possible extensions are below.
......@@ -620,12 +620,12 @@ asn_TYPE_descriptor_t asn_DEF_ExtensibleSet = {
/*** <<< TYPE-DECLS [ExtensibleSequence] >>> ***/
typedef struct ExtensibleSequence {
UTF8String_t *string /* OPTIONAL */;
UTF8String_t *string; /* OPTIONAL */
/*
* This type is extensible,
* possible extensions are below.
*/
INTEGER_t *integer /* OPTIONAL */;
INTEGER_t *integer; /* OPTIONAL */
GeneralizedTime_t *gtime;
/* Context for parsing across buffer boundaries */
......@@ -711,12 +711,12 @@ asn_TYPE_descriptor_t asn_DEF_ExtensibleSequence = {
/*** <<< TYPE-DECLS [ExtensibleSequence2] >>> ***/
typedef struct ExtensibleSequence2 {
UTF8String_t *string /* OPTIONAL */;
UTF8String_t *string; /* OPTIONAL */
/*
* This type is extensible,
* possible extensions are below.
*/
INTEGER_t *integer /* OPTIONAL */;
INTEGER_t *integer; /* OPTIONAL */
/* Context for parsing across buffer boundaries */
asn_struct_ctx_t _asn_ctx;
......
......@@ -181,8 +181,8 @@ typedef struct Epyt {
/* Context for parsing across buffer boundaries */
asn_struct_ctx_t _asn_ctx;
} stype;
struct Type *type /* OPTIONAL */;
struct Ypet *ypet /* OPTIONAL */;
struct Type *type; /* OPTIONAL */
struct Ypet *ypet; /* OPTIONAL */
/* Context for parsing across buffer boundaries */
asn_struct_ctx_t _asn_ctx;
......@@ -330,7 +330,7 @@ struct Epyt;
typedef struct Ypet {
struct Epyt *epyt;
INTEGER_t *plain /* DEFAULT 7 */;
INTEGER_t *plain; /* DEFAULT 7 */
struct senums {
A_SET_OF(EnumType_t) list;
......
......@@ -8,13 +8,13 @@
/*** <<< TYPE-DECLS [TestType] >>> ***/
typedef struct TestType_16P0 {
long common /* DEFAULT 0 */;
long common; /* DEFAULT 0 */
/* Context for parsing across buffer boundaries */
asn_struct_ctx_t _asn_ctx;
} TestType_16P0_t;
typedef struct TestType_16P1 {
BOOLEAN_t common /* DEFAULT 0 */;
BOOLEAN_t common; /* DEFAULT 0 */
/* Context for parsing across buffer boundaries */
asn_struct_ctx_t _asn_ctx;
......
......@@ -587,7 +587,7 @@ typedef struct Member {
long Int;
struct Set *set;
struct Sequence *seq;
struct Set *set2 /* OPTIONAL */;
struct Set *set2; /* OPTIONAL */
/*
* This type is extensible,
* possible extensions are below.
......@@ -752,13 +752,13 @@ struct Set;
typedef struct Sequence {
long a;
struct Sequence *seq /* OPTIONAL */;
struct Sequence *seq; /* OPTIONAL */
/*
* This type is extensible,
* possible extensions are below.
*/
long *b;
struct Set *set /* OPTIONAL */;
struct Set *set; /* OPTIONAL */
/* Context for parsing across buffer boundaries */
asn_struct_ctx_t _asn_ctx;
......@@ -910,7 +910,7 @@ struct Beta;
typedef struct Alpha {
struct Beta *a;
struct b {
struct Beta *b /* OPTIONAL */;
struct Beta *b; /* OPTIONAL */
/* Context for parsing across buffer boundaries */
asn_struct_ctx_t _asn_ctx;
......@@ -1039,8 +1039,8 @@ struct Gamma;
/*** <<< TYPE-DECLS [Beta] >>> ***/
typedef struct Beta {
struct Alpha *b /* OPTIONAL */;
struct Gamma *g /* OPTIONAL */;
struct Alpha *b; /* OPTIONAL */
struct Gamma *g; /* OPTIONAL */
/* Context for parsing across buffer boundaries */
asn_struct_ctx_t _asn_ctx;
......
......@@ -586,7 +586,7 @@ typedef struct Member {
INTEGER_t Int;
struct Set *set;
struct Sequence *seq;
struct Set *set2 /* OPTIONAL */;
struct Set *set2; /* OPTIONAL */
/*
* This type is extensible,
* possible extensions are below.
......@@ -751,13 +751,13 @@ struct Set;
typedef struct Sequence {
INTEGER_t a;
struct Sequence *seq /* OPTIONAL */;
struct Sequence *seq; /* OPTIONAL */
/*
* This type is extensible,
* possible extensions are below.
*/
INTEGER_t *b;
struct Set *set /* OPTIONAL */;
struct Set *set; /* OPTIONAL */
/* Context for parsing across buffer boundaries */
asn_struct_ctx_t _asn_ctx;
......@@ -909,7 +909,7 @@ struct Beta;
typedef struct Alpha {
struct Beta *a;
struct b {
struct Beta *b /* OPTIONAL */;
struct Beta *b; /* OPTIONAL */
/* Context for parsing across buffer boundaries */
asn_struct_ctx_t _asn_ctx;
......@@ -1038,8 +1038,8 @@ struct Gamma;
/*** <<< TYPE-DECLS [Beta] >>> ***/
typedef struct Beta {
struct Alpha *b /* OPTIONAL */;
struct Gamma *g /* OPTIONAL */;
struct Alpha *b; /* OPTIONAL */
struct Gamma *g; /* OPTIONAL */
/* Context for parsing across buffer boundaries */
asn_struct_ctx_t _asn_ctx;
......
......@@ -27,14 +27,14 @@ typedef enum TestSet_PR {
typedef struct TestSet {
VisibleString_t m0;
VisibleString_t *m1 /* OPTIONAL */;
VisibleString_t *m1; /* OPTIONAL */
VisibleString_t m2;
VisibleString_t m3;
VisibleString_t *m4 /* OPTIONAL */;
VisibleString_t *m4; /* OPTIONAL */
VisibleString_t m5;
VisibleString_t m6;
VisibleString_t m7;
VisibleString_t *m8 /* OPTIONAL */;
VisibleString_t *m8; /* OPTIONAL */
VisibleString_t m9;
/*
* This type is extensible,
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment