From 779c491823a900564c2e876d2800db1949b638da Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Georges=20Dup=C3=A9ron?= <georges.duperon@gmail.com>
Date: Thu, 31 May 2018 18:51:37 +0200
Subject: [PATCH] Included upstream changes until
 ba874ebe1422c162ef1d6dc22293c3cf85676c44 (included)

---
 parse/private/rep.rkt-6-90-0-29 | 10 +++-------
 1 file changed, 3 insertions(+), 7 deletions(-)

diff --git a/parse/private/rep.rkt-6-90-0-29 b/parse/private/rep.rkt-6-90-0-29
index 5f3a588..8712446 100644
--- a/parse/private/rep.rkt-6-90-0-29
+++ b/parse/private/rep.rkt-6-90-0-29
@@ -7,6 +7,7 @@
          racket/contract/base
          "make.rkt"
          syntax/parse/private/minimatch
+         syntax/apply-transformer
          syntax/private/id-table
          syntax/stx
          syntax/keyword
@@ -616,13 +617,8 @@
 
 ;; expand-pattern : pattern-expander Syntax -> Syntax
 (define (expand-pattern pe stx)
-  (let* ([proc (pattern-expander-proc pe)]
-         [introducer (make-syntax-introducer)]
-         [mstx (introducer (syntax-local-introduce stx))]
-         [mresult (parameterize ([current-syntax-parse-pattern-introducer introducer])
-                    (proc mstx))]
-         [result (syntax-local-introduce (introducer mresult))])
-    result))
+  (let ([proc (pattern-expander-proc pe)])
+    (local-apply-transformer proc stx 'expression)))
 
 ;; parse-ellipsis-head-pattern : stx DeclEnv -> (listof EllipsisHeadPattern)
 (define (parse-ellipsis-head-pattern stx decls)