mirror of
https://gitlab.winehq.org/wine/vkd3d.git
synced 2024-11-21 16:46:41 -08:00
vkd3d-shader/hlsl: Allow empty parameter lists to be specified as "(void)".
This commit is contained in:
parent
58445da64b
commit
cd6e8b5540
Notes:
Alexandre Julliard
2023-02-14 22:23:01 +01:00
Approved-by: Giovanni Mascellani (@giomasce) Approved-by: Francisco Casas (@fcasas) Approved-by: Henri Verbeet (@hverbeet) Approved-by: Alexandre Julliard (@julliard) Merge-Request: https://gitlab.winehq.org/wine/vkd3d/-/merge_requests/91
@ -3721,6 +3721,7 @@ static bool add_method_call(struct hlsl_ctx *ctx, struct list *instrs, struct hl
|
||||
%type <type> unnamed_struct_spec
|
||||
%type <type> struct_spec
|
||||
%type <type> type
|
||||
%type <type> type_no_void
|
||||
%type <type> typedef_type
|
||||
|
||||
%type <variable_def> type_spec
|
||||
@ -4233,6 +4234,10 @@ parameters:
|
||||
{
|
||||
memset(&$$, 0, sizeof($$));
|
||||
}
|
||||
| scope_start KW_VOID
|
||||
{
|
||||
memset(&$$, 0, sizeof($$));
|
||||
}
|
||||
| scope_start param_list
|
||||
{
|
||||
$$ = $2;
|
||||
@ -4260,7 +4265,7 @@ param_list:
|
||||
}
|
||||
|
||||
parameter:
|
||||
var_modifiers type any_identifier colon_attribute
|
||||
var_modifiers type_no_void any_identifier colon_attribute
|
||||
{
|
||||
struct hlsl_type *type;
|
||||
unsigned int modifiers = $1;
|
||||
@ -4321,7 +4326,7 @@ uav_type:
|
||||
$$ = HLSL_SAMPLER_DIM_3D;
|
||||
}
|
||||
|
||||
type:
|
||||
type_no_void:
|
||||
KW_VECTOR '<' type ',' C_INTEGER '>'
|
||||
{
|
||||
if ($3->type != HLSL_CLASS_SCALAR)
|
||||
@ -4382,10 +4387,6 @@ type:
|
||||
{
|
||||
$$ = hlsl_get_matrix_type(ctx, HLSL_TYPE_FLOAT, 4, 4);
|
||||
}
|
||||
| KW_VOID
|
||||
{
|
||||
$$ = ctx->builtin_types.Void;
|
||||
}
|
||||
| KW_SAMPLER
|
||||
{
|
||||
$$ = ctx->builtin_types.sampler[HLSL_SAMPLER_DIM_GENERIC];
|
||||
@ -4467,6 +4468,13 @@ type:
|
||||
vkd3d_free($2);
|
||||
}
|
||||
|
||||
type:
|
||||
type_no_void
|
||||
| KW_VOID
|
||||
{
|
||||
$$ = ctx->builtin_types.Void;
|
||||
}
|
||||
|
||||
declaration_statement:
|
||||
declaration
|
||||
| struct_declaration
|
||||
|
@ -149,7 +149,7 @@ void func()
|
||||
{
|
||||
}
|
||||
|
||||
[pixel shader todo]
|
||||
[pixel shader]
|
||||
|
||||
/* This is something of an internal test: we need to make sure that we use the
|
||||
* correct variables for a function's arguments and returns regardless of
|
||||
@ -176,7 +176,7 @@ float4 main() : sv_target
|
||||
}
|
||||
|
||||
[test]
|
||||
todo draw quad
|
||||
draw quad
|
||||
todo probe all rgba (0.1, 0.2, 0.3, 0.4)
|
||||
|
||||
[pixel shader]
|
||||
|
Loading…
Reference in New Issue
Block a user