diff options
Diffstat (limited to 'src/data.c')
| -rw-r--r-- | src/data.c | 4 |
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, | |||
| 758 | register Lisp_Object function; | 758 | register Lisp_Object function; |
| 759 | CHECK_SYMBOL (symbol); | 759 | CHECK_SYMBOL (symbol); |
| 760 | /* Perhaps not quite the right error signal, but seems good enough. */ | 760 | /* Perhaps not quite the right error signal, but seems good enough. */ |
| 761 | if (NILP (symbol)) | 761 | if (NILP (symbol) && !NILP (definition)) |
| 762 | /* There are so many other ways to shoot oneself in the foot, I don't | ||
| 763 | think this one little sanity check is worth its cost, but anyway. */ | ||
| 762 | xsignal1 (Qsetting_constant, symbol); | 764 | xsignal1 (Qsetting_constant, symbol); |
| 763 | 765 | ||
| 764 | function = XSYMBOL (symbol)->u.s.function; | 766 | function = XSYMBOL (symbol)->u.s.function; |