expander: fix cross-module reference to gensymed name

This commit is contained in:
Matthew Flatt 2018-02-26 19:18:58 -07:00
parent 95333f6fe8
commit 5ba83c6340
2 changed files with 8 additions and 3 deletions

View File

@ -49,8 +49,10 @@
(define defined-sym
(if (and (not (defined-as-other? (hash-ref defined-syms-at-phase sym #f) id phase top-level-bind-scope))
;; Only use `sym` directly if there are no
;; extra scopes on the binding form
(no-extra-scopes? id all-scopes-stx top-level-bind-scope phase))
;; extra scopes on the binding form...
(no-extra-scopes? id all-scopes-stx top-level-bind-scope phase)
;; ... and if it's interned
(symbol-interned? sym))
sym
(let loop ([pos 1])
(define s (string->unreadable-symbol (format "~a.~a" sym pos)))

View File

@ -32412,11 +32412,14 @@ static const char *startup_source =
" id_52"
" phase_81"
" top-level-bind-scope_3))"
"(no-extra-scopes?"
"(if(no-extra-scopes?"
" id_52"
" all-scopes-stx_3"
" top-level-bind-scope_3"
" phase_81)"
"(symbol-interned?"
" sym_9)"
" #f)"
" #f)"
" sym_9"
"((letrec-values(((loop_91)"