1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-01-03 18:41:25 -08:00
emacs/etc
Philipp Stephani 48ffef5ef4 Implement finalizers for module functions (Bug#30373)
* src/module-env-28.h: Add new module environment functions to
module environment for Emacs 28.

* src/emacs-module.h.in: Document that 'emacs_finalizer' also works
for function finalizers.

* src/emacs-module.c (CHECK_MODULE_FUNCTION): New function.
(struct Lisp_Module_Function): Add finalizer data member.
(module_make_function): Initialize finalizer.
(module_get_function_finalizer)
(module_set_function_finalizer): New module environment functions.
(module_finalize_function): New function.
(initialize_environment): Initialize new environment functions.

* src/alloc.c (cleanup_vector): Call potential module function
finalizer during garbage collection.

* test/data/emacs-module/mod-test.c (signal_error): New helper
function.
(memory_full): Use it.
(finalizer): New example function finalizer.
(Fmod_test_make_function_with_finalizer)
(Fmod_test_function_finalizer_calls): New test module functions.
(emacs_module_init): Define them.

* test/src/emacs-module-tests.el (module/function-finalizer): New unit
test.

* doc/lispref/internals.texi (Module Functions): Document new
functionality.
(Module Misc): Move description of 'emacs_finalizer' type to 'Module
Functions' node, and add a reference to it.

* etc/NEWS: Mention new functionality.
2020-01-03 19:24:10 +01:00
..
charsets Update copyright year to 2020 2020-01-01 00:59:52 +00:00
e
forms Update copyright year to 2020 2020-01-01 00:59:52 +00:00
gnus
images Fix copyright years by hand 2020-01-01 01:01:53 +00:00
nxml
org Update copyright year to 2020 2020-01-01 00:59:52 +00:00
refcards Merge from origin/emacs-27 2020-01-01 01:08:16 +00:00
schema Update copyright year to 2020 2020-01-01 00:59:52 +00:00
srecode Update copyright year to 2020 2020-01-01 00:59:52 +00:00
themes Update copyright year to 2020 2020-01-01 00:59:52 +00:00
tutorials Fix copyright years by hand 2020-01-01 01:01:53 +00:00
AUTHORS * etc/AUTHORS: Update. 2019-08-22 00:15:11 +02:00
CALC-NEWS Update copyright year to 2020 2020-01-01 00:59:52 +00:00
ChangeLog.1 Update copyright year to 2020 2020-01-01 00:59:52 +00:00
compilation.txt Update copyright year to 2020 2020-01-01 00:59:52 +00:00
COPYING
DEBUG Update copyright year to 2020 2020-01-01 00:59:52 +00:00
DEVEL.HUMOR Remove an unfunny joke from DEVEL.HUMOR 2019-11-01 13:54:51 +01:00
DISTRIB Update copyright year to 2020 2020-01-01 00:59:52 +00:00
edt-user.el Update copyright year to 2020 2020-01-01 00:59:52 +00:00
emacs-buffer.gdb Update copyright year to 2020 2020-01-01 00:59:52 +00:00
emacs.appdata.xml Update copyright year to 2020 2020-01-01 00:59:52 +00:00
emacs.desktop
emacs.icon
emacs.service Don't override SSH_AUTH_SOCK in the example emacs.service file 2019-07-21 17:11:59 +02:00
enriched.txt Update copyright year to 2020 2020-01-01 00:59:52 +00:00
ERC-NEWS Update copyright year to 2020 2020-01-01 00:59:52 +00:00
ETAGS.EBNF Update copyright year to 2020 2020-01-01 00:59:52 +00:00
ETAGS.README Update copyright year to 2020 2020-01-01 00:59:52 +00:00
future-bug
gnus-tut.txt Update copyright year to 2020 2020-01-01 00:59:52 +00:00
grep.txt Update copyright year to 2020 2020-01-01 00:59:52 +00:00
HELLO Update copyright year to 2020 2020-01-01 00:59:52 +00:00
HISTORY * etc/HISTORY: Add Emacs 26.3 release release date. 2019-08-22 00:40:13 +02:00
JOKES
MACHINES Update copyright year to 2020 2020-01-01 00:59:52 +00:00
MH-E-NEWS Update copyright year to 2020 2020-01-01 00:59:52 +00:00
NEWS Implement finalizers for module functions (Bug#30373) 2020-01-03 19:24:10 +01:00
NEWS.1-17 Update copyright year to 2020 2020-01-01 00:59:52 +00:00
NEWS.18 Update copyright year to 2020 2020-01-01 00:59:52 +00:00
NEWS.19 Update copyright year to 2020 2020-01-01 00:59:52 +00:00
NEWS.20 Update copyright year to 2020 2020-01-01 00:59:52 +00:00
NEWS.21 Update copyright year to 2020 2020-01-01 00:59:52 +00:00
NEWS.22 Update copyright year to 2020 2020-01-01 00:59:52 +00:00
NEWS.23 Update copyright year to 2020 2020-01-01 00:59:52 +00:00
NEWS.24 ; Fix NEWS.24 2020-01-01 18:30:58 +02:00
NEWS.25 Update copyright year to 2020 2020-01-01 00:59:52 +00:00
NEWS.26 Update copyright year to 2020 2020-01-01 00:59:52 +00:00
NEWS.27 Merge from origin/emacs-27 2020-01-01 01:08:16 +00:00
NEXTSTEP Update copyright year to 2020 2020-01-01 00:59:52 +00:00
NXML-NEWS Update copyright year to 2020 2020-01-01 00:59:52 +00:00
ORG-NEWS Update copyright year to 2020 2020-01-01 00:59:52 +00:00
package-keyring.gpg * etc/package-keyring.gpg: Add the 2019 key (backport) 2019-05-08 13:19:36 -04:00
PROBLEMS Update copyright year to 2020 2020-01-01 00:59:52 +00:00
ps-prin0.ps Update copyright year to 2020 2020-01-01 00:59:52 +00:00
ps-prin1.ps Update copyright year to 2020 2020-01-01 00:59:52 +00:00
publicsuffix.txt
README Update copyright year to 2020 2020-01-01 00:59:52 +00:00
rgb.txt
ses-example.ses Update copyright year to 2020 2020-01-01 00:59:52 +00:00
spook.lines Add more spook.lines 2019-07-13 05:09:45 +02:00
TERMS Update copyright year to 2020 2020-01-01 00:59:52 +00:00
TODO Update copyright year to 2020 2020-01-01 00:59:52 +00:00
yow.lines

This directory contains the architecture-independent files used by or
with Emacs.  This includes some text files of documentation for GNU
Emacs or of interest to Emacs users, and the file of dumped docstrings
for Emacs functions and variables.

COPYRIGHT AND LICENSE INFORMATION FOR IMAGE FILES

File: emacs.icon
  Author: Sun Microsystems, Inc
  Copyright (C) 1999, 2001-2020 Free Software Foundation, Inc.
  License: GNU General Public License version 3 or later (see COPYING)