aboutsummaryrefslogtreecommitdiffstats
path: root/src/data.c
diff options
context:
space:
mode:
authorAlan Mackenzie2022-01-14 19:28:07 +0000
committerAlan Mackenzie2022-01-14 19:28:07 +0000
commitd87a34597c9f0be967f75ff8cfd0ace4392da63f (patch)
treec9474eb0156af143ce61a0c5bcec659546b56300 /src/data.c
parent57b698f15913385aec7bc9745016b961c0aa5c55 (diff)
parentd29291d665e808307126bf52c3e748fef78f0f9c (diff)
downloademacs-d87a34597c9f0be967f75ff8cfd0ace4392da63f.tar.gz
emacs-d87a34597c9f0be967f75ff8cfd0ace4392da63f.zip
Merge branch 'master' into scratch/correct-warning-pos
Merge branch: commit d29291d665e808307126bf52c3e748fef78f0f9c (HEAD -> master, origin/master, origin/HEAD) Author: Stefan Monnier <monnier@iro.umontreal.ca> Date: Fri Jan 14 12:26:30 2022 -0500 (macroexp--expand-all): Fix bug#53227 and bug#46636
Diffstat (limited to 'src/data.c')
-rw-r--r--src/data.c16
1 files changed, 6 insertions, 10 deletions
diff --git a/src/data.c b/src/data.c
index e999cee242e..7422348e392 100644
--- a/src/data.c
+++ b/src/data.c
@@ -2180,7 +2180,7 @@ Instead, use `add-hook' and specify t for the LOCAL argument. */)
2180 2180
2181 /* Make sure this buffer has its own value of symbol. */ 2181 /* Make sure this buffer has its own value of symbol. */
2182 XSETSYMBOL (variable, sym); /* Update in case of aliasing. */ 2182 XSETSYMBOL (variable, sym); /* Update in case of aliasing. */
2183 tem = Fassq (variable, BVAR (current_buffer, local_var_alist)); 2183 tem = assq_no_quit (variable, BVAR (current_buffer, local_var_alist));
2184 if (NILP (tem)) 2184 if (NILP (tem))
2185 { 2185 {
2186 if (let_shadows_buffer_binding_p (sym)) 2186 if (let_shadows_buffer_binding_p (sym))
@@ -2260,7 +2260,7 @@ From now on the default value will apply in this buffer. Return VARIABLE. */)
2260 2260
2261 /* Get rid of this buffer's alist element, if any. */ 2261 /* Get rid of this buffer's alist element, if any. */
2262 XSETSYMBOL (variable, sym); /* Propagate variable indirection. */ 2262 XSETSYMBOL (variable, sym); /* Propagate variable indirection. */
2263 tem = Fassq (variable, BVAR (current_buffer, local_var_alist)); 2263 tem = assq_no_quit (variable, BVAR (current_buffer, local_var_alist));
2264 if (!NILP (tem)) 2264 if (!NILP (tem))
2265 bset_local_var_alist 2265 bset_local_var_alist
2266 (current_buffer, 2266 (current_buffer,
@@ -2301,7 +2301,7 @@ Also see `buffer-local-boundp'.*/)
2301 case SYMBOL_PLAINVAL: return Qnil; 2301 case SYMBOL_PLAINVAL: return Qnil;
2302 case SYMBOL_LOCALIZED: 2302 case SYMBOL_LOCALIZED:
2303 { 2303 {
2304 Lisp_Object tail, elt, tmp; 2304 Lisp_Object tmp;
2305 struct Lisp_Buffer_Local_Value *blv = SYMBOL_BLV (sym); 2305 struct Lisp_Buffer_Local_Value *blv = SYMBOL_BLV (sym);
2306 XSETBUFFER (tmp, buf); 2306 XSETBUFFER (tmp, buf);
2307 XSETSYMBOL (variable, sym); /* Update in case of aliasing. */ 2307 XSETSYMBOL (variable, sym); /* Update in case of aliasing. */
@@ -2309,13 +2309,9 @@ Also see `buffer-local-boundp'.*/)
2309 if (EQ (blv->where, tmp)) /* The binding is already loaded. */ 2309 if (EQ (blv->where, tmp)) /* The binding is already loaded. */
2310 return blv_found (blv) ? Qt : Qnil; 2310 return blv_found (blv) ? Qt : Qnil;
2311 else 2311 else
2312 for (tail = BVAR (buf, local_var_alist); CONSP (tail); tail = XCDR (tail)) 2312 return NILP (assq_no_quit (variable, BVAR (buf, local_var_alist)))
2313 { 2313 ? Qnil
2314 elt = XCAR (tail); 2314 : Qt;
2315 if (EQ (variable, XCAR (elt)))
2316 return Qt;
2317 }
2318 return Qnil;
2319 } 2315 }
2320 case SYMBOL_FORWARDED: 2316 case SYMBOL_FORWARDED:
2321 { 2317 {