From 8b5a11a39dbd363428457acd5983fca5a43b113c Mon Sep 17 00:00:00 2001 From: Matthew Flatt Date: Mon, 12 Mar 2012 15:01:28 -0600 Subject: [PATCH] fix bug in `apply' expansion --- collects/racket/private/pre-base.rkt | 5 +++-- collects/tests/racket/syntax.rktl | 1 + 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/collects/racket/private/pre-base.rkt b/collects/racket/private/pre-base.rkt index 19c962a8de..e2baf0ca15 100644 --- a/collects/racket/private/pre-base.rkt +++ b/collects/racket/private/pre-base.rkt @@ -49,10 +49,11 @@ (ormap (lambda (x) (keyword? (syntax-e x))) l) #t) 'new-apply-proc - 'apply)]) + 'apply)] + [(fst) (car (syntax-e stx))]) (datum->syntax stx - (cons (datum->syntax here app (car l) (car l)) + (cons (datum->syntax here app fst fst) (cdr (syntax-e stx))) stx stx))))))) diff --git a/collects/tests/racket/syntax.rktl b/collects/tests/racket/syntax.rktl index 3bc10e1f8b..4b84ef5268 100644 --- a/collects/tests/racket/syntax.rktl +++ b/collects/tests/racket/syntax.rktl @@ -77,6 +77,7 @@ (test 12 (if #f + *) 3 4) (syntax-test #'(+ 3 . 4)) +(syntax-test #'(apply + 1 . 2)) (test 8 (lambda (x) (+ x x)) 4) (define reverse-subtract