Subject: bug#45243: Guile: test-num2integral and scm_is_signed_integer test failing.

From: Denis 'GNUtoo' Carikli <[email-masked]>
Date: Mon, 14 Dec 2020 20:03:28 +0100

Hi,

Guile tests (also) fails on my setup.

I use Parabola i686 with a 64bit kernel( 5.7.2-gnu-1-64), and I've Guix
i686 installed[1].

When installing a package (gnurobots) with Guix, Guix tried to build
guile-1.8.8, and the compilation ends up with:
> libtool: link: gcc -I../../test-suite/standalone -I../.. -I../..
> -pthread -g -O2 -Wall -Wmissing-prototypes -pthread -o
> .libs/test-scm-with-guile test_scm_with_guile-test-scm-with-guile.o
> ../../libguile/.libs/libguile.so -lgmp -lcrypt -lm -lltdl -pthread
> -Wl,-rpath
> -Wl,/gnu/store/j6mnhk6iiy77m1ial0ffgjz2zwdc6m4z-guile-1.8.8/lib
> make[4]: Leaving directory
> '/tmp/guix-build-guile-1.8.8.drv-0/guile-1.8.8/test-suite/standalone'
> make  check-TESTS make[4]: Entering directory
> '/tmp/guix-build-guile-1.8.8.drv-0/guile-1.8.8/test-suite/standalone'
> PASS: test-system-cmds PASS: test-require-extension PASS:
> test-bad-identifiers ERROR: Value out of range -9223372036854775808
> to 9223372036854775807: -9223372036854775808 FAIL: test-num2integral
> PASS: test-round PASS: test-gh PASS: test-asmobs PASS: test-list
> PASS: test-unwind fail: scm_is_signed_integer ((- (expt 2 63)),
> -9223372036854775808, 9223372036854775807) == 1 FAIL: test-conversion
> PASS: test-fast-slot-ref
> PASS: test-use-srfi
> PASS: test-scm-c-read
> PASS: test-scm-take-locale-symbol
> PASS: test-with-guile-module
> PASS: test-scm-with-guile
> ==================================
> 2 of 16 tests failed
> Please report to bug-guile gnu.org
> ==================================
> make[4]: *** [Makefile:797: check-TESTS] Error 1
[...]

As bugreport says to bugreport to bug-guile gnu.org, and that there
is already an existing bug in Guix about it (for armhf), I've added
both in To.

I've also attached the full build log.

References:
-----------
[1] I've an x86_64 CPU but I kept my old Parabola rootfs
    around as it had too much configuration, and software in /usr/local.
    As I want to be able to chroot in x86_64 rootfs I need an x86_64
    kernel. So I added one to Parabola and I use that.

Denis.