[Mesa-dev] [PATCH 05/12] glsl parser: on desktop GL require GLSL 150 for instance names
Jordan Justen
jordan.l.justen at intel.com
Tue Mar 12 13:35:43 PDT 2013
Interface blocks in GLSL 150 allow an instance name to be used.
Signed-off-by: Jordan Justen <jordan.l.justen at intel.com>
---
src/glsl/glsl_parser.yy | 15 ++++++++++-----
1 file changed, 10 insertions(+), 5 deletions(-)
diff --git a/src/glsl/glsl_parser.yy b/src/glsl/glsl_parser.yy
index 8e6b04d..1fd8cc2 100644
--- a/src/glsl/glsl_parser.yy
+++ b/src/glsl/glsl_parser.yy
@@ -1953,11 +1953,16 @@ basic_interface_block:
* the same language versions, we don't have to explicitly
* version-check both things.
*/
- if (block->instance_name != NULL
- && !(state->language_version == 300 && state->es_shader)) {
- _mesa_glsl_error(& @1, state,
- "#version 300 es required for using uniform "
- "blocks with an instance name\n");
+ if (block->instance_name != NULL) {
+ if(state->es_shader && state->language_version < 300) {
+ _mesa_glsl_error(& @1, state,
+ "#version 300 es required for using uniform "
+ "blocks with an instance name\n");
+ } else if (!state->es_shader && state->language_version < 150) {
+ _mesa_glsl_error(& @1, state,
+ "#version 150 required for using uniform "
+ "blocks with an instance name\n");
+ }
}
unsigned interface_type_mask, interface_type_flags;
--
1.7.10.4
More information about the mesa-dev
mailing list