aboutsummaryrefslogtreecommitdiffstats
path: root/src/ChangeLog
diff options
context:
space:
mode:
authorStefan Monnier2014-04-07 12:08:46 -0400
committerStefan Monnier2014-04-07 12:08:46 -0400
commite3b838807bf9fbbbec9826de6c1e4efdf72acb78 (patch)
treeaf955b069b9dab5d52cfed618cf1f2f7cffa40f5 /src/ChangeLog
parent190f899aed4eeb62286874bda47a92236d52ad4c (diff)
downloademacs-e3b838807bf9fbbbec9826de6c1e4efdf72acb78.tar.gz
emacs-e3b838807bf9fbbbec9826de6c1e4efdf72acb78.zip
* src/alloc.c: Keep track of symbols referenced from pure space (bug#17168).
(symbol_block_pinned): New var. (Fmake_symbol): Initialize `pinned'. (purecopy): New function, extracted from Fpurecopy. Mark symbols as pinned and signal an error for un-purifiable objects. (pure_cons): Use it. (Fpurecopy): Use it, except for objects that can't be purified. (mark_pinned_symbols): New function. (Fgarbage_collect): Use it. (gc_sweep): Remove hack made unnecessary. * src/lisp.h (struct Lisp_Symbol): New bitfield `pinned'.
Diffstat (limited to 'src/ChangeLog')
-rw-r--r--src/ChangeLog15
1 files changed, 15 insertions, 0 deletions
diff --git a/src/ChangeLog b/src/ChangeLog
index 9b084701933..7618fb202e0 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,3 +1,18 @@
12014-04-07 Stefan Monnier <monnier@iro.umontreal.ca>
2
3 * lisp.h (struct Lisp_Symbol): New bitfield `pinned'.
4
5 * alloc.c: Keep track of symbols referenced from pure space (bug#17168).
6 (symbol_block_pinned): New var.
7 (Fmake_symbol): Initialize `pinned'.
8 (purecopy): New function, extracted from Fpurecopy. Mark symbols as
9 pinned and signal an error for un-purifiable objects.
10 (pure_cons): Use it.
11 (Fpurecopy): Use it, except for objects that can't be purified.
12 (mark_pinned_symbols): New function.
13 (Fgarbage_collect): Use it.
14 (gc_sweep): Remove hack made unnecessary.
15
12014-04-05 Glenn Morris <rgm@gnu.org> 162014-04-05 Glenn Morris <rgm@gnu.org>
2 17
3 * keyboard.c (Fopen_dribble_file): Doc tweak. 18 * keyboard.c (Fopen_dribble_file): Doc tweak.