diff --git a/collects/compiler/zo-marshal.rkt b/collects/compiler/zo-marshal.rkt index dc52cfd82e..255b327f4c 100644 --- a/collects/compiler/zo-marshal.rkt +++ b/collects/compiler/zo-marshal.rkt @@ -610,7 +610,8 @@ (out-anything modidx out) (out-anything sym out) (unless (zero? phase) - (out-number -2 out)) + (out-number -2 out) + (out-number phase out)) (out-number pos out)] [(struct closure (lam gen-id)) (out-byte CPT_CLOSURE out) diff --git a/collects/compiler/zo-parse.rkt b/collects/compiler/zo-parse.rkt index 4e2484cc7b..229ecc9544 100644 --- a/collects/compiler/zo-parse.rkt +++ b/collects/compiler/zo-parse.rkt @@ -859,7 +859,7 @@ [pos (read-compact-number cp)]) (let-values ([(mod-phase pos) (if (= pos -2) - (values 1 (read-compact-number cp)) + (values (read-compact-number cp) (read-compact-number cp)) (values 0 pos))]) (make-module-variable mod var pos mod-phase)))] [(local-unbox) diff --git a/collects/compiler/zo-structs.rkt b/collects/compiler/zo-structs.rkt index b770a6a66d..a6c9749db9 100644 --- a/collects/compiler/zo-structs.rkt +++ b/collects/compiler/zo-structs.rkt @@ -43,7 +43,7 @@ (define-form-struct module-variable ([modidx module-path-index?] [sym symbol?] [pos exact-integer?] - [phase (or/c 0 1)])) ; direct access to exported id + [phase exact-nonnegative-integer?])) ;; Syntax object (define ((alist/c k? v?) l)