aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/alloc.c22
1 files changed, 12 insertions, 10 deletions
diff --git a/src/alloc.c b/src/alloc.c
index 5230b5a7a82..c42453d9062 100644
--- a/src/alloc.c
+++ b/src/alloc.c
@@ -4087,7 +4087,6 @@ Garbage collection happens automatically if you cons more than
4087`gc-cons-threshold' bytes of Lisp data since previous garbage collection. */) 4087`gc-cons-threshold' bytes of Lisp data since previous garbage collection. */)
4088 () 4088 ()
4089{ 4089{
4090 register struct gcpro *tail;
4091 register struct specbinding *bind; 4090 register struct specbinding *bind;
4092 struct catchtag *catch; 4091 struct catchtag *catch;
4093 struct handler *handler; 4092 struct handler *handler;
@@ -4201,15 +4200,18 @@ Garbage collection happens automatically if you cons more than
4201 || GC_MARK_STACK == GC_MARK_STACK_CHECK_GCPROS) 4200 || GC_MARK_STACK == GC_MARK_STACK_CHECK_GCPROS)
4202 mark_stack (); 4201 mark_stack ();
4203#else 4202#else
4204 for (tail = gcprolist; tail; tail = tail->next) 4203 {
4205 for (i = 0; i < tail->nvars; i++) 4204 register struct gcpro *tail;
4206 if (!XMARKBIT (tail->var[i])) 4205 for (tail = gcprolist; tail; tail = tail->next)
4207 { 4206 for (i = 0; i < tail->nvars; i++)
4208 /* Explicit casting prevents compiler warning about 4207 if (!XMARKBIT (tail->var[i]))
4209 discarding the `volatile' qualifier. */ 4208 {
4210 mark_object ((Lisp_Object *)&tail->var[i]); 4209 /* Explicit casting prevents compiler warning about
4211 XMARK (tail->var[i]); 4210 discarding the `volatile' qualifier. */
4212 } 4211 mark_object ((Lisp_Object *)&tail->var[i]);
4212 XMARK (tail->var[i]);
4213 }
4214 }
4213#endif 4215#endif
4214 4216
4215 mark_byte_stack (); 4217 mark_byte_stack ();