[cfe-dev] [llvm-dev] New warnings when building trunk with GCC 9

David Blaikie via cfe-dev cfe-dev at lists.llvm.org
Fri Sep 14 00:53:34 PDT 2018


On Fri, Sep 14, 2018 at 12:48 AM Stephan Bergmann <sbergman at redhat.com>
wrote:

> On 13/09/2018 18:22, David Blaikie via llvm-dev wrote:
> > On Thu, Sep 13, 2018 at 12:13 AM Dávid Bolvanský via llvm-dev
> > <llvm-dev at lists.llvm.org <mailto:llvm-dev at lists.llvm.org>> wrote:
> >
>  /home/davidbolvansky/trunk/llvm/unittests/ExecutionEngine/Orc/CompileOnDemandLayerTest.cpp:79:40:
>
> >       required from here
> >
>  /home/davidbolvansky/trunk/llvm/include/llvm/ExecutionEngine/Orc/CompileOnDemandLayer.h:314:29:
> >     warning: redundant move in return statement [-Wredundant-move]
> >     314 |         return std::move(Err);
>
> Note that the move (into the implicit JITSymbol(Error) ctor) is only
> redundant if the compiler implements a fix for
> <http://www.open-std.org/jtc1/sc22/wg21/docs/cwg_defects.html#1579>
> "Return by converting move constructor".  (But not sure whether the LLVM
> compiler baselines imply that, anyway.


Looks like that was accepted for C++14, not 11. So I don't believe it's
valid to remove the std::move in C++11 code. (& I believe Clang's warning
correctly diagnoses this only in the right language versions) - so we
probably want to disable the buggy GCC warning here, then.


> In LibreOffice it forced me to
> introduce ugly #ifs, to not have to disable that warning outright,
> <
> https://cgit.freedesktop.org/libreoffice/core/commit/?id=dc06c8f4989fc28d0c31ebd333e53dfe0e0f5f66>
>
> "-Werror=redundant-move (GCC 9), take two".)
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-dev/attachments/20180914/cf991a8c/attachment.html>


More information about the cfe-dev mailing list