Merge commit '29776e85da637ec4d44b2b2822d6934a50c0084b' into boehm-demers-weiser-gc
authorLudovic Courtès <ludo@gnu.org>
Wed, 10 Sep 2008 20:50:04 +0000 (22:50 +0200)
committerLudovic Courtès <ludo@gnu.org>
Wed, 10 Sep 2008 20:50:04 +0000 (22:50 +0200)
Conflicts:
libguile/gc-card.c
libguile/gc.c
libguile/gc.h
libguile/ports.c

1  2 
configure.in
libguile/Makefile.am
libguile/eval.c
libguile/fports.c
libguile/init.c
libguile/numbers.c
libguile/ports.c
libguile/srfi-14.c
libguile/threads.c
libguile/weaks.h
test-suite/Makefile.am

diff --cc configure.in
Simple merge
Simple merge
diff --cc libguile/eval.c
Simple merge
Simple merge
diff --cc libguile/init.c
Simple merge
Simple merge
@@@ -570,35 -511,13 +573,17 @@@ scm_new_port_table_entry (scm_t_bits ta
  
    entry->file_name = SCM_BOOL_F;
    entry->rw_active = SCM_PORT_NEITHER;
+   entry->port = z;
  
-   scm_i_port_table[scm_i_port_table_size] = entry;
-   scm_i_port_table_size++;
+   SCM_SET_CELL_TYPE (z, tag);
+   SCM_SETPTAB_ENTRY (z, entry);
  
-   entry->port = z;
-   SCM_SET_CELL_TYPE(z, tag);
-   SCM_SETPTAB_ENTRY(z, entry);
+   scm_hashq_set_x (scm_i_port_weak_hash, z, SCM_BOOL_F);
  
 +  /* For each new port, register a finalizer so that it port type's free
 +     function can be invoked eventually.  */
 +  register_finalizer_for_port (z);
 +
    return z;
  }
  #undef FUNC_NAME
Simple merge
Simple merge
Simple merge
Simple merge