diff --git a/skeletons/NativeInteger.c b/skeletons/NativeInteger.c index dd5c3e11d53b51be8614971295d8e24e4d0992cc..c6785c540cb8f02d8382a9ce5f64f54682338565 100644 --- a/skeletons/NativeInteger.c +++ b/skeletons/NativeInteger.c @@ -176,7 +176,8 @@ NativeInteger_decode_xer(asn_codec_ctx_t *opt_codec_ctx, int *Int = (int *)*sptr; if(!Int) { - (void *)Int = *sptr = CALLOC(1, sizeof(int)); + *sptr = CALLOC(1, sizeof(int)); + Int = (int *)*sptr; if(!Int) { rval.code = RC_FAIL; rval.consumed = 0; diff --git a/skeletons/NativeReal.c b/skeletons/NativeReal.c index ae33d6428167ea9fb60d7ba5c6586266476a2f8f..594bdb5f55ac81bb11ddde3a6b960670af6e3bf0 100644 --- a/skeletons/NativeReal.c +++ b/skeletons/NativeReal.c @@ -54,7 +54,8 @@ NativeReal_decode_ber(asn_codec_ctx_t *opt_codec_ctx, * If the structure is not there, allocate it. */ if(Dbl == NULL) { - (void *)Dbl = *dbl_ptr = CALLOC(1, sizeof(*Dbl)); + *dbl_ptr = CALLOC(1, sizeof(*Dbl)); + Dbl = (double *)*dbl_ptr; if(Dbl == NULL) { rval.code = RC_FAIL; rval.consumed = 0; @@ -156,7 +157,8 @@ NativeReal_decode_xer(asn_codec_ctx_t *opt_codec_ctx, double *Dbl = (double *)*sptr; if(!Dbl) { - (void *)Dbl = *sptr = CALLOC(1, sizeof(double)); + *sptr = CALLOC(1, sizeof(double)); + Dbl = (double *)*sptr; if(!Dbl) { rval.code = RC_FAIL; rval.consumed = 0; diff --git a/skeletons/OBJECT_IDENTIFIER.c b/skeletons/OBJECT_IDENTIFIER.c index 535e4e2653ef7f4550a6e54c5443d00bfec755b8..3f2454c3267f56a10b10002687be9356fe423eb6 100644 --- a/skeletons/OBJECT_IDENTIFIER.c +++ b/skeletons/OBJECT_IDENTIFIER.c @@ -653,7 +653,7 @@ OBJECT_IDENTIFIER_parse_arcs(const char *oid_text, ssize_t oid_txt_length, } state = ST_SKIPSPACE; if(!oid_text || oid_txt_length < -1 || (arcs_slots && !arcs)) { - if(oid_text_end) (const char *)*oid_text_end = oid_text; + if(oid_text_end) *(const char **)oid_text_end = oid_text; errno = EINVAL; return -1; } @@ -705,7 +705,7 @@ OBJECT_IDENTIFIER_parse_arcs(const char *oid_text, ssize_t oid_txt_length, } /* for() */ - if(oid_text_end) (const char *)*oid_text_end = oid_text; + if(oid_text_end) *(const char **)oid_text_end = oid_text; /* Finalize last arc */ switch(state) { diff --git a/skeletons/REAL.c b/skeletons/REAL.c index 9380c9d121f65c758ca0fb7b83d3bdd4c311c6ec..bf03db3003676d47d0f07eafef6a1b6ba817e84b 100644 --- a/skeletons/REAL.c +++ b/skeletons/REAL.c @@ -640,7 +640,7 @@ asn_double2REAL(REAL_t *st, double dbl_value) { ptr += buflen; buflen = ptr - buf; - (void *)ptr = MALLOC(buflen + 1); + ptr = (uint8_t *)MALLOC(buflen + 1); if(!ptr) return -1; memcpy(ptr, buf, buflen); diff --git a/skeletons/constr_CHOICE.c b/skeletons/constr_CHOICE.c index fac93a52ef4337d9c92c9b7e4530ddb506ab0ff0..40e99e5d90db21daa1f55d561a4115be1935c64f 100644 --- a/skeletons/constr_CHOICE.c +++ b/skeletons/constr_CHOICE.c @@ -186,7 +186,7 @@ CHOICE_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, asn_TYPE_tag2member_t key; key.el_tag = tlv_tag; - (void *)t2m = bsearch(&key, + t2m = (asn_TYPE_tag2member_t *)bsearch(&key, specs->tag2el, specs->tag2el_count, sizeof(specs->tag2el[0]), _search4tag); if(t2m) { diff --git a/skeletons/constr_SEQUENCE.c b/skeletons/constr_SEQUENCE.c index 1624abbd5d07026f505108fed5d1ee90aea0d698..bac424453f5f97d178f64f5b1ad7c114ea2c3118 100644 --- a/skeletons/constr_SEQUENCE.c +++ b/skeletons/constr_SEQUENCE.c @@ -313,7 +313,7 @@ SEQUENCE_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, asn_TYPE_tag2member_t key; key.el_tag = tlv_tag; key.el_no = edx; - (void *)t2m = bsearch(&key, + t2m = (asn_TYPE_tag2member_t *)bsearch(&key, specs->tag2el, specs->tag2el_count, sizeof(specs->tag2el[0]), _t2e_cmp); if(t2m) { diff --git a/skeletons/constr_SEQUENCE_OF.c b/skeletons/constr_SEQUENCE_OF.c index f126d78a11d7a1fa6c9fbd9a45dcccf7ee747b98..773fdd0401848469a99d6d808ad62aae7b53b14f 100644 --- a/skeletons/constr_SEQUENCE_OF.c +++ b/skeletons/constr_SEQUENCE_OF.c @@ -25,7 +25,7 @@ SEQUENCE_OF_encode_der(asn_TYPE_descriptor_t *td, void *ptr, /* * Gather the length of the underlying members sequence. */ - (void *)list = ptr; + list = (A_SEQUENCE_OF(void) *)ptr; for(edx = 0; edx < list->count; edx++) { void *memb_ptr = list->array[edx]; erval = elm->type->der_encoder(elm->type, memb_ptr, @@ -102,7 +102,7 @@ SEQUENCE_OF_encode_xer(asn_TYPE_descriptor_t *td, void *sptr, er.encoded = 0; - (void *)list = sptr; + list = (A_SEQUENCE_OF(void) *)sptr; for(i = 0; i < list->count; i++) { asn_enc_rval_t tmper; diff --git a/skeletons/constr_SET.c b/skeletons/constr_SET.c index fa86f41914bbc7dc3bc755c2836438c2e118d060..15a118f8cadda4821ffc07b776fb92dcb3babe0d 100644 --- a/skeletons/constr_SET.c +++ b/skeletons/constr_SET.c @@ -225,7 +225,7 @@ SET_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, } key.el_tag = tlv_tag; - (void *)t2m = bsearch(&key, + t2m = (asn_TYPE_tag2member_t *)bsearch(&key, specs->tag2el, specs->tag2el_count, sizeof(specs->tag2el[0]), _t2e_cmp); if(t2m) { @@ -436,7 +436,8 @@ SET_encode_der(asn_TYPE_descriptor_t *td, * Use existing, or build our own tags map. */ if(t2m_build_own) { - (void *)t2m = alloca(td->elements_count * sizeof(t2m[0])); + t2m = (asn_TYPE_tag2member_t *)alloca( + td->elements_count * sizeof(t2m[0])); if(!t2m) _ASN_ENCODE_FAILED; /* There are such platforms */ t2m_count = 0; } else { diff --git a/skeletons/constr_SET_OF.c b/skeletons/constr_SET_OF.c index 164668c85476030350b51f2709491387f74ad914..febabe1745c7e66b320bf148f96b0a692e71566f 100644 --- a/skeletons/constr_SET_OF.c +++ b/skeletons/constr_SET_OF.c @@ -214,7 +214,7 @@ SET_OF_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, case RC_OK: { A_SET_OF(void) *list; - (void *)list = st; + list = (A_SET_OF(void) *)st; if(ASN_SET_ADD(list, ctx->ptr) != 0) RETURN(RC_FAIL); else @@ -329,7 +329,7 @@ SET_OF_encode_der(asn_TYPE_descriptor_t *td, void *ptr, /* * Gather the length of the underlying members sequence. */ - (void *)list = ptr; + list = (A_SET_OF(void) *)ptr; for(edx = 0; edx < list->count; edx++) { void *memb_ptr = list->array[edx]; erval = der_encoder(elm_type, memb_ptr, 0, elm->tag, 0, 0); @@ -507,7 +507,7 @@ SET_OF_encode_xer(asn_TYPE_descriptor_t *td, void *sptr, if(!sptr) _ASN_ENCODE_FAILED; - (void *)list = sptr; + list = (A_SET_OF(void) *)sptr; if(xcan) { encs = (xer_tmp_enc_t *)MALLOC(list->count * sizeof(encs[0])); @@ -601,7 +601,7 @@ SET_OF_print(asn_TYPE_descriptor_t *td, const void *sptr, int ilevel, || cb(" ::= {", 6, app_key) < 0) return -1; - (const void *)list = sptr; + list = (const A_SET_OF(void) *)sptr; for(i = 0; i < list->count; i++) { const void *memb_ptr = list->array[i]; if(!memb_ptr) continue; @@ -630,7 +630,7 @@ SET_OF_free(asn_TYPE_descriptor_t *td, void *ptr, int contents_only) { * Could not use set_of_empty() because of (*free) * incompatibility. */ - (void *)list = ptr; + list = (A_SET_OF(void) *)ptr; for(i = 0; i < list->count; i++) { void *memb_ptr = list->array[i]; if(memb_ptr) @@ -661,7 +661,7 @@ SET_OF_constraint(asn_TYPE_descriptor_t *td, const void *sptr, return -1; } - (const void *)list = sptr; + list = (const A_SET_OF(void) *)sptr; constr = element->memb_constraints; if(!constr) constr = element->type->check_constraints;