GNU bug report logs -
#73835
Build failure with gcc 14 and musl on 32 bit
Previous Next
To reply to this bug, email your comments to 73835 AT debbugs.gnu.org.
Toggle the display of automated, internal messages from the tracker.
Report forwarded
to
bug-guile <at> gnu.org
:
bug#73835
; Package
guile
.
(Wed, 16 Oct 2024 07:57:02 GMT)
Full text and
rfc822 format available.
Acknowledgement sent
to
Natanael Copa <ncopa <at> alpinelinux.org>
:
New bug report received and forwarded. Copy sent to
bug-guile <at> gnu.org
.
(Wed, 16 Oct 2024 07:57:02 GMT)
Full text and
rfc822 format available.
Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):
Hi,
I get this error message when compiling guile 3.0.9 and 3.0.10 with gcc
14 / musl libc on 32 bit Alpine Linux:
filesys.c: In function 'scm_sendfile':
filesys.c:1405:16: error: assignment to 'off_t *' {aka 'long long int *'} from incompatible pointer type 'scm_t_off *' {aka 'long int *'} [-Wincompatible-pointer-types]
1405 | offset_ptr = SCM_UNBNDP (offset) ? NULL : &c_offset;
| ^
It looks like an assumption that off_t is 32 bit, which is not true on musl libc.
-nc
Information forwarded
to
bug-guile <at> gnu.org
:
bug#73835
; Package
guile
.
(Wed, 16 Oct 2024 08:03:02 GMT)
Full text and
rfc822 format available.
Message #8 received at submit <at> debbugs.gnu.org (full text, mbox):
On Wed, 16 Oct 2024 09:56:22 +0200
Natanael Copa <ncopa <at> alpinelinux.org> wrote:
> Hi,
>
> I get this error message when compiling guile 3.0.9 and 3.0.10 with gcc
> 14 / musl libc on 32 bit Alpine Linux:
>
> filesys.c: In function 'scm_sendfile':
> filesys.c:1405:16: error: assignment to 'off_t *' {aka 'long long int *'} from incompatible pointer type 'scm_t_off *' {aka 'long int *'} [-Wincompatible-pointer-types]
> 1405 | offset_ptr = SCM_UNBNDP (offset) ? NULL : &c_offset;
> | ^
>
> It looks like an assumption that off_t is 32 bit, which is not true on musl libc.
>
> -nc
This appears to solve it:
diff --git a/libguile/filesys.c b/libguile/filesys.c
index 70a6ef6..0500d45 100644
--- a/libguile/filesys.c
+++ b/libguile/filesys.c
@@ -1388,7 +1388,7 @@ SCM_DEFINE (scm_sendfile, "sendfile", 3, 1, 0,
ssize_t result SCM_UNUSED;
size_t c_count, total = 0;
- scm_t_off c_offset;
+ off_t c_offset;
int in_fd, out_fd;
VALIDATE_FD_OR_PORT (out_fd, out, 1);
This bug report was last modified 243 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.