contour-terminal / contour

Modern C++ Terminal Emulator
http://contour-terminal.org/
Apache License 2.0
2.37k stars 102 forks source link

error: cannot bind non-const lvalue reference of type ‘int&’ to an rvalue of type ‘int’ with fmt 10 #1350

Closed topazus closed 8 months ago

topazus commented 8 months ago

Contour Terminal version

6df0a2f9ef83e0b8666a26403115f769073ac435

Installer source

Github: source code cloned

Operating System

Fedora 40

Architecture

x86-64

Other Software

No response

Steps to reproduce

build log ```bash ❯ git log commit 6df0a2f9ef83e0b8666a26403115f769073ac435 (grafted, HEAD -> master, origin/master, origin/HEAD) Author: Christian Parpart Date: Mon Nov 27 22:54:24 2023 +0100 Merge pull request #1347 from contour-terminal/improvement/image-impl-cleanup Minor cleanup on how to instanciate a RasterizedImage ❯ rm -rf build/ && cmake . -B build/ -GNinja -- [Version] Git branch: master -- [Version] Git SHA: 6df0a2f -- [Version] version source: git & /home/ruby/test/contour/metainfo.xml -- [Version] version triple: 0.4.0 -- [Version] version string: 0.4.0-master-6df0a2f -- The CXX compiler identification is GNU 13.2.1 -- Detecting CXX compiler ABI info -- Detecting CXX compiler ABI info - done -- Check for working CXX compiler: /usr/lib64/ccache/c++ - skipped -- Detecting CXX compile features -- Detecting CXX compile features - done -- [ccache] Enabled: /usr/bin/ccache -- [clang-tidy] Disabled. -- Performing Test CMAKE_HAVE_LIBC_PTHREAD -- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Success -- Found Threads: TRUE -- addr2line: /usr/bin/addr2line -- No sanitizer enabled. -- No 3rdparty libraries found at /home/ruby/test/contour/_deps/sources -- Found HarfBuzz: /usr/lib64/libharfbuzz.so -- Found Freetype: /usr/lib64/libfreetype.so (found version "2.13.1") -- Found libunicode, version: 0.4.0 -- Found boxed-cpp, version: 1.0.1 -- Performing Test fdiagnostics-color=always -- Performing Test fdiagnostics-color=always - Success -- Adding compiler flag: -fdiagnostics-color=always. -- Enabling pedantic compiler options: no -- Looking for backtrace -- Looking for backtrace - found -- Looking for backtrace_symbols -- Looking for backtrace_symbols - found -- Looking for dladdr -- Looking for dladdr - found -- Looking for dlsym -- Looking for dlsym - found -- Looking for include file dlfcn.h -- Looking for include file dlfcn.h - found -- Looking for include file cxxabi.h -- Looking for include file cxxabi.h - found -- Looking for include file execinfo.h -- Looking for include file execinfo.h - found -- Looking for include file sys/select.h -- Looking for include file sys/select.h - found -- Looking for include file unwind.h -- Looking for include file unwind.h - found -- [crispy-core] Adding compile definition: HAVE_BACKTRACE -- [crispy-core] Adding compile definition: HAVE_BACKTRACE_SYMBOLS -- [crispy-core] Adding compile definition: HAVE_CXXABI_H -- [crispy-core] Adding compile definition: HAVE_DLADDR -- [crispy-core] Adding compile definition: HAVE_DLFCN_H -- [crispy-core] Adding compile definition: HAVE_DLSYM -- [crispy-core] Adding compile definition: HAVE_EXECINFO_H -- [crispy-core] Adding compile definition: HAVE_SYS_SELECT_H -- [crispy-core] Adding compile definition: HAVE_UNWIND_H -- [crispy] Compile unit tests: OFF -- Found Fontconfig: /usr/lib64/libfontconfig.so (found version "2.14.2") -- Checking for module 'harfbuzz' -- Found harfbuzz, version 8.3.0 -- [text_shaper] Librarires: unicode::unicode;boxed-cpp::boxed-cpp;fmt::fmt-header-only;range-v3::range-v3;Microsoft.GSL::GSL;Freetype::Freetype;PkgConfig::harfbuzz;Fontconfig::Fontconfig -- Found PkgConfig: /usr/bin/pkg-config (found version "1.9.5") -- Checking for module 'libssh2' -- Package 'libssh2', required by 'virtual:world', not found -- [vtbackend] Compile unit tests: OFF -- [vtbackend] Enable VT sequence tracing: ON -- [vtbackend] Enable caching of current line pointer: OFF -- [vtbackend] Enable passive render buffer update: OFF -- [vtbackend] Build bench-headless: OFF -- [vtbackend] Build documentation tool: OFF -- Qt components: Core;Gui;Qml;Quick;QuickControls2;Network;Multimedia;Widgets;OpenGL;OpenGLWidgets;Core5Compat -- Performing Test HAVE_STDATOMIC -- Performing Test HAVE_STDATOMIC - Success -- Found WrapAtomic: TRUE -- Found OpenGL: /usr/lib64/libOpenGL.so -- Found WrapOpenGL: TRUE -- Found XKB: /usr/lib64/libxkbcommon.so (found suitable version "1.6.0", minimum required is "0.5.0") -- Found WrapVulkanHeaders: /usr/include -- Executable tic found (/usr/bin/tic). -- ============================================================================== -- Contour ThirdParties -- ------------------------------------------------------------------------------ -- Catch2 -- GSL system package -- fmt system package -- freetype system package -- harfbuzz system package -- range-v3 system package -- yaml-cpp system package -- termbench-pro (bench-headless disabled) -- libunicode system package (0.4.0) -- boxed-cpp system package -- ------------------------------------------------------------------------------ -- ============================================================================== -- Contour (0.4.0-master-6df0a2f) -- ------------------------------------------------------------------------------ -- System: x86_64 (Linux) -- Build type: RelWithDebInfo -- C++ standard: C++20 (GNU) -- Using ccache: /usr/bin/ccache -- Build with sanitizer: OFF -- Build unit tests: OFF -- Enable with code coverage: OFF -- Build contour frontend GUI: ON -- Build contour using Qt: 6 (6.6.0) -- Build contour using mimalloc: OFF -- Clang Tidy: OFF -- |> Enable performance metrics: OFF -- ------------------------------------------------------------------------------ -- Configuring done (2.3s) -- Generating done (0.0s) -- Build files have been written to: /home/ruby/test/contour/build ruby in 🌐 fedora in contour on  master via △ v3.28.0-rc3 took 2s ❯ cmake --build build/ -j6 [40/88] Building CXX object src/vtbackend/CMakeFiles/vtbackend.dir/Screen.cpp.o FAILED: src/vtbackend/CMakeFiles/vtbackend.dir/Screen.cpp.o /usr/bin/ccache /usr/lib64/ccache/c++ -DCONTOUR_STACKTRACE_ADDR2LINE=1 -DFMT_HEADER_ONLY=1 -DHAVE_BACKTRACE -DHAVE_BACKTRACE_SYMBOLS -DHAVE_CXXABI_H -DHAVE_DLADDR -DHAVE_DLFCN_H -DHAVE_DLSYM -DHAVE_EXECINFO_H -DHAVE_SYS_SELECT_H -DHAVE_UNWIND_H -DLIBTERMINAL_LOG_TRACE=1 -DLIBTERMINAL_NAME=\"contour\" -DLIBTERMINAL_VERSION_MAJOR=0 -DLIBTERMINAL_VERSION_MINOR=4 -DLIBTERMINAL_VERSION_PATCH=0 -DLIBTERMINAL_VERSION_STRING=\"0.4.0-master-6df0a2f\" -I/home/ruby/test/contour/src -O2 -g -DNDEBUG -std=c++20 -fdiagnostics-color=always -maes -MD -MT src/vtbackend/CMakeFiles/vtbackend.dir/Screen.cpp.o -MF src/vtbackend/CMakeFiles/vtbackend.dir/Screen.cpp.o.d -o src/vtbackend/CMakeFiles/vtbackend.dir/Screen.cpp.o -c /home/ruby/test/contour/src/vtbackend/Screen.cpp In file included from /home/ruby/test/contour/src/vtbackend/Screen.cpp:5: /home/ruby/test/contour/src/vtbackend/Terminal.h: In instantiation of ‘void vtbackend::Terminal::reply(fmt::v10::format_string, Ts&& ...) [with Ts = {unsigned char&, int, int, int}; fmt::v10::format_string = fmt::v10::basic_format_string]’: /home/ruby/test/contour/src/vtbackend/Screen.cpp:2991:35: required from here /home/ruby/test/contour/src/vtbackend/Terminal.h:634:58: error: cannot bind non-const lvalue reference of type ‘int&’ to an rvalue of type ‘int’ 634 | reply(fmt::vformat(message, fmt::make_format_args(std::forward(args)...))); | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from /usr/include/fmt/format.h:49, from /usr/include/boxed-cpp/boxed.hpp:214, from /home/ruby/test/contour/src/vtpty/ImageSize.h:6, from /home/ruby/test/contour/src/vtbackend/primitives.h:4, from /home/ruby/test/contour/src/vtbackend/InputGenerator.h:4, from /home/ruby/test/contour/src/vtbackend/Screen.cpp:3: /usr/include/fmt/core.h:1824:35: note: initializing argument 2 of ‘constexpr fmt::v10::format_arg_store::type>::type ...> fmt::v10::make_format_args(T& ...) [with Context = basic_format_context; T = {unsigned char, int, int, int}]’ 1824 | constexpr auto make_format_args(T&... args) | ~~^~~~~~~~ /home/ruby/test/contour/src/vtbackend/Terminal.h: In instantiation of ‘void vtbackend::Terminal::reply(fmt::v10::format_string, Ts&& ...) [with Ts = {int, const std::__cxx11::basic_string, std::allocator >&, const std::__cxx11::basic_string, std::allocator >&, const std::__cxx11::basic_string, std::allocator >&, const std::__cxx11::basic_string, std::allocator >&, const std::__cxx11::basic_string, std::allocator >&}; fmt::v10::format_string = fmt::v10::basic_format_string, std::allocator >&, const std::__cxx11::basic_string, std::allocator >&, const std::__cxx11::basic_string, std::allocator >&, const std::__cxx11::basic_string, std::allocator >&, const std::__cxx11::basic_string, std::allocator >&>]’: /home/ruby/test/contour/src/vtbackend/Screen.cpp:3036:31: required from here /home/ruby/test/contour/src/vtbackend/Terminal.h:634:58: error: cannot bind non-const lvalue reference of type ‘int&’ to an rvalue of type ‘int’ 634 | reply(fmt::vformat(message, fmt::make_format_args(std::forward(args)...))); | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/fmt/core.h:1824:35: note: initializing argument 1 of ‘constexpr fmt::v10::format_arg_store::type>::type ...> fmt::v10::make_format_args(T& ...) [with Context = basic_format_context; T = {int, const std::__cxx11::basic_string, std::allocator >, const std::__cxx11::basic_string, std::allocator >, const std::__cxx11::basic_string, std::allocator >, const std::__cxx11::basic_string, std::allocator >, const std::__cxx11::basic_string, std::allocator >}]’ 1824 | constexpr auto make_format_args(T&... args) | ~~^~~~~~~~ /home/ruby/test/contour/src/vtbackend/Terminal.h: In instantiation of ‘void vtbackend::Terminal::reply(fmt::v10::format_string, Ts&& ...) [with Ts = {boxed::boxed, boxed::boxed}; fmt::v10::format_string = fmt::v10::basic_format_string, boxed::boxed >]’: /home/ruby/test/contour/src/vtbackend/Screen.cpp:2062:29: required from ‘void vtbackend::Screen::requestPixelSize(vtbackend::RequestPixelSize) [with Cell = vtbackend::CompactCell]’ /home/ruby/test/contour/src/vtbackend/Screen.cpp:3217:70: required from here /home/ruby/test/contour/src/vtbackend/Terminal.h:634:58: error: cannot bind non-const lvalue reference of type ‘boxed::boxed&’ to an rvalue of type ‘boxed::boxed’ 634 | reply(fmt::vformat(message, fmt::make_format_args(std::forward(args)...))); | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/fmt/core.h:1824:35: note: initializing argument 1 of ‘constexpr fmt::v10::format_arg_store::type>::type ...> fmt::v10::make_format_args(T& ...) [with Context = basic_format_context; T = {boxed::boxed, boxed::boxed}]’ 1824 | constexpr auto make_format_args(T&... args) | ~~^~~~~~~~ /home/ruby/test/contour/src/vtbackend/Terminal.h: In instantiation of ‘void vtbackend::Terminal::reply(fmt::v10::format_string, Ts&& ...) [with Ts = {boxed::boxed, boxed::boxed}; fmt::v10::format_string = fmt::v10::basic_format_string, boxed::boxed >]’: /home/ruby/test/contour/src/vtbackend/Screen.cpp:2079:29: required from ‘void vtbackend::Screen::requestCharacterSize(vtbackend::RequestPixelSize) [with Cell = vtbackend::CompactCell]’ /home/ruby/test/contour/src/vtbackend/Screen.cpp:3226:70: required from here /home/ruby/test/contour/src/vtbackend/Terminal.h:634:58: error: cannot bind non-const lvalue reference of type ‘boxed::boxed&’ to an rvalue of type ‘boxed::boxed’ 634 | reply(fmt::vformat(message, fmt::make_format_args(std::forward(args)...))); | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/fmt/core.h:1824:35: note: initializing argument 1 of ‘constexpr fmt::v10::format_arg_store::type>::type ...> fmt::v10::make_format_args(T& ...) [with Context = basic_format_context; T = {boxed::boxed, boxed::boxed}]’ 1824 | constexpr auto make_format_args(T&... args) | ~~^~~~~~~~ /home/ruby/test/contour/src/vtbackend/Terminal.h: In instantiation of ‘void vtbackend::Terminal::reply(fmt::v10::format_string, Ts&& ...) [with Ts = {boxed::boxed, boxed::boxed}; fmt::v10::format_string = fmt::v10::basic_format_string, boxed::boxed >]’: /home/ruby/test/contour/src/vtbackend/Screen.cpp:893:21: required from ‘void vtbackend::Screen::reportCursorPosition() [with Cell = vtbackend::CompactCell]’ /home/ruby/test/contour/src/vtbackend/Screen.cpp:4075:27: required from here /home/ruby/test/contour/src/vtbackend/Terminal.h:634:58: error: cannot bind non-const lvalue reference of type ‘boxed::boxed&’ to an rvalue of type ‘boxed::boxed’ 634 | reply(fmt::vformat(message, fmt::make_format_args(std::forward(args)...))); | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/fmt/core.h:1824:35: note: initializing argument 1 of ‘constexpr fmt::v10::format_arg_store::type>::type ...> fmt::v10::make_format_args(T& ...) [with Context = basic_format_context; T = {boxed::boxed, boxed::boxed}]’ 1824 | constexpr auto make_format_args(T&... args) | ~~^~~~~~~~ /home/ruby/test/contour/src/vtbackend/Terminal.h: In instantiation of ‘void vtbackend::Terminal::reply(fmt::v10::format_string, Ts&& ...) [with Ts = {boxed::boxed, boxed::boxed, const int&}; fmt::v10::format_string = fmt::v10::basic_format_string, boxed::boxed, const int&>]’: /home/ruby/test/contour/src/vtbackend/Screen.cpp:914:21: required from ‘void vtbackend::Screen::reportExtendedCursorPosition() [with Cell = vtbackend::CompactCell]’ /home/ruby/test/contour/src/vtbackend/Screen.cpp:4075:27: required from here /home/ruby/test/contour/src/vtbackend/Terminal.h:634:58: error: cannot bind non-const lvalue reference of type ‘boxed::boxed&’ to an rvalue of type ‘boxed::boxed’ 634 | reply(fmt::vformat(message, fmt::make_format_args(std::forward(args)...))); | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/fmt/core.h:1824:35: note: initializing argument 1 of ‘constexpr fmt::v10::format_arg_store::type>::type ...> fmt::v10::make_format_args(T& ...) [with Context = basic_format_context; T = {boxed::boxed, boxed::boxed, const int}]’ 1824 | constexpr auto make_format_args(T&... args) | ~~^~~~~~~~ /home/ruby/test/contour/src/vtbackend/Terminal.h: In instantiation of ‘void vtbackend::Terminal::reply(fmt::v10::format_string, Ts&& ...) [with Ts = {unsigned int, std::__cxx11::basic_string, std::allocator >}; fmt::v10::format_string = fmt::v10::basic_format_string, std::allocator > >]’: /home/ruby/test/contour/src/vtbackend/Screen.cpp:2048:25: required from ‘void vtbackend::Screen::requestDynamicColor(vtbackend::DynamicColorName) [with Cell = vtbackend::CompactCell]’ /home/ruby/test/contour/src/vtbackend/Screen.cpp:4075:27: required from here /home/ruby/test/contour/src/vtbackend/Terminal.h:634:58: error: cannot bind non-const lvalue reference of type ‘unsigned int&’ to an rvalue of type ‘unsigned int’ 634 | reply(fmt::vformat(message, fmt::make_format_args(std::forward(args)...))); | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/fmt/core.h:1824:35: note: initializing argument 1 of ‘constexpr fmt::v10::format_arg_store::type>::type ...> fmt::v10::make_format_args(T& ...) [with Context = basic_format_context; T = {unsigned int, std::__cxx11::basic_string, std::allocator >}]’ 1824 | constexpr auto make_format_args(T&... args) | ~~^~~~~~~~ /home/ruby/test/contour/src/vtbackend/Terminal.h: In instantiation of ‘void vtbackend::Terminal::reply(fmt::v10::format_string, Ts&& ...) [with Ts = {std::__cxx11::basic_string, std::allocator >}; fmt::v10::format_string = fmt::v10::basic_format_string, std::allocator > >]’: /home/ruby/test/contour/src/vtbackend/Screen.cpp:2243:25: required from ‘void vtbackend::Screen::requestCapability(vtbackend::capabilities::Code) [with Cell = vtbackend::CompactCell]’ /home/ruby/test/contour/src/vtbackend/Screen.cpp:4075:27: required from here /home/ruby/test/contour/src/vtbackend/Terminal.h:634:58: error: cannot bind non-const lvalue reference of type ‘std::__cxx11::basic_string&’ to an rvalue of type ‘std::__cxx11::basic_string’ 634 | reply(fmt::vformat(message, fmt::make_format_args(std::forward(args)...))); | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/fmt/core.h:1824:35: note: initializing argument 1 of ‘constexpr fmt::v10::format_arg_store::type>::type ...> fmt::v10::make_format_args(T& ...) [with Context = basic_format_context; T = {std::__cxx11::basic_string, std::allocator >}]’ 1824 | constexpr auto make_format_args(T&... args) | ~~^~~~~~~~ /home/ruby/test/contour/src/vtbackend/Terminal.h: In instantiation of ‘void vtbackend::Terminal::reply(fmt::v10::format_string, Ts&& ...) [with Ts = {std::__cxx11::basic_string, std::allocator >, std::__cxx11::basic_string, std::allocator >&}; fmt::v10::format_string = fmt::v10::basic_format_string, std::allocator >, std::__cxx11::basic_string, std::allocator >&>]’: /home/ruby/test/contour/src/vtbackend/Screen.cpp:2249:25: required from ‘void vtbackend::Screen::requestCapability(vtbackend::capabilities::Code) [with Cell = vtbackend::CompactCell]’ /home/ruby/test/contour/src/vtbackend/Screen.cpp:4075:27: required from here /home/ruby/test/contour/src/vtbackend/Terminal.h:634:58: error: cannot bind non-const lvalue reference of type ‘std::__cxx11::basic_string&’ to an rvalue of type ‘std::__cxx11::basic_string’ 634 | reply(fmt::vformat(message, fmt::make_format_args(std::forward(args)...))); | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/fmt/core.h:1824:35: note: initializing argument 1 of ‘constexpr fmt::v10::format_arg_store::type>::type ...> fmt::v10::make_format_args(T& ...) [with Context = basic_format_context; T = {std::__cxx11::basic_string, std::allocator >, std::__cxx11::basic_string, std::allocator >}]’ 1824 | constexpr auto make_format_args(T&... args) | ~~^~~~~~~~ /home/ruby/test/contour/src/vtbackend/Terminal.h: In instantiation of ‘void vtbackend::Terminal::reply(fmt::v10::format_string, Ts&& ...) [with Ts = {std::__cxx11::basic_string, std::allocator >, std::__cxx11::basic_string, std::allocator >}; fmt::v10::format_string = fmt::v10::basic_format_string, std::allocator >, std::__cxx11::basic_string, std::allocator > >]’: /home/ruby/test/contour/src/vtbackend/Screen.cpp:2252:25: required from ‘void vtbackend::Screen::requestCapability(vtbackend::capabilities::Code) [with Cell = vtbackend::CompactCell]’ /home/ruby/test/contour/src/vtbackend/Screen.cpp:4075:27: required from here /home/ruby/test/contour/src/vtbackend/Terminal.h:634:58: error: cannot bind non-const lvalue reference of type ‘std::__cxx11::basic_string&’ to an rvalue of type ‘std::__cxx11::basic_string’ 634 | reply(fmt::vformat(message, fmt::make_format_args(std::forward(args)...))); | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/fmt/core.h:1824:35: note: initializing argument 1 of ‘constexpr fmt::v10::format_arg_store::type>::type ...> fmt::v10::make_format_args(T& ...) [with Context = basic_format_context; T = {std::__cxx11::basic_string, std::allocator >, std::__cxx11::basic_string, std::allocator >}]’ 1824 | constexpr auto make_format_args(T&... args) | ~~^~~~~~~~ /home/ruby/test/contour/src/vtbackend/Terminal.h: In instantiation of ‘void vtbackend::Terminal::reply(fmt::v10::format_string, Ts&& ...) [with Ts = {int, std::__cxx11::basic_string, std::allocator >, const char (&)[3]}; fmt::v10::format_string = fmt::v10::basic_format_string, std::allocator >, const char (&)[3]>]’: /home/ruby/test/contour/src/vtbackend/Screen.cpp:2178:21: required from ‘void vtbackend::Screen::requestStatusString(vtbackend::RequestStatusString) [with Cell = vtbackend::CompactCell]’ /home/ruby/test/contour/src/vtbackend/Screen.cpp:4075:27: required from here /home/ruby/test/contour/src/vtbackend/Terminal.h:634:58: error: cannot bind non-const lvalue reference of type ‘int&’ to an rvalue of type ‘int’ 634 | reply(fmt::vformat(message, fmt::make_format_args(std::forward(args)...))); | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/fmt/core.h:1824:35: note: initializing argument 1 of ‘constexpr fmt::v10::format_arg_store::type>::type ...> fmt::v10::make_format_args(T& ...) [with Context = basic_format_context; T = {int, std::__cxx11::basic_string, std::allocator >, const char [3]}]’ 1824 | constexpr auto make_format_args(T&... args) | ~~^~~~~~~~ /home/ruby/test/contour/src/vtbackend/Terminal.h: In instantiation of ‘void vtbackend::Terminal::reply(fmt::v10::format_string, Ts&& ...) [with Ts = {const int&, const int&, int}; fmt::v10::format_string = fmt::v10::basic_format_string]’: /home/ruby/test/contour/src/vtbackend/Screen.cpp:2413:51: required from ‘void vtbackend::Screen::smGraphics(vtbackend::XtSmGraphics::Item, vtbackend::XtSmGraphics::Action, vtbackend::XtSmGraphics::Value) [with Cell = vtbackend::CompactCell; vtbackend::XtSmGraphics::Value = std::variant]’ /home/ruby/test/contour/src/vtbackend/Screen.cpp:4075:27: required from here /home/ruby/test/contour/src/vtbackend/Terminal.h:634:58: error: cannot bind non-const lvalue reference of type ‘int&’ to an rvalue of type ‘int’ 634 | reply(fmt::vformat(message, fmt::make_format_args(std::forward(args)...))); | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/fmt/core.h:1824:35: note: initializing argument 3 of ‘constexpr fmt::v10::format_arg_store::type>::type ...> fmt::v10::make_format_args(T& ...) [with Context = basic_format_context; T = {const int, const int, int}]’ 1824 | constexpr auto make_format_args(T&... args) | ~~^~~~~~~~ /home/ruby/test/contour/src/vtbackend/Terminal.h: In instantiation of ‘void vtbackend::Terminal::reply(fmt::v10::format_string, Ts&& ...) [with Ts = {const unsigned int&, unsigned int}; fmt::v10::format_string = fmt::v10::basic_format_string]’: /home/ruby/test/contour/src/vtbackend/Screen.cpp:1840:21: required from ‘void vtbackend::Screen::requestAnsiMode(unsigned int) [with Cell = vtbackend::CompactCell]’ /home/ruby/test/contour/src/vtbackend/Screen.cpp:4075:27: required from here /home/ruby/test/contour/src/vtbackend/Terminal.h:634:58: error: cannot bind non-const lvalue reference of type ‘unsigned int&’ to an rvalue of type ‘unsigned int’ 634 | reply(fmt::vformat(message, fmt::make_format_args(std::forward(args)...))); | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/fmt/core.h:1824:35: note: initializing argument 2 of ‘constexpr fmt::v10::format_arg_store::type>::type ...> fmt::v10::make_format_args(T& ...) [with Context = basic_format_context; T = {const unsigned int, unsigned int}]’ 1824 | constexpr auto make_format_args(T&... args) | ~~^~~~~~~~ /home/ruby/test/contour/src/vtbackend/Terminal.h: In instantiation of ‘void vtbackend::Terminal::reply(fmt::v10::format_string, Ts&& ...) [with Ts = {int}; fmt::v10::format_string = fmt::v10::basic_format_string]’: /home/ruby/test/contour/src/vtbackend/Screen.cpp:3823:29: required from ‘vtbackend::ApplyResult vtbackend::Screen::apply(const vtbackend::FunctionDefinition&, const vtbackend::Sequence&) [with Cell = vtbackend::CompactCell]’ /home/ruby/test/contour/src/vtbackend/Screen.cpp:4075:27: required from here /home/ruby/test/contour/src/vtbackend/Terminal.h:634:58: error: cannot bind non-const lvalue reference of type ‘int&’ to an rvalue of type ‘int’ 634 | reply(fmt::vformat(message, fmt::make_format_args(std::forward(args)...))); | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/fmt/core.h:1824:35: note: initializing argument 1 of ‘constexpr fmt::v10::format_arg_store::type>::type ...> fmt::v10::make_format_args(T& ...) [with Context = basic_format_context; T = {int}]’ 1824 | constexpr auto make_format_args(T&... args) | ~~^~~~~~~~ [43/88] Building CXX object src/vtbackend/CMakeFiles/vtbackend.dir/Terminal.cpp.o FAILED: src/vtbackend/CMakeFiles/vtbackend.dir/Terminal.cpp.o /usr/bin/ccache /usr/lib64/ccache/c++ -DCONTOUR_STACKTRACE_ADDR2LINE=1 -DFMT_HEADER_ONLY=1 -DHAVE_BACKTRACE -DHAVE_BACKTRACE_SYMBOLS -DHAVE_CXXABI_H -DHAVE_DLADDR -DHAVE_DLFCN_H -DHAVE_DLSYM -DHAVE_EXECINFO_H -DHAVE_SYS_SELECT_H -DHAVE_UNWIND_H -DLIBTERMINAL_LOG_TRACE=1 -DLIBTERMINAL_NAME=\"contour\" -DLIBTERMINAL_VERSION_MAJOR=0 -DLIBTERMINAL_VERSION_MINOR=4 -DLIBTERMINAL_VERSION_PATCH=0 -DLIBTERMINAL_VERSION_STRING=\"0.4.0-master-6df0a2f\" -I/home/ruby/test/contour/src -O2 -g -DNDEBUG -std=c++20 -fdiagnostics-color=always -maes -MD -MT src/vtbackend/CMakeFiles/vtbackend.dir/Terminal.cpp.o -MF src/vtbackend/CMakeFiles/vtbackend.dir/Terminal.cpp.o.d -o src/vtbackend/CMakeFiles/vtbackend.dir/Terminal.cpp.o -c /home/ruby/test/contour/src/vtbackend/Terminal.cpp In file included from /home/ruby/test/contour/src/vtbackend/RenderBufferBuilder.h:6, from /home/ruby/test/contour/src/vtbackend/Terminal.cpp:6: /home/ruby/test/contour/src/vtbackend/Terminal.h: In instantiation of ‘void vtbackend::Terminal::reply(fmt::v10::format_string, Ts&& ...) [with Ts = {int, boxed::boxed, boxed::boxed, boxed::boxed, boxed::boxed}; fmt::v10::format_string = fmt::v10::basic_format_string, boxed::boxed, boxed::boxed, boxed::boxed >]’: /home/ruby/test/contour/src/vtbackend/Terminal.cpp:2182:14: required from here /home/ruby/test/contour/src/vtbackend/Terminal.h:634:58: error: cannot bind non-const lvalue reference of type ‘int&’ to an rvalue of type ‘int’ 634 | reply(fmt::vformat(message, fmt::make_format_args(std::forward(args)...))); | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from /usr/include/fmt/format.h:49, from /home/ruby/test/contour/src/crispy/escape.h:4, from /home/ruby/test/contour/src/crispy/utils.h:3, from /home/ruby/test/contour/src/crispy/logstore.h:5, from /home/ruby/test/contour/src/crispy/assert.h:4, from /home/ruby/test/contour/src/vtbackend/VTType.h:4, from /home/ruby/test/contour/src/vtbackend/Functions.h:4, from /home/ruby/test/contour/src/vtbackend/Terminal.cpp:3: /usr/include/fmt/core.h:1824:35: note: initializing argument 1 of ‘constexpr fmt::v10::format_arg_store::type>::type ...> fmt::v10::make_format_args(T& ...) [with Context = basic_format_context; T = {int, boxed::boxed, boxed::boxed, boxed::boxed, boxed::boxed}]’ 1824 | constexpr auto make_format_args(T&... args) | ~~^~~~~~~~ [45/88] Building CXX object src/vtbackend/CMakeFiles/vtbackend.dir/TerminalState.cpp.o ninja: build stopped: subcommand failed. ruby in 🌐 fedora in contour on  master via △ v3.28.0-rc3 ❯ rpm -q fmt-devel fmt-devel-10.1.1-1.fc40.x86_64 ruby in 🌐 fedora in contour on  master via △ v3.28.0-rc3 ❯ rpm -q libunicode-devel libunicode-devel-0.4.0-1.fc40.x86_64 ```

Expected Behavior

No response

Actual Behavior

Successful build contour with fmt 10

Additional notes

No response