glsl: Propagate explicit binding information from the AST all the way to the linker
[mesa.git] / src / glsl / link_uniform_block_active_visitor.cpp
index f2f46a211308916b920ce0191eae52a7b6d41ba2..d19ce20c7826b8ca97d1915ca302da99caac4ff6 100644 (file)
@@ -46,6 +46,14 @@ process_block(void *mem_ctx, struct hash_table *ht, ir_variable *var)
       b->type = block_type;
       b->has_instance_name = var->is_interface_instance();
 
+      if (var->data.explicit_binding) {
+         b->has_binding = true;
+         b->binding = var->data.binding;
+      } else {
+         b->has_binding = false;
+         b->binding = 0;
+      }
+
       _mesa_hash_table_insert(ht, h, var->get_interface_type()->name,
                              (void *) b);
       return b;