From: Ian Romanick Date: Sat, 8 Jan 2011 00:53:07 +0000 (-0800) Subject: glsl: Allow 'in' and 'out' when 'layout' is also available X-Git-Tag: mesa-7.11-rc1~2753 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=82c4b4f88af97395a3d1b01e1998ec828cd5d305;p=platform%2Fupstream%2Fmesa.git glsl: Allow 'in' and 'out' when 'layout' is also available All of the extensions that add the 'layout' keyword also enable (and required) the use of 'in' and 'out' with shader globals. This is related to (piglit) bugzilla #31804. NOTE: This is a candidate for the 7.9 and 7.10 branches. --- diff --git a/src/glsl/ast_to_hir.cpp b/src/glsl/ast_to_hir.cpp index a833be1..d70978c 100644 --- a/src/glsl/ast_to_hir.cpp +++ b/src/glsl/ast_to_hir.cpp @@ -2088,9 +2088,12 @@ ast_declarator_list::hir(exec_list *instructions, * * Local variables can only use the qualifier const." * - * This is relaxed in GLSL 1.30. + * This is relaxed in GLSL 1.30. It is also relaxed by any extension + * that adds the 'layout' keyword. */ - if (state->language_version < 130) { + if ((state->language_version < 130) + && !state->ARB_explicit_attrib_location_enable + && !state->ARB_fragment_coord_conventions_enable) { if (this->type->qualifier.flags.q.out) { _mesa_glsl_error(& loc, state, "`out' qualifier in declaration of `%s' "