guile-devel
[Top][All Lists]
Advanced

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

Re: [Guile-commits] GNU Guile branch, master, updated. release_1-9-6-75-


From: Ludovic Courtès
Subject: Re: [Guile-commits] GNU Guile branch, master, updated. release_1-9-6-75-g9c246c0
Date: Tue, 05 Jan 2010 18:57:07 +0100
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/23.1 (gnu/linux)

Hi Andy!

"Andy Wingo" <address@hidden> writes:

> commit 9fdf9fd3ea7130fd85eaf0a333a965ac4d2b07c3
> Author: Andy Wingo <address@hidden>
> Date:   Tue Jan 5 16:15:14 2010 +0100
>
>     move subr implementation details to gsubr.[ch]
>     
>     * libguile/procs.h: Move subr macros to gsubr.h.
>     * libguile/procs.c (scm_c_make_subr, scm_c_make_subr_with_generic)
>       (scm_c_define_subr, scm_c_define_subr_with_generic): Remove these,
>       because they deal in subr types, and now there is only one subr type.

This is slightly scary, because these were really-public functions, but
I guess there’s no other choice anyway (and fundamentally I think this
change is going in the Right Direction!).

> +/* Deprecated 2010-01-05, use SCM_PRIMITIVE_P instead */
> +#define scm_subr_p(x) (SCM_PRIMITIVE_P (x))

Can you change it so it generates a link-time and run-time warning?
See, e.g., ‘scm_mask_ints’.

> +/* Return the most suitable subr type for a subr with REQ required arguments,
> +   OPT optional arguments, and REST (0 or 1) arguments.  This has to be in
> +   sync with `create_gsubr ()'.  */
> +#define SCM_SUBR_ARITY_TO_TYPE(req, opt, rest)                               
> \
> +  (scm_tc7_gsubr | (SCM_GSUBR_MAKTYPE (req, opt, rest) << 8U))

“Most suitable” and the second sentence can be removed now.

Thanks,
Ludo’.




reply via email to

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