Whole structures are assignable

Whole arrays are assignable in GLSL 1.20 and later, but it's not clear
how to handle that within the IR because the IR is supposed to be
shading language version agnostic.
This commit is contained in:
Ian Romanick
2010-04-02 17:05:59 -07:00
parent cb9cba20a0
commit 2d946634eb

7
ir.cpp
View File

@@ -200,8 +200,11 @@ ir_dereference::is_lvalue()
if (var == NULL)
return false;
if (this->type->base_type == GLSL_TYPE_ARRAY ||
this->type->base_type == GLSL_TYPE_STRUCT)
/* Arrays are not assignable in GLSL 1.10, but in GLSL 1.20 and later they
* are.
*/
/* FINISHME: Handle GLSL 1.10 vs 1.20 differences. */
if (this->type->base_type == GLSL_TYPE_ARRAY)
return false;
if (mode == ir_reference_variable) {