[PATCH vkd3d 5/6] vkd3d-shader/hlsl: Factor out a variable_decl rule.
Giovanni Mascellani
gmascellani at codeweavers.com
Mon Sep 27 05:44:43 CDT 2021
Signed-off-by: Giovanni Mascellani <gmascellani at codeweavers.com>
Il 23/09/21 23:47, Zebediah Figura ha scritto:
> Signed-off-by: Zebediah Figura <zfigura at codeweavers.com>
> ---
> libs/vkd3d-shader/hlsl.y | 17 ++++++++---------
> 1 file changed, 8 insertions(+), 9 deletions(-)
>
> diff --git a/libs/vkd3d-shader/hlsl.y b/libs/vkd3d-shader/hlsl.y
> index 941f49cfe..19745e725 100644
> --- a/libs/vkd3d-shader/hlsl.y
> +++ b/libs/vkd3d-shader/hlsl.y
> @@ -1973,6 +1973,7 @@ static struct list *add_constructor(struct hlsl_ctx *ctx, struct hlsl_type *type
> %type <type> typedef_type
>
> %type <variable_def> type_spec
> +%type <variable_def> variable_decl
> %type <variable_def> variable_def
>
> %%
> @@ -2546,7 +2547,7 @@ variables_def:
> list_add_tail($$, &$3->entry);
> }
>
> -variable_def:
> +variable_decl:
> any_identifier arrays colon_attribute
> {
> $$ = hlsl_alloc(ctx, sizeof(*$$));
> @@ -2556,15 +2557,13 @@ variable_def:
> $$->semantic = $3.semantic;
> $$->reg_reservation = $3.reg_reservation;
> }
> - | any_identifier arrays colon_attribute '=' complex_initializer
> +
> +variable_def:
> + variable_decl
> + | variable_decl '=' complex_initializer
> {
> - $$ = hlsl_alloc(ctx, sizeof(*$$));
> - $$->loc = @1;
> - $$->name = $1;
> - $$->arrays = $2;
> - $$->semantic = $3.semantic;
> - $$->reg_reservation = $3.reg_reservation;
> - $$->initializer = $5;
> + $$ = $1;
> + $$->initializer = $3;
> }
>
> arrays:
>
More information about the wine-devel
mailing list