(address . bug-guile@gnu.org)
While building guile 2.9.8 on openSUSE Tumbleweed, you get the same
build failure on armv7l and i586. So I assume it has something to do
with 32bit.
libtool: compile: gcc -std=gnu11 -DHAVE_CONFIG_H -DBUILDING_LIBGUILE=1
-I.. -I.. -I../lib -I../lib -iquote. -I../libguile/lightening
-I/home/abuild/rpmbuild/BUILD/guile-2.9.8 -pthread -Wall
-Wmissing-prototypes -Wpointer-arith -fno-strict-aliasing -fwrapv
-fvisibility=hidden -fomit-frame-pointer -O2 -Wall -D_FORTIFY_SOURCE=2
-fstack-protector-strong -funwind-tables -fasynchronous-unwind-tables
-fstack-clash-protection -Werror=return-type -flto=auto -c jit.c -fPIC
-DPIC -o .libs/libguile_3.0_la-jit.o
jit.c: In function 'compile_s64_to_f64':
jit.c:5007:27: error: incompatible type for argument 3 of 'emit_sp_ref_s64'
5007 | emit_sp_ref_s64 (j, T0, src);
| ^~~
| |
| uint16_t {aka short unsigned int}
jit.c:1082:64: note: expected 'jit_gpr_t' {aka 'struct jit_gpr'} but
argument is of type 'uint16_t' {aka 'short unsigned int'}
1082 | emit_sp_ref_s64 (scm_jit_state *j, jit_gpr_t dst_lo, jit_gpr_t
dst_hi,
| ~~~~~~~~~^~~~~~
jit.c:5007:3: error: too few arguments to function 'emit_sp_ref_s64'
5007 | emit_sp_ref_s64 (j, T0, src);
| ^~~~~~~~~~~~~~~
jit.c:1082:1: note: declared here
1082 | emit_sp_ref_s64 (scm_jit_state *j, jit_gpr_t dst_lo, jit_gpr_t
dst_hi,
| ^~~~~~~~~~~~~~~
At top level:
jit.c:1028:1: warning: 'sp_s32_operand' defined but not used
[-Wunused-function]
1028 | sp_s32_operand (scm_jit_state *j, uint32_t src)
| ^~~~~~~~~~~~~~
jit.c:974:1: warning: 'sp_u64_operand' defined but not used
[-Wunused-function]
974 | sp_u64_operand (scm_jit_state *j, uint32_t slot)
| ^~~~~~~~~~~~~~