1
0
mirror of https://git.savannah.gnu.org/git/emacs.git synced 2024-11-26 07:33:47 +00:00
emacs/etc
Mattias Engdegård db3fea2e5c Detect and prevent function alias loops in fset and defalias
Make `fset` and `defalias` signal an error on attempts to create
circular alias chains.  This is more effective, efficient and
convenient than permitting alias loops to be created and trying to
detect them at run time each time a function is called, which is what
we have been doing until now, badly.

* lisp/help-fns.el (help-fns--analyze-function):
Don't pass obsolete argument.
* lisp/subr.el (function-alias-p):
* src/data.c (indirect_function, Findirect_function): Simplify.
Now error-free, second argument obsolete.
(Ffset): Detect loops.
* test/lisp/help-fns-tests.el (help-fns--analyze-function-recursive):
* test/lisp/subr-tests.el (test-alias-p):
Adapt tests.
* test/src/data-tests.el (data-tests-fset, data-tests-defalias): New.
* doc/lispref/eval.texi (Function Indirection):
* doc/lispref/functions.texi (Defining Functions, Function Cells):
Update manual.
* etc/NEWS: Announce.
2023-02-21 10:42:00 +01:00
..
charsets ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
e Implement alternative sub-buffer support in term.el 2022-01-24 20:02:33 +01:00
forms ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
gnus
images ; Fix copyright years in 2 more files. 2023-01-01 13:08:15 +02:00
nxml
org ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
refcards Merge from origin/emacs-29 2023-01-12 06:30:12 +01:00
schema ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
srecode ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
themes Update Modus themes to version 4 and add new themes 2023-01-01 14:14:09 +02:00
tutorials ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
AUTHORS Merge from origin/emacs-29 2023-02-21 09:44:57 +01:00
CALC-NEWS ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
ChangeLog.1 ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
compilation.txt Tighten and simplify typescript compilation-mode regexps (bug#61104) 2023-02-06 17:47:00 +01:00
COPYING
DEBUG Merge from origin/emacs-29 2023-01-01 05:47:47 -05:00
DEVEL.HUMOR ; * etc/DEVEL.HUMOR: Add a recent joke. 2022-02-11 10:15:20 +02:00
DISTRIB ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
edt-user.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
emacs_lldb.py ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
emacs-buffer.gdb ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
emacs-mail.desktop Hide emacs-mail.desktop, emacsclient-mail.desktop from menus 2021-07-02 13:09:18 +02:00
emacs.desktop Drop redundant keywords in .desktop files. 2021-08-11 14:05:25 +02:00
emacs.icon
emacs.metainfo.xml ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
emacs.service
emacsclient-mail.desktop Fix quoted argument in emacsclient-mail.desktop Exec key 2022-12-24 09:19:40 +02:00
emacsclient.desktop Fix quoted argument in emacsclient-mail.desktop Exec key 2022-12-24 09:19:40 +02:00
enriched.txt ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
ERC-NEWS ; Prepare to update ERC version to 5.5 2023-02-14 08:25:00 -08:00
ETAGS.EBNF ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
ETAGS.README ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
future-bug
gnus-tut.txt ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
grep.txt ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
HELLO ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
HISTORY Update HISTORY for Emacs 28.3 2023-02-17 11:22:19 +01:00
JOKES
MACHINES ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
MH-E-NEWS ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
NEWS Detect and prevent function alias loops in fset and defalias 2023-02-21 10:42:00 +01:00
NEWS.1-17 ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
NEWS.18 ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
NEWS.19 ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
NEWS.20 ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
NEWS.21 ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
NEWS.22 ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
NEWS.23 ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
NEWS.24 ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
NEWS.25 ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
NEWS.26 ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
NEWS.27 ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
NEWS.28 ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
NEWS.29 Merge from origin/emacs-29 2023-02-19 11:38:09 +01:00
NEXTSTEP ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
NXML-NEWS ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
ORG-NEWS Update to Org 9.6-81-g563a43 2023-01-01 22:24:28 -05:00
org.gnu.emacs.defaults.gschema.xml ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
package-keyring.gpg * etc/package-keyring.gpg: Update with new key 2022-12-28 12:19:02 -05:00
PROBLEMS Merge from origin/emacs-29 2023-01-14 09:17:24 -05:00
ps-prin0.ps ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
ps-prin1.ps ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
publicsuffix.txt Update publicsuffix.txt from upstream 2023-01-01 06:01:59 +01:00
README ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
rgb.txt
ses-example.ses ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
spook.lines
TERMS ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
TODO ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
w32-feature.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05: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-2023 Free Software Foundation, Inc.
  License: GNU General Public License version 3 or later (see COPYING)