--- /dev/null
+group declarations "Declarations"
+
+ case missing_variable_name
+ version 330
+ both ""
+ #version 330
+ ${DECLARATIONS}
+ void main()
+ {
+ int;
+ ${OUTPUT}
+ }
+ ""
+ end
+
+ case comma_preceding_variable
+ version 330
+ both ""
+ #version 330
+ ${DECLARATIONS}
+ void main()
+ {
+ int ,a;
+ ${OUTPUT}
+ }
+ ""
+ end
+
+ case comma_following_variable
+ version 330
+ expect compile_fail
+ both ""
+ #version 330
+ ${DECLARATIONS}
+ void main()
+ {
+ int a,;
+ ${OUTPUT}
+ }
+ ""
+ end
+
+ case struct_missing_attribute_name
+ version 330
+ expect compile_fail
+ both ""
+ #version 330
+ ${DECLARATIONS}
+ void main()
+ {
+ struct Data { int; };
+ ${OUTPUT}
+ }
+ ""
+ end
+
+ case struct_comma_preceding_attribute
+ version 330
+ expect compile_fail
+ both ""
+ #version 330
+ ${DECLARATIONS}
+ void main()
+ {
+ struct Data { int ,a; };
+ ${OUTPUT}
+ }
+ ""
+ end
+
+end # invalid_declarations
--- /dev/null
+group declarations "Declarations"
+
+ case missing_variable_name
+ version 300 es
+ both ""
+ #version 300 es
+ precision mediump int;
+ ${DECLARATIONS}
+ void main()
+ {
+ int;
+ ${OUTPUT}
+ }
+ ""
+ end
+
+ case comma_preceding_variable
+ version 300 es
+ both ""
+ #version 300 es
+ precision mediump int;
+ ${DECLARATIONS}
+ void main()
+ {
+ int ,a;
+ ${OUTPUT}
+ }
+ ""
+ end
+
+ case comma_following_variable
+ version 300 es
+ expect compile_fail
+ both ""
+ #version 300 es
+ precision mediump int;
+ ${DECLARATIONS}
+ void main()
+ {
+ int a,;
+ ${OUTPUT}
+ }
+ ""
+ end
+
+ case struct_missing_attribute_name
+ version 300 es
+ expect compile_fail
+ both ""
+ #version 300 es
+ precision mediump int;
+ ${DECLARATIONS}
+ void main()
+ {
+ struct Data { int; };
+ ${OUTPUT}
+ }
+ ""
+ end
+
+ case struct_comma_preceding_attribute
+ version 300 es
+ expect compile_fail
+ both ""
+ #version 300 es
+ precision mediump int;
+ ${DECLARATIONS}
+ void main()
+ {
+ struct Data { int ,a; };
+ ${OUTPUT}
+ }
+ ""
+ end
+
+end # invalid_declarations
KHR-GL33.shaders.arrays.invalid.constructor_c-style1_fragment
KHR-GL33.shaders.arrays.invalid.constructor_c-style2_vertex
KHR-GL33.shaders.arrays.invalid.constructor_c-style2_fragment
+KHR-GL33.shaders.declarations.declarations.missing_variable_name_vertex
+KHR-GL33.shaders.declarations.declarations.missing_variable_name_fragment
+KHR-GL33.shaders.declarations.declarations.comma_preceding_variable_vertex
+KHR-GL33.shaders.declarations.declarations.comma_preceding_variable_fragment
+KHR-GL33.shaders.declarations.declarations.comma_following_variable_vertex
+KHR-GL33.shaders.declarations.declarations.comma_following_variable_fragment
+KHR-GL33.shaders.declarations.declarations.struct_missing_attribute_name_vertex
+KHR-GL33.shaders.declarations.declarations.struct_missing_attribute_name_fragment
+KHR-GL33.shaders.declarations.declarations.struct_comma_preceding_attribute_vertex
+KHR-GL33.shaders.declarations.declarations.struct_comma_preceding_attribute_fragment
KHR-GL33.shaders.fragdepth.write.no_write
KHR-GL33.shaders.fragdepth.write.const
KHR-GL33.shaders.fragdepth.write.uniform
KHR-GL40.shaders.arrays.invalid.constructor_c-style1_fragment
KHR-GL40.shaders.arrays.invalid.constructor_c-style2_vertex
KHR-GL40.shaders.arrays.invalid.constructor_c-style2_fragment
+KHR-GL40.shaders.declarations.declarations.missing_variable_name_vertex
+KHR-GL40.shaders.declarations.declarations.missing_variable_name_fragment
+KHR-GL40.shaders.declarations.declarations.comma_preceding_variable_vertex
+KHR-GL40.shaders.declarations.declarations.comma_preceding_variable_fragment
+KHR-GL40.shaders.declarations.declarations.comma_following_variable_vertex
+KHR-GL40.shaders.declarations.declarations.comma_following_variable_fragment
+KHR-GL40.shaders.declarations.declarations.struct_missing_attribute_name_vertex
+KHR-GL40.shaders.declarations.declarations.struct_missing_attribute_name_fragment
+KHR-GL40.shaders.declarations.declarations.struct_comma_preceding_attribute_vertex
+KHR-GL40.shaders.declarations.declarations.struct_comma_preceding_attribute_fragment
KHR-GL40.shaders.fragdepth.write.no_write
KHR-GL40.shaders.fragdepth.write.const
KHR-GL40.shaders.fragdepth.write.uniform
KHR-GL41.shaders.arrays.invalid.constructor_c-style1_fragment
KHR-GL41.shaders.arrays.invalid.constructor_c-style2_vertex
KHR-GL41.shaders.arrays.invalid.constructor_c-style2_fragment
+KHR-GL41.shaders.declarations.declarations.missing_variable_name_vertex
+KHR-GL41.shaders.declarations.declarations.missing_variable_name_fragment
+KHR-GL41.shaders.declarations.declarations.comma_preceding_variable_vertex
+KHR-GL41.shaders.declarations.declarations.comma_preceding_variable_fragment
+KHR-GL41.shaders.declarations.declarations.comma_following_variable_vertex
+KHR-GL41.shaders.declarations.declarations.comma_following_variable_fragment
+KHR-GL41.shaders.declarations.declarations.struct_missing_attribute_name_vertex
+KHR-GL41.shaders.declarations.declarations.struct_missing_attribute_name_fragment
+KHR-GL41.shaders.declarations.declarations.struct_comma_preceding_attribute_vertex
+KHR-GL41.shaders.declarations.declarations.struct_comma_preceding_attribute_fragment
KHR-GL41.shaders.fragdepth.write.no_write
KHR-GL41.shaders.fragdepth.write.const
KHR-GL41.shaders.fragdepth.write.uniform
KHR-GL42.shaders.arrays.invalid.constructor_c-style1_fragment
KHR-GL42.shaders.arrays.invalid.constructor_c-style2_vertex
KHR-GL42.shaders.arrays.invalid.constructor_c-style2_fragment
+KHR-GL42.shaders.declarations.declarations.missing_variable_name_vertex
+KHR-GL42.shaders.declarations.declarations.missing_variable_name_fragment
+KHR-GL42.shaders.declarations.declarations.comma_preceding_variable_vertex
+KHR-GL42.shaders.declarations.declarations.comma_preceding_variable_fragment
+KHR-GL42.shaders.declarations.declarations.comma_following_variable_vertex
+KHR-GL42.shaders.declarations.declarations.comma_following_variable_fragment
+KHR-GL42.shaders.declarations.declarations.struct_missing_attribute_name_vertex
+KHR-GL42.shaders.declarations.declarations.struct_missing_attribute_name_fragment
+KHR-GL42.shaders.declarations.declarations.struct_comma_preceding_attribute_vertex
+KHR-GL42.shaders.declarations.declarations.struct_comma_preceding_attribute_fragment
KHR-GL42.shaders.fragdepth.write.no_write
KHR-GL42.shaders.fragdepth.write.const
KHR-GL42.shaders.fragdepth.write.uniform
KHR-GL43.shaders.arrays.invalid.constructor_c-style1_fragment
KHR-GL43.shaders.arrays.invalid.constructor_c-style2_vertex
KHR-GL43.shaders.arrays.invalid.constructor_c-style2_fragment
+KHR-GL43.shaders.declarations.declarations.missing_variable_name_vertex
+KHR-GL43.shaders.declarations.declarations.missing_variable_name_fragment
+KHR-GL43.shaders.declarations.declarations.comma_preceding_variable_vertex
+KHR-GL43.shaders.declarations.declarations.comma_preceding_variable_fragment
+KHR-GL43.shaders.declarations.declarations.comma_following_variable_vertex
+KHR-GL43.shaders.declarations.declarations.comma_following_variable_fragment
+KHR-GL43.shaders.declarations.declarations.struct_missing_attribute_name_vertex
+KHR-GL43.shaders.declarations.declarations.struct_missing_attribute_name_fragment
+KHR-GL43.shaders.declarations.declarations.struct_comma_preceding_attribute_vertex
+KHR-GL43.shaders.declarations.declarations.struct_comma_preceding_attribute_fragment
KHR-GL43.shaders.fragdepth.write.no_write
KHR-GL43.shaders.fragdepth.write.const
KHR-GL43.shaders.fragdepth.write.uniform
KHR-GL44.shaders.arrays.invalid.constructor_c-style1_fragment
KHR-GL44.shaders.arrays.invalid.constructor_c-style2_vertex
KHR-GL44.shaders.arrays.invalid.constructor_c-style2_fragment
+KHR-GL44.shaders.declarations.declarations.missing_variable_name_vertex
+KHR-GL44.shaders.declarations.declarations.missing_variable_name_fragment
+KHR-GL44.shaders.declarations.declarations.comma_preceding_variable_vertex
+KHR-GL44.shaders.declarations.declarations.comma_preceding_variable_fragment
+KHR-GL44.shaders.declarations.declarations.comma_following_variable_vertex
+KHR-GL44.shaders.declarations.declarations.comma_following_variable_fragment
+KHR-GL44.shaders.declarations.declarations.struct_missing_attribute_name_vertex
+KHR-GL44.shaders.declarations.declarations.struct_missing_attribute_name_fragment
+KHR-GL44.shaders.declarations.declarations.struct_comma_preceding_attribute_vertex
+KHR-GL44.shaders.declarations.declarations.struct_comma_preceding_attribute_fragment
KHR-GL44.shaders.fragdepth.write.no_write
KHR-GL44.shaders.fragdepth.write.const
KHR-GL44.shaders.fragdepth.write.uniform
KHR-GL45.shaders.arrays.invalid.constructor_c-style1_fragment
KHR-GL45.shaders.arrays.invalid.constructor_c-style2_vertex
KHR-GL45.shaders.arrays.invalid.constructor_c-style2_fragment
+KHR-GL45.shaders.declarations.declarations.missing_variable_name_vertex
+KHR-GL45.shaders.declarations.declarations.missing_variable_name_fragment
+KHR-GL45.shaders.declarations.declarations.comma_preceding_variable_vertex
+KHR-GL45.shaders.declarations.declarations.comma_preceding_variable_fragment
+KHR-GL45.shaders.declarations.declarations.comma_following_variable_vertex
+KHR-GL45.shaders.declarations.declarations.comma_following_variable_fragment
+KHR-GL45.shaders.declarations.declarations.struct_missing_attribute_name_vertex
+KHR-GL45.shaders.declarations.declarations.struct_missing_attribute_name_fragment
+KHR-GL45.shaders.declarations.declarations.struct_comma_preceding_attribute_vertex
+KHR-GL45.shaders.declarations.declarations.struct_comma_preceding_attribute_fragment
KHR-GL45.shaders.fragdepth.write.no_write
KHR-GL45.shaders.fragdepth.write.const
KHR-GL45.shaders.fragdepth.write.uniform
KHR-GL46.shaders.arrays.invalid.constructor_c-style1_fragment
KHR-GL46.shaders.arrays.invalid.constructor_c-style2_vertex
KHR-GL46.shaders.arrays.invalid.constructor_c-style2_fragment
+KHR-GL46.shaders.declarations.declarations.missing_variable_name_vertex
+KHR-GL46.shaders.declarations.declarations.missing_variable_name_fragment
+KHR-GL46.shaders.declarations.declarations.comma_preceding_variable_vertex
+KHR-GL46.shaders.declarations.declarations.comma_preceding_variable_fragment
+KHR-GL46.shaders.declarations.declarations.comma_following_variable_vertex
+KHR-GL46.shaders.declarations.declarations.comma_following_variable_fragment
+KHR-GL46.shaders.declarations.declarations.struct_missing_attribute_name_vertex
+KHR-GL46.shaders.declarations.declarations.struct_missing_attribute_name_fragment
+KHR-GL46.shaders.declarations.declarations.struct_comma_preceding_attribute_vertex
+KHR-GL46.shaders.declarations.declarations.struct_comma_preceding_attribute_fragment
KHR-GL46.shaders.fragdepth.write.no_write
KHR-GL46.shaders.fragdepth.write.const
KHR-GL46.shaders.fragdepth.write.uniform
KHR-GLES3.shaders.arrays.invalid.constructor_c-style1_fragment
KHR-GLES3.shaders.arrays.invalid.constructor_c-style2_vertex
KHR-GLES3.shaders.arrays.invalid.constructor_c-style2_fragment
+KHR-GLES3.shaders.declarations.declarations.missing_variable_name_vertex
+KHR-GLES3.shaders.declarations.declarations.missing_variable_name_fragment
+KHR-GLES3.shaders.declarations.declarations.comma_preceding_variable_vertex
+KHR-GLES3.shaders.declarations.declarations.comma_preceding_variable_fragment
+KHR-GLES3.shaders.declarations.declarations.comma_following_variable_vertex
+KHR-GLES3.shaders.declarations.declarations.comma_following_variable_fragment
+KHR-GLES3.shaders.declarations.declarations.struct_missing_attribute_name_vertex
+KHR-GLES3.shaders.declarations.declarations.struct_missing_attribute_name_fragment
+KHR-GLES3.shaders.declarations.declarations.struct_comma_preceding_attribute_vertex
+KHR-GLES3.shaders.declarations.declarations.struct_comma_preceding_attribute_fragment
KHR-GLES3.shaders.fragdepth.write.no_write
KHR-GLES3.shaders.fragdepth.write.const
KHR-GLES3.shaders.fragdepth.write.uniform
void init(void)
{
addChild(new deqp::ShaderLibraryGroup(m_context, "arrays", "Array Tests", "gl33/arrays.test"));
+ addChild(
+ new deqp::ShaderLibraryGroup(m_context, "declarations", "Declaration Tests", "gl33/declarations.test"));
addChild(new deqp::FragDepthTests(m_context, glu::GLSL_VERSION_330));
addChild(new deqp::ShaderIndexingTests(m_context, glu::GLSL_VERSION_330));
addChild(new deqp::ShaderLoopTests(m_context, glu::GLSL_VERSION_330));
void init(void)
{
addChild(new deqp::ShaderLibraryGroup(m_context, "arrays", "Array Tests", "arrays.test"));
+ addChild(new deqp::ShaderLibraryGroup(m_context, "declarations", "Declaration Tests", "declarations.test"));
addChild(new deqp::FragDepthTests(m_context, glu::GLSL_VERSION_300_ES));
addChild(new deqp::ShaderIndexingTests(m_context, glu::GLSL_VERSION_300_ES));
addChild(new deqp::ShaderLoopTests(m_context, glu::GLSL_VERSION_300_ES));