diff options
Diffstat (limited to 'scripts/genksyms/parse.y')
-rw-r--r-- | scripts/genksyms/parse.y | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/scripts/genksyms/parse.y b/scripts/genksyms/parse.y index a783ad4e2b5..23c39998ad8 100644 --- a/scripts/genksyms/parse.y +++ b/scripts/genksyms/parse.y @@ -58,6 +58,13 @@ static void record_compound(struct string_list **keyw, enum symbol_type type) { struct string_list *b = *body, *i = *ident, *r; + + if (i->in_source_file) { + remove_node(keyw); + (*ident)->tag = type; + remove_list(body, ident); + return; + } r = copy_node(i); r->tag = type; r->next = (*keyw)->next; *body = r; (*keyw)->next = NULL; add_symbol(i->string, type, b, is_extern); |