]> git.tdb.fi Git - libs/gl.git/blobdiff - source/glsl/spirv.cpp
Recognize increment/decrement operators as modifying the target variable
[libs/gl.git] / source / glsl / spirv.cpp
index 7bec551b166fd4b3303c23591c24886f1baac9b6..2dcc285c624a2806dab80d3a6e487783138f732f 100644 (file)
@@ -1873,8 +1873,9 @@ void SpirVGenerator::visit(Iteration &iter)
        if(iter.init_statement)
                iter.init_statement->visit(*this);
 
-       for(VariableDeclaration *v: AssignmentCollector().apply(iter))
-               variable_load_ids.erase(v);
+       for(Node *n: AssignmentCollector().apply(iter))
+               if(VariableDeclaration *var = dynamic_cast<VariableDeclaration *>(n))
+                       variable_load_ids.erase(var);
 
        Id header_id = next_id++;
        Id continue_id = next_id++;