summaryrefslogtreecommitdiff
path: root/src/data.c
diff options
context:
space:
mode:
authorStefan Monnier <monnier@iro.umontreal.ca>2018-11-02 15:00:34 -0400
committerStefan Monnier <monnier@iro.umontreal.ca>2018-11-02 15:00:34 -0400
commitef183b996c3aade55e16d8fbcd68d9c4f360729e (patch)
treeaa2e45849033c32504388b5b05303202fb32b5cd /src/data.c
parentea35756ac635dc5e9251552646c0bc0642d7e822 (diff)
downloademacs-ef183b996c3aade55e16d8fbcd68d9c4f360729e.tar.gz
emacs-ef183b996c3aade55e16d8fbcd68d9c4f360729e.tar.bz2
emacs-ef183b996c3aade55e16d8fbcd68d9c4f360729e.zip
* src/data.c (Ffset): Don't signal gratuitous errors
Diffstat (limited to 'src/data.c')
-rw-r--r--src/data.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/data.c b/src/data.c
index 538081e5c9b..f8b991e8981 100644
--- a/src/data.c
+++ b/src/data.c
@@ -758,7 +758,9 @@ DEFUN ("fset", Ffset, Sfset, 2, 2, 0,
register Lisp_Object function;
CHECK_SYMBOL (symbol);
/* Perhaps not quite the right error signal, but seems good enough. */
- if (NILP (symbol))
+ if (NILP (symbol) && !NILP (definition))
+ /* There are so many other ways to shoot oneself in the foot, I don't
+ think this one little sanity check is worth its cost, but anyway. */
xsignal1 (Qsetting_constant, symbol);
function = XSYMBOL (symbol)->u.s.function;