summaryrefslogtreecommitdiff
path: root/lisp/emacs-lisp/let-alist.el
diff options
context:
space:
mode:
authorPaul Eggert <eggert@cs.ucla.edu>2018-10-30 20:57:46 -0700
committerPaul Eggert <eggert@cs.ucla.edu>2018-10-30 20:58:48 -0700
commitcf486a7a920d3d95fa9aa98d7b03ebc61b17518a (patch)
treefa50f7b87708463c36e714078012706b4cefdb23 /lisp/emacs-lisp/let-alist.el
parentb9cbdd045f2d086390b3d0e4412ebac0b19aaead (diff)
downloademacs-cf486a7a920d3d95fa9aa98d7b03ebc61b17518a.tar.gz
emacs-cf486a7a920d3d95fa9aa98d7b03ebc61b17518a.tar.bz2
emacs-cf486a7a920d3d95fa9aa98d7b03ebc61b17518a.zip
Improve fix for Bug#33014
Although the previously-applied fix worked for its platform, it doesn’t suffice in general. * src/bytecode.c (exec_byte_code): Save VECTOR into stack slot so that it survives GC. The stack slot was otherwise unused, so this doesn’t cost us memory, only a store insn. * src/eval.c (Ffuncall): Do not make FUN volatile, reverting 2018-10-14T19:12:04Z!gazally@runbox.com. Adding ‘volatile’ does not suffice, since storage for a volatile local can be reclaimed after its last access (e.g., by tail recursion elimination), which would make VECTOR invisible to GC.
Diffstat (limited to 'lisp/emacs-lisp/let-alist.el')
0 files changed, 0 insertions, 0 deletions