parent
0284bdaa58
commit
15587d84fe
|
@ -2970,6 +2970,27 @@ case of module-leve bindings; it doesn't cover local bindings.
|
|||
(read i)))
|
||||
(test #t dynamic-require ''check-with-inlining-duplicates-by-using-submodules 'check))
|
||||
|
||||
;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
;; Check copy propagation across module boundaries
|
||||
|
||||
(module defines-also-something-as-alias-for-something racket/base
|
||||
|
||||
(provide also-something)
|
||||
|
||||
(define something (list 1 2 3))
|
||||
(define also-something something))
|
||||
|
||||
|
||||
(module uses-also-something-via-local-alias racket/base
|
||||
(require 'defines-also-something-as-alias-for-something)
|
||||
|
||||
(provide v)
|
||||
|
||||
(define copy also-something)
|
||||
(define v (list copy)))
|
||||
|
||||
(test '((1 2 3)) dynamic-require ''uses-also-something-via-local-alias 'v)
|
||||
|
||||
;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
|
||||
(report-errs)
|
||||
|
|
|
@ -59,7 +59,10 @@
|
|||
[(or (known-procedure/can-inline? known)
|
||||
(known-literal? known))
|
||||
known]
|
||||
[(not defn)
|
||||
[(or (not defn)
|
||||
;; can't just return `known`; like `known-procedure/can-inline/need-imports`,
|
||||
;; we'd lose track of the need to potentially propagate imports
|
||||
(known-copy? known))
|
||||
(known-copy rhs)]
|
||||
[else known]))]
|
||||
[defn a-known-constant]
|
||||
|
|
Loading…
Reference in New Issue
Block a user