It can be argued it makes to sense to advertise an integer system variable in GLSL levels where integers aren't handled. Signed-off-by: Olivier Galibert <galib...@pobox.com>
--- I don't really know if that's a patch we want, but otoh having gl_InstanceIDARB being a different type depending on the GLSL version would be... weird. diff --git a/src/glsl/builtin_variables.cpp b/src/glsl/builtin_variables.cpp index 03b64c9..f9a341f 100644 --- a/src/glsl/builtin_variables.cpp +++ b/src/glsl/builtin_variables.cpp @@ -888,12 +888,13 @@ generate_ARB_draw_instanced_variables(exec_list *instructions, bool warn, _mesa_glsl_parser_targets target) { - /* gl_InstanceIDARB is only available in the vertex shader. + /* gl_InstanceIDARB is only available in the vertex shader, and + * only if the glsl level can handle integers. */ if (target != vertex_shader) return; - if (state->ARB_draw_instanced_enable) { + if (state->ARB_draw_instanced_enable && state->language_version >= 130) { ir_variable *inst = add_variable(instructions, state->symbols, "gl_InstanceIDARB", glsl_type::int_type, _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev