fix another problem with attempted overflow clean-up

This commit is contained in:
Matthew Flatt 2011-06-30 10:21:52 -06:00
parent c3059f7e82
commit d4acf4f07a
2 changed files with 2 additions and 1 deletions

View File

@ -657,6 +657,7 @@
(unless 64-bit-machine?
(err/rt-test (make-vector 1234567890 #\f) exn:fail:out-of-memory?)
(err/rt-test (read (open-input-string "#1234567890(0)")) exn:fail:out-of-memory?))
(test #t vector? (make-vector 0))
(define f (make-string 3 #\*))
(test "?**" 'string-set! (begin (string-set! f 0 #\?) f))

View File

@ -235,7 +235,7 @@ scheme_init_unsafe_vector (Scheme_Env *env)
}
#define VECTOR_BYTES(size) (sizeof(Scheme_Vector) + ((size) - 1) * sizeof(Scheme_Object *))
#define REV_VECTOR_BYTES(size) (((size - sizeof(Scheme_Vector)) / sizeof(Scheme_Object *)) + 1)
#define REV_VECTOR_BYTES(size) (((size) - (sizeof(Scheme_Vector) - sizeof(Scheme_Object *))) / sizeof(Scheme_Object *))
Scheme_Object *
scheme_make_vector (intptr_t size, Scheme_Object *fill)