Andrzej Szeszo
2013-06-04 453bf5a3004107204e1858532a38b3e703e32995
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
The guile gh_scm2ulong() and scm_to_ulong() routines should really
return an unsigned long otherwise the generation of the getdefs
opts.[h,c] files from the opts.def file fails for 32-bit SPARC.
 
This problem has been reported upstream, and the fix is in autogen-5.17.5pre2
 
--- autogen-5.16.2/agen5/guile-iface.h.orig    2013-05-31 09:59:18.924928189 -0700
+++ autogen-5.16.2/agen5/guile-iface.h    2013-05-31 10:00:51.274085992 -0700
@@ -32,7 +32,7 @@
 # define AG_SCM_SYM_P(_s)             SCM_SYMBOLP(_s)
 # define AG_SCM_TO_INT(_i)            gh_scm2int(_i)
 # define AG_SCM_TO_LONG(_v)           gh_scm2long(_v)
-# define AG_SCM_TO_ULONG(_v)          gh_scm2ulong(_v)
+# define AG_SCM_TO_ULONG(_v)          ((unsigned long)gh_scm2ulong(_v))
 # define AG_SCM_VEC_P(_v)             SCM_VECTORP(_v)
 
 #elif GUILE_VERSION < 200000
@@ -58,7 +58,7 @@
 # define AG_SCM_SYM_P(_s)             scm_is_symbol(_s)
 # define AG_SCM_TO_INT(_i)            scm_to_int(_i)
 # define AG_SCM_TO_LONG(_v)           scm_to_long(_v)
-# define AG_SCM_TO_ULONG(_v)          scm_to_ulong(_v)
+# define AG_SCM_TO_ULONG(_v)          ((unsigned long)scm_to_ulong(_v))
 # define AG_SCM_VEC_P(_v)             scm_is_vector(_v)
 
 #elif GUILE_VERSION < 201000
@@ -84,7 +84,7 @@
 # define AG_SCM_SYM_P(_s)             scm_is_symbol(_s)
 # define AG_SCM_TO_INT(_i)            scm_to_int(_i)
 # define AG_SCM_TO_LONG(_v)           scm_to_long(_v)
-# define AG_SCM_TO_ULONG(_v)          scm_to_ulong(_v)
+# define AG_SCM_TO_ULONG(_v)          ((unsigned long)scm_to_ulong(_v))
 # define AG_SCM_VEC_P(_v)             scm_is_vector(_v)
 
 #else