[all-commits] [llvm/llvm-project] ed39fd: [lld-macho] Use source information in duplicate sy...

Daniel Bertalan via All-commits all-commits at lists.llvm.org
Thu Jun 23 08:09:41 PDT 2022

  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: ed39fd515a9e5cd7668847359dd3b5ce35ab5d0a
  Author: Daniel Bertalan <dani at danielbertalan.dev>
  Date:   2022-06-23 (Thu, 23 Jun 2022)

  Changed paths:
    M lld/MachO/InputSection.cpp
    M lld/MachO/SymbolTable.cpp
    M lld/MachO/Symbols.cpp
    M lld/MachO/Symbols.h
    A lld/test/MachO/invalid/duplicate-symbol-debug.s

  Log Message:
  [lld-macho] Use source information in duplicate symbol errors

Similarly to how undefined symbol diagnostics were changed in D128184,
we now show where in the source file duplicate symbols are defined at:

  ld64.lld: error: duplicate symbol: _foo
  >> defined in bar.c:42
  >>            /path/to/bar.o
  >> defined in baz.c:1
  >>            /path/to/libbaz.a(baz.o)

For objects that don't contain DWARF data, the format is unchanged.

A slight difference to undefined symbol diagnostics is that we don't
print the name of the symbol on the third line, as it's already
contained on the first line.

Differential Revision: https://reviews.llvm.org/D128425

More information about the All-commits mailing list