glsl/ast: update rhs in addition to the var's constant_value
We continue in the code to do some more things with the rhs, including setting a constant initializer. If the type is wrong, this causes some confusion down the line, leading to assertions. This makes sure that the rhs processing continues to flow as-if the type was correct to start with (even though the state has been marked as an error state). Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=101766 Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu> Reviewed-by: Kenneth Graunke <kenneth@whitecape.org> Cc: mesa-stable@lists.freedesktop.org
This commit is contained in:
@@ -4500,7 +4500,7 @@ process_initializer(ir_variable *var, ast_declaration *decl,
|
|||||||
} else {
|
} else {
|
||||||
if (var->type->is_numeric()) {
|
if (var->type->is_numeric()) {
|
||||||
/* Reduce cascading errors. */
|
/* Reduce cascading errors. */
|
||||||
var->constant_value = type->qualifier.flags.q.constant
|
rhs = var->constant_value = type->qualifier.flags.q.constant
|
||||||
? ir_constant::zero(state, var->type) : NULL;
|
? ir_constant::zero(state, var->type) : NULL;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user