| Summary: | sys-fs/avfs-1.1.5 passing argument 1 of 'localtime_r' from incompatible pointer type, on ARM MUSL | ||
|---|---|---|---|
| Product: | Gentoo Linux | Reporter: | Marius Dinu <marius+gentoo> |
| Component: | Current packages | Assignee: | No maintainer - Look at https://wiki.gentoo.org/wiki/Project:Proxy_Maintainers if you want to take care of it <maintainer-needed> |
| Status: | UNCONFIRMED --- | ||
| Severity: | normal | CC: | marius+gentoo, toolchain |
| Priority: | Normal | ||
| Version: | unspecified | ||
| Hardware: | All | ||
| OS: | Linux | ||
| Whiteboard: | |||
| Package list: | Runtime testing required: | --- | |
| Attachments: |
emerge --info
build log |
||
Created attachment 899044 [details]
emerge --info
Created attachment 899045 [details]
build log
It looks like it thinks time_t is (long long)... but that should only be the case if _TIME_BITS=64. We haven't enabled that for 32-bit arches yet.
libtool: compile: armv7a-unknown-linux-musleabihf-gcc -DHAVE_CONFIG_H -I. -I../include -I../include -D_FILE_OFFSET_BITS=64 -D_REENTRANT -D_POSIX_PTHREAD_SEMANTICS -D_GNU_SOURCE -I/usr/include/fuse -D_FILE_OFFSET_BITS=64 -DB
Z_NO_STDIO -D_FILE_OFFSET_BITS=64 -D_REENTRANT -D_POSIX_PTHREAD_SEMANTICS -D_GNU_SOURCE -I/usr/include/fuse -D_FILE_OFFSET_BITS=64 -O2 -pipe -fomit-frame-pointer -march=armv7ve+neon-vfpv3 -mcpu=cortex-a17 -mfpu=neon-vfpv3 -m
float-abi=hard -O2 -pipe -fomit-frame-pointer -march
=armv7ve+neon-vfpv3 -mcpu=cortex-a17 -mfpu=neon-vfpv3 -mfloat-abi=hard -c sysdeps.c -fPIC -DPIC -o .libs/sysdeps.o
sysdeps.c: In function 'av_localtime':
sysdeps.c:325:17: error: passing argument 1 of 'localtime_r' from incompatible pointer type [-Wincompatible-pointer-types]
325 | localtime_r(&t, &tms);
| ^~
| |
| avtime_t * {aka long int *}
In file included from /usr/include/pthread.h:31,
from ../include/avfs.h:15,
from ../include/internal.h:9,
from sysdeps.c:9:
/usr/include/time.h:76:25: note: expected 'const time_t * restrict' {aka 'const long long int * restrict'} but argument is of type 'avtime_t *' {aka 'long int *'}
76 | struct tm *localtime_r (const time_t *__restrict, struct tm *__restrict);
| ^
make[2]: *** [Makefile:501: sysdeps.lo] Error 1
make[2]: *** Waiting for unfinished jobs....
make[2]: Leaving directory '/var/tmp/portage/sys-fs/avfs-1.1.5/work/avfs-1.1.5/src'
make[1]: *** [Makefile:386: all] Error 2
make[1]: Leaving directory '/var/tmp/portage/sys-fs/avfs-1.1.5/work/avfs-1.1.5/src'
make: *** [Makefile:432: all-recursive] Error 1
Oh, this is musl, which doesn't have _TIME_BITS. |
emerge fails with this error: libtool: compile: armv7a-unknown-linux-musleabihf-gcc -DHAVE_CONFIG_H -I. -I../include -I../include -D_FILE_OFFSET_BITS=64 -D_REENTRANT -D_POSIX_PTHREAD_SEMANTICS -D_GNU_SOURCE -I/usr/include/fuse -D_FILE_OFFSET_BITS=64 -DBZ_NO_STDIO -D_FILE_OFFSET_BITS=64 -D_REENTRANT -D_POSIX_PTHREAD_SEMANTICS -D_GNU_SOURCE -I/usr/include/fuse -D_FILE_OFFSET_BITS=64 -O2 -pipe -fomit-frame-pointer -march=armv7ve+neon-vfpv3 -mcpu=cortex-a17 -mfpu=neon-vfpv3 -mfloat-abi=hard -O2 -pipe -fomit-frame-pointer -march=armv7ve+neon-vfpv3 -mcpu=cortex-a17 -mfpu=neon-vfpv3 -mfloat-abi=hard -c sysdeps.c -fPIC -DPIC -o .libs/sysdeps.o sysdeps.c: In function 'av_localtime': sysdeps.c:325:17: error: passing argument 1 of 'localtime_r' from incompatible pointer type [-Wincompatible-pointer-types] 325 | localtime_r(&t, &tms); | ^~ | | | avtime_t * {aka long int *} In file included from /usr/include/pthread.h:31, from ../include/avfs.h:15, from ../include/internal.h:9, from sysdeps.c:9: /usr/include/time.h:76:25: note: expected 'const time_t * restrict' {aka 'const long long int * restrict'} but argument is of type 'avtime_t *' {aka 'long int *'} 76 | struct tm *localtime_r (const time_t *__restrict, struct tm *__restrict); | ^ make[2]: *** [Makefile:501: sysdeps.lo] Error 1 Thank you.