{
return !((intptr_t) p % (USE_LSB_TAG ? GCALIGNMENT : 2));
}
-
+
/* If P points to Lisp data, mark that as live if it isn't already
marked. */
{
if (PURE_POINTER_P (str))
return 0;
-#if GC_MARK_STACK
+#if GC_MARK_STACK
if (str)
{
struct sdata *sdata
&& (const char *) sdata->string->data == str);
}
return 0;
-#endif /* GC_MARK_STACK */
+#endif /* GC_MARK_STACK */
return -1;
}
#elif (GC_MARK_STACK == GC_USE_GCPROS_AS_BEFORE)
/* Old GCPROs-based method without stack marking. */
return garbage_collect_1 (NULL);
-#else
+#else
emacs_abort ();
-#endif /* GC_MARK_STACK */
+#endif /* GC_MARK_STACK */
}
/* Mark Lisp objects in glyph matrix MATRIX. Currently the
mark_compiled (struct Lisp_Vector *ptr)
{
int i, size = ptr->header.size & PSEUDOVECTOR_SIZE_MASK;
-
+
VECTOR_MARK (ptr);
for (i = 0; i < size; i++)
if (i != COMPILED_CONSTANTS)
struct Lisp_Buffer_Local_Value *blv = SYMBOL_BLV (ptr);
Lisp_Object where = blv->where;
/* If the value is set up for a killed buffer or deleted
- frame, restore it's global binding. If the value is
+ frame, restore its global binding. If the value is
forwarded to a C variable, either it's not a Lisp_Object
var, or it's staticpro'd already. */
if ((BUFFERP (where) && !BUFFER_LIVE_P (XBUFFER (where)))