construct_type_t *last = NULL;
gnu_attribute_t *attributes = NULL;
+ decl_modifiers_t modifiers = parse_attributes(&attributes);
+
/* pointers */
while(token.type == '*') {
construct_type_t *type = parse_pointer_declarator();
last->next = type;
last = type;
}
- }
- /* TODO: find out if this is correct */
- decl_modifiers_t modifiers = parse_attributes(&attributes);
+ /* TODO: find out if this is correct */
+ modifiers |= parse_attributes(&attributes);
+ }
construct_type_t *inner_types = NULL;
}
declarator_finished:
- modifiers = parse_attributes(&attributes);
+ modifiers |= parse_attributes(&attributes);
if (declaration != NULL) {
declaration->modifiers |= modifiers;
}