Properly print parameters, which have no type (identifier lists).
authorChristoph Mallon <christoph.mallon@gmx.de>
Wed, 3 Dec 2008 10:34:32 +0000 (10:34 +0000)
committerChristoph Mallon <christoph.mallon@gmx.de>
Wed, 3 Dec 2008 10:34:32 +0000 (10:34 +0000)
[r24251]

type.c

diff --git a/type.c b/type.c
index 9be93a7..98693bf 100644 (file)
--- a/type.c
+++ b/type.c
@@ -356,15 +356,19 @@ static void print_function_type_post(const function_type_t *type,
                }
        } else {
                entity_t *parameter = parameters->entities;
-               for; parameter != NULL; parameter = parameter->base.next) {
+               for (; parameter != NULL; parameter = parameter->base.next) {
                        if (first) {
                                first = false;
                        } else {
                                fputs(", ", out);
                        }
                        assert(is_declaration(parameter));
-                       print_type_ext(parameter->declaration.type, parameter->base.symbol,
-                                      NULL);
+                       const type_t *const type = parameter->declaration.type;
+                       if (type == NULL) {
+                               fputs(parameter->base.symbol->string, out);
+                       } else {
+                               print_type_ext(type, parameter->base.symbol, NULL);
+                       }
                }
        }
        if (type->variadic) {