glsl: Relax combinations of layout qualifiers with other qualifiers.
authorChris Forbes <chrisf@ijw.co.nz>
Thu, 12 Jun 2014 07:48:58 +0000 (19:48 +1200)
committerChris Forbes <chrisf@ijw.co.nz>
Wed, 25 Jun 2014 19:58:01 +0000 (07:58 +1200)
commitd4703f94460b4571c82167dbe29207c448aeed7c
tree47e77b9d56d45b09b53604d24687e680911fbb01
parent316dafa27d237c9b70580d8fe4591792e939bcd6
glsl: Relax combinations of layout qualifiers with other qualifiers.

Previously we disallowed any combination of layout with interpolation,
invariant, or precise qualifiers. There is very little spec guidance on
exactly which combinations should be allowed, but with ARB_sso it's
useful to allow these qualifiers with rendezvous-by-location.

Since it's unclear exactly where the layout qualifier should appear when
combined with other qualifiers, we will allow it anywhere before the
auxiliary storage qualifier.

This allows enough flexibility for all examples I've seen, while keeping
the auxiliary-storage-qualifier / storage-qualifier pair together (as
they are a single qualifier in the spec prior to
ARB_shading_language_420pack)

Signed-off-by: Chris Forbes <chrisf@ijw.co.nz>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
src/glsl/glsl_parser.yy