From 0f4b2a0a23650d8f773c53d84cb2ead1f6d4fc8e Mon Sep 17 00:00:00 2001 From: Ian Romanick Date: Tue, 25 Jan 2011 12:06:18 -0800 Subject: linker: Propagate max_array_access while linking functions Update the max_array_access of a global as functions that use that global are pulled into the linked shader. Fixes piglit test glsl-fs-implicit-array-size-01 and bugzilla #33219. NOTE: This is a candidate for the 7.9 and 7.10 branches. --- src/glsl/linker.cpp | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) (limited to 'src/glsl/linker.cpp') diff --git a/src/glsl/linker.cpp b/src/glsl/linker.cpp index 58b029460e..bf7a56353a 100644 --- a/src/glsl/linker.cpp +++ b/src/glsl/linker.cpp @@ -356,11 +356,8 @@ cross_validate_globals(struct gl_shader_program *prog, && (var->type->fields.array == existing->type->fields.array) && ((var->type->length == 0) || (existing->type->length == 0))) { - if (existing->type->length == 0) { + if (var->type->length != 0) { existing->type = var->type; - existing->max_array_access = - MAX2(existing->max_array_access, - var->max_array_access); } } else { linker_error_printf(prog, "%s `%s' declared as type " -- cgit v1.2.3