Mercurial > emacs
changeset 21474:78c4044476c0
(set_internal, Fmakunbound): No error if setting
a keyword to itself.
author | Karl Heuer <kwzh@gnu.org> |
---|---|
date | Sat, 11 Apr 1998 18:04:12 +0000 |
parents | 1f46ca9f3ff3 |
children | 6cc3bb84b60e |
files | src/data.c |
diffstat | 1 files changed, 4 insertions(+), 2 deletions(-) [+] |
line wrap: on
line diff
--- a/src/data.c Sat Apr 11 02:19:18 1998 +0000 +++ b/src/data.c Sat Apr 11 18:04:12 1998 +0000 @@ -617,7 +617,8 @@ CHECK_SYMBOL (symbol, 0); if (NILP (symbol) || EQ (symbol, Qt) || (XSYMBOL (symbol)->name->data[0] == ':' - && keyword_symbols_constant_flag)) + && keyword_symbols_constant_flag + && ! EQ (XSYMBOL (symbol)->value, symbol))) return Fsignal (Qsetting_constant, Fcons (symbol, Qnil)); Fset (symbol, Qunbound); return symbol; @@ -968,7 +969,8 @@ CHECK_SYMBOL (symbol, 0); if (NILP (symbol) || EQ (symbol, Qt) || (XSYMBOL (symbol)->name->data[0] == ':' - && keyword_symbols_constant_flag)) + && keyword_symbols_constant_flag + && ! EQ (XSYMBOL (symbol)->value, symbol))) return Fsignal (Qsetting_constant, Fcons (symbol, Qnil)); valcontents = XSYMBOL (symbol)->value;