mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-05 22:38:05 +02:00
Fix case of a macro formal parameter matching a defined macro.
Simply need to allow for a macro name to appear in the parameter list. This makes the recently-added test pass.
This commit is contained in:
parent
3014073311
commit
7f9aa36bbc
1 changed files with 9 additions and 3 deletions
|
|
@ -93,7 +93,7 @@ _list_length (list_t *list);
|
|||
%lex-param {void *scanner}
|
||||
|
||||
%token DEFINE FUNC_MACRO IDENTIFIER NEWLINE OBJ_MACRO SPACE TOKEN UNDEF
|
||||
%type <str> FUNC_MACRO IDENTIFIER OBJ_MACRO TOKEN word word_or_symbol
|
||||
%type <str> FUNC_MACRO IDENTIFIER identifier_perhaps_macro OBJ_MACRO TOKEN word word_or_symbol
|
||||
%type <list> argument argument_list parameter_list replacement_list
|
||||
|
||||
%%
|
||||
|
|
@ -215,18 +215,24 @@ parameter_list:
|
|||
/* empty */ {
|
||||
$$ = _list_create (parser);
|
||||
}
|
||||
| IDENTIFIER {
|
||||
| identifier_perhaps_macro {
|
||||
$$ = _list_create (parser);
|
||||
_list_append_item ($$, $1);
|
||||
talloc_free ($1);
|
||||
}
|
||||
| parameter_list ',' IDENTIFIER {
|
||||
| parameter_list ',' identifier_perhaps_macro {
|
||||
_list_append_item ($1, $3);
|
||||
talloc_free ($3);
|
||||
$$ = $1;
|
||||
}
|
||||
;
|
||||
|
||||
identifier_perhaps_macro:
|
||||
IDENTIFIER { $$ = $1; }
|
||||
| FUNC_MACRO { $$ = $1; }
|
||||
| OBJ_MACRO { $$ = $1; }
|
||||
;
|
||||
|
||||
word_or_symbol:
|
||||
word { $$ = $1; }
|
||||
| '(' { $$ = xtalloc_strdup (parser, "("); }
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue