guile-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: minor SCM_DEBUG patch


From: Ludovic Courtès
Subject: Re: minor SCM_DEBUG patch
Date: Sun, 01 Nov 2009 00:11:31 +0100
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/23.1 (gnu/linux)

Hello,

Ken Raeburn <address@hidden> 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’.





reply via email to

[Prev in Thread] Current Thread [Next in Thread]