From 9974c3bf7eb0b6205c99eeaef9f10a2336e500bc Mon Sep 17 00:00:00 2001 From: Matthew Flatt Date: Sat, 2 Feb 2019 14:12:04 -0700 Subject: [PATCH] repair to single-valued tracking original commit: 8eb7644eb5def8d2a0864ef71610457d8be8c111 --- s/cp0.ss | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/s/cp0.ss b/s/cp0.ss index 200a28d970..bd5b48f433 100644 --- a/s/cp0.ss +++ b/s/cp0.ss @@ -962,7 +962,9 @@ (if (pair? val) (car val) (let ([r (pred?)]) - (set-cdr! a (cons r (cdr a))) + (let ([p (cdr a)]) + (unless (pair? p) + (set-cdr! a (cons r p)))) r)))))])) (define-syntax with-memoize