--- Begin Message ---
Package: src:rspamd
Version: 3.4-1
Severity: normal
Tags: sid trixie
User: debian-...@lists.debian.org
Usertags: ftbfs-gcc-13
[This bug is targeted to the upcoming trixie release]
Please keep this issue open in the bug tracker for the package it
was filed for. If a fix in another package is required, please
file a bug for the other package (or clone), and add a block in this
package. Please keep the issue open until the package can be built in
a follow-up test rebuild.
The package fails to build in a test rebuild on at least amd64 with
gcc-13/g++-13, but succeeds to build with gcc-12/g++-12. The
severity of this report will be raised before the trixie release.
The full build log can be found at:
http://qa-logs.debian.net/2023/05/22/logs/rspamd_3.4-1_unstable_gccexp.log
The last lines of the build log are at the end of this report.
To build with GCC 13, either set CC=gcc-13 CXX=g++-13 explicitly,
or install the gcc, g++, gfortran, ... packages from experimental.
apt-get -t=experimental install g++
Common build failures are new warnings resulting in build failures with
-Werror turned on, or new/dropped symbols in Debian symbols files.
For other C/C++ related build failures see the porting guide at
http://gcc.gnu.org/gcc-13/porting_to.html
[...]
/<<PKGBUILDDIR>>/src/libserver/css/css_property.cxx:63:36: error: expected ‘;’
before ‘{’ token
63 | return css_property{token_string_to_property(sv),
css_property_flag::FLAG_NORMAL};
| ^
| ;
/<<PKGBUILDDIR>>/src/libserver/css/css_property.cxx:63:67: error:
‘css_property_flag’ is not a class, namespace, or enumeration
63 | return css_property{token_string_to_property(sv),
css_property_flag::FLAG_NORMAL};
|
^~~~~~~~~~~~~~~~~
make[3]: *** [src/CMakeFiles/rspamd-server.dir/build.make:1171:
src/CMakeFiles/rspamd-server.dir/libserver/css/css_property.cxx.o] Error 1
make[3]: *** [src/CMakeFiles/rspamd-server.dir/build.make:1115:
src/CMakeFiles/rspamd-server.dir/libserver/html/html.cxx.o] Error 1
make[3]: *** [src/CMakeFiles/rspamd-server.dir/build.make:1157:
src/CMakeFiles/rspamd-server.dir/libserver/css/css.cxx.o] Error 1
In file included from /usr/include/c++/13/string:51,
from /<<PKGBUILDDIR>>/src/libserver/hyperscan_tools.cxx:19:
In static member function ‘static constexpr _Up* std::__copy_move<_IsMove,
true, std::random_access_iterator_tag>::__copy_m(_Tp*, _Tp*, _Up*) [with _Tp =
unsigned int; _Up = unsigned int; bool _IsMove = false]’,
inlined from ‘constexpr _OI std::__copy_move_a2(_II, _II, _OI) [with bool
_IsMove = false; _II = unsigned int*; _OI = unsigned int*]’ at
/usr/include/c++/13/bits/stl_algobase.h:506:30,
inlined from ‘constexpr _OI std::__copy_move_a1(_II, _II, _OI) [with bool
_IsMove = false; _II = unsigned int*; _OI = unsigned int*]’ at
/usr/include/c++/13/bits/stl_algobase.h:533:42,
inlined from ‘constexpr _OI std::__copy_move_a(_II, _II, _OI) [with bool
_IsMove = false; _II = unsigned int*; _OI = unsigned int*]’ at
/usr/include/c++/13/bits/stl_algobase.h:540:31,
inlined from ‘constexpr _OI std::copy(_II, _II, _OI) [with _II = unsigned
int*; _OI = unsigned int*]’ at /usr/include/c++/13/bits/stl_algobase.h:633:7,
inlined from ‘static _ForwardIterator
std::__uninitialized_copy<true>::__uninit_copy(_InputIterator, _InputIterator,
_ForwardIterator) [with _InputIterator = unsigned int*; _ForwardIterator =
unsigned int*]’ at /usr/include/c++/13/bits/stl_uninitialized.h:147:27,
inlined from ‘_ForwardIterator std::uninitialized_copy(_InputIterator,
_InputIterator, _ForwardIterator) [with _InputIterator = unsigned int*;
_ForwardIterator = unsigned int*]’ at
/usr/include/c++/13/bits/stl_uninitialized.h:185:15,
inlined from ‘constexpr void fmt::v8::basic_memory_buffer<T, SIZE,
Allocator>::grow(size_t) [with T = unsigned int; long unsigned int SIZE = 32;
Allocator = std::allocator<unsigned int>]’ at
/<<PKGBUILDDIR>>/contrib/fmt/include/fmt/format.h:793:26,
inlined from ‘constexpr void
fmt::v8::detail::buffer<T>::try_reserve(size_t) [with T = unsigned int]’ at
/<<PKGBUILDDIR>>/contrib/fmt/include/fmt/core.h:846:39,
inlined from ‘constexpr void
fmt::v8::detail::buffer<T>::try_reserve(size_t) [with T = unsigned int]’ at
/<<PKGBUILDDIR>>/contrib/fmt/include/fmt/core.h:845:24,
inlined from ‘constexpr void fmt::v8::detail::buffer<T>::try_resize(size_t)
[with T = unsigned int]’ at
/<<PKGBUILDDIR>>/contrib/fmt/include/fmt/core.h:837:16,
inlined from ‘constexpr void fmt::v8::basic_memory_buffer<T, SIZE,
Allocator>::resize(size_t) [with T = unsigned int; long unsigned int SIZE = 32;
Allocator = std::allocator<unsigned int>]’ at
/<<PKGBUILDDIR>>/contrib/fmt/include/fmt/format.h:763:63,
inlined from ‘constexpr void fmt::v8::detail::bigint::assign(uint64_t)’ at
/<<PKGBUILDDIR>>/contrib/fmt/include/fmt/format-inl.h:469:19,
inlined from ‘constexpr void fmt::v8::detail::bigint::assign_pow10(int)’ at
/<<PKGBUILDDIR>>/contrib/fmt/include/fmt/format-inl.h:541:32:
/usr/include/c++/13/bits/stl_algobase.h:437:30: warning: ‘void*
__builtin_memmove(void*, const void*, long unsigned int)’ forming offset 4 is
out of the bounds [0, 4] [-Warray-bounds=]
437 | __builtin_memmove(__result, __first, sizeof(_Tp) * _Num);
| ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In static member function ‘static constexpr _Up* std::__copy_move<_IsMove,
true, std::random_access_iterator_tag>::__copy_m(_Tp*, _Tp*, _Up*) [with _Tp =
unsigned int; _Up = unsigned int; bool _IsMove = false]’,
inlined from ‘constexpr _OI std::__copy_move_a2(_II, _II, _OI) [with bool
_IsMove = false; _II = unsigned int*; _OI = unsigned int*]’ at
/usr/include/c++/13/bits/stl_algobase.h:506:30,
inlined from ‘constexpr _OI std::__copy_move_a1(_II, _II, _OI) [with bool
_IsMove = false; _II = unsigned int*; _OI = unsigned int*]’ at
/usr/include/c++/13/bits/stl_algobase.h:533:42,
inlined from ‘constexpr _OI std::__copy_move_a(_II, _II, _OI) [with bool
_IsMove = false; _II = unsigned int*; _OI = unsigned int*]’ at
/usr/include/c++/13/bits/stl_algobase.h:540:31,
inlined from ‘constexpr _OI std::copy(_II, _II, _OI) [with _II = unsigned
int*; _OI = unsigned int*]’ at /usr/include/c++/13/bits/stl_algobase.h:633:7,
inlined from ‘static _ForwardIterator
std::__uninitialized_copy<true>::__uninit_copy(_InputIterator, _InputIterator,
_ForwardIterator) [with _InputIterator = unsigned int*; _ForwardIterator =
unsigned int*]’ at /usr/include/c++/13/bits/stl_uninitialized.h:147:27,
inlined from ‘_ForwardIterator std::uninitialized_copy(_InputIterator,
_InputIterator, _ForwardIterator) [with _InputIterator = unsigned int*;
_ForwardIterator = unsigned int*]’ at
/usr/include/c++/13/bits/stl_uninitialized.h:185:15,
inlined from ‘constexpr void fmt::v8::basic_memory_buffer<T, SIZE,
Allocator>::grow(size_t) [with T = unsigned int; long unsigned int SIZE = 32;
Allocator = std::allocator<unsigned int>]’ at
/<<PKGBUILDDIR>>/contrib/fmt/include/fmt/format.h:793:26,
inlined from ‘constexpr void
fmt::v8::detail::buffer<T>::try_reserve(size_t) [with T = unsigned int]’ at
/<<PKGBUILDDIR>>/contrib/fmt/include/fmt/core.h:846:39,
inlined from ‘constexpr void
fmt::v8::detail::buffer<T>::try_reserve(size_t) [with T = unsigned int]’ at
/<<PKGBUILDDIR>>/contrib/fmt/include/fmt/core.h:845:24,
inlined from ‘constexpr void fmt::v8::detail::buffer<T>::try_resize(size_t)
[with T = unsigned int]’ at
/<<PKGBUILDDIR>>/contrib/fmt/include/fmt/core.h:837:16,
inlined from ‘constexpr void fmt::v8::basic_memory_buffer<T, SIZE,
Allocator>::resize(size_t) [with T = unsigned int; long unsigned int SIZE = 32;
Allocator = std::allocator<unsigned int>]’ at
/<<PKGBUILDDIR>>/contrib/fmt/include/fmt/format.h:763:63,
inlined from ‘constexpr void fmt::v8::detail::bigint::assign(uint64_t)’ at
/<<PKGBUILDDIR>>/contrib/fmt/include/fmt/format-inl.h:469:19,
inlined from ‘constexpr void fmt::v8::detail::bigint::assign_pow10(int)’ at
/<<PKGBUILDDIR>>/contrib/fmt/include/fmt/format-inl.h:548:11:
/usr/include/c++/13/bits/stl_algobase.h:437:30: warning: ‘void*
__builtin_memmove(void*, const void*, long unsigned int)’ forming offset 4 is
out of the bounds [0, 4] [-Warray-bounds=]
437 | __builtin_memmove(__result, __first, sizeof(_Tp) * _Num);
| ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In lambda function,
inlined from ‘constexpr decltype
(forward<Fn>(f)((forward<Args>)(tl::detail::invoke::args)...))
tl::detail::invoke(Fn&&, Args&& ...) [with Fn =
rspamd::util::load_cached_hs_file(const char*,
int64_t)::<lambda(T&&)>::<lambda(auto:23&&)>; Args =
{rspamd::util::raii_locked_file}; <template-parameter-1-3> = void]’ at
/<<PKGBUILDDIR>>/contrib/expected/expected.hpp:265:57,
inlined from ‘constexpr auto tl::detail::and_then_impl(Exp&&, F&&) [with
Exp = tl::expected<rspamd::util::raii_locked_file, rspamd::util::error>; F =
rspamd::util::load_cached_hs_file(const char*,
int64_t)::<lambda(T&&)>::<lambda(auto:23&&)>; enable_if_t<(!
std::is_void<typename std::decay<_Tp>::type::value_type>::value)>* <anonymous>
= 0; Ret = tl::expected<rspamd::util::raii_file, rspamd::util::error>]’ at
/<<PKGBUILDDIR>>/contrib/expected/expected.hpp:1955:60,
inlined from ‘constexpr auto tl::expected<T, E>::and_then(F&&) && [with F =
rspamd::util::load_cached_hs_file(const char*,
int64_t)::<lambda(T&&)>::<lambda(auto:23&&)>; T =
rspamd::util::raii_locked_file; E = rspamd::util::error]’ at
/<<PKGBUILDDIR>>/contrib/expected/expected.hpp:1260:62,
inlined from ‘rspamd::util::load_cached_hs_file(const char*,
int64_t)::<lambda(T&&)> [with T = rspamd::util::raii_mmaped_file]’ at
/<<PKGBUILDDIR>>/src/libserver/hyperscan_tools.cxx:288:9,
inlined from ‘constexpr decltype
(forward<Fn>(f)((forward<Args>)(tl::detail::invoke::args)...))
tl::detail::invoke(Fn&&, Args&& ...) [with Fn =
rspamd::util::load_cached_hs_file(const char*, int64_t)::<lambda(T&&)>; Args =
{rspamd::util::raii_mmaped_file}; <template-parameter-1-3> = void]’ at
/<<PKGBUILDDIR>>/contrib/expected/expected.hpp:265:57,
inlined from ‘constexpr auto tl::detail::and_then_impl(Exp&&, F&&) [with
Exp = tl::expected<rspamd::util::raii_mmaped_file, rspamd::util::error>; F =
rspamd::util::load_cached_hs_file(const char*, int64_t)::<lambda(T&&)>;
enable_if_t<(! std::is_void<typename
std::decay<_Tp>::type::value_type>::value)>* <anonymous> = 0; Ret =
tl::expected<rspamd::util::hs_shared_database, rspamd::util::error>]’ at
/<<PKGBUILDDIR>>/contrib/expected/expected.hpp:1955:60,
inlined from ‘constexpr auto tl::expected<T, E>::and_then(F&&) && [with F =
rspamd::util::load_cached_hs_file(const char*, int64_t)::<lambda(T&&)>; T =
rspamd::util::raii_mmaped_file; E = rspamd::util::error]’ at
/<<PKGBUILDDIR>>/contrib/expected/expected.hpp:1260:62,
inlined from ‘tl::expected<rspamd::util::hs_shared_database,
rspamd::util::error> rspamd::util::load_cached_hs_file(const char*, int64_t)’
at /<<PKGBUILDDIR>>/src/libserver/hyperscan_tools.cxx:401:4:
/<<PKGBUILDDIR>>/src/libserver/hyperscan_tools.cxx:318:49: warning: ‘buf’ may
be used uninitialized [-Wmaybe-uninitialized]
318 | if (buf == nullptr) {
| ^~
/<<PKGBUILDDIR>>/src/libserver/hyperscan_tools.cxx: In function
‘tl::expected<rspamd::util::hs_shared_database, rspamd::util::error>
rspamd::util::load_cached_hs_file(const char*, int64_t)’:
/<<PKGBUILDDIR>>/src/libserver/hyperscan_tools.cxx:308:55: note: ‘buf’ was
declared here
308 | void *buf;
| ^~~
make[3]: Leaving directory '/<<PKGBUILDDIR>>/obj-x86_64-linux-gnu'
make[2]: *** [CMakeFiles/Makefile2:1464: src/CMakeFiles/rspamd-server.dir/all]
Error 2
make[2]: Leaving directory '/<<PKGBUILDDIR>>/obj-x86_64-linux-gnu'
make[1]: *** [Makefile:139: all] Error 2
make[1]: Leaving directory '/<<PKGBUILDDIR>>/obj-x86_64-linux-gnu'
dh_auto_build: error: cd obj-x86_64-linux-gnu && make -j8 "INSTALL=install
--strip-program=true" VERBOSE=1 returned exit code 2
make: *** [debian/rules:30: binary] Error 25
dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2
--- End Message ---