diff options
author | Mattias EngdegÄrd <mattiase@acm.org> | 2022-09-14 19:19:08 +0200 |
---|---|---|
committer | Mattias EngdegÄrd <mattiase@acm.org> | 2022-09-15 09:41:15 +0200 |
commit | 3ad2adc48c700a8c15459f623081c32420f0b726 (patch) | |
tree | ba569adeb3286ae3b841b006f2f4bff7a7de35e2 /lisp/language/ethio-util.el | |
parent | f941cc76df7476a055350b3b1b7e9e61d1ddb246 (diff) | |
download | emacs-3ad2adc48c700a8c15459f623081c32420f0b726.tar.gz emacs-3ad2adc48c700a8c15459f623081c32420f0b726.tar.bz2 emacs-3ad2adc48c700a8c15459f623081c32420f0b726.zip |
Simplify and shrink reader buffers
A big on-stack buffer in a potentially long-running function can
interact badly with the GC's conservative scanning of the C stack.
It may make the scanning slower (since the stack frame is big) and
risks accidental retention of objects from stack detritus
(because the buffer isn't cleaned on entry).
* src/lread.c (stackbufsize): Remove.
(read_integer, read_string_literal, read_bool_vector): Use a local
buffer instead of piggy-backing on that in read0.
(read0): Reduce buffer to something suitable for most identifiers and
numbers.
Diffstat (limited to 'lisp/language/ethio-util.el')
0 files changed, 0 insertions, 0 deletions