better error message for R5RS transformer expressions that are not 'syntax-rules'
svn: r14183
This commit is contained in:
parent
154b73755a
commit
f14b7158cd
|
@ -1,10 +1,14 @@
|
|||
|
||||
(module main scheme/base
|
||||
(require scheme/mpair
|
||||
(for-syntax scheme/base syntax/kerncase)
|
||||
(for-syntax scheme/base syntax/kerncase
|
||||
"private/r5rs-trans.ss")
|
||||
(only-in mzscheme transcript-on transcript-off))
|
||||
|
||||
(provide (for-syntax syntax-rules ...)
|
||||
(provide (for-syntax syntax-rules ...
|
||||
(rename-out [syntax-rules-only #%top]
|
||||
[syntax-rules-only #%app]
|
||||
[syntax-rules-only #%datum]))
|
||||
(rename-out
|
||||
[mcons cons]
|
||||
[mcar car]
|
||||
|
|
11
collects/r5rs/private/r5rs-trans.ss
Normal file
11
collects/r5rs/private/r5rs-trans.ss
Normal file
|
@ -0,0 +1,11 @@
|
|||
#lang scheme/base
|
||||
(require (for-syntax scheme/base))
|
||||
(provide syntax-rules-only)
|
||||
|
||||
(define-syntax (syntax-rules-only stx)
|
||||
(syntax-case stx ()
|
||||
[(_ . form)
|
||||
(raise-syntax-error
|
||||
'macro-transformer
|
||||
"only a `syntax-rules' form is allowed"
|
||||
#'form)]))
|
|
@ -1,6 +1,7 @@
|
|||
#lang scribble/doc
|
||||
@(require scribble/manual
|
||||
(for-label r5rs
|
||||
(for-label (only-meta-in 0 r5rs)
|
||||
(only-in r5rs syntax-rules ...)
|
||||
(only-in mzscheme #%plain-module-begin)
|
||||
(only-in scheme/mpair mmap)
|
||||
(only-in scheme/contract one-of/c)
|
||||
|
|
Loading…
Reference in New Issue
Block a user