From f85d5ba0a00e25bf063b8f9c993c815490bc483a Mon Sep 17 00:00:00 2001 From: David Thompson Date: Fri, 11 Oct 2019 17:10:09 -0400 Subject: array-list: Add bounds checking to array-list-ref. --- chickadee/array-list.scm | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/chickadee/array-list.scm b/chickadee/array-list.scm index dad0b8d..54a11e8 100644 --- a/chickadee/array-list.scm +++ b/chickadee/array-list.scm @@ -76,7 +76,9 @@ (set-array-list-vector! array-list new-vec))) (define (array-list-ref array-list i) - (vector-ref (array-list-vector array-list) i)) + (if (and (>= i 0) (< i (array-list-size array-list))) + (vector-ref (array-list-vector array-list) i) + (error "array list index out of bounds" i))) (define (array-list-set! array-list i x) (vector-set! (array-list-vector array-list) i x)) -- cgit v1.2.3