nir/spirv: Use a C99-style initializer for structure fields

This ensures that all unknown fields get zero-initizlied so we don't have
undefined values floating around.
This commit is contained in:
Jason Ekstrand 2015-12-29 13:15:17 -08:00
parent e10b0e2b49
commit 5dd4386b92

View file

@ -587,16 +587,13 @@ vtn_handle_type(struct vtn_builder *b, SpvOp opcode,
NIR_VLA(struct glsl_struct_field, fields, count);
for (unsigned i = 0; i < num_fields; i++) {
/* TODO: Handle decorators */
val->type->members[i] =
vtn_value(b, w[i + 2], vtn_value_type_type)->type;
fields[i].type = val->type->members[i]->type;
fields[i].name = ralloc_asprintf(b, "field%d", i);
fields[i].location = -1;
fields[i].interpolation = 0;
fields[i].centroid = 0;
fields[i].sample = 0;
fields[i].matrix_layout = 2;
fields[i] = (struct glsl_struct_field) {
.type = val->type->members[i]->type,
.name = ralloc_asprintf(b, "field%d", i),
.location = -1,
};
}
struct member_decoration_ctx ctx = {