From 3d27ef4bd312750f8edca81f09644eab21a3d8e0 Mon Sep 17 00:00:00 2001 From: Andy Wingo Date: Thu, 18 Nov 2010 22:30:27 +0100 Subject: fix a number of assumptions that a pointer could fit into a long * libguile/debug.c: * libguile/eval.c: * libguile/frames.c: * libguile/objcodes.c: * libguile/print.c: * libguile/programs.c: * libguile/read.c: * libguile/struct.c: * libguile/vm.c: Fix a number of instances in which we assumed we could fit a pointer into a long. --- libguile/struct.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'libguile/struct.c') diff --git a/libguile/struct.c b/libguile/struct.c index c784f59bb..e5ecc1aaf 100644 --- a/libguile/struct.c +++ b/libguile/struct.c @@ -926,7 +926,8 @@ SCM_DEFINE (scm_struct_vtable_tag, "struct-vtable-tag", 1, 0, 0, #define FUNC_NAME s_scm_struct_vtable_tag { SCM_VALIDATE_VTABLE (1, handle); - return scm_from_ulong (((unsigned long)SCM_STRUCT_DATA (handle)) >> 3); + return scm_from_unsigned_integer + (((scm_t_bits)SCM_STRUCT_DATA (handle)) >> 3); } #undef FUNC_NAME -- cgit v1.2.3