mirror of
https://git.savannah.gnu.org/git/guile.git
synced 2025-06-22 19:44:10 +02:00
simplify macro representation in the wake of module hygiene changes
* module/ice-9/psyntax.scm (chi-install-global, chi-macro) (eval-local-transformer): Now that we handle module hygiene through syntax objects, there is no more need to record the current module when installing syntax transformers. * module/ice-9/psyntax-pp.scm: Regenerated (trickily). * libguile/_scm.h: Bump objcode version for macro representation change. * libguile/macros.c (scm_macro_transformer): Adapt to change in macro representation.
This commit is contained in:
parent
9846796b6a
commit
f42d8bd8ff
4 changed files with 5259 additions and 5505 deletions
|
@ -157,9 +157,8 @@ SCM_DEFINE (scm_macro_transformer, "macro-transformer", 1, 0, 0,
|
|||
/* here we rely on knowledge of how psyntax represents macro bindings, but
|
||||
hey, there is code out there that calls this function, and expects to get
|
||||
a procedure in return... */
|
||||
if (scm_is_pair (SCM_MACRO_BINDING (m))
|
||||
&& scm_is_true (scm_procedure_p (scm_car (SCM_MACRO_BINDING (m)))))
|
||||
return scm_car (SCM_MACRO_BINDING (m));
|
||||
if (scm_is_true (scm_procedure_p (SCM_MACRO_BINDING (m))))
|
||||
return SCM_MACRO_BINDING (m);
|
||||
else
|
||||
return SCM_BOOL_F;
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue