mirror of
https://git.savannah.gnu.org/git/guile.git
synced 2025-04-30 03:40:34 +02:00
hash tables have a tc7
* libguile/tags.h (scm_tc7_hashtable): Allocate a tc7 for hashtables. * libguile/hashtab.h: Adjust macros accordingly. (scm_i_hashtable_print, scm_i_hashtable_equal_p): New internal functions. (scm_hashtab_prehistory): Remove, no more need for this. * libguile/hashtab.c (scm_hash_fn_remove_x): Fix a longstanding bug. (make_hash_table): Adapt to the new hash table representation. * libguile/eq.c (scm_equal_p) * libguile/evalext.c (scm_self_evaluating_p) * libguile/print.c (iprin1) * libguile/gc.c (scm_i_tag_name): Add some tc7_hashtab cases. * libguile/init.c: Remove unused environments init functions. Remove call to hashtab_prehistory. * libguile/goops.h (scm_class_hashtable) * libguile/goops.c (scm_class_of, create_standard_classes): Have to make a class for hash tables manually, because they aren't smobs any more.
This commit is contained in:
parent
314b87163e
commit
c99de5aa27
10 changed files with 39 additions and 43 deletions
|
@ -49,9 +49,6 @@
|
|||
#include "libguile/deprecation.h"
|
||||
#include "libguile/dynl.h"
|
||||
#include "libguile/dynwind.h"
|
||||
#if 0
|
||||
#include "libguile/environments.h"
|
||||
#endif
|
||||
#include "libguile/eq.h"
|
||||
#include "libguile/error.h"
|
||||
#include "libguile/eval.h"
|
||||
|
@ -443,8 +440,6 @@ scm_i_init_guile (SCM_STACKITEM *base)
|
|||
scm_smob_prehistory ();
|
||||
scm_fluids_prehistory ();
|
||||
scm_weaks_prehistory ();
|
||||
scm_hashtab_prehistory (); /* requires storage_prehistory, and
|
||||
weaks_prehistory */
|
||||
#ifdef GUILE_DEBUG_MALLOC
|
||||
scm_debug_malloc_prehistory ();
|
||||
#endif
|
||||
|
@ -455,9 +450,6 @@ scm_i_init_guile (SCM_STACKITEM *base)
|
|||
|
||||
scm_struct_prehistory (); /* requires storage */
|
||||
scm_symbols_prehistory (); /* requires storage */
|
||||
#if 0
|
||||
scm_environments_prehistory (); /* requires storage */
|
||||
#endif
|
||||
scm_modules_prehistory (); /* requires storage and hash tables */
|
||||
scm_init_variable (); /* all bindings need variables */
|
||||
scm_init_continuations ();
|
||||
|
@ -466,9 +458,6 @@ scm_i_init_guile (SCM_STACKITEM *base)
|
|||
scm_init_gsubr ();
|
||||
scm_init_thread_procs (); /* requires gsubrs */
|
||||
scm_init_procprop ();
|
||||
#if 0
|
||||
scm_init_environments ();
|
||||
#endif
|
||||
scm_init_alist ();
|
||||
scm_init_arbiters ();
|
||||
scm_init_async ();
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue