Commit 5133a578 authored by Gerd Moellmann's avatar Gerd Moellmann
Browse files

(Fbyte_code) <varref>: Use SYMBOL_VALUE.

(Fbyte_code) <varset>: Simplify the test if symbol's value can be
set directly.
parent 9e713715
......@@ -520,7 +520,7 @@ If the third argument is incorrect, Emacs may crash.")
v1 = vectorp[op];
if (SYMBOLP (v1))
{
v2 = XSYMBOL (v1)->value;
v2 = SYMBOL_VALUE (v1);
if (MISCP (v2) || EQ (v2, Qunbound))
{
BEFORE_POTENTIAL_GC ();
......@@ -626,16 +626,9 @@ If the third argument is incorrect, Emacs may crash.")
/* Inline the most common case. */
if (SYMBOLP (sym)
&& !EQ (val, Qunbound)
&& !MISCP (XSYMBOL (sym)->value)
/* I think this should either be checked in the byte
compiler, or there should be a flag indicating that
a symbol might be constant in Lisp_Symbol, instead
of checking this here over and over again. --gerd. */
&& !EQ (sym, Qnil)
&& !EQ (sym, Qt)
&& !(XSYMBOL (sym)->name->data[0] == ':'
&& EQ (XSYMBOL (sym)->obarray, initial_obarray)
&& !EQ (val, sym)))
&& !XSYMBOL (sym)->indirect_variable
&& !XSYMBOL (sym)->constant
&& !MISCP (XSYMBOL (sym)->value))
XSYMBOL (sym)->value = val;
else
{
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment