summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--scripts/genksyms/parse.y16
1 files changed, 10 insertions, 6 deletions
diff --git a/scripts/genksyms/parse.y b/scripts/genksyms/parse.y
index fafce939c32f..03cdd8d53c13 100644
--- a/scripts/genksyms/parse.y
+++ b/scripts/genksyms/parse.y
@@ -381,20 +381,24 @@ abstract_declarator:
;
direct_abstract_declarator:
+ direct_abstract_declarator1
+ | direct_abstract_declarator1 open_paren parameter_declaration_clause ')'
+ { $$ = $4; }
+ | open_paren parameter_declaration_clause ')'
+ { $$ = $3; }
+ ;
+
+direct_abstract_declarator1:
IDENT
{ /* For version 2 checksums, we don't want to remember
private parameter names. */
remove_node($1);
$$ = $1;
}
- | direct_abstract_declarator open_paren parameter_declaration_clause ')'
- { $$ = $4; }
- | direct_abstract_declarator open_paren error ')'
+ | direct_abstract_declarator1 open_paren error ')'
{ $$ = $4; }
- | direct_abstract_declarator BRACKET_PHRASE
+ | direct_abstract_declarator1 BRACKET_PHRASE
{ $$ = $2; }
- | open_paren parameter_declaration_clause ')'
- { $$ = $3; }
| open_paren abstract_declarator ')'
{ $$ = $3; }
| open_paren error ')'