aboutsummaryrefslogtreecommitdiffstats
path: root/src/lread.c
diff options
context:
space:
mode:
authorStefan Monnier2012-11-20 15:06:17 -0500
committerStefan Monnier2012-11-20 15:06:17 -0500
commiteadf1faa3cb5eea8c25a5166a9a97ebd63525c56 (patch)
treec5b92de52e664400cbc79f7dd344cbf440fb7e2a /src/lread.c
parent2e31777bd1354d22319cf6de4085ccc362cff42c (diff)
downloademacs-eadf1faa3cb5eea8c25a5166a9a97ebd63525c56.tar.gz
emacs-eadf1faa3cb5eea8c25a5166a9a97ebd63525c56.zip
Conflate Qnil and Qunbound for `symbol-function'.
* src/alloc.c (Fmake_symbol): Initialize `function' to Qnil. * src/lread.c (init_obarray): Set `function' fields to Qnil. * src/eval.c (Fcommandp): Ignore Qunbound. (Fautoload, eval_sub, Fapply, Ffuncall, Fmacroexpand): * src/data.c (Ffset, Ffboundp, indirect_function, Findirect_function): Test NILP rather than Qunbound. (Ffmakunbound): Set to Qnil. (Fsymbol_function): Never signal an error. (Finteractive_form): Ignore Qunbound.
Diffstat (limited to 'src/lread.c')
-rw-r--r--src/lread.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/lread.c b/src/lread.c
index 5859a2f85a9..6d0ff9f780e 100644
--- a/src/lread.c
+++ b/src/lread.c
@@ -3957,12 +3957,13 @@ init_obarray (void)
3957 /* Fmake_symbol inits fields of new symbols with Qunbound and Qnil, 3957 /* Fmake_symbol inits fields of new symbols with Qunbound and Qnil,
3958 so those two need to be fixed manually. */ 3958 so those two need to be fixed manually. */
3959 SET_SYMBOL_VAL (XSYMBOL (Qunbound), Qunbound); 3959 SET_SYMBOL_VAL (XSYMBOL (Qunbound), Qunbound);
3960 set_symbol_function (Qunbound, Qunbound); 3960 set_symbol_function (Qunbound, Qnil);
3961 set_symbol_plist (Qunbound, Qnil); 3961 set_symbol_plist (Qunbound, Qnil);
3962 SET_SYMBOL_VAL (XSYMBOL (Qnil), Qnil); 3962 SET_SYMBOL_VAL (XSYMBOL (Qnil), Qnil);
3963 XSYMBOL (Qnil)->constant = 1; 3963 XSYMBOL (Qnil)->constant = 1;
3964 XSYMBOL (Qnil)->declared_special = 1; 3964 XSYMBOL (Qnil)->declared_special = 1;
3965 set_symbol_plist (Qnil, Qnil); 3965 set_symbol_plist (Qnil, Qnil);
3966 set_symbol_function (Qnil, Qnil);
3966 3967
3967 Qt = intern_c_string ("t"); 3968 Qt = intern_c_string ("t");
3968 SET_SYMBOL_VAL (XSYMBOL (Qt), Qt); 3969 SET_SYMBOL_VAL (XSYMBOL (Qt), Qt);