From 43d5bbe504f2ae86e206ced42bb7b2bbf104e29f Mon Sep 17 00:00:00 2001 From: Helmut Eller Date: Thu, 27 Jun 2024 08:55:30 +0200 Subject: [PATCH 2/2] Fix lread-tests * src/print.c (pp_stack_pop): Pop values from left to right. --- src/print.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/print.c b/src/print.c index d2b4a586e6c..146cd7bd8c6 100644 --- a/src/print.c +++ b/src/print.c @@ -1402,8 +1402,9 @@ pp_stack_push_values (Lisp_Object vectorlike, ptrdiff_t start, ptrdiff_t n) return; if (ppstack.sp >= ppstack.size) grow_pp_stack (); - ppstack.stack[ppstack.sp++] - = (struct print_pp_entry){ .start = start, .n = n, .u.vectorlike = vectorlike }; + ppstack.stack[ppstack.sp++] = (struct print_pp_entry){ + .start = start, .n = n, .u.vectorlike = vectorlike + }; ppstack.stack[ppstack.sp - 1].is_free = false; } #else @@ -1444,7 +1445,8 @@ pp_stack_pop (void) e->n--; Lisp_Object result; #ifdef HAVE_MPS - result = AREF (e->u.vectorlike, e->start + e->n); + result = AREF (e->u.vectorlike, e->start); + e->start++; #else result = (++e->u.values)[-1]; #endif -- 2.39.2