[PATCH] D131749: [MCDwarf] Respect -fdebug-prefix-map= for generated assembly debug info (DWARF v5)

Fangrui Song via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Aug 12 09:43:56 PDT 2022


MaskRay added a comment.

In D131749#3718437 <https://reviews.llvm.org/D131749#3718437>, @raj.khem wrote:

> I am getting a compiler error on clang-15, can you confirm if this will work with clang-15 too
>
> I am seeing
>
>   | /mnt/b/yoe/master/build/tmp/work-shared/llvm-project-source-15.0.0-r0/git/llvm/include/llvm/ADT/Optional.h: In instantiation of ‘llvm::optional_d
>   etail::OptionalStorage<T, <anonymous> >& llvm::optional_detail::OptionalStorage<T, <anonymous> >::operator=(T&&) [with T = llvm::MCDwarfLineStr; bo
>   ol <anonymous> = false]’:
>   | /mnt/b/yoe/master/build/tmp/work-shared/llvm-project-source-15.0.0-r0/git/llvm/include/llvm/ADT/Optional.h:281:13:   required from ‘llvm::Optiona
>   l<T>& llvm::Optional<T>::operator=(T&&) [with T = llvm::MCDwarfLineStr]’
>   | /mnt/b/yoe/master/build/tmp/work-shared/llvm-project-source-15.0.0-r0/git/llvm/lib/MC/MCDwarf.cpp:269:37:   required from here
>   | /mnt/b/yoe/master/build/tmp/work-shared/llvm-project-source-15.0.0-r0/git/llvm/include/llvm/ADT/Optional.h:139:11: error: use of deleted function
>    ‘llvm::MCDwarfLineStr& llvm::MCDwarfLineStr::operator=(llvm::MCDwarfLineStr&&)’
>   |   139 |       val = std::move(y);
>   |       |       ~~~~^~~~~~~~~~~~~~                                                                                                                 | /mnt/b/yoe/master/build/tmp/work-shared/llvm-project-source-15.0.0-r0/git/llvm/include/llvm/MC/MCDwarf.h:51:7: note: ‘llvm::MCDwarfLineStr& llvm:
>   :MCDwarfLineStr::operator=(llvm::MCDwarfLineStr&&)’ is implicitly deleted because the default definition would be ill-formed:                      |    51 | class MCDwarfLineStr {
>   |       |       ^~~~~~~~~~~~~~
>   | /mnt/b/yoe/master/build/tmp/work-shared/llvm-project-source-15.0.0-r0/git/llvm/include/llvm/MC/MCDwarf.h:51:7: error: use of deleted function ‘ll
>   vm::StringSaver& llvm::StringSaver::operator=(llvm::StringSaver&&)’
>   | In file included from /mnt/b/yoe/master/build/tmp/work-shared/llvm-project-source-15.0.0-r0/git/llvm/include/llvm/MC/MCDwarf.h:25:
>   | /mnt/b/yoe/master/build/tmp/work-shared/llvm-project-source-15.0.0-r0/git/llvm/include/llvm/Support/StringSaver.h:21:7: note: ‘llvm::StringSaver&
>    llvm::StringSaver::operator=(llvm::StringSaver&&)’ is implicitly deleted because the default definition would be ill-formed:                      |    21 | class StringSaver final {
>   |       |       ^~~~~~~~~~~
>   | /mnt/b/yoe/master/build/tmp/work-shared/llvm-project-source-15.0.0-r0/git/llvm/include/llvm/Support/StringSaver.h:21:7: error: non-static referen
>   ce member ‘llvm::BumpPtrAllocator& llvm::StringSaver::Alloc’, cannot use default assignment operator

You need to rebase after b0c4cd35df89479ec152c1f79e18d0264dd276cc <https://reviews.llvm.org/rGb0c4cd35df89479ec152c1f79e18d0264dd276cc> which avoids move assignment.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D131749/new/

https://reviews.llvm.org/D131749



More information about the llvm-commits mailing list