In file included from /usr/include/c++/12/string:40, from ./boost/assert/source_location.hpp:15, from ./boost/exception/exception.hpp:9, from ./boost/throw_exception.hpp:21, from libs/filesystem/src/directory.cpp:16: In static member function ‘static constexpr std::char_traits<char>::char_type* std::char_traits<char>::copy(char_type*, const char_type*, std::size_t)’, inlined from ‘static constexpr void std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::_S_copy(_CharT*, const _CharT*, size_type) [with _CharT = char; _Traits = std::char_traits<char>; _Alloc = std::allocator<char> ]’ at /usr/include/c++/12/bits/basic_string.h:423:21, inlined from ‘constexpr std::__cxx11::basic_string<_CharT, _Traits, _Allocator>& std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::_M_replace(size_type, size_type, const _CharT*, size_type) [with _CharT = char; _T raits = std::char_traits<char>; _Alloc = std::allocator<char>]’ at /usr/include/c++/12/bits/basic_string.tcc:532:22, inlined from ‘constexpr std::__cxx11::basic_string<_CharT, _Traits, _Alloc>& std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::assign(const _CharT*) [with _CharT = char; _Traits = std::char_traits<char>; _Alloc = std::allocator<char>]’ at /usr/include/c++/12/bits/basic_string.h:1647:19, inlined from ‘constexpr std::__cxx11::basic_string<_CharT, _Traits, _Alloc>& std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::operator=(const _CharT*) [with _CharT = char; _Traits = std::char_traits<char>; _Alloc = std::allocator<char>]’ at /usr/include/c++/12/bits/basic_string.h:815:28, inlined from ‘boost::filesystem::path& boost::filesystem::path::assign(const value_type*)’ at ./boost/filesystem/path.hpp:349:22, inlined from ‘boost::system::error_code boost::filesystem::detail::{anonymous}::dir_itr_create(boost::intrusive_ptrboost::filesystem::detail::dir_itr_imp&, const boost::filesystem::path&, unsigned int, boost::files ystem::path&, boost::filesystem::file_status&, boost::filesystem::file_status&)’ at
Seems the build is a little noisy with warnings, using gcc-12 libs/filesystem/src/directory.cpp:446:26,
inlined from ‘void
boost::filesystem::detail::directory_iterator_construct(boost::filesystem::directory_iterator&, const boost::filesystem::path&, unsigned int, boost::system::error_code*)’ at libs/filesystem/src/dir
ectory.cpp:1066:51: /usr/include/c++/12/bits/char_traits.h:431:56: warning: ‘void* __builtin_memcpy(void*, const void*, long unsigned int)’ accessing 9223372036854775810 or more bytes at offsets -4611686018427387902 and [-461168601842738790 3, 4611686018427387904] may overlap up to 9223372036854775813 bytes at offset -3 [-Wrestrict] 431 | return static_cast
(__builtin_memcpy(__s1, __s2, __n));
Locale seems to also generate similar warnings. I'm not sure if this usage of memcpy is dubious or not. - Christian