mirror of
https://gitlab.winehq.org/wine/vkd3d.git
synced 2025-04-13 05:43:18 -07:00
vkd3d-shader: Implement hlsl_error() and hlsl_warning().
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com> Signed-off-by: Matteo Bruni <mbruni@codeweavers.com> Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com> Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
committed by
Alexandre Julliard
parent
24537d3693
commit
6124aa664f
@@ -246,7 +246,6 @@ XFAIL_TESTS = \
|
||||
tests/conditional.shader_test \
|
||||
tests/hlsl-array-dimension.shader_test \
|
||||
tests/hlsl-comma.shader_test \
|
||||
tests/hlsl-invalid.shader_test \
|
||||
tests/hlsl-majority-pragma.shader_test \
|
||||
tests/hlsl-majority-typedef.shader_test \
|
||||
tests/hlsl-return-implicit-conversion.shader_test \
|
||||
|
@@ -31,16 +31,26 @@ void hlsl_note(struct hlsl_ctx *ctx, const struct vkd3d_shader_location loc,
|
||||
/* FIXME */
|
||||
}
|
||||
|
||||
void hlsl_error(struct hlsl_ctx *ctx, const struct vkd3d_shader_location loc, const char *fmt, ...)
|
||||
void hlsl_error(struct hlsl_ctx *ctx, const struct vkd3d_shader_location loc,
|
||||
enum vkd3d_shader_error error, const char *fmt, ...)
|
||||
{
|
||||
/* FIXME */
|
||||
va_list args;
|
||||
|
||||
va_start(args, fmt);
|
||||
vkd3d_shader_verror(ctx->message_context, &loc, error, fmt, args);
|
||||
va_end(args);
|
||||
|
||||
ctx->failed = true;
|
||||
}
|
||||
|
||||
void hlsl_warning(struct hlsl_ctx *ctx, const struct vkd3d_shader_location loc, const char *fmt, ...)
|
||||
void hlsl_warning(struct hlsl_ctx *ctx, const struct vkd3d_shader_location loc,
|
||||
enum vkd3d_shader_error error, const char *fmt, ...)
|
||||
{
|
||||
/* FIXME */
|
||||
va_list args;
|
||||
|
||||
va_start(args, fmt);
|
||||
vkd3d_shader_vwarning(ctx->message_context, &loc, error, fmt, args);
|
||||
va_end(args);
|
||||
}
|
||||
|
||||
bool hlsl_add_var(struct hlsl_ctx *ctx, struct hlsl_ir_var *decl, bool local_var)
|
||||
|
@@ -546,10 +546,10 @@ struct hlsl_ir_load *hlsl_new_var_load(struct hlsl_ir_var *var, const struct vkd
|
||||
|
||||
void hlsl_message(const char *fmt, ...) VKD3D_PRINTF_FUNC(1,2) DECLSPEC_HIDDEN;
|
||||
|
||||
void hlsl_error(struct hlsl_ctx *ctx, const struct vkd3d_shader_location loc,
|
||||
const char *fmt, ...) VKD3D_PRINTF_FUNC(3, 4) DECLSPEC_HIDDEN;
|
||||
void hlsl_warning(struct hlsl_ctx *ctx, const struct vkd3d_shader_location loc,
|
||||
const char *fmt, ...) VKD3D_PRINTF_FUNC(3, 4) DECLSPEC_HIDDEN;
|
||||
void hlsl_error(struct hlsl_ctx *ctx, const struct vkd3d_shader_location loc, enum vkd3d_shader_error error,
|
||||
const char *fmt, ...) VKD3D_PRINTF_FUNC(4, 5) DECLSPEC_HIDDEN;
|
||||
void hlsl_warning(struct hlsl_ctx *ctx, const struct vkd3d_shader_location loc, enum vkd3d_shader_error error,
|
||||
const char *fmt, ...) VKD3D_PRINTF_FUNC(4, 5) DECLSPEC_HIDDEN;
|
||||
void hlsl_note(struct hlsl_ctx *ctx, const struct vkd3d_shader_location loc, enum vkd3d_shader_log_level level,
|
||||
const char *fmt, ...) VKD3D_PRINTF_FUNC(4, 5) DECLSPEC_HIDDEN;
|
||||
|
||||
|
@@ -65,7 +65,8 @@ ANY (.)
|
||||
{RESERVED4} {
|
||||
struct hlsl_ctx *ctx = yyget_extra(yyscanner);
|
||||
|
||||
hlsl_error(ctx, *yylloc, "Reserved keyword \"%s\" used.\n", yytext);
|
||||
hlsl_error(ctx, *yylloc, VKD3D_SHADER_ERROR_HLSL_INVALID_SYNTAX,
|
||||
"Reserved keyword \"%s\" used.", yytext);
|
||||
}
|
||||
|
||||
BlendState {return KW_BLENDSTATE; }
|
||||
|
File diff suppressed because it is too large
Load Diff
@@ -91,6 +91,24 @@ enum vkd3d_shader_error
|
||||
VKD3D_SHADER_WARNING_PP_UNTERMINATED_MACRO = 4304,
|
||||
VKD3D_SHADER_WARNING_PP_UNTERMINATED_IF = 4305,
|
||||
VKD3D_SHADER_WARNING_PP_DIV_BY_ZERO = 4306,
|
||||
|
||||
VKD3D_SHADER_ERROR_HLSL_INVALID_SYNTAX = 5000,
|
||||
VKD3D_SHADER_ERROR_HLSL_INVALID_MODIFIER = 5001,
|
||||
VKD3D_SHADER_ERROR_HLSL_INVALID_TYPE = 5002,
|
||||
VKD3D_SHADER_ERROR_HLSL_MODIFIES_CONST = 5003,
|
||||
VKD3D_SHADER_ERROR_HLSL_MISSING_SEMANTIC = 5004,
|
||||
VKD3D_SHADER_ERROR_HLSL_NOT_DEFINED = 5005,
|
||||
VKD3D_SHADER_ERROR_HLSL_REDEFINED = 5006,
|
||||
VKD3D_SHADER_ERROR_HLSL_WRONG_PARAMETER_COUNT = 5007,
|
||||
VKD3D_SHADER_ERROR_HLSL_INVALID_SIZE = 5008,
|
||||
VKD3D_SHADER_ERROR_HLSL_MISSING_INITIALIZER = 5009,
|
||||
VKD3D_SHADER_ERROR_HLSL_INVALID_LVALUE = 5010,
|
||||
VKD3D_SHADER_ERROR_HLSL_INVALID_WRITEMASK = 5011,
|
||||
VKD3D_SHADER_ERROR_HLSL_INVALID_INDEX = 5012,
|
||||
VKD3D_SHADER_ERROR_HLSL_INVALID_SEMANTIC = 5013,
|
||||
VKD3D_SHADER_ERROR_HLSL_INVALID_RETURN = 5014,
|
||||
|
||||
VKD3D_SHADER_WARNING_HLSL_IMPLICIT_TRUNCATION = 5300,
|
||||
};
|
||||
|
||||
enum vkd3d_shader_opcode
|
||||
|
Reference in New Issue
Block a user