Open
Description
Title: Double move when passing by move.
Minimal reproducer (https://cpp2.godbolt.org/z/31sPe9xMj):
main: () = {
x := 0;
:(y) = 0;
(move x);
}
Commands:
cppfront -clean-cpp1 main.cpp2
Expected result:
[](auto const& y) -> void { 0; }
(std::move(x));
Actual result and error:
[](auto const& y) -> void { 0; }
(std::move(std::move(x)));