Update of /cvsroot/agd/server/src
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv13508
Modified Files:
vars.c
Log Message:
Bitwise operators; renamed stringdup to xstrdup
Index: vars.c
===================================================================
RCS file: /cvsroot/agd/server/src/vars.c,v
retrieving revision 1.16
retrieving revision 1.17
diff -u -d -r1.16 -r1.17
--- vars.c 21 Jul 2004 11:54:01 -0000 1.16
+++ vars.c 23 Jul 2004 17:04:36 -0000 1.17
@@ -184,9 +184,9 @@
if(!v2->u.s)
buf = NULL;
else
- buf = stringdup(v2->u.s);
+ buf = xstrdup(v2->u.s);
} else if(!v2->u.s)
- buf = stringdup(v1->u.s);
+ buf = xstrdup(v1->u.s);
else {
buf = xmalloc(strlen(v1->u.s) + strlen(v2->u.s) + 1);
sprintf(buf, "%s%s", v1->u.s, v2->u.s);
@@ -257,6 +257,20 @@
return ret;
}
+variable_t *band_vars(variable_t *var1, variable_t *var2)
+{
+ variable_t *ret;
+ ret = xmalloc(sizeof(variable_t));
+ if(var1->type & T_ARRAY && var2->type & T_ARRAY) {
+ ret->type = var1->type;
+ ret->u.a = intersect_arrays(var1->u.a, var2->u.a);
+ } else {
+ ret->type = T_INT;
+ ret->u.i = var1->u.i & var2->u.i;
+ }
+ return ret;
+}
+
char *type2str(int t)
{
if(t & T_ARRAY) {
|