Ensure struct varyings maintain the proper interpolation qualifier for the child fields.

TRAC #23749

Signed-off-by: Geoff Lang
Signed-off-by: Nicolas Capens
diff --git a/src/compiler/OutputHLSL.h b/src/compiler/OutputHLSL.h
index 86d68f3..ef7a3ec 100644
--- a/src/compiler/OutputHLSL.h
+++ b/src/compiler/OutputHLSL.h
@@ -180,7 +180,7 @@
     void declareInterfaceBlockField(const TType &type, const TString &name, std::vector<InterfaceBlockField>& output);
     Uniform declareUniformToList(const TType &type, const TString &name, int registerIndex, std::vector<Uniform>& output);
     void declareUniform(const TType &type, const TString &name, int index);
-    void declareVaryingToList(const TType &type, const TString &name, std::vector<Varying>& fieldsOut);
+    void declareVaryingToList(const TType &type, TQualifier baseTypeQualifier, const TString &name, std::vector<Varying>& fieldsOut);
 
     // Returns the uniform's register index
     int declareUniformAndAssignRegister(const TType &type, const TString &name);