OSDN Git Service

glsl ast_to_hir: reject interpolation qualifiers for uniform blocks
authorJordan Justen <jordan.l.justen@intel.com>
Sun, 24 Mar 2013 00:14:37 +0000 (17:14 -0700)
committerJordan Justen <jordan.l.justen@intel.com>
Thu, 23 May 2013 16:37:11 +0000 (09:37 -0700)
Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
src/glsl/ast_to_hir.cpp

index e578019..b55d25e 100644 (file)
@@ -4063,6 +4063,12 @@ ast_process_structure_or_interface_block(exec_list *instructions,
                validate_matrix_layout_for_type(state, &loc, field_type);
          }
 
+         if (qual->flags.q.uniform && qual->has_interpolation()) {
+            _mesa_glsl_error(&loc, state,
+                             "interpolation qualifiers cannot be used "
+                             "with uniform interface blocks");
+         }
+
          if (field_type->is_matrix() ||
              (field_type->is_array() && field_type->fields.array->is_matrix())) {
             fields[i].row_major = block_row_major;