From cd7d631c71bb1342a6607a193918ccb3289c0bbf Mon Sep 17 00:00:00 2001 From: =?utf8?q?Alejandro=20Pi=C3=B1eiro?= Date: Fri, 1 Apr 2016 09:11:15 +0200 Subject: [PATCH] glsl: do not raise unitialized variable warnings on builtins/reserved GL variables Needed because not all the built-in variables are marked as system values, so they still have the mode ir_var_auto. Right now it fixes raising the warning when gl_GlobalInvocationID and gl_LocalInvocationIndex are used. v2: use is_gl_identifier instead of filtering for some names (Ilia Mirkin) Reviewed-by: Kenneth Graunke --- src/compiler/glsl/ast_to_hir.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/compiler/glsl/ast_to_hir.cpp b/src/compiler/glsl/ast_to_hir.cpp index a031231..3fe9007 100644 --- a/src/compiler/glsl/ast_to_hir.cpp +++ b/src/compiler/glsl/ast_to_hir.cpp @@ -1905,7 +1905,8 @@ ast_expression::do_hir(exec_list *instructions, if ((var->data.mode == ir_var_auto || var->data.mode == ir_var_shader_out) && !this->is_lhs - && result->variable_referenced()->data.assigned != true) { + && result->variable_referenced()->data.assigned != true + && !is_gl_identifier(var->name)) { _mesa_glsl_warning(&loc, state, "`%s' used uninitialized", this->primary_expression.identifier); } -- 2.7.4