Compiling the rational
branch results in three warnings that don’t occur with the master
branch:
[271/2362] Building C object src/CMakeFiles/libswipl.dir/pl-wic.c.o
../src/pl-wic.c:1529:29: warning: absolute value function 'abs' given an argument of type 'ssize_t' (aka 'long') but has parameter of type 'int' which may cause truncation of value [-Wabsolute-value]
mpz_load_bits(fd, p, mpz, abs(hdrsize));
^
../src/pl-wic.c:1529:29: note: use function 'labs' instead
mpz_load_bits(fd, p, mpz, abs(hdrsize));
^~~
labs
../src/pl-wic.c:1554:29: warning: absolute value function 'abs' given an argument of type 'ssize_t' (aka 'long') but has parameter of type 'int' which may cause truncation of value [-Wabsolute-value]
mpz_load_bits(fd, p, num, abs(num_hdrsize));
^
../src/pl-wic.c:1554:29: note: use function 'labs' instead
mpz_load_bits(fd, p, num, abs(num_hdrsize));
^~~
labs
../src/pl-wic.c:1557:29: warning: absolute value function 'abs' given an argument of type 'ssize_t' (aka 'long') but has parameter of type 'int' which may cause truncation of value [-Wabsolute-value]
mpz_load_bits(fd, p, den, abs(den_hdrsize));
^
../src/pl-wic.c:1557:29: note: use function 'labs' instead
mpz_load_bits(fd, p, den, abs(den_hdrsize));
^~~
labs
3 warnings generated.
Logtalk fails to start with this branch. Debugging suggest a failure when returning from a predicate call (that succeeds) to the next goal in a conjunction. Something seems broken at a low level.