g_cells = g_news;
g_news = cells;
#if _POSIX_SOURCE
- if (g_debug) fprintf (stderr, " => jam[%d]\n", g_free);
+ if (g_debug) fprintf (stderr, ";;; => jam[%d]\n", g_free);
#else
if (g_debug)
{
- eputs (" => jam[");
+ eputs (";;; => jam[");
eputs (itoa (g_free));
eputs ("]\n");
}
{
NVECTOR (new) = g_free;
for (int i=0; i<LENGTH (old); i++)
+#if __GNUC__
g_news[g_free++] = g_cells[VECTOR (old)+i];
+#else
+ {
+ SCM b = VECTOR (old)+i;
+ g_news[g_free++] = g_cells[b];
+ }
+#endif
}
TYPE (old) = TBROKEN_HEART;
CAR (old) = new;
gc ()
{
#if _POSIX_SOURCE
- if (g_debug) fprintf (stderr, "***gc[%d]...", g_free);
+ if (g_debug) fprintf (stderr, ";;; gc[%d:%d]...", g_free, ARENA_SIZE - g_free);
#else
if (g_debug)
{
- eputs ("***gc[");
+ eputs (";;; gc[");
eputs (itoa (g_free));
+ eputs (":");
+ eputs (itoa (ARENA_SIZE - g_free));
eputs ("]...");
}
#endif