From: tiffany Date: Sat, 30 Aug 2014 18:30:00 +0000 (-0600) Subject: glsl: fix assertion which fails for unsigned array indices. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=cfc42db592a7d9684d5cee8d4238a0b2dd6f0603;p=mesa.git glsl: fix assertion which fails for unsigned array indices. According to the GLSL 1.40 spec, section 5.7 Structure and Array Operations: "Array elements are accessed using an expression whose type is int or uint." Cc: Reviewed-by: Brian Paul --- diff --git a/src/glsl/lower_variable_index_to_cond_assign.cpp b/src/glsl/lower_variable_index_to_cond_assign.cpp index 7c5d80f432b..d878cb07811 100644 --- a/src/glsl/lower_variable_index_to_cond_assign.cpp +++ b/src/glsl/lower_variable_index_to_cond_assign.cpp @@ -76,7 +76,7 @@ compare_index_block(exec_list *instructions, ir_variable *index, ir_rvalue *broadcast_index = new(mem_ctx) ir_dereference_variable(index); assert(index->type->is_scalar()); - assert(index->type->base_type == GLSL_TYPE_INT); + assert(index->type->base_type == GLSL_TYPE_INT || index->type->base_type == GLSL_TYPE_UINT); assert(components >= 1 && components <= 4); if (components > 1) {