diff options
author | Brian Paul <brianp@vmware.com> | 2009-12-29 10:26:28 -0700 |
---|---|---|
committer | Brian Paul <brianp@vmware.com> | 2010-01-04 11:30:03 -0700 |
commit | f52dd2ab333b0bdfa1df15bffb8156350c93f892 (patch) | |
tree | c24eb95ca8bfb7afe3ae56c901198e646f55c3bb /src/mesa/shader | |
parent | 1e414df894fc70b7024eb38c812e582336014974 (diff) | |
download | external_mesa3d-f52dd2ab333b0bdfa1df15bffb8156350c93f892.zip external_mesa3d-f52dd2ab333b0bdfa1df15bffb8156350c93f892.tar.gz external_mesa3d-f52dd2ab333b0bdfa1df15bffb8156350c93f892.tar.bz2 |
glsl: use varName variable in _slang_gen_assignment()
Diffstat (limited to 'src/mesa/shader')
-rw-r--r-- | src/mesa/shader/slang/slang_codegen.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/src/mesa/shader/slang/slang_codegen.c b/src/mesa/shader/slang/slang_codegen.c index b62cfc3..372a9ac 100644 --- a/src/mesa/shader/slang/slang_codegen.c +++ b/src/mesa/shader/slang/slang_codegen.c @@ -4249,14 +4249,15 @@ _slang_gen_assignment(slang_assemble_ctx * A, slang_operation *oper) if (oper->children[0].type == SLANG_OPER_IDENTIFIER) { /* Check that var is writeable */ + const char *varName = (char *) oper->children[0].a_id; slang_variable *var = _slang_variable_locate(oper->children[0].locals, oper->children[0].a_id, GL_TRUE); if (!var) { - slang_info_log_error(A->log, "undefined variable '%s'", - (char *) oper->children[0].a_id); + slang_info_log_error(A->log, "undefined variable '%s'", varName); return NULL; } + if (var->type.qualifier == SLANG_QUAL_CONST || var->type.qualifier == SLANG_QUAL_ATTRIBUTE || var->type.qualifier == SLANG_QUAL_UNIFORM || @@ -4264,7 +4265,7 @@ _slang_gen_assignment(slang_assemble_ctx * A, slang_operation *oper) A->program->Target == GL_FRAGMENT_PROGRAM_ARB)) { slang_info_log_error(A->log, "illegal assignment to read-only variable '%s'", - (char *) oper->children[0].a_id); + varName); return NULL; } |