fputc(')', out);
}
-static
-void print_pointer_type_pre(const pointer_type_t *type)
+static void print_pointer_type_pre(const pointer_type_t *type)
{
intern_print_type_pre(type->points_to);
fputs("*", out);
intern_print_type_post(type->points_to);
}
+static void print_array_type_pre(const array_type_t *type)
+{
+ intern_print_type_pre(type->element_type);
+}
+
static void print_array_type_post(const array_type_t *type)
{
+ intern_print_type_post(type->element_type);
fputc('[', out);
if(type->is_static) {
fputs("static ", out);
fprintf(out, "%s", entry->symbol->string);
if(entry->init.initializer != NULL) {
fprintf(out, " = ");
- print_initializer(entry->init.initializer);
+ print_expression(entry->init.enum_value);
}
fprintf(out, ",\n");
}
print_pointer_type_pre((pointer_type_t*) type);
return;
case TYPE_ARRAY:
+ print_array_type_pre((array_type_t*) type);
return;
case TYPE_TYPEDEF:
print_typedef_type_pre((typedef_type_t*) type);
case ATOMIC_TYPE_FLOAT_COMPLEX:
case ATOMIC_TYPE_DOUBLE_COMPLEX:
case ATOMIC_TYPE_LONG_DOUBLE_COMPLEX:
-#endif
-#ifdef PROVIDE_IMAGINARY
case ATOMIC_TYPE_FLOAT_IMAGINARY:
case ATOMIC_TYPE_DOUBLE_IMAGINARY:
case ATOMIC_TYPE_LONG_DOUBLE_IMAGINARY:
case ATOMIC_TYPE_FLOAT_COMPLEX:
case ATOMIC_TYPE_DOUBLE_COMPLEX:
case ATOMIC_TYPE_LONG_DOUBLE_COMPLEX:
-#endif
-#ifdef PROVIDE_IMAGINARY
case ATOMIC_TYPE_FLOAT_IMAGINARY:
case ATOMIC_TYPE_DOUBLE_IMAGINARY:
case ATOMIC_TYPE_LONG_DOUBLE_IMAGINARY: