From c98deb18d5836f75cf62562f9304e4d90e0ea920 Mon Sep 17 00:00:00 2001 From: Kenneth Graunke Date: Mon, 16 Aug 2010 14:02:25 -0700 Subject: [PATCH] ast_to_hir: Reject embedded structure definitions in GLSL ES 1.00. --- src/glsl/ast_to_hir.cpp | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/glsl/ast_to_hir.cpp b/src/glsl/ast_to_hir.cpp index e767c58e097..9e639efd0ab 100644 --- a/src/glsl/ast_to_hir.cpp +++ b/src/glsl/ast_to_hir.cpp @@ -2715,6 +2715,15 @@ ast_struct_specifier::hir(exec_list *instructions, decl_list->type->specifier->hir(instructions, state); + /* Section 10.9 of the GLSL ES 1.00 specification states that + * embedded structure definitions have been removed from the language. + */ + if (state->es_shader && decl_list->type->specifier->structure != NULL) { + YYLTYPE loc = this->get_location(); + _mesa_glsl_error(&loc, state, "Embedded structure definitions are " + "not allowed in GLSL ES 1.00."); + } + const glsl_type *decl_type = decl_list->type->specifier->glsl_type(& type_name, state); -- 2.30.2