--- /home/jfw/build/Scheme/chicken-core/chicken.h 2011-10-05 00:03:16.000000000 +0200 +++ chicken.h 2011-10-08 14:01:57.770611923 +0200 @@ -937,7 +937,7 @@ #define C_demand_2(n) (((C_word *)C_fromspace_top + (n)) < (C_word *)C_fromspace_limit) #define C_fix(n) (((C_word)(n) << C_FIXNUM_SHIFT) | C_FIXNUM_BIT) #define C_unfix(x) ((x) >> C_FIXNUM_SHIFT) -#define C_make_character(c) ((((c) & C_CHAR_BIT_MASK) << C_CHAR_SHIFT) | C_CHARACTER_BITS) +#define C_make_character(c) ((((C_word)(c) & C_CHAR_BIT_MASK) << C_CHAR_SHIFT) | C_CHARACTER_BITS) #define C_character_code(x) (((C_word)(x) >> C_CHAR_SHIFT) & C_CHAR_BIT_MASK) #define C_flonum_magnitude(x) (*((double *)(((C_SCHEME_BLOCK *)(x))->data))) #define C_c_string(x) ((C_char *)(((C_SCHEME_BLOCK *)(x))->data))