some zo-marshal repairs

svn: r13984
This commit is contained in:
Matthew Flatt 2009-03-06 17:37:28 +00:00
parent 5cefebf1ee
commit 946a39221a
2 changed files with 26 additions and 2 deletions

View File

@ -663,8 +663,9 @@
[(svector? expr)
(out-byte CPT_SVECTOR out)
(out-number (vector-length (svector-vec expr)) out)
(for ([n (in-vector (svector-vec expr))])
(out-number n out))]
(let ([vec (svector-vec expr)])
(for ([n (in-range (sub1 (vector-length vec)) -1 -1)])
(out-number (vector-ref vec n) out)))]
[else
(out-byte CPT_QUOTE out)
(let ([s (open-output-bytes)])

View File

@ -20,6 +20,7 @@
(open-input-bytes (get-output-bytes s)))))))
(define values-id (get-id #'values))
(define list-id (get-id #'list))
(define object-name-id (get-id #'object-name))
;; ----------------------------------------
@ -155,6 +156,28 @@
;; ----------------------------------------
(check (make-simple
(make-let-one
'v1
(make-let-one
'v0
(make-let-one
(make-lam 'proc
null
1
'(val)
#f
#(1 2)
20
(make-application
(make-primval list-id)
(list
(make-localref #f 2 #f #f)
(make-localref #f 3 #f #f))))
(make-application
(make-localref #f 1 #f #f)
(list 5))))))
'(v0 v1))
;; ----------------------------------------