diff --git a/compiler2/record.c b/compiler2/record.c index 6237c8a81fee64bc63a0abe3653777d0daa09635..f054413d7b2c96be42b009883a1216528fdd3dcc 100644 --- a/compiler2/record.c +++ b/compiler2/record.c @@ -751,6 +751,7 @@ char* generate_raw_coding(char* src, } src = mputprintf(src, " if (myleaf.body.node.nodes[%lu]->body.node.nodes[%d]) {\n" + " delete myleaf.body.node.nodes[%lu]->body.node.nodes[%d];\n" " myleaf.body.node.nodes[%lu]->body.node.nodes[%d] = " "new RAW_enc_tree(TRUE, myleaf.body.node.nodes[%lu], " "&(myleaf.body.node.nodes[%lu]->curr_pos), %d, %s_descr_.raw);\n" @@ -769,6 +770,7 @@ char* generate_raw_coding(char* src, "init_lengthto_fields_list(%d);\n", (unsigned long)i, sdef->elements[i].raw.lengthindex->nthfield, (unsigned long)i, sdef->elements[i].raw.lengthindex->nthfield, + (unsigned long)i, sdef->elements[i].raw.lengthindex->nthfield, (unsigned long)i, (unsigned long)i, sdef->elements[i].raw.lengthindex->nthfield, sdef->elements[i].raw.lengthindex->typedescr, (unsigned long)i, sdef->elements[i].raw.lengthindex->nthfield, @@ -829,8 +831,9 @@ char* generate_raw_coding(char* src, " int sel_field = 0;\n" " while (myleaf.body.node.nodes[%lu]->body.node.nodes[sel_field] == NULL) " "{ sel_field++; }\n" - " const TTCN_Typedescriptor_t* tmpTypeDesc = myleaf.body.node.nodes[%lu]->" + " const TTCN_Typedescriptor_t* tmpTypeDesc = myleaf.body.node.nodes[%lu]->" "body.node.nodes[sel_field]->coding_descr;\n" + " delete myleaf.body.node.nodes[%lu]->body.node.nodes[sel_field];\n" " myleaf.body.node.nodes[%lu]->body.node.nodes[sel_field] = " "new RAW_enc_tree(TRUE, myleaf.body.node.nodes[%lu], " "&(myleaf.body.node.nodes[%lu]->curr_pos), sel_field, tmpTypeDesc->raw);\n" @@ -847,7 +850,7 @@ char* generate_raw_coding(char* src, " myleaf.body.node.nodes[%lu]->body.node.nodes[sel_field]->" "calcof.lengthto.fields = init_lengthto_fields_list(%d);\n", (unsigned long)i,(unsigned long)i,(unsigned long)i,(unsigned long)i, - (unsigned long)i,(unsigned long)i,(unsigned long)i, + (unsigned long)i,(unsigned long)i,(unsigned long)i,(unsigned long)i, (unsigned long)i,sdef->elements[i].raw.lengthto_num, (unsigned long)i,sdef->elements[i].raw.unit, (unsigned long)i,sdef->elements[i].raw.lengthto_offset,