]> git.tdb.fi Git - libs/gl.git/blobdiff - source/programsyntax.h
Remove the deprecated ProgramBuilder class
[libs/gl.git] / source / programsyntax.h
index 3db059c4f4d79c4e6252537c5a1cfc27b90e223e..e7b5111ea2bfd5c411c853d99bffb32ff2f74aee 100644 (file)
@@ -20,6 +20,9 @@ struct NodeVisitor;
 
 struct Node
 {
+protected:
+       Node() { }
+       Node(const Node &) { }
 private:
        Node &operator=(const Node &);
 public:
@@ -36,6 +39,7 @@ public:
        NodePtr() { }
        NodePtr(T *p): RefPtr<T>(p) { }
        NodePtr(const NodePtr &p): RefPtr<T>(p ? p->clone() : 0) { }
+       NodePtr &operator=(const NodePtr &p) { RefPtr<T>::operator=(p); return *this; }
 
        template<typename U>
        NodePtr(const RefPtr<U> &p): RefPtr<T>(p) { }
@@ -66,6 +70,11 @@ struct FunctionDeclaration;
 
 struct Statement: Node
 {
+       unsigned source;
+       unsigned line;
+
+       Statement();
+
        virtual Statement *clone() const = 0;
 };