[Piglit] [PATCH 2/2] arb_shading_language_420pack: Added some few more struct initializing tests

Andres Gomez agomez at igalia.com
Thu Aug 11 15:54:47 UTC 2016


On Tue, 2016-08-09 at 13:18 +1000, Timothy Arceri wrote:
> On Fri, 2016-08-05 at 17:43 +0300, Andres Gomez wrote:
> > This set focus on checking invalid structs
> > initializations. Specifically, adds a test to check that only
> > implicit
> > conversions are perform and vector conversions of the type vec3 to
> > vec2 through dropping the z component are not allowed.
> 
> Bit of a nit but you have both illegal and wrong in the test name, you
> only really need one or the other.
> 
> How about illegal-struct-aggregate-initializer-struct-to-bool.frag etc

Makes sense, let's rename to something more descriptive ...

> Otherwise:
> 
> Acked-by: Timothy Arceri <timothy.arceri at collabora.com>

Thanks!

> 
> > ---
> >  ...e-initializer-struct-wrong-bool-type-struct.frag | 20
> > ++++++++++++++++++++
> >  ...e-initializer-struct-wrong-struct-type-bool.frag | 20
> > ++++++++++++++++++++
> >  ...initializer-struct-wrong-struct-type-struct.frag | 21
> > +++++++++++++++++++++
> >  ...ate-initializer-struct-wrong-vec2-type-vec3.frag | 18
> > ++++++++++++++++++
> >  4 files changed, 79 insertions(+)
> >  create mode 100644
> > tests/spec/arb_shading_language_420pack/compiler/illegal-aggregate-
> > initializer-struct-wrong-bool-type-struct.frag
> >  create mode 100644
> > tests/spec/arb_shading_language_420pack/compiler/illegal-aggregate-
> > initializer-struct-wrong-struct-type-bool.frag
> >  create mode 100644
> > tests/spec/arb_shading_language_420pack/compiler/illegal-aggregate-
> > initializer-struct-wrong-struct-type-struct.frag
> >  create mode 100644
> > tests/spec/arb_shading_language_420pack/compiler/illegal-aggregate-
> > initializer-struct-wrong-vec2-type-vec3.frag
> > 
> > diff --git
> > a/tests/spec/arb_shading_language_420pack/compiler/illegal-aggregate-
> > initializer-struct-wrong-bool-type-struct.frag
> > b/tests/spec/arb_shading_language_420pack/compiler/illegal-aggregate-
> > initializer-struct-wrong-bool-type-struct.frag
> > new file mode 100644
> > index 0000000..57ec89c
> > --- /dev/null
> > +++ b/tests/spec/arb_shading_language_420pack/compiler/illegal-
> > aggregate-initializer-struct-wrong-bool-type-struct.frag
> > @@ -0,0 +1,20 @@
> > +/* [config]
> > + * expect_result: fail
> > + * glsl_version: 1.30
> > + * require_extensions: GL_ARB_shading_language_420pack
> > + * [end config]
> > + */
> > +
> > +#version 130
> > +#extension GL_ARB_shading_language_420pack: enable
> > +
> > +struct s { bool f; };
> > +
> > +void main() {
> > +    // Illegal since e.b is bool, but struct given as initializer
> > +    struct {
> > +        float a;
> > +        bool b;
> > +    } e = { 1.2, s(true) };
> > +    gl_FragColor = vec4(1.0);
> > +}
> > diff --git
> > a/tests/spec/arb_shading_language_420pack/compiler/illegal-aggregate-
> > initializer-struct-wrong-struct-type-bool.frag
> > b/tests/spec/arb_shading_language_420pack/compiler/illegal-aggregate-
> > initializer-struct-wrong-struct-type-bool.frag
> > new file mode 100644
> > index 0000000..739835d
> > --- /dev/null
> > +++ b/tests/spec/arb_shading_language_420pack/compiler/illegal-
> > aggregate-initializer-struct-wrong-struct-type-bool.frag
> > @@ -0,0 +1,20 @@
> > +/* [config]
> > + * expect_result: fail
> > + * glsl_version: 1.30
> > + * require_extensions: GL_ARB_shading_language_420pack
> > + * [end config]
> > + */
> > +
> > +#version 130
> > +#extension GL_ARB_shading_language_420pack: enable
> > +
> > +struct s { float f; };
> > +
> > +void main() {
> > +    // Illegal since e.b is struct s, but bool given as initializer
> > +    struct {
> > +        float a;
> > +        s b;
> > +    } e = { 1.2, true };
> > +    gl_FragColor = vec4(1.0);
> > +}
> > diff --git
> > a/tests/spec/arb_shading_language_420pack/compiler/illegal-aggregate-
> > initializer-struct-wrong-struct-type-struct.frag
> > b/tests/spec/arb_shading_language_420pack/compiler/illegal-aggregate-
> > initializer-struct-wrong-struct-type-struct.frag
> > new file mode 100644
> > index 0000000..ab72dfc
> > --- /dev/null
> > +++ b/tests/spec/arb_shading_language_420pack/compiler/illegal-
> > aggregate-initializer-struct-wrong-struct-type-struct.frag
> > @@ -0,0 +1,21 @@
> > +/* [config]
> > + * expect_result: fail
> > + * glsl_version: 1.30
> > + * require_extensions: GL_ARB_shading_language_420pack
> > + * [end config]
> > + */
> > +
> > +#version 130
> > +#extension GL_ARB_shading_language_420pack: enable
> > +
> > +struct s1 { float f; };
> > +struct s2 { bool f; bool g; };
> > +
> > +void main() {
> > +    // Illegal since e.b is struct s1, but a struct s2 given as
> > initializer
> > +    struct {
> > +        float a;
> > +        s1 b;
> > +    } e = { 1.2, s2(true, false) };
> > +    gl_FragColor = vec4(1.0);
> > +}
> > diff --git
> > a/tests/spec/arb_shading_language_420pack/compiler/illegal-aggregate-
> > initializer-struct-wrong-vec2-type-vec3.frag
> > b/tests/spec/arb_shading_language_420pack/compiler/illegal-aggregate-
> > initializer-struct-wrong-vec2-type-vec3.frag
> > new file mode 100644
> > index 0000000..0648f05
> > --- /dev/null
> > +++ b/tests/spec/arb_shading_language_420pack/compiler/illegal-
> > aggregate-initializer-struct-wrong-vec2-type-vec3.frag
> > @@ -0,0 +1,18 @@
> > +/* [config]
> > + * expect_result: fail
> > + * glsl_version: 1.30
> > + * require_extensions: GL_ARB_shading_language_420pack
> > + * [end config]
> > + */
> > +
> > +#version 130
> > +#extension GL_ARB_shading_language_420pack: enable
> > +
> > +void main() {
> > +    // Illegal since e.b is vec2, but a vec3 given as initializer
> > and only “Implicit Conversions.” are allowed
> > +    struct {
> > +        float a;
> > +        vec2 b;
> > +    } e = { 1.2, vec3(1.0, 0.0, 1.0) };
> > +    gl_FragColor = vec4(1.0);
> > +}
> 
-- 

Andres Gomez
Computer Science Engineer
mailto:agomez at igalia.com
http://blogs.igalia.com/agomez/category/igaliacom/
IGALIA, S.L. http://www.igalia.com
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: This is a digitally signed message part
URL: <https://lists.freedesktop.org/archives/piglit/attachments/20160811/1d1c864e/attachment.sig>


More information about the Piglit mailing list