Index: /trunk/source/lisp-kernel/gc-common.c
===================================================================
--- /trunk/source/lisp-kernel/gc-common.c	(revision 8419)
+++ /trunk/source/lisp-kernel/gc-common.c	(revision 8420)
@@ -751,5 +751,5 @@
 
 void
-install_weak_mark_functions(int set) {
+install_weak_mark_functions(natural set) {
   switch(set) {
   case 0:
@@ -990,5 +990,4 @@
 #endif
 
-int weak_hash_toggle = 0;
 
 void 
@@ -1008,6 +1007,7 @@
   natural static_dnodes;
 
-  install_weak_mark_functions(weak_hash_toggle);
-  weak_hash_toggle = 1 - weak_hash_toggle;
+  install_weak_mark_functions(lisp_global(WEAK_GC_METHOD) >> fixnumshift);
+
+
 
 #ifndef FORCE_DWS_MARK
