]> git.draconx.ca Git - gob-dx.git/blobdiff - src/tree.c
Release 0.93.0
[gob-dx.git] / src / tree.c
index b92f771024fa3e21197f645b1bd039e86fa0a43e..6382d05979e56044c5e4e4161e640ab24ead2514 100644 (file)
@@ -119,7 +119,10 @@ new_argument(char *gtktype, Type *atype, GList *flags, char *name, char *get, in
 }
 
 Node *
-new_variable(int scope, Type *vtype, char *id, int line_no)
+new_variable(int scope, Type *vtype, char *id, int line_no,
+            char *destructor, int destructor_line,
+            gboolean destructor_simple,
+            char *initializer, int initializer_line)
 {
        Variable *node = (Variable *)g_new(Node,1);
        node->type = VARIABLE_NODE;
@@ -127,5 +130,24 @@ new_variable(int scope, Type *vtype, char *id, int line_no)
        node->vtype = vtype;
        node->id = id;
        node->line_no = line_no;
+       node->destructor = destructor;
+       node->destructor_line = destructor_line;
+       node->destructor_simple = destructor_simple;
+       node->initializer = initializer;
+       node->initializer_line = initializer_line;
        return (Node *)node;
 }
+
+Type *
+copy_type(Type *type)
+{
+       Node *node;
+
+       if(!type) return NULL;
+
+       node = new_type(type->stars,
+                       g_strdup(type->name),
+                       g_strdup(type->postfix));
+
+       return (Type *)node;
+}