Quanlong Huang created ORC-1134:
-----------------------------------
Summary: [C++] Compile error when switching branches
Key: ORC-1134
URL: https://issues.apache.org/jira/browse/ORC-1134
Project: ORC
Issue Type: Bug
Components: C++
Reporter: Quanlong Huang
I always encounter this issue when switching branches:
{code:java}
In file included from /home/quanlong/workspace/orc/c++/src/Reader.cc:19:
/home/quanlong/workspace/orc/c++/src/Reader.cc: In function
‘std::unique_ptr<orc::proto::PostScript> orc::readPostscript(orc::InputStream*,
orc::DataBuffer<char>*, uint64_t)’:
/home/quanlong/workspace/orc/c++/src/Adaptor.hh:127:40: error: moving a local
object in a return statement prevents copy elision [-Werror=pessimizing-move]
127 | #define REDUNDANT_MOVE(XXX) std::move(XXX)
| ~~~~~~~~~^~~~~
/home/quanlong/workspace/orc/c++/src/Reader.cc:1263:12: note: in expansion of
macro ‘REDUNDANT_MOVE’
1263 | return REDUNDANT_MOVE(postscript);
| ^~~~~~~~~~~~~~
/home/quanlong/workspace/orc/c++/src/Adaptor.hh:127:40: note: remove
‘std::move’ call
127 | #define REDUNDANT_MOVE(XXX) std::move(XXX)
| ~~~~~~~~~^~~~~
/home/quanlong/workspace/orc/c++/src/Reader.cc:1263:12: note: in expansion of
macro ‘REDUNDANT_MOVE’
1263 | return REDUNDANT_MOVE(postscript);
| ^~~~~~~~~~~~~~
/home/quanlong/workspace/orc/c++/src/Reader.cc: In function
‘std::unique_ptr<orc::proto::Footer> orc::readFooter(orc::InputStream*, const
orc::DataBuffer<char>*, uint64_t, const orc::proto::PostScript&,
orc::MemoryPool&)’:
/home/quanlong/workspace/orc/c++/src/Adaptor.hh:127:40: error: moving a local
object in a return statement prevents copy elision [-Werror=pessimizing-move]
127 | #define REDUNDANT_MOVE(XXX) std::move(XXX)
| ~~~~~~~~~^~~~~
/home/quanlong/workspace/orc/c++/src/Reader.cc:1337:12: note: in expansion of
macro ‘REDUNDANT_MOVE’
1337 | return REDUNDANT_MOVE(footer);
| ^~~~~~~~~~~~~~
/home/quanlong/workspace/orc/c++/src/Adaptor.hh:127:40: note: remove
‘std::move’ call
127 | #define REDUNDANT_MOVE(XXX) std::move(XXX)
| ~~~~~~~~~^~~~~
/home/quanlong/workspace/orc/c++/src/Reader.cc:1337:12: note: in expansion of
macro ‘REDUNDANT_MOVE’
1337 | return REDUNDANT_MOVE(footer);
| ^~~~~~~~~~~~~~ {code}
Removing orc/c++/src/Adaptor.hh can workaround this.
--
This message was sent by Atlassian Jira
(v8.20.1#820001)