C++ compatibility
git-svn-id: https://asn1c.svn.sourceforge.net/svnroot/asn1c/trunk@583 59561ff5-6e30-0410-9f3c-9617f08c8826
diff --git a/skeletons/OCTET_STRING.c b/skeletons/OCTET_STRING.c
index 5034e42..d1b0874 100644
--- a/skeletons/OCTET_STRING.c
+++ b/skeletons/OCTET_STRING.c
@@ -135,7 +135,7 @@
nel->got = 0;
/* Retain the nel->cont_level, it's correct. */
} else {
- (void *)nel = CALLOC(1, sizeof(struct _stack_el));
+ nel = (struct _stack_el *)CALLOC(1, sizeof(struct _stack_el));
if(nel == NULL)
return NULL;
@@ -187,7 +187,8 @@
* Create the string if does not exist.
*/
if(st == NULL) {
- (void *)st = *os_structure = CALLOC(1, specs->struct_size);
+ *os_structure = CALLOC(1, specs->struct_size);
+ st = (BIT_STRING_t *)*os_structure;
if(st == NULL)
RETURN(RC_FAIL);
}
@@ -212,7 +213,7 @@
*/
ctx->ptr = _new_stack();
if(ctx->ptr) {
- (void *)stck = ctx->ptr;
+ stck = (struct _stack *)ctx->ptr;
} else {
RETURN(RC_FAIL);
}
@@ -234,7 +235,7 @@
/*
* Fill the stack with expectations.
*/
- (void *)stck = ctx->ptr;
+ stck = (struct _stack *)ctx->ptr;
sel = stck->cur_ptr;
do {
ber_tlv_tag_t tlv_tag;
@@ -409,7 +410,7 @@
NEXT_PHASE(ctx);
/* Fall through */
case 2:
- (void *)stck = ctx->ptr;
+ stck = (struct _stack *)ctx->ptr;
sel = stck->cur_ptr;
ASN_DEBUG("Phase 2: Need %ld bytes, size=%ld, alrg=%ld, wn=%d",
(long)sel->left, (long)size, (long)sel->got,
diff --git a/skeletons/asn-decoder-template.c b/skeletons/asn-decoder-template.c
index aa893fb..ba719e5 100644
--- a/skeletons/asn-decoder-template.c
+++ b/skeletons/asn-decoder-template.c
@@ -192,7 +192,7 @@
size_t newsize = (buf_size << 2) + bySize;
void *p = realloc(buffer, newsize);
if(p) {
- buffer = p;
+ buffer = (char *)p;
buf_size = newsize;
DEBUG("\tBuffer reallocated to %ld", (long)newsize);
@@ -228,7 +228,7 @@
/* prepare the file buffer */
if(fbuf_size != suggested_bufsize) {
- fbuf = realloc(fbuf, suggested_bufsize);
+ fbuf = (char *)realloc(fbuf, suggested_bufsize);
if(!fbuf) {
perror("realloc()");
exit(EX_OSERR);
diff --git a/skeletons/der_encoder.c b/skeletons/der_encoder.c
index b2763c7..62ad757 100644
--- a/skeletons/der_encoder.c
+++ b/skeletons/der_encoder.c
@@ -36,7 +36,7 @@
size_t left;
} enc_to_buf_arg;
static int encode_to_buffer_cb(const void *buffer, size_t size, void *key) {
- enc_to_buf_arg *arg = key;
+ enc_to_buf_arg *arg = (enc_to_buf_arg *)key;
if(arg->left < size)
return -1; /* Data exceeds the available buffer size */
@@ -64,7 +64,7 @@
struct_ptr, /* Pointer to the destination structure */
0, 0, encode_to_buffer_cb, &arg);
if(ec.encoded != -1) {
- assert(ec.encoded == (*buffer_size - arg.left));
+ assert(ec.encoded == (ssize_t)(*buffer_size - arg.left));
/* Return the encoded contents size */
*buffer_size = ec.encoded;
}