From 6f628b2531d35fc1d32148f1284051eaa9b0c586 Mon Sep 17 00:00:00 2001 From: Ryan Culpepper Date: Fri, 30 Mar 2018 12:23:23 +0200 Subject: [PATCH] fix error messages --- pkgs/racket-test/tests/stxparse/test-syntax.rkt | 2 +- racket/collects/racket/private/template.rkt | 4 +++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/pkgs/racket-test/tests/stxparse/test-syntax.rkt b/pkgs/racket-test/tests/stxparse/test-syntax.rkt index da842b2904..845e42771b 100644 --- a/pkgs/racket-test/tests/stxparse/test-syntax.rkt +++ b/pkgs/racket-test/tests/stxparse/test-syntax.rkt @@ -171,7 +171,7 @@ #rx"too many ellipses in template") (terx (syntax aa) - #rx"missing ellipses with pattern variable in template") + #rx"missing ellipsis with pattern variable in template") (terx (syntax (?@)) #rx"illegal use") diff --git a/racket/collects/racket/private/template.rkt b/racket/collects/racket/private/template.rkt index 9ce643a397..0535ed9321 100644 --- a/racket/collects/racket/private/template.rkt +++ b/racket/collects/racket/private/template.rkt @@ -361,8 +361,10 @@ (pvar var var check #f)] [(>= depth pvar-depth) (pvar var (gentemp) check (- depth pvar-depth))] + [(zero? depth) + (wrong-syntax id "missing ellipsis with pattern variable in template")] [else - (wrong-syntax id "missing ellipses with pattern variable in template")])) + (wrong-syntax id "too few ellipses for pattern variable in template")])) (define (hash-ref! h k proc) (let ([v (hash-ref h k #f)]) (if v v (let ([v* (proc)]) (hash-set! h k v*) v*)))) (let ([v (syntax-local-value id (lambda () #f))])