mallocating for (unsigned long *bounds).
* hashtab.c (scm_i_rehash): Cast SCM_HASHTABLE_FLAGS (table) to
scm_t_bits before storing them in the type word.
* gc.c (tag_table_to_type_alist): Modified type of c_tag from
scm_t_bits to int.
+2005-07-18 Mikael Djurfeldt <mdj@d14n36.pdc.kth.se>
+
+ Some changes towards making it possible to run Guile on the EM64T
+ platform.
+
+ * gc.c (scm_gc_stats): Bugfix: Measure size of the type we are
+ mallocating for (unsigned long *bounds).
+
+ * hashtab.c (scm_i_rehash): Cast SCM_HASHTABLE_FLAGS (table) to
+ scm_t_bits before storing them in the type word.
+
+ * gc.c (tag_table_to_type_alist): Modified type of c_tag from
+ scm_t_bits to int.
+
2005-07-12 Kevin Ryde <user42@zip.com.au>
* eval.c (scm_dbg_make_iloc): Should be SCM_IFRAMEMAX and
{
if (scm_is_integer (key))
{
- scm_t_bits c_tag = scm_to_int (key);
+ int c_tag = scm_to_int (key);
char const * name = scm_i_tag_name (c_tag);
if (name != NULL)
temporarily store the numbers, so as not to cause GC.
*/
- bounds = malloc (sizeof (int) * table_size * 2);
+ bounds = malloc (sizeof (unsigned long) * table_size * 2);
if (!bounds)
abort();
for (i = table_size; i--; )
SCM_SET_HASHTABLE_VECTOR (table, new_buckets);
SCM_SET_HASHTABLE_N_ITEMS (table, 0);
if (SCM_HASHTABLE_WEAK_P (table))
- SCM_I_SET_WVECT_TYPE (buckets, (SCM_HASHTABLE_FLAGS (table)));
+ SCM_I_SET_WVECT_TYPE (buckets, ((scm_t_bits) SCM_HASHTABLE_FLAGS (table)));
old_size = SCM_SIMPLE_VECTOR_LENGTH (buckets);
for (i = 0; i < old_size; ++i)