Branch: Tag:

1996-03-28

1996-03-28 21:33:36 by Fredrik Hübinette (Hubbe) <hubbe@hubbe.net>

garbage collect rewritten

Rev: src/array.c:1.9
Rev: src/array.h:1.6
Rev: src/gc.c:1.2
Rev: src/gc.h:1.2
Rev: src/list.c:1.3
Rev: src/list.h:1.2
Rev: src/mapping.c:1.4
Rev: src/mapping.h:1.3
Rev: src/object.c:1.8
Rev: src/object.h:1.5
Rev: src/program.c:1.8
Rev: src/program.h:1.4
Rev: src/svalue.c:1.8

20:    * Bits can be set that don't exist in the array    * though.    */ -  INT16 flags; /* flags, like gc_cycle */ +     struct svalue item[1];   };       -  + extern struct array empty_array; +    #define ITEM(X) ((X)->item)      /* These are arguments for the function 'merge' which merges two sorted
120:    struct svalue *to);   void check_array(struct array *a);   void check_all_arrays(); - void gc_check_array(struct array *a); + void gc_mark_array_as_referenced(struct array *a);   void gc_check_all_arrays(); - void gc_clear_array_marks(); + void gc_mark_all_arrays(); + void gc_free_all_unreferenced_arrays();   /* Prototypes end here */         #endif