]> git.ipfire.org Git - thirdparty/gcc.git/commit
PR c++/87029, Implement -Wredundant-move.
authormpolacek <mpolacek@138bc75d-0d04-0410-961f-82ee72b054a4>
Sun, 26 Aug 2018 16:45:51 +0000 (16:45 +0000)
committermpolacek <mpolacek@138bc75d-0d04-0410-961f-82ee72b054a4>
Sun, 26 Aug 2018 16:45:51 +0000 (16:45 +0000)
commit48bbcd968d172c4e59d874c5fd831bcbf54cd221
tree3eee6900b2acb67b5d22f1a855250865510a30f7
parent9058d630b4e7518ccff57f18a6263c122f67c8fa
PR c++/87029, Implement -Wredundant-move.
* c.opt (Wredundant-move): New option.

* typeck.c (treat_lvalue_as_rvalue_p): New function.
(maybe_warn_pessimizing_move): Call convert_from_reference.
Warn about redundant moves.

* doc/invoke.texi: Document -Wredundant-move.

* g++.dg/cpp0x/Wredundant-move1.C: New test.
* g++.dg/cpp0x/Wredundant-move2.C: New test.
* g++.dg/cpp0x/Wredundant-move3.C: New test.
* g++.dg/cpp0x/Wredundant-move4.C: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@263863 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/ChangeLog
gcc/c-family/ChangeLog
gcc/c-family/c.opt
gcc/cp/ChangeLog
gcc/cp/typeck.c
gcc/doc/invoke.texi
gcc/testsuite/ChangeLog
gcc/testsuite/g++.dg/cpp0x/Wredundant-move1.C [new file with mode: 0644]
gcc/testsuite/g++.dg/cpp0x/Wredundant-move2.C [new file with mode: 0644]
gcc/testsuite/g++.dg/cpp0x/Wredundant-move3.C [new file with mode: 0644]
gcc/testsuite/g++.dg/cpp0x/Wredundant-move4.C [new file with mode: 0644]