Always treat top-level redefinitions as annotated

Closes PR 14144
This commit is contained in:
Asumu Takikawa 2013-11-11 18:58:57 -05:00
parent ee72e0ea97
commit 7c4eb845a0

View File

@ -168,7 +168,10 @@
;; if this already had an annotation, we just construct the binding reps ;; if this already had an annotation, we just construct the binding reps
[(andmap (lambda (s) (lookup-type s (lambda () #f))) vars) [(andmap (lambda (s) (lookup-type s (lambda () #f))) vars)
(define top-level? (eq? (syntax-local-context) 'top-level)) (define top-level? (eq? (syntax-local-context) 'top-level))
(for ([var (in-list vars)]) (finish-register-type var top-level?)) (for ([var (in-list vars)])
(when (dict-has-key? unann-defs var)
(free-id-table-remove! unann-defs var))
(finish-register-type var top-level?))
(map (lambda (s) (make-def-binding s (lookup-type s))) vars)] (map (lambda (s) (make-def-binding s (lookup-type s))) vars)]
;; special case to infer types for top level defines ;; special case to infer types for top level defines
[else [else