aboutsummaryrefslogtreecommitdiffstats
path: root/src/bytecode.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/bytecode.c')
-rw-r--r--src/bytecode.c15
1 files changed, 4 insertions, 11 deletions
diff --git a/src/bytecode.c b/src/bytecode.c
index b142e3e667e..48739234a6d 100644
--- a/src/bytecode.c
+++ b/src/bytecode.c
@@ -520,7 +520,7 @@ If the third argument is incorrect, Emacs may crash.")
520 v1 = vectorp[op]; 520 v1 = vectorp[op];
521 if (SYMBOLP (v1)) 521 if (SYMBOLP (v1))
522 { 522 {
523 v2 = XSYMBOL (v1)->value; 523 v2 = SYMBOL_VALUE (v1);
524 if (MISCP (v2) || EQ (v2, Qunbound)) 524 if (MISCP (v2) || EQ (v2, Qunbound))
525 { 525 {
526 BEFORE_POTENTIAL_GC (); 526 BEFORE_POTENTIAL_GC ();
@@ -626,16 +626,9 @@ If the third argument is incorrect, Emacs may crash.")
626 /* Inline the most common case. */ 626 /* Inline the most common case. */
627 if (SYMBOLP (sym) 627 if (SYMBOLP (sym)
628 && !EQ (val, Qunbound) 628 && !EQ (val, Qunbound)
629 && !MISCP (XSYMBOL (sym)->value) 629 && !XSYMBOL (sym)->indirect_variable
630 /* I think this should either be checked in the byte 630 && !XSYMBOL (sym)->constant
631 compiler, or there should be a flag indicating that 631 && !MISCP (XSYMBOL (sym)->value))
632 a symbol might be constant in Lisp_Symbol, instead
633 of checking this here over and over again. --gerd. */
634 && !EQ (sym, Qnil)
635 && !EQ (sym, Qt)
636 && !(XSYMBOL (sym)->name->data[0] == ':'
637 && EQ (XSYMBOL (sym)->obarray, initial_obarray)
638 && !EQ (val, sym)))
639 XSYMBOL (sym)->value = val; 632 XSYMBOL (sym)->value = val;
640 else 633 else
641 { 634 {