diff -r e8563dcaefca -r 56ebe2a31b5b stage4/generate_c/generate_c_vardecl.cc --- a/stage4/generate_c/generate_c_vardecl.cc Mon Apr 03 22:06:40 2017 +0100 +++ b/stage4/generate_c/generate_c_vardecl.cc Mon Apr 03 22:18:22 2017 +0100 @@ -168,7 +168,7 @@ s4o.print("("); print_variable_prefix(); s4o.print(","); - symbol->elements[i]->accept(*this); + symbol->get_element(i)->accept(*this); s4o.print(",,temp);\n"); } return NULL; @@ -249,14 +249,14 @@ ERROR; if (defined_values_count > 0) s4o.print(","); - symbol->elements[i]->accept(*this); + symbol->get_element(i)->accept(*this); defined_values_count++; } else { - array_initial_elements_c *array_initial_element = dynamic_cast(symbol->elements[i]); + array_initial_elements_c *array_initial_element = dynamic_cast(symbol->get_element(i)); if (array_initial_element != NULL) { - symbol->elements[i]->accept(*this); + symbol->get_element(i)->accept(*this); } } current_initialization_count++; @@ -414,7 +414,7 @@ void *visit(structure_element_declaration_list_c *symbol) { void *res; for (int i = 0; i < symbol->n; i++) { - res = symbol->elements[i]->accept(*this); + res = symbol->get_element(i)->accept(*this); if (res != NULL) return res; } @@ -472,7 +472,7 @@ void *visit(structure_element_initialization_list_c *symbol) { void *res; for (int i = 0; i < symbol->n; i++) { - res = symbol->elements[i]->accept(*this); + res = symbol->get_element(i)->accept(*this); if (res != NULL) return res; } @@ -599,7 +599,7 @@ s4o.print("("); print_variable_prefix(); s4o.print(","); - symbol->elements[i]->accept(*this); + symbol->get_element(i)->accept(*this); s4o.print(",,temp);\n"); } return NULL; @@ -974,7 +974,7 @@ if (NULL == init_list) ERROR; for (int i = 0; i < init_list->n; i++) { - structure_element_initialization_c *init_list_elem = dynamic_cast(init_list->elements[i]); + structure_element_initialization_c *init_list_elem = dynamic_cast(init_list->get_element(i)); if (NULL == init_list_elem) ERROR; s4o.print("\n"); s4o.print(s4o.indent_spaces); @@ -1030,20 +1030,20 @@ print_variable_prefix(); s4o.print(","); } - list->elements[i]->accept(*this); + list->get_element(i)->accept(*this); if (wanted_varformat != local_vf) { if (wanted_varformat == localinit_vf && (current_vartype & inoutput_vt) != 0) { s4o.print(";\n"); s4o.print(s4o.indent_spaces); s4o.print("if (__"); - list->elements[i]->accept(*this); + list->get_element(i)->accept(*this); s4o.print(" != NULL) {\n"); s4o.indent_right(); s4o.print(s4o.indent_spaces); - list->elements[i]->accept(*this); + list->get_element(i)->accept(*this); s4o.print(" = *__"); - list->elements[i]->accept(*this); + list->get_element(i)->accept(*this); s4o.print(";\n"); s4o.indent_left(); s4o.print(s4o.indent_spaces); @@ -1058,7 +1058,7 @@ this->current_var_init_symbol->accept(*this); s4o.print(";\n"); s4o.print(s4o.indent_spaces); - list->elements[i]->accept(*this); + list->get_element(i)->accept(*this); s4o.print(" = temp;\n"); s4o.indent_left(); s4o.print(s4o.indent_spaces); @@ -1094,7 +1094,7 @@ s4o.print(" *__"); else s4o.print(" "); - list->elements[i]->accept(*this); + list->get_element(i)->accept(*this); /* We do not print the initial value at function declaration! * It is up to the caller to pass the correct default value * if none is specified in the ST source code @@ -1109,13 +1109,13 @@ for(int i = 0; i < list->n; i++) { if ((current_vartype & (output_vt | inoutput_vt)) != 0) { s4o.print(s4o.indent_spaces + "if (__"); - list->elements[i]->accept(*this); + list->get_element(i)->accept(*this); s4o.print(" != NULL) {\n"); s4o.indent_right(); s4o.print(s4o.indent_spaces + "*__"); - list->elements[i]->accept(*this); + list->get_element(i)->accept(*this); s4o.print(" = "); - list->elements[i]->accept(*this); + list->get_element(i)->accept(*this); s4o.print(";\n"); s4o.indent_left(); s4o.print(s4o.indent_spaces + "}\n"); @@ -1139,7 +1139,7 @@ s4o.print(FB_INIT_SUFFIX); s4o.print("(&"); this->print_variable_prefix(); - list->elements[i]->accept(*this); + list->get_element(i)->accept(*this); print_retain(); s4o.print(");"); if (this->current_var_init_symbol != NULL) { @@ -1152,7 +1152,7 @@ * __INIT_VAR(data__->my_fb.var1, __INT_LITERAL(42), retain); * __INIT_VAR(data__->my_fb.var1, __STRING_LITERAL("hello"), retain); */ - print_fb_explicit_initial_values(list->elements[i], this->current_var_init_symbol); + print_fb_explicit_initial_values(list->get_element(i), this->current_var_init_symbol); } } else if (this->current_var_init_symbol != NULL) { @@ -1160,7 +1160,7 @@ s4o.print(INIT_VAR); s4o.print("("); this->print_variable_prefix(); - list->elements[i]->accept(*this); + list->get_element(i)->accept(*this); s4o.print(","); this->current_var_init_symbol->accept(*this); print_retain(); @@ -2157,7 +2157,7 @@ if(this->resource_name != NULL) this->resource_name->accept(*this); s4o.print(","); - list->elements[i]->accept(*this); + list->get_element(i)->accept(*this); s4o.print(")\n"); } break; @@ -2174,7 +2174,7 @@ s4o.print("("); this->current_var_type_symbol->accept(*this); s4o.print(","); - list->elements[i]->accept(*this); + list->get_element(i)->accept(*this); if (this->current_var_init_symbol != NULL) { s4o.print(","); s4o.print(INITIAL_VALUE); @@ -2196,7 +2196,7 @@ this->globalnamespace->accept(*this); s4o.print("::"); } - list->elements[i]->accept(*this); + list->get_element(i)->accept(*this); if (this->current_var_init_symbol != NULL) { s4o.print(" = "); @@ -2219,7 +2219,7 @@ s4o.print("("); this->current_var_type_symbol->accept(*this); s4o.print(","); - list->elements[i]->accept(*this); + list->get_element(i)->accept(*this); s4o.print(")\n"); } break;