(register Lisp_Object symbol)
{
CHECK_SYMBOL (symbol);
- return (EQ (SVAR (XSYMBOL (symbol), function), Qunbound) ? Qnil : Qt);
+ return EQ (XSYMBOL (symbol)->function, Qunbound) ? Qnil : Qt;
}
DEFUN ("makunbound", Fmakunbound, Smakunbound, 1, 1, 0,
CHECK_SYMBOL (symbol);
if (NILP (symbol) || EQ (symbol, Qt))
xsignal1 (Qsetting_constant, symbol);
- SVAR (XSYMBOL (symbol), function) = Qunbound;
+ set_symbol_function (symbol, Qunbound);
return symbol;
}
(register Lisp_Object symbol)
{
CHECK_SYMBOL (symbol);
- if (!EQ (SVAR (XSYMBOL (symbol), function), Qunbound))
- return SVAR (XSYMBOL (symbol), function);
+ if (!EQ (XSYMBOL (symbol)->function, Qunbound))
+ return XSYMBOL (symbol)->function;
xsignal1 (Qvoid_function, symbol);
}
(register Lisp_Object symbol)
{
CHECK_SYMBOL (symbol);
- return SVAR (XSYMBOL (symbol), plist);
+ return XSYMBOL (symbol)->plist;
}
DEFUN ("symbol-name", Fsymbol_name, Ssymbol_name, 1, 1, 0,
if (NILP (symbol) || EQ (symbol, Qt))
xsignal1 (Qsetting_constant, symbol);
- function = SVAR (XSYMBOL (symbol), function);
+ function = XSYMBOL (symbol)->function;
if (!NILP (Vautoload_queue) && !EQ (function, Qunbound))
Vautoload_queue = Fcons (Fcons (symbol, function), Vautoload_queue);
if (CONSP (function) && EQ (XCAR (function), Qautoload))
Fput (symbol, Qautoload, XCDR (function));
- SVAR (XSYMBOL (symbol), function) = definition;
+ set_symbol_function (symbol, definition);
/* Handle automatic advice activation. */
- if (CONSP (SVAR (XSYMBOL (symbol), plist))
+ if (CONSP (XSYMBOL (symbol)->plist)
&& !NILP (Fget (symbol, Qad_advice_info)))
{
call2 (Qad_activate_internal, symbol, Qnil);
- definition = SVAR (XSYMBOL (symbol), function);
+ definition = XSYMBOL (symbol)->function;
}
return definition;
}
(register Lisp_Object symbol, Lisp_Object definition, Lisp_Object docstring)
{
CHECK_SYMBOL (symbol);
- if (CONSP (SVAR (XSYMBOL (symbol), function))
- && EQ (XCAR (SVAR (XSYMBOL (symbol), function)), Qautoload))
+ if (CONSP (XSYMBOL (symbol)->function)
+ && EQ (XCAR (XSYMBOL (symbol)->function), Qautoload))
LOADHIST_ATTACH (Fcons (Qt, symbol));
if (!NILP (Vpurify_flag)
/* If `definition' is a keymap, immutable (and copying) is wrong. */
(register Lisp_Object symbol, Lisp_Object newplist)
{
CHECK_SYMBOL (symbol);
- SVAR (XSYMBOL (symbol), plist) = newplist;
+ set_symbol_plist (symbol, newplist);
return newplist;
}
XSETSYMBOL (var, symbol);
if (blv->frame_local)
{
- tem1 = assq_no_quit (var, FGET (XFRAME (selected_frame),
- param_alist));
+ tem1 = assq_no_quit (var, XFRAME (selected_frame)->param_alist);
blv->where = selected_frame;
}
else
XSETSYMBOL (symbol, sym); /* May have changed via aliasing. */
tem1 = Fassq (symbol,
(blv->frame_local
- ? FGET (XFRAME (where), param_alist)
+ ? XFRAME (where)->param_alist
: BVAR (XBUFFER (where), local_var_alist)));
blv->where = where;
blv->found = 1;
{
if (!SYMBOLP (hare) || EQ (hare, Qunbound))
break;
- hare = SVAR (XSYMBOL (hare), function);
+ hare = XSYMBOL (hare)->function;
if (!SYMBOLP (hare) || EQ (hare, Qunbound))
break;
- hare = SVAR (XSYMBOL (hare), function);
+ hare = XSYMBOL (hare)->function;
- tortoise = SVAR (XSYMBOL (tortoise), function);
+ tortoise = XSYMBOL (tortoise)->function;
if (EQ (hare, tortoise))
xsignal1 (Qcyclic_function_indirection, object);
/* Optimize for no indirection. */
result = object;
if (SYMBOLP (result) && !EQ (result, Qunbound)
- && (result = SVAR (XSYMBOL (result), function), SYMBOLP (result)))
+ && (result = XSYMBOL (result)->function, SYMBOLP (result)))
result = indirect_function (result);
if (!EQ (result, Qunbound))
return result;
defsubr (&Ssubr_arity);
defsubr (&Ssubr_name);
- SVAR (XSYMBOL (Qwholenump), function) = SVAR (XSYMBOL (Qnatnump), function);
+ set_symbol_function (Qwholenump, XSYMBOL (Qnatnump)->function);
DEFVAR_LISP ("most-positive-fixnum", Vmost_positive_fixnum,
doc: /* The largest value that is representable in a Lisp integer. */);