print_expression(statement->expression);
fputs(":\n", out);
}
+ print_statement(statement->label_statement);
}
static void print_declaration_statement(
void print_initializer(const initializer_t *initializer)
{
if(initializer->type == INITIALIZER_VALUE) {
- //print_expression(initializer->v.value);
+ const initializer_value_t *value = &initializer->value;
+ print_expression(value->value);
return;
}
-#if 0
assert(initializer->type == INITIALIZER_LIST);
fputs("{ ", out);
- initializer_t *iter = initializer->v.list;
- for( ; iter != NULL; iter = iter->next) {
- print_initializer(iter);
- if(iter->next != NULL) {
+ const initializer_list_t *list = &initializer->list;
+
+ for(size_t i = 0 ; i < list->len; ++i) {
+ if(i > 0) {
fputs(", ", out);
}
+ print_initializer(list->initializers[i]);
}
fputs("}", out);
-#endif
}
static void print_normal_declaration(const declaration_t *declaration)