diff --git a/src/lread.c b/src/lread.c index 1dac6af6abf..41c6b3e49f0 100644 --- a/src/lread.c +++ b/src/lread.c @@ -4515,9 +4515,10 @@ read0 (Lisp_Object readcharfun, bool locate_syms) struct read_stack_entry *e = read_stack_top (); switch (e->type) { +#ifdef HAVE_MPS case RE_free: emacs_abort (); - +#endif case RE_list_start: e->type = RE_list; e->u.list.head = e->u.list.tail = Fcons (obj, Qnil); diff --git a/src/print.c b/src/print.c index 5247e8ae6b1..b87f5d201b1 100644 --- a/src/print.c +++ b/src/print.c @@ -1404,6 +1404,7 @@ pp_stack_push_values (Lisp_Object vectorlike, ptrdiff_t start, ptrdiff_t n) grow_pp_stack (); ppstack.stack[ppstack.sp++] = (struct print_pp_entry){ .start = start, .n = n, .u.vectorlike = vectorlike }; + ppstack.stack[ppstack.sp - 1].is_free = false; } #else static inline void @@ -1416,7 +1417,6 @@ pp_stack_push_values (Lisp_Object *values, ptrdiff_t n) grow_pp_stack (); ppstack.stack[ppstack.sp++] = (struct print_pp_entry){.n = n, .u.values = values}; - ppstack.stack[ppstack.sp - 1].is_free = false; } #endif