From: Tom de Vries Date: Tue, 8 Aug 2023 22:58:29 +0000 (+0200) Subject: [gdb/build] Use move capture in gdb_demangle X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=7570a17cbbe647db6260ae2391f92c0509de7924;p=binutils-gdb.git [gdb/build] Use move capture in gdb_demangle Use move capture in gdb_demangle when compiling for c++14 or higher, to save a std::string copy. Tested on x86_64-linux. Reported-By: Tom Tromey Approved-By: Tom Tromey --- diff --git a/gdb/cp-support.c b/gdb/cp-support.c index 2fb9d9ef0b2..0300727434d 100644 --- a/gdb/cp-support.c +++ b/gdb/cp-support.c @@ -1656,7 +1656,13 @@ gdb_demangle (const char *name, int options) we might be in a background thread. Instead, arrange for the reporting to happen on the main thread. */ std::string copy = name; - run_on_main_thread ([=] () + run_on_main_thread ([ +#if __cplusplus >= 201402L + =, copy = std::move (copy) +#else + = +#endif + ] () { report_failed_demangle (copy.c_str (), core_dump_allowed, crash_signal);