From ad677478abc3882789f7e7feab206c389513d8f1 Mon Sep 17 00:00:00 2001 From: Asumu Takikawa Date: Tue, 22 Jul 2014 18:08:14 -0400 Subject: [PATCH] Test for `begin` at label phase --- pkgs/racket-pkgs/racket-test/tests/syntax/flatten-begin.rkt | 2 ++ racket/collects/syntax/flatten-begin.rkt | 4 ++-- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/pkgs/racket-pkgs/racket-test/tests/syntax/flatten-begin.rkt b/pkgs/racket-pkgs/racket-test/tests/syntax/flatten-begin.rkt index 184207762b..58e2007867 100644 --- a/pkgs/racket-pkgs/racket-test/tests/syntax/flatten-begin.rkt +++ b/pkgs/racket-pkgs/racket-test/tests/syntax/flatten-begin.rkt @@ -14,6 +14,8 @@ (check-exn exn:fail:syntax? (λ () (flatten-all-begins #'(1 2 3)))) (check-equal-datum? (flatten-all-begins #'(begin 1 2 3)) (list #'1 #'2 #'3)) + (check-equal-datum? (flatten-all-begins (syntax-shift-phase-level #'(begin 1 2 3) 2)) + (list #'1 #'2 #'3)) (check-equal-datum? (flatten-all-begins #'(begin (begin 1 2) 3)) (list #'1 #'2 #'3)) (check-equal-datum? (flatten-all-begins #'(begin (begin 1 2) (+ 3 4) 5)) diff --git a/racket/collects/syntax/flatten-begin.rkt b/racket/collects/syntax/flatten-begin.rkt index 76aefcf15b..8a4bb499c4 100644 --- a/racket/collects/syntax/flatten-begin.rkt +++ b/racket/collects/syntax/flatten-begin.rkt @@ -20,7 +20,7 @@ (unless (and (pair? val) (not (null? val)) (identifier? (car val)) - (free-identifier=? (car val) #'begin)) + (free-identifier=? (car val) #'begin #f #f)) (raise-syntax-error #f "not a begin expression" @@ -29,6 +29,6 @@ (define lst (syntax->list stx)) (if (and lst (not (null? lst)) - (free-identifier=? (car lst) #'begin)) + (free-identifier=? (car lst) #'begin #f #f)) (apply append (map loop (cdr lst))) (list (syntax-track-origin stx orig-stx #'begin)))))