Hello, Ken Raeburn <raeb...@raeburn.org> writes:
> The SCM_GC_MARK_P macro doesn't exist any more, but is still mentioned > in a few places. With SCM_DEBUG defined, one of them actually gets > compiled. While looking at this, I also noticed three macros in > deprecated.h (which were there in 1.8) which use non-existent macros > including SCM_GC_MARK_P, and deleted those too. I didn't touch the > other uses of SCM_GC_MARK_P in futures.c. Looks good to me. In addition we could add this to ‘deprecated.h’: #define SCM_GC_MARK_P scm_gc_mark_p SCM_DEPRECATED int scm_gc_mark_p (SCM obj); and: int scm_gc_mark_p (SCM obj) { /* `GC_is_visible ()' aborts if the given pointer is not visible to the GC. */ GC_is_visible (SCM2PTR (obj)); return 1; } What do you think? > Related but not addressed here: Several places still check > scm_gc_running_p and conditionally execute code (or not), but it's now > defined as a macro always expanding to 0. Likewise, we could leave it as a deprecated thing (always 0) and also remove its internal uses. Thanks, Ludo’.