]> git.tdb.fi Git - libs/gl.git/blobdiff - source/glsl/reflect.cpp
Take care of SPIR-V load IDs in ternary expressions
[libs/gl.git] / source / glsl / reflect.cpp
index a1ffcd3d449783caf24aa9c79d4c403199972234..643c42e79be90f51f07009df7343ce67df80f09e 100644 (file)
@@ -219,6 +219,8 @@ void TypeComparer::visit(VariableDeclaration &var)
                                r_result = false;
                                if(var1->array_size && var.array_size)
                                        compare(*var1->array_size, *var.array_size);
+                               else if(!var1->array_size && !var.array_size)
+                                       r_result = true;
                        }
                        if(r_result && var1->type_declaration!=var.type_declaration)
                                compare(*var1->type_declaration, *var.type_declaration);
@@ -346,15 +348,6 @@ void DependencyCollector::visit(VariableReference &var)
        }
 }
 
-void DependencyCollector::visit(InterfaceBlockReference &iface)
-{
-       if(iface.declaration)
-       {
-               dependencies.insert(iface.declaration);
-               iface.declaration->visit(*this);
-       }
-}
-
 void DependencyCollector::visit(FunctionCall &call)
 {
        if(call.declaration)
@@ -400,12 +393,6 @@ void AssignmentCollector::visit(VariableReference &var)
                assigned_variables.insert(var.declaration);
 }
 
-void AssignmentCollector::visit(InterfaceBlockReference &iface)
-{
-       if(assignment_target)
-               assigned_variables.insert(iface.declaration);
-}
-
 void AssignmentCollector::visit(UnaryExpression &unary)
 {
        SetFlag set_assignment(assignment_target, (unary.oper->token[1]=='+' || unary.oper->token[1]=='-'));