From: Ivan Maidanski Date: Sat, 2 Jun 2012 07:13:19 +0000 (+0400) Subject: Fix visibility of GC_clear/set_mark_bit (unhide symbols) X-Git-Tag: gc7_2c~1^2~8 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=5563e13d2b1b5c063bdabe720303d8068a07dcae;p=gc Fix visibility of GC_clear/set_mark_bit (unhide symbols) * include/private/gc_priv.h (GC_clear_mark_bit, GC_set_mark_bit): Declare as GC_API_PRIV (instead of GC_INNER) to make the symbol externally visible to 3rd-party software (e.g., ECL). * mark.c (GC_set_mark_bit, GC_clear_mark_bit): Remove GC_INNER (to match the declaration). --- diff --git a/include/private/gc_priv.h b/include/private/gc_priv.h index 8eefb70e..5afa916a 100644 --- a/include/private/gc_priv.h +++ b/include/private/gc_priv.h @@ -1905,8 +1905,8 @@ GC_EXTERN GC_bool GC_print_back_height; /* Slow/general mark bit manipulation: */ GC_API_PRIV GC_bool GC_is_marked(ptr_t p); -GC_INNER void GC_clear_mark_bit(ptr_t p); -GC_INNER void GC_set_mark_bit(ptr_t p); +GC_API_PRIV void GC_clear_mark_bit(ptr_t p); +GC_API_PRIV void GC_set_mark_bit(ptr_t p); /* Stubborn objects: */ void GC_read_changed(void); /* Analogous to GC_read_dirty */ diff --git a/mark.c b/mark.c index 41a7af52..746f1bd5 100644 --- a/mark.c +++ b/mark.c @@ -187,7 +187,7 @@ static void clear_marks_for_block(struct hblk *h, word dummy) } /* Slow but general routines for setting/clearing/asking about mark bits */ -GC_INNER void GC_set_mark_bit(ptr_t p) +void GC_set_mark_bit(ptr_t p) { struct hblk *h = HBLKPTR(p); hdr * hhdr = HDR(h); @@ -199,7 +199,7 @@ GC_INNER void GC_set_mark_bit(ptr_t p) } } -GC_INNER void GC_clear_mark_bit(ptr_t p) +void GC_clear_mark_bit(ptr_t p) { struct hblk *h = HBLKPTR(p); hdr * hhdr = HDR(h);