glsl: Allow shader interface blocks in GLSL ES

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Timothy Arceri <timothy.arceri@collabora.com>
Reviewed-by: Alejandro Piñeiro <apinheiro@igalia.com>
This commit is contained in:
Ian Romanick
2016-05-11 18:24:32 -07:00
parent 7a3093efcc
commit 660240da9e
+10 -4
View File
@@ -895,10 +895,16 @@ _mesa_ast_process_interface_block(YYLTYPE *locp,
"required for defining uniform blocks");
}
} else {
if (state->es_shader || state->language_version < 150) {
_mesa_glsl_error(locp, state,
"#version 150 required for using "
"interface blocks");
if (!state->has_shader_io_blocks()) {
if (state->es_shader) {
_mesa_glsl_error(locp, state,
"GL_OES_shader_io_blocks or #version 320 "
"required for using interface blocks");
} else {
_mesa_glsl_error(locp, state,
"#version 150 required for using "
"interface blocks");
}
}
}