]> git.ipfire.org Git - thirdparty/binutils-gdb.git/commitdiff
gdb/record-full: fix some -Wpessimizing-move errors master
authorSimon Marchi <simon.marchi@efficios.com>
Mon, 6 Jul 2026 14:38:46 +0000 (14:38 +0000)
committerSimon Marchi <simon.marchi@efficios.com>
Mon, 6 Jul 2026 14:41:37 +0000 (10:41 -0400)
Compiling record-full.c with clang shows:

    /home/smarchi/src/binutils-gdb/gdb/record-full.c:2386:14: error: moving a temporary object prevents copy elision [-Werror,-Wpessimizing-move]
     2386 |         rec.entry = std::move (record_full_reg_entry::from_bfd
          |                     ^
    /home/smarchi/src/binutils-gdb/gdb/record-full.c:2386:14: note: remove std::move call here
     2386 |         rec.entry = std::move (record_full_reg_entry::from_bfd
          |                     ^~~~~~~~~~~
     2387 |                                 (cbfd, osec, bfd_offset));
          |                                                         ~
    /home/smarchi/src/binutils-gdb/gdb/record-full.c:2393:14: error: moving a temporary object prevents copy elision [-Werror,-Wpessimizing-move]
     2393 |         rec.entry = std::move (record_full_mem_entry::from_bfd
          |                     ^
    /home/smarchi/src/binutils-gdb/gdb/record-full.c:2393:14: note: remove std::move call here
     2393 |         rec.entry = std::move (record_full_mem_entry::from_bfd
          |                     ^~~~~~~~~~~
     2394 |                                 (cbfd, osec, bfd_offset));
          |                                                         ~

It's indeed not recommended to std::move the return value of a
function.  Remove the std::moves.

Change-Id: I80d947aa3d917fe3fcaaad0c3e329cb1de48a8ee

gdb/record-full.c

index 695d9d1622cd71b81dc06d0c39c53d6875b97480..1392510a175c3ee703ab03f970f75fae3a4922e0 100644 (file)
@@ -2383,15 +2383,13 @@ record_full_entry::from_bfd (bfd *cbfd, asection *osec, int *bfd_offset)
     {
     case record_full_reg: /* reg */
       {
-       rec.entry = std::move (record_full_reg_entry::from_bfd
-                               (cbfd, osec, bfd_offset));
+       rec.entry = record_full_reg_entry::from_bfd (cbfd, osec, bfd_offset);
        break;
       }
 
     case record_full_mem: /* mem */
       {
-       rec.entry = std::move (record_full_mem_entry::from_bfd
-                               (cbfd, osec, bfd_offset));
+       rec.entry = record_full_mem_entry::from_bfd (cbfd, osec, bfd_offset);
        break;
       }