1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-05-20 11:40:18 +02:00

back-compat in (rnrs) for deprecated modules-in-value-namespace

* module/rnrs.scm (rnrs): Work around some unavoidable (I think)
  behavior when back-compatible unified namespaces are enabled; see
  comments in source.
This commit is contained in:
Andy Wingo 2010-09-02 21:29:26 -07:00
parent 3be8727983
commit 61bac799dd

View file

@ -209,10 +209,17 @@
;; (rnrs syntax-case) ;; (rnrs syntax-case)
make-variable-transformer syntax syntax-case identifier? make-variable-transformer syntax
bound-identifier=? free-identifier=? syntax->datum datum->syntax ;; Until the deprecated support for a unified modules and
generate-temporaries with-syntax quasisyntax unsyntax ;; bindings namespace is removed, we need to manually resolve
unsyntax-splicing syntax-violation ;; a conflict between two bindings: that of the (rnrs
;; syntax-case) module, and the imported `syntax-case'
;; binding. We do so here and below by renaming the macro
;; import.
(rename (syntax-case-hack syntax-case))
identifier? bound-identifier=? free-identifier=?
syntax->datum datum->syntax generate-temporaries with-syntax
quasisyntax unsyntax unsyntax-splicing syntax-violation
;; (rnrs unicode) ;; (rnrs unicode)
@ -288,5 +295,7 @@
(rnrs records procedural (6)) (rnrs records procedural (6))
(rnrs records syntactic (6)) (rnrs records syntactic (6))
(rnrs sorting (6)) (rnrs sorting (6))
(rnrs syntax-case (6)) ;; See note above on exporting syntax-case.
(rename (rnrs syntax-case (6))
(syntax-case syntax-case-hack))
(rnrs unicode (6)))) (rnrs unicode (6))))