glsl: Emit errors or warnings when 'layout' is used with 'attribute' or 'varying'
authorIan Romanick <ian.d.romanick@intel.com>
Sat, 8 Jan 2011 00:53:59 +0000 (16:53 -0800)
committerIan Romanick <ian.d.romanick@intel.com>
Thu, 13 Jan 2011 21:38:50 +0000 (13:38 -0800)
commit4bcff0c19091c7df2b2e0bafe58addb5bae28f1a
tree532006bc9f212ecbd2245c3a061b892a06e44a77
parent82c4b4f88af97395a3d1b01e1998ec828cd5d305
glsl: Emit errors or warnings when 'layout' is used with 'attribute' or 'varying'

The specs that add 'layout' require the use of 'in' or 'out'.
However, a number of implementations, including Mesa, shipped several
of these extensions allowing the use of 'varying' and 'attribute'.
For these extensions only a warning is emitted.

This differs from the behavior of Mesa 7.10.  Mesa 7.10 would only
accept 'attribute' with 'layout(location)'.  This behavior was clearly
wrong.  Rather than carrying the broken behavior forward, we're just
doing the correct thing.

This is related to (piglit) bugzilla #31804.

NOTE: This is a candidate for the 7.9 and 7.10 branches.
src/glsl/ast_to_hir.cpp