Vector *gc_alloc_vector(int size) { Vector *v = gc_alloc_space(sizeof(Vector) + size * sizeof(double)+1); v->header.marked = 0; v->length = size; v->name = "Vector"; memset(v->data, 0, size*sizeof(double)); gc_add_objects(v); return v; }
String *gc_alloc_string(int size) { String *s; s = (String *) gc_alloc_space(sizeof (String) + size + 1); s->header.marked = 0; memset(s->str, 0, size); s->length = size; s->name = "String"; gc_add_objects(s); return s; }
Vector *gc_alloc_vector(int size) { Vector *v = gc_alloc(sizeof(Vector) + size * sizeof(double)+1); if(DEBUG) printf("gc allocate vector @%p\n",v); v->header.marked = 1; v->header.size = size; v->name = "Vector"; memset(v->data, 0, size*sizeof(double)); gc_add_objects(v); return v; }
String *gc_alloc_string(int size) { String *s; s = (String *) gc_alloc(sizeof (String) + size + 1); if(DEBUG) printf("gc allocate string @%p\n",s); s->header.marked = 1; memset(s->str, 0, size); s->header.size = size; s->name = "String"; gc_add_objects(s); return s; }