diff --git a/syndicate/pattern.rkt b/syndicate/pattern.rkt index 0076bb6..263c2b3 100644 --- a/syndicate/pattern.rkt +++ b/syndicate/pattern.rkt @@ -138,7 +138,7 @@ [(ctor piece ...) (struct-info? (id-value #'ctor)) - (let-values (((label arity) (struct-label-and-arity #'ctor))) + (let-values (((label arity) (struct-label-and-arity #'ctor (length (syntax->list #'(piece ...)))))) #`(Pattern-DCompound (DCompound-rec (CRec '#,label #,arity) (hasheqv #,@(append*