From e120f4ded53014729ffbb12b355a558eb3c0ed71 Mon Sep 17 00:00:00 2001 From: Ryan Culpepper Date: Thu, 12 Nov 2009 05:43:50 +0000 Subject: [PATCH] syntax/parse: fixed bug in #:declare with splicing stxclass svn: r16712 --- collects/syntax/private/stxparse/rep.ss | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/collects/syntax/private/stxparse/rep.ss b/collects/syntax/private/stxparse/rep.ss index f9c0095635..c6f02a7256 100644 --- a/collects/syntax/private/stxparse/rep.ss +++ b/collects/syntax/private/stxparse/rep.ss @@ -198,9 +198,8 @@ (for/fold ([decls decls0] [defs null]) ([(k v) (in-dict (declenv-table decls0))] #:when (memq (car v) '(stxclass splicing-stxclass))) - (let-values ([(parser description attrs new-defs) (create-aux-def v)]) - (values (declenv-put-parser decls k parser description attrs - (eq? (car v) 'splicing-stxclass)) + (let-values ([(parser description attrs new-defs splicing?) (create-aux-def v)]) + (values (declenv-put-parser decls k parser description attrs splicing?) (append new-defs defs))))) ;; create-aux-def : DeclEntry -> (values id id (listof SAttr) (listof stx)) @@ -217,9 +216,10 @@ [(arg ...) args]) (values #'parser #'description (stxclass-attrs sc) (list #'(define (parser x) (sc-parser x arg ...)) - #'(define (description) (description arg ...))))) + #'(define (description) (description arg ...))) + (stxclass/h? sc))) (values #'sc-parser #'sc-description (stxclass-attrs sc) - null)))))) + null (stxclass/h? sc))))))) (define (append-lits+litsets lits litsets) (define seen (make-bound-id-table lits))