From 61dbf1a34fc05a5ee4a2ca00ca2c82d6765d5b2f Mon Sep 17 00:00:00 2001 From: Robby Findler Date: Mon, 19 May 2014 13:34:52 -0500 Subject: [PATCH] make struct/dc cooperate better with check syntax so that the struct name gets an arrow --- .../racket/contract/private/struct-dc.rkt | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/racket/collects/racket/contract/private/struct-dc.rkt b/racket/collects/racket/contract/private/struct-dc.rkt index 9c9f96556b..32ddd169fe 100644 --- a/racket/collects/racket/contract/private/struct-dc.rkt +++ b/racket/collects/racket/contract/private/struct-dc.rkt @@ -1217,13 +1217,16 @@ dep-args) (cdr clauses)))]))) - #`(build-struct/dc (list #,@structs) - #,(list-ref info 1) - #,(list-ref info 2) - '#,struct-id - (quote-module-name) - '#,struct-id - #,struct/c?)) + (syntax-property + #`(build-struct/dc (list #,@structs) + #,(list-ref info 1) + #,(list-ref info 2) + '#,struct-id + (quote-module-name) + '#,struct-id + #,struct/c?) + 'disappeared-use + (list (syntax-local-introduce struct-id)))) (define-syntax (-struct/dc stx) (do-struct/dc #f stx))