diff --git a/spirv_glsl.cpp b/spirv_glsl.cpp index 9148c8b1..85b259fa 100644 --- a/spirv_glsl.cpp +++ b/spirv_glsl.cpp @@ -3036,7 +3036,7 @@ void CompilerGLSL::emit_instruction(const Instruction &instruction) // Only splat if we have vector constructors. // Arrays and structs must be initialized properly in full. bool composite = !out_type.array.empty() || out_type.basetype == SPIRType::Struct; - bool splat = in_type.vecsize == 1 && in_type.columns == 1 && !composite; + bool splat = in_type.vecsize == 1 && in_type.columns == 1 && !composite && backend.use_constructor_splatting; if (splat) {