diff options
author | Andy Wingo <wingo@pobox.com> | 2010-06-06 13:39:44 +0200 |
---|---|---|
committer | Andy Wingo <wingo@pobox.com> | 2010-06-06 13:39:44 +0200 |
commit | f42d8bd8ff8dbdbdfd9584d281a449ab0de74c2f (patch) | |
tree | 1a4139322e29df137f2fc7a1eccf3bf44ac06099 /libguile/macros.c | |
parent | 9846796b6abb6ecbce0d596db32daa7ac5921a2a (diff) | |
download | guile-f42d8bd8ff8dbdbdfd9584d281a449ab0de74c2f.tar.gz |
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.
Diffstat (limited to 'libguile/macros.c')
-rw-r--r-- | libguile/macros.c | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/libguile/macros.c b/libguile/macros.c index b3fea9391..aa6b9cd1c 100644 --- a/libguile/macros.c +++ b/libguile/macros.c @@ -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; } |