2009-10-17 Ivan Maidanski <ivmai@mail.ru>
authorivmai <ivmai>
Sat, 17 Oct 2009 21:00:46 +0000 (21:00 +0000)
committerIvan Maidanski <ivmai@mail.ru>
Tue, 26 Jul 2011 17:06:50 +0000 (21:06 +0400)
* include/private/gc_priv.h (I_HIDE_POINTERS): Define before gc.h
inclusion.
* include/private/gc_pmark.h (I_HIDE_POINTERS): Define if gc.h is
not included yet.
* finalize.c (I_HIDE_POINTERS): Don't define.
* include/private/dbg_mlc.h (I_HIDE_POINTERS): Ditto.
* misc.c (I_HIDE_POINTERS): Ditto.
* include/private/dbg_mlc.h (HIDE_POINTER, REVEAL_POINTER,
GC_hidden_pointer): Don't define if HIDE_POINTER is undefined.
* include/private/gc_pmark.h: Remove the comment about gc_priv.h
inclusion order.

ChangeLog
finalize.c
include/private/dbg_mlc.h
include/private/gc_pmark.h
include/private/gc_priv.h
misc.c

index d020707..f659251 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,19 @@
 2009-10-17  Ivan Maidanski <ivmai@mail.ru>
 
+       * include/private/gc_priv.h (I_HIDE_POINTERS): Define before gc.h
+       inclusion.
+       * include/private/gc_pmark.h (I_HIDE_POINTERS): Define if gc.h is
+       not included yet.
+       * finalize.c (I_HIDE_POINTERS): Don't define.
+       * include/private/dbg_mlc.h (I_HIDE_POINTERS): Ditto.
+       * misc.c (I_HIDE_POINTERS): Ditto.
+       * include/private/dbg_mlc.h (HIDE_POINTER, REVEAL_POINTER,
+       GC_hidden_pointer): Don't define if HIDE_POINTER is undefined.
+       * include/private/gc_pmark.h: Remove the comment about gc_priv.h
+       inclusion order.
+
+2009-10-17  Ivan Maidanski <ivmai@mail.ru>
+
        * dyn_load.c: Include gc_priv.h before using configuration
        information (MACOS).
        * dyn_load.c (GC_must_restore_redefined_dlopen): Rename to
index aca3709..ceedad1 100644 (file)
@@ -14,8 +14,8 @@
  * modified is included with the above copyright notice.
  */
 /* Boehm, February 1, 1996 1:19 pm PST */
-# define I_HIDE_POINTERS
-# include "private/gc_pmark.h"
+
+#include "private/gc_pmark.h"
 
 # ifdef FINALIZE_ON_DEMAND
     int GC_finalize_on_demand = 1;
index aa652de..684ec3f 100644 (file)
  */
 
 #ifndef _DBG_MLC_H
-
 #define _DBG_MLC_H
 
-# define I_HIDE_POINTERS
 # include "gc_priv.h"
 # ifdef KEEP_BACK_PTRS
 #   include "gc_backptr.h"
 # endif
 
-#ifndef HIDE_POINTER
-  /* Gc.h was previously included, and hence the I_HIDE_POINTERS        */
-  /* definition had no effect.  Repeat the gc.h definitions here to     */
-  /* get them anyway.                                                   */
-    typedef GC_word GC_hidden_pointer;
-#   define HIDE_POINTER(p) (~(GC_hidden_pointer)(p))
-#   define REVEAL_POINTER(p) ((void *)(HIDE_POINTER(p)))
-#endif /* HIDE_POINTER */
-
 # define START_FLAG ((word)0xfedcedcb)
 # define END_FLAG ((word)0xbcdecdef)
         /* Stored both one past the end of user object, and one before  */
index 31b5340..bad456b 100644 (file)
@@ -18,9 +18,6 @@
 /*
  * Declarations of mark stack.  Needed by marker and client supplied mark
  * routines.  Transitively include gc_priv.h.
- * (Note that gc_priv.h should not be included before this, since this
- * includes dbg_mlc.h, which wants to include gc_priv.h AFTER defining
- * I_HIDE_POINTERS.)
  */
 #ifndef GC_PMARK_H
 # define GC_PMARK_H
@@ -37,6 +34,9 @@
 #   include "dbg_mlc.h"
 # endif
 # ifndef GC_MARK_H
+#   ifndef _GC_H
+#     define I_HIDE_POINTERS /* to get HIDE_POINTER() and friends */
+#   endif
 #   include "../gc_mark.h"
 # endif
 # ifndef GC_PRIVATE_H
index 02bc359..0ea0cd1 100644 (file)
@@ -52,6 +52,7 @@
 #endif
 
 #ifndef _GC_H
+#   define I_HIDE_POINTERS /* to get HIDE_POINTER() and friends */
 #   include "../gc.h"
 #endif
 
diff --git a/misc.c b/misc.c
index 35e61a2..d7bb80d 100644 (file)
--- a/misc.c
+++ b/misc.c
  */
 /* Boehm, July 31, 1995 5:02 pm PDT */
 
-
 #include <stdio.h>
 #include <limits.h>
 #include <stdarg.h>
 
-#define I_HIDE_POINTERS /* To make GC_call_with_alloc_lock visible */
 #include "private/gc_pmark.h"
 
 #ifndef MSWINCE