On Tue, Oct 29, 2024 at 06:32:43PM +0000, Olly Betts wrote:
> On Tue, Oct 29, 2024 at 07:48:32PM +0200, Adrian Bunk wrote:
> > ../../tests/unittest.cc:962:49: warning: left shift count >= width of type
> > [-Wshift-count-overflow]
> > 962 | constexpr off_t high_offset = (off_t{1} << 32) + BLOCK_SIZE;
> > | ~~~~~~~~~^~~~~
> > ../../tests/unittest.cc:962:49: error: right operand of shift expression
> > ‘(1 << 32)’ is greater than or equal to the precision 32 of the left
> > operand [-fpermissive]
> > 962 | constexpr off_t high_offset = (off_t{1} << 32) + BLOCK_SIZE;
> > | ~~~~~~~~~~^~~~~~
>
> Strange - LFS support should be enabled so off_t should be 64-bit...
>
> (This part of this testcase ought to be conditional and skipped for
> platforms which only have a 32-bit off_t, but that shouldn't include any
> Debian architectures.)
LFS was enabled on 32-bit architectures as part of the 64-bit time_t
changes, but this is NOT done on i386:
https://wiki.debian.org/ReleaseGoals/64bit-time#Decision
AC_SYS_LARGEFILE seems unhappy with g++:
checking for gcc option to enable large file support... support not detected
It works for me with
AC_LANG([C])
AC_SYS_LARGEFILE
dnl Run tests using the C++ compiler.
AC_LANG([C++])
> Cheers,
> Olly
cu
Adrian