diff options
Diffstat (limited to 'giscanner/scannerparser.y')
-rw-r--r-- | giscanner/scannerparser.y | 24 |
1 files changed, 13 insertions, 11 deletions
diff --git a/giscanner/scannerparser.y b/giscanner/scannerparser.y index 45d67891..f21950db 100644 --- a/giscanner/scannerparser.y +++ b/giscanner/scannerparser.y @@ -728,17 +728,19 @@ struct_declaration_list struct_declaration : specifier_qualifier_list struct_declarator_list ';' { - GList *l; - $$ = NULL; - for (l = $2; l != NULL; l = l->next) { - GISourceSymbol *sym = l->data; - if ($1->storage_class_specifier & STORAGE_CLASS_TYPEDEF) { - sym->type = CSYMBOL_TYPE_TYPEDEF; - } - gi_source_symbol_merge_type (sym, gi_source_type_copy ($1)); - $$ = g_list_append ($$, sym); - } - ctype_free ($1); + GList *l; + $$ = NULL; + for (l = $2; l != NULL; l = l->next) + { + GISourceSymbol *sym = l->data; + if ($1->storage_class_specifier & STORAGE_CLASS_TYPEDEF) + sym->type = CSYMBOL_TYPE_TYPEDEF; + else + sym->type = CSYMBOL_TYPE_MEMBER; + gi_source_symbol_merge_type (sym, gi_source_type_copy ($1)); + $$ = g_list_append ($$, sym); + } + ctype_free ($1); } ; |