diff options
| author | Daniel Colascione | 2015-03-02 02:23:09 -0800 |
|---|---|---|
| committer | Daniel Colascione | 2015-03-02 15:39:01 -0800 |
| commit | 9d8d0658147dfe5a90e2fb07ff666f35b1162d6e (patch) | |
| tree | 6d593ab42386348b1842688c75f892db45c5b59e /etc | |
| parent | b149ecd8aa3aa9c179dd5496f64e1f50750414fa (diff) | |
| download | emacs-9d8d0658147dfe5a90e2fb07ff666f35b1162d6e.tar.gz emacs-9d8d0658147dfe5a90e2fb07ff666f35b1162d6e.zip | |
Add support for finalizers
+2015-03-02 Daniel Colascione <dancol@dancol.org>
+
+ * NEWS: Mention finalizers.
+
2015-02-09 Gareth Rees <gdr@garethrees.org> (tiny change)
* NEWS.24: Fix typo (bug#19820)
diff --git a/src/ChangeLog b/src/ChangeLog
index 4aa64c1..2f04d0b 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,3 +1,21 @@
+2015-03-02 Daniel Colascione <dancol@dancol.org>
+
+ * print.c (print_object): Print finalizers.
+
+ * alloc.c:
+ (finalizers, doomed_finalizers): New variables.
+ (init_finalizer_list, finalizer_insert, unchain_finalizer)
+ (mark_finalizer_list, queue_doomed_finalizers)
+ (run_finalizer_handler, run_finalizer_function, run_finalizers):
+ New functions.
+ (garbage_collect_1, mark_object, sweep_misc)
+ (init_alloc_once, syms_of_alloc): Support finalizers.
+ (gc-precise-p): New Lisp variable.
+
+ * lisp.h (Lisp_Misc_Type): New value Lisp_Misc_Finalizer.
+ (FINALIZERP, XFINALIZER): New functions.
+ (Lisp_Finalizer): New structure.
+
2015-02-28 Paul Eggert <eggert@cs.ucla.edu>
* character.c (alphabeticp, decimalnump): Avoid undefined behavior
diff --git a/test/ChangeLog b/test/ChangeLog
index cf1b2c1..684e98f 100644
--- a/test/ChangeLog
+++ b/test/ChangeLog
@@ -1,3 +1,9 @@
+2015-03-02 Daniel Colascione <dancol@dancol.org>
+
+ * automated/finalizer-tests.el (finalizer-basic)
+ (finalizer-circular-reference, finalizer-cross-reference)
+ (finalizer-error): New tests.
+
2015-03-01 Michael Albinus <michael.albinus@gmx.de>
* automated/vc-tests.el (vc-test--create-repo): Add check for
Diffstat (limited to 'etc')
| -rw-r--r-- | etc/ChangeLog | 4 | ||||
| -rw-r--r-- | etc/NEWS | 3 |
2 files changed, 7 insertions, 0 deletions
diff --git a/etc/ChangeLog b/etc/ChangeLog index 24cb6f24d22..99a74f942f2 100644 --- a/etc/ChangeLog +++ b/etc/ChangeLog | |||
| @@ -1,3 +1,7 @@ | |||
| 1 | 2015-03-02 Daniel Colascione <dancol@dancol.org> | ||
| 2 | |||
| 3 | * NEWS: Mention finalizers. | ||
| 4 | |||
| 1 | 2015-02-09 Gareth Rees <gdr@garethrees.org> (tiny change) | 5 | 2015-02-09 Gareth Rees <gdr@garethrees.org> (tiny change) |
| 2 | 6 | ||
| 3 | * NEWS.24: Fix typo (bug#19820) | 7 | * NEWS.24: Fix typo (bug#19820) |
| @@ -621,6 +621,9 @@ word syntax, use `\sw' instead. | |||
| 621 | 621 | ||
| 622 | * Lisp Changes in Emacs 25.1 | 622 | * Lisp Changes in Emacs 25.1 |
| 623 | 623 | ||
| 624 | ** New finalizer facility for running code when objects | ||
| 625 | become unreachable. | ||
| 626 | |||
| 624 | ** lexical closures can use (:documentation <form>) to build their docstring. | 627 | ** lexical closures can use (:documentation <form>) to build their docstring. |
| 625 | It should be placed right where the docstring would be, and <form> is then | 628 | It should be placed right where the docstring would be, and <form> is then |
| 626 | evaluated (and should return a string) when the closure is built. | 629 | evaluated (and should return a string) when the closure is built. |