]> git.tdb.fi Git - libs/gl.git/blobdiff - source/glsl/reflect.h
Check the flat qualifier from the correct member
[libs/gl.git] / source / glsl / reflect.h
index 5b4170a9c766e460d34da7157fe84f1d68dbbeec..308d7c8038c5d59c149df472f374226110adecd3 100644 (file)
@@ -35,6 +35,7 @@ private:
        virtual void visit(UnaryExpression &);
        virtual void visit(BinaryExpression &);
        virtual void visit(TernaryExpression &);
+       virtual void visit(FunctionCall &);
        virtual void visit(BasicTypeDeclaration &);
        virtual void visit(ImageTypeDeclaration &);
        virtual void visit(StructDeclaration &);
@@ -98,7 +99,6 @@ public:
 
 private:
        virtual void visit(VariableReference &);
-       virtual void visit(InterfaceBlockReference &);
        virtual void visit(FunctionCall &);
        virtual void visit(VariableDeclaration &);
        virtual void visit(FunctionDeclaration &);
@@ -107,12 +107,16 @@ private:
 class AssignmentCollector: private TraversingVisitor
 {
 private:
-       std::set<VariableDeclaration *> assigned_variables;
+       bool assignment_target = false;
+       std::set<Node *> assigned_variables;
 
 public:
-       std::set<VariableDeclaration *> apply(Node &);
+       std::set<Node *> apply(Node &);
 
 private:
+       virtual void visit(VariableReference &);
+       virtual void visit(UnaryExpression &);
+       virtual void visit(BinaryExpression &);
        virtual void visit(Assignment &);
 };