Changeset 12869 in project
- Timestamp:
- 12/22/08 10:02:39 (12 years ago)
- Location:
- chicken/trunk
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
chicken/trunk/runtime.c
r12838 r12869 2707 2707 mark(&gcrp->value); 2708 2708 2709 /* mark finalizer procedures: */ 2710 for(flist = finalizer_list; flist != NULL; flist = flist->next) 2711 mark(&flist->finalizer); 2712 2709 2713 mark_system_globals(); 2710 2714 } … … 2771 2775 for(flist = finalizer_list; flist != NULL; flist = flist->next) { 2772 2776 mark(&flist->item); 2773 mark(&flist->finalizer);2774 2777 ++fcount; 2775 2778 } … … 2781 2784 j = fcount = 0; 2782 2785 2783 for(flist = finalizer_list; flist != NULL; flist = flist->next)2784 mark(&flist->finalizer);2785 2786 2786 for(flist = finalizer_list; flist != NULL; flist = flist->next) { 2787 2787 if(j < C_max_pending_finalizers) { … … 2798 2798 2799 2799 if(pending_finalizer_count > 0 && gc_report_flag) 2800 C_printf(C_text("[GC] finalizers pending for rescan: %d (%d live)\n"),2800 C_printf(C_text("[GC] finalizers pending: %d (%d live)\n"), 2801 2801 pending_finalizer_count, live_finalizer_count); 2802 2802 -
chicken/trunk/tests/test-finalizers.scm
r12838 r12869 10 10 x 11 11 (lambda (o) 12 (format #t "Delete: ~A ~%" o)12 (format #t "Delete: ~A (y: ~a)~%" o y-f) 13 13 (set! x-f #t))) 14 14 #t) … … 26 26 (set! x #f) 27 27 (gc #t) 28 (assert x-f)28 (assert (not x-f)) 29 29 (assert (not y-f)) 30 30 (set! y #f) 31 31 (gc #t) 32 (assert y-f) 32 33 (assert x-f)
Note: See TracChangeset
for help on using the changeset viewer.