From: Dave Airlie <[email protected]> "glsl/linker: attempt to match anonymous structures at link" introduced a fix for matching anon structs, however it didn't handle arrays of anon structs.
This adds the appropriate without_array() calls, and fixes some crashes in the CTS tessellation tests. Signed-off-by: Dave Airlie <[email protected]> --- src/compiler/glsl/link_varyings.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/compiler/glsl/link_varyings.cpp b/src/compiler/glsl/link_varyings.cpp index 708e1d1..82b3a74 100644 --- a/src/compiler/glsl/link_varyings.cpp +++ b/src/compiler/glsl/link_varyings.cpp @@ -226,9 +226,9 @@ cross_validate_types_and_qualifiers(struct gl_shader_program *prog, * fragment language." */ if (!output->type->is_array() || !is_gl_identifier(output->name)) { - bool anon_matches = output->type->is_anonymous() && + bool anon_matches = output->type->without_array()->is_anonymous() && type_to_match->is_anonymous() && - type_to_match->record_compare(output->type); + type_to_match->record_compare(output->type->without_array()); if (!anon_matches) { linker_error(prog, -- 2.5.5 _______________________________________________ mesa-dev mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/mesa-dev
