Build error: C++20 ambiguous & forming offset 4 is out of the bounds
furkanonder opened this issue · comments
Furkan Onder commented
Compile command;
─san@san ~/cinder ‹cinder/3.10›
╰─$ ./configure && make -j5
Build Enviroment
╭─san@san ~
╰─$ uname -a
Linux san 6.3.6-arch1-1 #1 SMP PREEMPT_DYNAMIC Mon, 05 Jun 2023 15:12:57 +0000 x86_64 GNU/Linux
╭─san@san ~
╰─$ gcc -v
Using built-in specs.
COLLECT_GCC=/usr/bin/gcc
COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-pc-linux-gnu/13.1.1/lto-wrapper
Target: x86_64-pc-linux-gnu
Configured with: /build/gcc/src/gcc/configure --enable-languages=ada,c,c++,d,fortran,go,lto,objc,obj-c++ --enable-bootstrap --prefix=/usr --libdir=/usr/lib --libexecdir=/usr/lib --mandir=/usr/share/man --infodir=/usr/share/info --with-bugurl=https://bugs.archlinux.org/ --with-build-config=bootstrap-lto --with-linker-hash-style=gnu --with-system-zlib --enable-__cxa_atexit --enable-cet=auto --enable-checking=release --enable-clocale=gnu --enable-default-pie --enable-default-ssp --enable-gnu-indirect-function --enable-gnu-unique-object --enable-libstdcxx-backtrace --enable-link-serialization=1 --enable-linker-build-id --enable-lto --enable-multilib --enable-plugin --enable-shared --enable-threads=posix --disable-libssp --disable-libstdcxx-pch --disable-werror
Thread model: posix
Supported LTO compression algorithms: zlib zstd
gcc version 13.1.1 20230429 (GCC)
╭─san@san ~
╰─$
Output:
>> Jit/code_allocator.o
In file included from Jit/bytecode.cpp:3:
./Jit/bytecode.h: In member function ‘bool jit::BytecodeInstructionBlock::Iterator::atEnd() const’:
./Jit/bytecode.h:147:22: error: C++20 says that these are ambiguous, even though the second is reversed: [-Werror]
147 | return idx_ == end_idx_;
| ^~~~~~~~
In file included from ./Jit/bytecode.h:8:
./Jit/bytecode_offsets.h:50:18: note: candidate 1: ‘constexpr bool jit::BCOffsetBase<T>::operator==(const T&) const [with T = jit::BCIndex]’
50 | constexpr bool operator==(const T& other) const {
| ^~~~~~~~
./Jit/bytecode_offsets.h:50:18: note: candidate 2: ‘constexpr bool jit::BCOffsetBase<T>::operator==(const T&) const [with T = jit::BCIndex]’ (reversed)
>> Jit/compiler.o
cc1plus: all warnings being treated as errors
make: *** [Makefile:2422: Jit/bytecode.o] Error 1
make: *** Waiting for unfinished jobs....
In file included from ./Jit/hir/hir.h:9,
from ./Jit/hir/preload.h:8,
from ./Jit/pyjit.h:13,
from ./Jit/codegen/code_section.h:5,
from ./Jit/codegen/annotations.h:5,
from ./Jit/codegen/environ.h:5,
from ./Jit/codegen/gen_asm.h:9,
from ./Jit/compiler.h:7,
from Jit/compiler.cpp:3:
./Jit/bytecode.h: In member function ‘bool jit::BytecodeInstructionBlock::Iterator::atEnd() const’:
./Jit/bytecode.h:147:22: error: C++20 says that these are ambiguous, even though the second is reversed: [-Werror]
147 | return idx_ == end_idx_;
| ^~~~~~~~
In file included from ./Jit/bytecode.h:8:
./Jit/bytecode_offsets.h:50:18: note: candidate 1: ‘constexpr bool jit::BCOffsetBase<T>::operator==(const T&) const [with T = jit::BCIndex]’
50 | constexpr bool operator==(const T& other) const {
| ^~~~~~~~
./Jit/bytecode_offsets.h:50:18: note: candidate 2: ‘constexpr bool jit::BCOffsetBase<T>::operator==(const T&) const [with T = jit::BCIndex]’ (reversed)
In file included from /usr/include/c++/13.1.1/bits/specfun.h:43,
from /usr/include/c++/13.1.1/cmath:3716,
from /usr/include/c++/13.1.1/math.h:36,
from /home/arf/cinder/Include/pyport.h:210,
from /home/arf/cinder/Include/Python.h:50,
from ./Jit/log.h:5,
from ./Jit/bitvector.h:5,
from Jit/bitvector.cpp:3:
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.1.1/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.1.1/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.1.1/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.1.1/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.1.1/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.1.1/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 /home/arf/cinder/ThirdParty/fmt-8.1.1/include/fmt/format.h:793:26,
inlined from ‘constexpr void fmt::v8::detail::buffer<T>::try_reserve(size_t) [with T = unsigned int]’ at /home/arf/cinder/ThirdParty/fmt-8.1.1/include/fmt/core.h:846:39,
inlined from ‘constexpr void fmt::v8::detail::buffer<T>::try_resize(size_t) [with T = unsigned int]’ at /home/arf/cinder/ThirdParty/fmt-8.1.1/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 /home/arf/cinder/ThirdParty/fmt-8.1.1/include/fmt/format.h:763:63,
inlined from ‘constexpr void fmt::v8::detail::bigint::assign(uint64_t)’ at /home/arf/cinder/ThirdParty/fmt-8.1.1/include/fmt/format-inl.h:469:19,
inlined from ‘constexpr void fmt::v8::detail::format_dragon(fp, bool, int, buffer<char>&, int&)’ at /home/arf/cinder/ThirdParty/fmt-8.1.1/include/fmt/format-inl.h:2242:17:
/usr/include/c++/13.1.1/bits/stl_algobase.h:437:30: error: ‘void* __builtin_memmove(void*, const void*, long unsigned int)’ forming offset 4 is out of the bounds [0, 4] [-Werror=array-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.1.1/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.1.1/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.1.1/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.1.1/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.1.1/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.1.1/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 /home/arf/cinder/ThirdParty/fmt-8.1.1/include/fmt/format.h:793:26,
inlined from ‘constexpr void fmt::v8::detail::buffer<T>::try_reserve(size_t) [with T = unsigned int]’ at /home/arf/cinder/ThirdParty/fmt-8.1.1/include/fmt/core.h:846:39,
inlined from ‘constexpr void fmt::v8::detail::buffer<T>::try_resize(size_t) [with T = unsigned int]’ at /home/arf/cinder/ThirdParty/fmt-8.1.1/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 /home/arf/cinder/ThirdParty/fmt-8.1.1/include/fmt/format.h:763:63,
inlined from ‘constexpr void fmt::v8::detail::bigint::assign(uint64_t)’ at /home/arf/cinder/ThirdParty/fmt-8.1.1/include/fmt/format-inl.h:469:19,
inlined from ‘constexpr void fmt::v8::detail::format_dragon(fp, bool, int, buffer<char>&, int&)’ at /home/arf/cinder/ThirdParty/fmt-8.1.1/include/fmt/format-inl.h:2245:25:
/usr/include/c++/13.1.1/bits/stl_algobase.h:437:30: error: ‘void* __builtin_memmove(void*, const void*, long unsigned int)’ forming offset 4 is out of the bounds [0, 4] [-Werror=array-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.1.1/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.1.1/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.1.1/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.1.1/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.1.1/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.1.1/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 /home/arf/cinder/ThirdParty/fmt-8.1.1/include/fmt/format.h:793:26,
inlined from ‘constexpr void fmt::v8::detail::buffer<T>::try_reserve(size_t) [with T = unsigned int]’ at /home/arf/cinder/ThirdParty/fmt-8.1.1/include/fmt/core.h:846:39,
inlined from ‘constexpr void fmt::v8::detail::buffer<T>::try_resize(size_t) [with T = unsigned int]’ at /home/arf/cinder/ThirdParty/fmt-8.1.1/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 /home/arf/cinder/ThirdParty/fmt-8.1.1/include/fmt/format.h:763:63,
inlined from ‘constexpr void fmt::v8::detail::bigint::assign(uint64_t)’ at /home/arf/cinder/ThirdParty/fmt-8.1.1/include/fmt/format-inl.h:469:19,
inlined from ‘constexpr void fmt::v8::detail::bigint::assign_pow10(int)’ at /home/arf/cinder/ThirdParty/fmt-8.1.1/include/fmt/format-inl.h:548:11,
inlined from ‘constexpr void fmt::v8::detail::bigint::assign_pow10(int)’ at /home/arf/cinder/ThirdParty/fmt-8.1.1/include/fmt/format-inl.h:539:24,
inlined from ‘constexpr void fmt::v8::detail::format_dragon(fp, bool, int, buffer<char>&, int&)’ at /home/arf/cinder/ThirdParty/fmt-8.1.1/include/fmt/format-inl.h:2249:29:
/usr/include/c++/13.1.1/bits/stl_algobase.h:437:30: error: ‘void* __builtin_memmove(void*, const void*, long unsigned int)’ forming offset 4 is out of the bounds [0, 4] [-Werror=array-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.1.1/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.1.1/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.1.1/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.1.1/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.1.1/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.1.1/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 /home/arf/cinder/ThirdParty/fmt-8.1.1/include/fmt/format.h:793:26,
inlined from ‘constexpr void fmt::v8::detail::buffer<T>::try_reserve(size_t) [with T = unsigned int]’ at /home/arf/cinder/ThirdParty/fmt-8.1.1/include/fmt/core.h:846:39,
inlined from ‘constexpr void fmt::v8::detail::buffer<T>::try_resize(size_t) [with T = unsigned int]’ at /home/arf/cinder/ThirdParty/fmt-8.1.1/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 /home/arf/cinder/ThirdParty/fmt-8.1.1/include/fmt/format.h:763:63,
inlined from ‘constexpr void fmt::v8::detail::bigint::assign(uint64_t)’ at /home/arf/cinder/ThirdParty/fmt-8.1.1/include/fmt/format-inl.h:469:19,
inlined from ‘constexpr void fmt::v8::detail::format_dragon(fp, bool, int, buffer<char>&, int&)’ at /home/arf/cinder/ThirdParty/fmt-8.1.1/include/fmt/format-inl.h:2260:23:
/usr/include/c++/13.1.1/bits/stl_algobase.h:437:30: error: ‘void* __builtin_memmove(void*, const void*, long unsigned int)’ forming offset 4 is out of the bounds [0, 4] [-Werror=array-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.1.1/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.1.1/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.1.1/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.1.1/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.1.1/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.1.1/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 /home/arf/cinder/ThirdParty/fmt-8.1.1/include/fmt/format.h:793:26,
inlined from ‘constexpr void fmt::v8::detail::buffer<T>::try_reserve(size_t) [with T = unsigned int]’ at /home/arf/cinder/ThirdParty/fmt-8.1.1/include/fmt/core.h:846:39,
inlined from ‘constexpr void fmt::v8::detail::buffer<T>::try_resize(size_t) [with T = unsigned int]’ at /home/arf/cinder/ThirdParty/fmt-8.1.1/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 /home/arf/cinder/ThirdParty/fmt-8.1.1/include/fmt/format.h:763:63,
inlined from ‘constexpr void fmt::v8::detail::bigint::assign(uint64_t)’ at /home/arf/cinder/ThirdParty/fmt-8.1.1/include/fmt/format-inl.h:469:19,
inlined from ‘constexpr void fmt::v8::detail::bigint::assign_pow10(int)’ at /home/arf/cinder/ThirdParty/fmt-8.1.1/include/fmt/format-inl.h:548:11,
inlined from ‘constexpr void fmt::v8::detail::bigint::assign_pow10(int)’ at /home/arf/cinder/ThirdParty/fmt-8.1.1/include/fmt/format-inl.h:539:24,
inlined from ‘constexpr void fmt::v8::detail::format_dragon(fp, bool, int, buffer<char>&, int&)’ at /home/arf/cinder/ThirdParty/fmt-8.1.1/include/fmt/format-inl.h:2264:29:
/usr/include/c++/13.1.1/bits/stl_algobase.h:437:30: error: ‘void* __builtin_memmove(void*, const void*, long unsigned int)’ forming offset 4 is out of the bounds [0, 4] [-Werror=array-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.1.1/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.1.1/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.1.1/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.1.1/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.1.1/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.1.1/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 /home/arf/cinder/ThirdParty/fmt-8.1.1/include/fmt/format.h:793:26,
inlined from ‘constexpr void fmt::v8::detail::buffer<T>::try_reserve(size_t) [with T = unsigned int]’ at /home/arf/cinder/ThirdParty/fmt-8.1.1/include/fmt/core.h:846:39,
inlined from ‘constexpr void fmt::v8::detail::buffer<T>::try_resize(size_t) [with T = unsigned int]’ at /home/arf/cinder/ThirdParty/fmt-8.1.1/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 /home/arf/cinder/ThirdParty/fmt-8.1.1/include/fmt/format.h:763:63,
inlined from ‘constexpr void fmt::v8::detail::bigint::assign(uint64_t)’ at /home/arf/cinder/ThirdParty/fmt-8.1.1/include/fmt/format-inl.h:469:19,
inlined from ‘constexpr void fmt::v8::detail::format_dragon(fp, bool, int, buffer<char>&, int&)’ at /home/arf/cinder/ThirdParty/fmt-8.1.1/include/fmt/format-inl.h:2266:17:
/usr/include/c++/13.1.1/bits/stl_algobase.h:437:30: error: ‘void* __builtin_memmove(void*, const void*, long unsigned int)’ forming offset 4 is out of the bounds [0, 4] [-Werror=array-bounds=]
437 | __builtin_memmove(__result, __first, sizeof(_Tp) * _Num);
| ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ./Jit/hir/hir.h:9,
from ./Jit/hir/preload.h:8,
from ./Jit/pyjit.h:13,
from ./Jit/codegen/code_section.h:5,
from ./Jit/code_allocator.h:7,
from Jit/code_allocator.cpp:3:
./Jit/bytecode.h: In member function ‘bool jit::BytecodeInstructionBlock::Iterator::atEnd() const’:
./Jit/bytecode.h:147:22: error: C++20 says that these are ambiguous, even though the second is reversed: [-Werror]
147 | return idx_ == end_idx_;
| ^~~~~~~~
In file included from ./Jit/bytecode.h:8:
./Jit/bytecode_offsets.h:50:18: note: candidate 1: ‘constexpr bool jit::BCOffsetBase<T>::operator==(const T&) const [with T = jit::BCIndex]’
50 | constexpr bool operator==(const T& other) const {
| ^~~~~~~~
./Jit/bytecode_offsets.h:50:18: note: candidate 2: ‘constexpr bool jit::BCOffsetBase<T>::operator==(const T&) const [with T = jit::BCIndex]’ (reversed)
./Jit/hir/hir.h: In member function ‘bool jit::hir::ExecutionBlock::operator==(const jit::hir::ExecutionBlock&) const’:
./Jit/hir/hir.h:72:62: error: C++20 says that these are ambiguous, even though the second is reversed: [-Werror]
72 | return (opcode == other.opcode) && (handler_off == other.handler_off) &&
| ^~~~~~~~~~~
./Jit/bytecode_offsets.h:50:18: note: candidate 1: ‘constexpr bool jit::BCOffsetBase<T>::operator==(const T&) const [with T = jit::BCOffset]’
50 | constexpr bool operator==(const T& other) const {
| ^~~~~~~~
./Jit/bytecode_offsets.h:50:18: note: candidate 2: ‘constexpr bool jit::BCOffsetBase<T>::operator==(const T&) const [with T = jit::BCOffset]’ (reversed)
./Jit/hir/hir.h: In member function ‘bool jit::hir::FrameState::operator==(const jit::hir::FrameState&) const’:
./Jit/hir/hir.h:194:40: error: C++20 says that these are ambiguous, even though the second is reversed: [-Werror]
194 | return (next_instr_offset == other.next_instr_offset) &&
| ^~~~~~~~~~~~~~~~~
./Jit/bytecode_offsets.h:50:18: note: candidate 1: ‘constexpr bool jit::BCOffsetBase<T>::operator==(const T&) const [with T = jit::BCOffset]’
50 | constexpr bool operator==(const T& other) const {
| ^~~~~~~~
./Jit/bytecode_offsets.h:50:18: note: candidate 2: ‘constexpr bool jit::BCOffsetBase<T>::operator==(const T&) const [with T = jit::BCOffset]’ (reversed)
./Jit/hir/hir.h: In member function ‘bool jit::hir::ExecutionBlock::operator==(const jit::hir::ExecutionBlock&) const’:
./Jit/hir/hir.h:72:62: error: C++20 says that these are ambiguous, even though the second is reversed: [-Werror]
72 | return (opcode == other.opcode) && (handler_off == other.handler_off) &&
| ^~~~~~~~~~~
./Jit/bytecode_offsets.h:50:18: note: candidate 1: ‘constexpr bool jit::BCOffsetBase<T>::operator==(const T&) const [with T = jit::BCOffset]’
50 | constexpr bool operator==(const T& other) const {
| ^~~~~~~~
./Jit/bytecode_offsets.h:50:18: note: candidate 2: ‘constexpr bool jit::BCOffsetBase<T>::operator==(const T&) const [with T = jit::BCOffset]’ (reversed)
./Jit/hir/hir.h: In member function ‘bool jit::hir::FrameState::operator==(const jit::hir::FrameState&) const’:
./Jit/hir/hir.h:194:40: error: C++20 says that these are ambiguous, even though the second is reversed: [-Werror]
194 | return (next_instr_offset == other.next_instr_offset) &&
| ^~~~~~~~~~~~~~~~~
./Jit/bytecode_offsets.h:50:18: note: candidate 1: ‘constexpr bool jit::BCOffsetBase<T>::operator==(const T&) const [with T = jit::BCOffset]’
50 | constexpr bool operator==(const T& other) const {
| ^~~~~~~~
./Jit/bytecode_offsets.h:50:18: note: candidate 2: ‘constexpr bool jit::BCOffsetBase<T>::operator==(const T&) const [with T = jit::BCOffset]’ (reversed)
cc1plus: all warnings being treated as errors
make: *** [Makefile:2422: Jit/bitvector.o] Error 1
In file included from ./Jit/hir/analysis.h:5,
from Jit/compiler.cpp:8:
./Jit/dataflow.h: In member function ‘void jit::optimizer::DataFlowAnalyzer<T>::RunAnalysis(bool)’:
./Jit/dataflow.h:206:19: error: ‘std::binder1st<_Operation> std::bind1st(const _Operation&, const _Tp&) [with _Operation = not_equal_to<jit::optimizer::DataFlowBlock*>; _Tp = jit::optimizer::DataFlowBlock*]’ is deprecated: use 'std::bind' instead [-Werror=deprecated-declarations]
206 | std::bind1st(
| ~~~~~~~~~~~~^
207 | std::not_equal_to<DataFlowBlock*>(),
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
208 | forward ? entry_block_ : exit_block_));
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/c++/13.1.1/bits/stl_function.h:1438,
from /usr/include/c++/13.1.1/functional:49,
from ./Jit/ref.h:7,
from ./Jit/log.h:8,
from ./Jit/bitvector.h:5,
from ./Jit/codegen/gen_asm.h:8:
/usr/include/c++/13.1.1/backward/binders.h:136:5: note: declared here
136 | bind1st(const _Operation& __fn, const _Tp& __x)
| ^~~~~~~
In file included from /usr/include/c++/13.1.1/string:51,
from /usr/include/c++/13.1.1/bits/locale_classes.h:40,
from /usr/include/c++/13.1.1/bits/ios_base.h:41,
from /usr/include/c++/13.1.1/streambuf:43,
from /usr/include/c++/13.1.1/bits/streambuf_iterator.h:35,
from /usr/include/c++/13.1.1/iterator:66,
from ./ThirdParty/asmjit/src/asmjit/./core/../core/../core/../core/../core/api-config.h:42,
from ./ThirdParty/asmjit/src/asmjit/./core/../core/../core/../core/globals.h:9,
from ./ThirdParty/asmjit/src/asmjit/./core/../core/../core/archcommons.h:13,
from ./ThirdParty/asmjit/src/asmjit/./core/../core/operand.h:9,
from ./ThirdParty/asmjit/src/asmjit/./core/archtraits.h:9,
from ./ThirdParty/asmjit/src/asmjit/./core.h:1828,
from ./ThirdParty/asmjit/src/asmjit/asmjit.h:27,
from ./Jit/code_allocator.h:5:
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.1.1/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.1.1/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.1.1/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.1.1/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.1.1/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.1.1/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 /home/arf/cinder/ThirdParty/fmt-8.1.1/include/fmt/format.h:793:26,
inlined from ‘constexpr void fmt::v8::detail::buffer<T>::try_reserve(size_t) [with T = unsigned int]’ at /home/arf/cinder/ThirdParty/fmt-8.1.1/include/fmt/core.h:846:39,
inlined from ‘constexpr void fmt::v8::detail::buffer<T>::try_resize(size_t) [with T = unsigned int]’ at /home/arf/cinder/ThirdParty/fmt-8.1.1/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 /home/arf/cinder/ThirdParty/fmt-8.1.1/include/fmt/format.h:763:63,
inlined from ‘constexpr void fmt::v8::detail::bigint::assign(uint64_t)’ at /home/arf/cinder/ThirdParty/fmt-8.1.1/include/fmt/format-inl.h:469:19,
inlined from ‘constexpr void fmt::v8::detail::format_dragon(fp, bool, int, buffer<char>&, int&)’ at /home/arf/cinder/ThirdParty/fmt-8.1.1/include/fmt/format-inl.h:2242:17:
/usr/include/c++/13.1.1/bits/stl_algobase.h:437:30: error: ‘void* __builtin_memmove(void*, const void*, long unsigned int)’ forming offset 4 is out of the bounds [0, 4] [-Werror=array-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.1.1/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.1.1/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.1.1/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.1.1/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.1.1/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.1.1/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 /home/arf/cinder/ThirdParty/fmt-8.1.1/include/fmt/format.h:793:26,
inlined from ‘constexpr void fmt::v8::detail::buffer<T>::try_reserve(size_t) [with T = unsigned int]’ at /home/arf/cinder/ThirdParty/fmt-8.1.1/include/fmt/core.h:846:39,
inlined from ‘constexpr void fmt::v8::detail::buffer<T>::try_resize(size_t) [with T = unsigned int]’ at /home/arf/cinder/ThirdParty/fmt-8.1.1/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 /home/arf/cinder/ThirdParty/fmt-8.1.1/include/fmt/format.h:763:63,
inlined from ‘constexpr void fmt::v8::detail::bigint::assign(uint64_t)’ at /home/arf/cinder/ThirdParty/fmt-8.1.1/include/fmt/format-inl.h:469:19,
inlined from ‘constexpr void fmt::v8::detail::format_dragon(fp, bool, int, buffer<char>&, int&)’ at /home/arf/cinder/ThirdParty/fmt-8.1.1/include/fmt/format-inl.h:2245:25:
/usr/include/c++/13.1.1/bits/stl_algobase.h:437:30: error: ‘void* __builtin_memmove(void*, const void*, long unsigned int)’ forming offset 4 is out of the bounds [0, 4] [-Werror=array-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.1.1/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.1.1/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.1.1/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.1.1/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.1.1/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.1.1/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 /home/arf/cinder/ThirdParty/fmt-8.1.1/include/fmt/format.h:793:26,
inlined from ‘constexpr void fmt::v8::detail::buffer<T>::try_reserve(size_t) [with T = unsigned int]’ at /home/arf/cinder/ThirdParty/fmt-8.1.1/include/fmt/core.h:846:39,
inlined from ‘constexpr void fmt::v8::detail::buffer<T>::try_resize(size_t) [with T = unsigned int]’ at /home/arf/cinder/ThirdParty/fmt-8.1.1/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 /home/arf/cinder/ThirdParty/fmt-8.1.1/include/fmt/format.h:763:63,
inlined from ‘constexpr void fmt::v8::detail::bigint::assign(uint64_t)’ at /home/arf/cinder/ThirdParty/fmt-8.1.1/include/fmt/format-inl.h:469:19,
inlined from ‘constexpr void fmt::v8::detail::bigint::assign_pow10(int)’ at /home/arf/cinder/ThirdParty/fmt-8.1.1/include/fmt/format-inl.h:548:11,
inlined from ‘constexpr void fmt::v8::detail::bigint::assign_pow10(int)’ at /home/arf/cinder/ThirdParty/fmt-8.1.1/include/fmt/format-inl.h:539:24,
inlined from ‘constexpr void fmt::v8::detail::format_dragon(fp, bool, int, buffer<char>&, int&)’ at /home/arf/cinder/ThirdParty/fmt-8.1.1/include/fmt/format-inl.h:2249:29:
/usr/include/c++/13.1.1/bits/stl_algobase.h:437:30: error: ‘void* __builtin_memmove(void*, const void*, long unsigned int)’ forming offset 4 is out of the bounds [0, 4] [-Werror=array-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.1.1/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.1.1/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.1.1/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.1.1/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.1.1/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.1.1/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 /home/arf/cinder/ThirdParty/fmt-8.1.1/include/fmt/format.h:793:26,
inlined from ‘constexpr void fmt::v8::detail::buffer<T>::try_reserve(size_t) [with T = unsigned int]’ at /home/arf/cinder/ThirdParty/fmt-8.1.1/include/fmt/core.h:846:39,
inlined from ‘constexpr void fmt::v8::detail::buffer<T>::try_resize(size_t) [with T = unsigned int]’ at /home/arf/cinder/ThirdParty/fmt-8.1.1/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 /home/arf/cinder/ThirdParty/fmt-8.1.1/include/fmt/format.h:763:63,
inlined from ‘constexpr void fmt::v8::detail::bigint::assign(uint64_t)’ at /home/arf/cinder/ThirdParty/fmt-8.1.1/include/fmt/format-inl.h:469:19,
inlined from ‘constexpr void fmt::v8::detail::format_dragon(fp, bool, int, buffer<char>&, int&)’ at /home/arf/cinder/ThirdParty/fmt-8.1.1/include/fmt/format-inl.h:2260:23:
/usr/include/c++/13.1.1/bits/stl_algobase.h:437:30: error: ‘void* __builtin_memmove(void*, const void*, long unsigned int)’ forming offset 4 is out of the bounds [0, 4] [-Werror=array-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.1.1/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.1.1/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.1.1/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.1.1/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.1.1/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.1.1/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 /home/arf/cinder/ThirdParty/fmt-8.1.1/include/fmt/format.h:793:26,
inlined from ‘constexpr void fmt::v8::detail::buffer<T>::try_reserve(size_t) [with T = unsigned int]’ at /home/arf/cinder/ThirdParty/fmt-8.1.1/include/fmt/core.h:846:39,
inlined from ‘constexpr void fmt::v8::detail::buffer<T>::try_resize(size_t) [with T = unsigned int]’ at /home/arf/cinder/ThirdParty/fmt-8.1.1/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 /home/arf/cinder/ThirdParty/fmt-8.1.1/include/fmt/format.h:763:63,
inlined from ‘constexpr void fmt::v8::detail::bigint::assign(uint64_t)’ at /home/arf/cinder/ThirdParty/fmt-8.1.1/include/fmt/format-inl.h:469:19,
inlined from ‘constexpr void fmt::v8::detail::bigint::assign_pow10(int)’ at /home/arf/cinder/ThirdParty/fmt-8.1.1/include/fmt/format-inl.h:548:11,
inlined from ‘constexpr void fmt::v8::detail::bigint::assign_pow10(int)’ at /home/arf/cinder/ThirdParty/fmt-8.1.1/include/fmt/format-inl.h:539:24,
inlined from ‘constexpr void fmt::v8::detail::format_dragon(fp, bool, int, buffer<char>&, int&)’ at /home/arf/cinder/ThirdParty/fmt-8.1.1/include/fmt/format-inl.h:2264:29:
/usr/include/c++/13.1.1/bits/stl_algobase.h:437:30: error: ‘void* __builtin_memmove(void*, const void*, long unsigned int)’ forming offset 4 is out of the bounds [0, 4] [-Werror=array-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.1.1/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.1.1/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.1.1/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.1.1/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.1.1/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.1.1/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 /home/arf/cinder/ThirdParty/fmt-8.1.1/include/fmt/format.h:793:26,
inlined from ‘constexpr void fmt::v8::detail::buffer<T>::try_reserve(size_t) [with T = unsigned int]’ at /home/arf/cinder/ThirdParty/fmt-8.1.1/include/fmt/core.h:846:39,
inlined from ‘constexpr void fmt::v8::detail::buffer<T>::try_resize(size_t) [with T = unsigned int]’ at /home/arf/cinder/ThirdParty/fmt-8.1.1/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 /home/arf/cinder/ThirdParty/fmt-8.1.1/include/fmt/format.h:763:63,
inlined from ‘constexpr void fmt::v8::detail::bigint::assign(uint64_t)’ at /home/arf/cinder/ThirdParty/fmt-8.1.1/include/fmt/format-inl.h:469:19,
inlined from ‘constexpr void fmt::v8::detail::format_dragon(fp, bool, int, buffer<char>&, int&)’ at /home/arf/cinder/ThirdParty/fmt-8.1.1/include/fmt/format-inl.h:2266:17:
/usr/include/c++/13.1.1/bits/stl_algobase.h:437:30: error: ‘void* __builtin_memmove(void*, const void*, long unsigned int)’ forming offset 4 is out of the bounds [0, 4] [-Werror=array-bounds=]
437 | __builtin_memmove(__result, __first, sizeof(_Tp) * _Num);
| ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /home/arf/cinder/ThirdParty/fmt-8.1.1/include/fmt/format.h:48,
from ./Jit/log.h:11:
/home/arf/cinder/ThirdParty/fmt-8.1.1/include/fmt/core.h: In instantiation of ‘constexpr fmt::v8::detail::value<Context> fmt::v8::detail::make_arg(T&&) [with bool IS_PACKED = true; Context = fmt::v8::basic_format_context<fmt::v8::appender, char>; type <anonymous> = fmt::v8::detail::type::custom_type; T = const jit::hir::RefKind&; typename std::enable_if<IS_PACKED, int>::type <anonymous> = 0]’:
/home/arf/cinder/ThirdParty/fmt-8.1.1/include/fmt/core.h:1855:77: required from ‘constexpr fmt::v8::format_arg_store<Context, Args>::format_arg_store(T&& ...) [with T = {std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, const jit::hir::RefKind&, const jit::hir::ValueKind&, const char*&}; Context = fmt::v8::basic_format_context<fmt::v8::appender, char>; Args = {std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, jit::hir::RefKind, jit::hir::ValueKind, const char*}]’
/home/arf/cinder/ThirdParty/fmt-8.1.1/include/fmt/core.h:1872:38: required from ‘constexpr fmt::v8::format_arg_store<Context, typename std::remove_cv<typename std::remove_reference<Args>::type>::type ...> fmt::v8::make_format_args(Args&& ...) [with Context = basic_format_context<appender, char>; Args = {std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, const jit::hir::RefKind&, const jit::hir::ValueKind&, const char*&}]’
/home/arf/cinder/ThirdParty/fmt-8.1.1/include/fmt/core.h:3119:44: required from ‘std::string fmt::v8::format(format_string<T ...>, T&& ...) [with T = {std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, const jit::hir::RefKind&, const jit::hir::ValueKind&, const char*}; std::string = std::__cxx11::basic_string<char>; format_string<T ...> = basic_format_string<char, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, const jit::hir::RefKind&, const jit::hir::ValueKind&, const char*>]’
./Jit/deopt.h:68:23: required from here
/home/arf/cinder/ThirdParty/fmt-8.1.1/include/fmt/core.h:1706:15: error: possibly dangling reference to a temporary [-Werror=dangling-reference]
1706 | const auto& arg = arg_mapper<Context>().map(std::forward<T>(val));
| ^~~
/home/arf/cinder/ThirdParty/fmt-8.1.1/include/fmt/core.h:1706:46: note: the temporary was destroyed at the end of the full expression ‘fmt::v8::detail::arg_mapper<fmt::v8::basic_format_context<fmt::v8::appender, char> >().fmt::v8::detail::arg_mapper<fmt::v8::basic_format_context<fmt::v8::appender, char> >::map<const jit::hir::RefKind&>((* & std::forward<const jit::hir::RefKind&>((* & val))))’
1706 | const auto& arg = arg_mapper<Context>().map(std::forward<T>(val));
| ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
/home/arf/cinder/ThirdParty/fmt-8.1.1/include/fmt/core.h: In instantiation of ‘constexpr fmt::v8::detail::value<Context> fmt::v8::detail::make_arg(T&&) [with bool IS_PACKED = true; Context = fmt::v8::basic_format_context<fmt::v8::appender, char>; type <anonymous> = fmt::v8::detail::type::custom_type; T = const jit::hir::ValueKind&; typename std::enable_if<IS_PACKED, int>::type <anonymous> = 0]’:
/home/arf/cinder/ThirdParty/fmt-8.1.1/include/fmt/core.h:1855:77: required from ‘constexpr fmt::v8::format_arg_store<Context, Args>::format_arg_store(T&& ...) [with T = {std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, const jit::hir::RefKind&, const jit::hir::ValueKind&, const char*&}; Context = fmt::v8::basic_format_context<fmt::v8::appender, char>; Args = {std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, jit::hir::RefKind, jit::hir::ValueKind, const char*}]’
/home/arf/cinder/ThirdParty/fmt-8.1.1/include/fmt/core.h:1872:38: required from ‘constexpr fmt::v8::format_arg_store<Context, typename std::remove_cv<typename std::remove_reference<Args>::type>::type ...> fmt::v8::make_format_args(Args&& ...) [with Context = basic_format_context<appender, char>; Args = {std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, const jit::hir::RefKind&, const jit::hir::ValueKind&, const char*&}]’
/home/arf/cinder/ThirdParty/fmt-8.1.1/include/fmt/core.h:3119:44: required from ‘std::string fmt::v8::format(format_string<T ...>, T&& ...) [with T = {std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, const jit::hir::RefKind&, const jit::hir::ValueKind&, const char*}; std::string = std::__cxx11::basic_string<char>; format_string<T ...> = basic_format_string<char, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, const jit::hir::RefKind&, const jit::hir::ValueKind&, const char*>]’
./Jit/deopt.h:68:23: required from here
/home/arf/cinder/ThirdParty/fmt-8.1.1/include/fmt/core.h:1706:15: error: possibly dangling reference to a temporary [-Werror=dangling-reference]
1706 | const auto& arg = arg_mapper<Context>().map(std::forward<T>(val));
| ^~~
/home/arf/cinder/ThirdParty/fmt-8.1.1/include/fmt/core.h:1706:46: note: the temporary was destroyed at the end of the full expression ‘fmt::v8::detail::arg_mapper<fmt::v8::basic_format_context<fmt::v8::appender, char> >().fmt::v8::detail::arg_mapper<fmt::v8::basic_format_context<fmt::v8::appender, char> >::map<const jit::hir::ValueKind&>((* & std::forward<const jit::hir::ValueKind&>((* & val))))’
1706 | const auto& arg = arg_mapper<Context>().map(std::forward<T>(val));
| ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
/home/arf/cinder/ThirdParty/fmt-8.1.1/include/fmt/core.h: In instantiation of ‘constexpr fmt::v8::detail::value<Context> fmt::v8::detail::make_arg(T&&) [with bool IS_PACKED = true; Context = fmt::v8::basic_format_context<fmt::v8::appender, char>; type <anonymous> = fmt::v8::detail::type::custom_type; T = fmt::v8::join_view<__gnu_cxx::__normal_iterator<std::__cxx11::basic_string<char>*, std::vector<std::__cxx11::basic_string<char> > >, __gnu_cxx::__normal_iterator<std::__cxx11::basic_string<char>*, std::vector<std::__cxx11::basic_string<char> > >, char>&; typename std::enable_if<IS_PACKED, int>::type <anonymous> = 0]’:
/home/arf/cinder/ThirdParty/fmt-8.1.1/include/fmt/core.h:1855:77: required from ‘constexpr fmt::v8::format_arg_store<Context, Args>::format_arg_store(T&& ...) [with T = {const char*&, const char* const&, int&, fmt::v8::join_view<__gnu_cxx::__normal_iterator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >*, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > >, __gnu_cxx::__normal_iterator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >*, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > >, char>&}; Context = fmt::v8::basic_format_context<fmt::v8::appender, char>; Args = {const char*, const char*, int, fmt::v8::join_view<__gnu_cxx::__normal_iterator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >*, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > >, __gnu_cxx::__normal_iterator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >*, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > >, char>}]’
/home/arf/cinder/ThirdParty/fmt-8.1.1/include/fmt/core.h:1872:38: required from ‘constexpr fmt::v8::format_arg_store<Context, typename std::remove_cv<typename std::remove_reference<Args>::type>::type ...> fmt::v8::make_format_args(Args&& ...) [with Context = basic_format_context<appender, char>; Args = {const char*&, const char* const&, int&, join_view<__gnu_cxx::__normal_iterator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >*, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > >, __gnu_cxx::__normal_iterator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >*, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > >, char>&}]’
/home/arf/cinder/ThirdParty/fmt-8.1.1/include/fmt/core.h:3119:44: required from ‘std::string fmt::v8::format(format_string<T ...>, T&& ...) [with T = {const char*, const char* const&, int, join_view<__gnu_cxx::__normal_iterator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >*, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > >, __gnu_cxx::__normal_iterator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >*, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > >, char>}; std::string = std::__cxx11::basic_string<char>; format_string<T ...> = basic_format_string<char, const char*, const char* const&, int, join_view<__gnu_cxx::__normal_iterator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >*, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > >, __gnu_cxx::__normal_iterator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >*, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > >, char> >]’
./Jit/deopt.h:187:23: required from here
/home/arf/cinder/ThirdParty/fmt-8.1.1/include/fmt/core.h:1706:15: error: possibly dangling reference to a temporary [-Werror=dangling-reference]
1706 | const auto& arg = arg_mapper<Context>().map(std::forward<T>(val));
| ^~~
/home/arf/cinder/ThirdParty/fmt-8.1.1/include/fmt/core.h:1706:46: note: the temporary was destroyed at the end of the full expression ‘fmt::v8::detail::arg_mapper<fmt::v8::basic_format_context<fmt::v8::appender, char> >().fmt::v8::detail::arg_mapper<fmt::v8::basic_format_context<fmt::v8::appender, char> >::map<fmt::v8::join_view<__gnu_cxx::__normal_iterator<std::__cxx11::basic_string<char>*, std::vector<std::__cxx11::basic_string<char> > >, __gnu_cxx::__normal_iterator<std::__cxx11::basic_string<char>*, std::vector<std::__cxx11::basic_string<char> > >, char>&>((* & std::forward<fmt::v8::join_view<__gnu_cxx::__normal_iterator<__cxx11::basic_string<char>*, vector<__cxx11::basic_string<char> > >, __gnu_cxx::__normal_iterator<__cxx11::basic_string<char>*, vector<__cxx11::basic_string<char> > >, char>&>((* & val))))’
1706 | const auto& arg = arg_mapper<Context>().map(std::forward<T>(val));
| ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
/home/arf/cinder/ThirdParty/fmt-8.1.1/include/fmt/core.h: In instantiation of ‘constexpr fmt::v8::detail::value<Context> fmt::v8::detail::make_arg(T&&) [with bool IS_PACKED = true; Context = fmt::v8::basic_printf_context<fmt::v8::appender, char>; type <anonymous> = fmt::v8::detail::type::custom_type; T = const jit::codegen::PhyLocation::Reg&; typename std::enable_if<IS_PACKED, int>::type <anonymous> = 0]’:
/home/arf/cinder/ThirdParty/fmt-8.1.1/include/fmt/core.h:1855:77: required from ‘constexpr fmt::v8::format_arg_store<Context, Args>::format_arg_store(T&& ...) [with T = {const jit::codegen::PhyLocation::Reg&}; Context = fmt::v8::basic_printf_context<fmt::v8::appender, char>; Args = {jit::codegen::PhyLocation::Reg}]’
/home/arf/cinder/ThirdParty/fmt-8.1.1/include/fmt/core.h:1872:38: required from ‘constexpr fmt::v8::format_arg_store<Context, typename std::remove_cv<typename std::remove_reference<Args>::type>::type ...> fmt::v8::make_format_args(Args&& ...) [with Context = basic_printf_context<appender, char>; Args = {const jit::codegen::PhyLocation::Reg&}]’
/home/arf/cinder/ThirdParty/fmt-8.1.1/include/fmt/printf.h:610:49: required from ‘int fmt::v8::fprintf(FILE*, const S&, const T& ...) [with S = std::basic_string_view<char>; T = {jit::codegen::PhyLocation::Reg}; Char = char; FILE = FILE]’
./Jit/log.h:58:17: required from ‘void jit::protected_fprintf(FILE*, std::string_view, Args&& ...) [with Args = {codegen::PhyLocation::Reg&}; FILE = FILE; std::string_view = std::basic_string_view<char>]’
./Jit/codegen/x86_64.h:94:5: required from here
/home/arf/cinder/ThirdParty/fmt-8.1.1/include/fmt/core.h:1706:15: error: possibly dangling reference to a temporary [-Werror=dangling-reference]
1706 | const auto& arg = arg_mapper<Context>().map(std::forward<T>(val));
| ^~~
/home/arf/cinder/ThirdParty/fmt-8.1.1/include/fmt/core.h:1706:46: note: the temporary was destroyed at the end of the full expression ‘fmt::v8::detail::arg_mapper<fmt::v8::basic_printf_context<fmt::v8::appender, char> >().fmt::v8::detail::arg_mapper<fmt::v8::basic_printf_context<fmt::v8::appender, char> >::map<const jit::codegen::PhyLocation::Reg&>((* & std::forward<const jit::codegen::PhyLocation::Reg&>((* & val))))’
1706 | const auto& arg = arg_mapper<Context>().map(std::forward<T>(val));
| ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
/home/arf/cinder/ThirdParty/fmt-8.1.1/include/fmt/core.h: In instantiation of ‘constexpr fmt::v8::detail::value<Context> fmt::v8::detail::make_arg(T&&) [with bool IS_PACKED = true; Context = fmt::v8::basic_printf_context<fmt::v8::appender, char>; type <anonymous> = fmt::v8::detail::type::custom_type; T = const jit::hir::Function&; typename std::enable_if<IS_PACKED, int>::type <anonymous> = 0]’:
/home/arf/cinder/ThirdParty/fmt-8.1.1/include/fmt/core.h:1855:77: required from ‘constexpr fmt::v8::format_arg_store<Context, Args>::format_arg_store(T&& ...) [with T = {const std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, const jit::hir::Function&}; Context = fmt::v8::basic_printf_context<fmt::v8::appender, char>; Args = {std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, jit::hir::Function}]’
/home/arf/cinder/ThirdParty/fmt-8.1.1/include/fmt/core.h:1872:38: required from ‘constexpr fmt::v8::format_arg_store<Context, typename std::remove_cv<typename std::remove_reference<Args>::type>::type ...> fmt::v8::make_format_args(Args&& ...) [with Context = basic_printf_context<appender, char>; Args = {const std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, const jit::hir::Function&}]’
/home/arf/cinder/ThirdParty/fmt-8.1.1/include/fmt/printf.h:610:49: required from ‘int fmt::v8::fprintf(FILE*, const S&, const T& ...) [with S = std::basic_string_view<char>; T = {std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, jit::hir::Function}; Char = char; FILE = FILE]’
./Jit/log.h:58:17: required from ‘void jit::protected_fprintf(FILE*, std::string_view, Args&& ...) [with Args = {std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, hir::Function&}; FILE = FILE; std::string_view = std::basic_string_view<char>]’
Jit/compiler.cpp:124:3: required from here
/home/arf/cinder/ThirdParty/fmt-8.1.1/include/fmt/core.h:1706:15: error: possibly dangling reference to a temporary [-Werror=dangling-reference]
1706 | const auto& arg = arg_mapper<Context>().map(std::forward<T>(val));
| ^~~
/home/arf/cinder/ThirdParty/fmt-8.1.1/include/fmt/core.h:1706:46: note: the temporary was destroyed at the end of the full expression ‘fmt::v8::detail::arg_mapper<fmt::v8::basic_printf_context<fmt::v8::appender, char> >().fmt::v8::detail::arg_mapper<fmt::v8::basic_printf_context<fmt::v8::appender, char> >::map<const jit::hir::Function&>((* & std::forward<const jit::hir::Function&>((* & val))))’
1706 | const auto& arg = arg_mapper<Context>().map(std::forward<T>(val));
| ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
cc1plus: all warnings being treated as errors
make: *** [Makefile:2422: Jit/code_allocator.o] Error 1
cc1plus: all warnings being treated as errors
make: *** [Makefile:2422: Jit/compiler.o] Error 1
Max Bernstein commented
I think this is partially fixed in fb84e34