Backport GCPRO fix from trunk.
The bug was reported for AIX before today's changes. I reproduced the problem on Fedora 17 x86-64 when setting GC_MARK_STACK by hand, and I presume it occurs with default configurations on HP-UX and Unixware. Trunk fix on 2013-01-14 by Dmitry Antipov <dmantipov@yandex.ru>: Fix compilation with GC_MARK_STACK == GC_USE_GCPROS_AS_BEFORE. * eval.c (eval_sub): Protect `form' from being GCed before its car and cdr becomes protected with the backtrace entry. Fixes: debbugs:13650
This commit is contained in:
parent
35b3a27e67
commit
974c7646ec
2 changed files with 13 additions and 0 deletions
|
@ -1,5 +1,15 @@
|
|||
2013-02-14 Paul Eggert <eggert@cs.ucla.edu>
|
||||
|
||||
Backport GCPRO fix from trunk (Bug#13650).
|
||||
The bug was reported for AIX before today's changes.
|
||||
I reproduced the problem on Fedora 17 x86-64 when setting
|
||||
GC_MARK_STACK by hand, and I presume it occurs with default
|
||||
configurations on HP-UX and Unixware.
|
||||
Trunk fix on 2013-01-14 by Dmitry Antipov <dmantipov@yandex.ru>:
|
||||
Fix compilation with GC_MARK_STACK == GC_USE_GCPROS_AS_BEFORE.
|
||||
* eval.c (eval_sub): Protect `form' from being GCed before its
|
||||
car and cdr becomes protected with the backtrace entry.
|
||||
|
||||
Fix AIX port (Bug#13650).
|
||||
* lisp.h (XPNTR) [!USE_LSB_TAG && DATA_SEG_BITS]:
|
||||
Fix bug introduced in 2012-07-27 change. DATA_SEG_BITS, if set,
|
||||
|
|
|
@ -2034,7 +2034,10 @@ eval_sub (Lisp_Object form)
|
|||
return form;
|
||||
|
||||
QUIT;
|
||||
|
||||
GCPRO1 (form);
|
||||
maybe_gc ();
|
||||
UNGCPRO;
|
||||
|
||||
if (++lisp_eval_depth > max_lisp_eval_depth)
|
||||
{
|
||||
|
|
Loading…
Add table
Reference in a new issue