Branch: Tag:

2000-07-04

2000-07-04 00:43:58 by Martin Stjernholm <mast@lysator.liu.se>

Expelled even the innocent zeroing of destructed object references from
the gc check pass. It's upsetting the debug checks, and it's cleaner to
do all zapping of refs in the mark/cycle check pass anyway.

Rev: src/array.c:1.74
Rev: src/gc.c:1.101
Rev: src/gc.h:1.53
Rev: src/mapping.c:1.90
Rev: src/object.c:1.131
Rev: src/svalue.c:1.81
Rev: src/svalue.h:1.60

5:   \*/      /* -  * $Id: svalue.h,v 1.59 2000/07/03 20:14:08 mast Exp $ +  * $Id: svalue.h,v 1.60 2000/07/04 00:43:58 mast Exp $    */   #ifndef SVALUE_H   #define SVALUE_H
375:   void check_short_svalue(union anything *u, TYPE_T type);   void debug_check_svalue(struct svalue *s);   void real_gc_xmark_svalues(struct svalue *s, ptrdiff_t num); - TYPE_FIELD real_gc_check_svalues(struct svalue *s, size_t num); + void real_gc_check_svalues(struct svalue *s, size_t num);   void real_gc_check_short_svalue(union anything *u, TYPE_T type); - TYPE_FIELD gc_check_weak_svalues(struct svalue *s, size_t num); + void gc_check_weak_svalues(struct svalue *s, size_t num);   void gc_check_weak_short_svalue(union anything *u, TYPE_T type); - void real_gc_mark_svalues(struct svalue *s, size_t num); - void real_gc_mark_short_svalue(union anything *u, TYPE_T type); + TYPE_FIELD real_gc_mark_svalues(struct svalue *s, size_t num); + int real_gc_mark_short_svalue(union anything *u, TYPE_T type);   TYPE_FIELD gc_mark_weak_svalues(struct svalue *s, size_t num);   int gc_mark_weak_short_svalue(union anything *u, TYPE_T type); - void real_gc_cycle_check_svalues(struct svalue *s, size_t num); - void real_gc_cycle_check_short_svalue(union anything *u, TYPE_T type); + TYPE_FIELD real_gc_cycle_check_svalues(struct svalue *s, size_t num); + int real_gc_cycle_check_short_svalue(union anything *u, TYPE_T type);   TYPE_FIELD gc_cycle_check_weak_svalues(struct svalue *s, size_t num);   int gc_cycle_check_weak_short_svalue(union anything *u, TYPE_T type);   INT32 pike_sizeof(struct svalue *s);