[Mesa-dev] [PATCH] glsl: Improve error message when attemping assignment to unsized array
Timothy Arceri
t_arceri at yahoo.com.au
Tue Nov 19 03:13:26 PST 2013
Signed-off-by: Timothy Arceri <t_arceri at yahoo.com.au>
---
src/glsl/ast_to_hir.cpp | 9 +++++++--
1 file changed, 7 insertions(+), 2 deletions(-)
diff --git a/src/glsl/ast_to_hir.cpp b/src/glsl/ast_to_hir.cpp
index 76b256c..73be274 100644
--- a/src/glsl/ast_to_hir.cpp
+++ b/src/glsl/ast_to_hir.cpp
@@ -696,9 +696,14 @@ validate_assignment(struct _mesa_glsl_parse_state *state,
* Note: Whole-array assignments are not permitted in GLSL 1.10, but this
* is handled by ir_dereference::is_lvalue.
*/
- if (is_initializer && lhs_type->is_unsized_array() && rhs->type->is_array()
+ if (lhs_type->is_unsized_array() && rhs->type->is_array()
&& (lhs_type->element_type() == rhs->type->element_type())) {
- return rhs;
+ if (is_initializer) {
+ return rhs;
+ } else {
+ _mesa_glsl_error(&loc, state,
+ "implicitly sized arrays cannot be assigned to");
+ }
}
/* Check for implicit conversion in GLSL 1.20 */
--
1.8.3.1
More information about the mesa-dev
mailing list