Rafael Espíndola via llvm-dev
2017-Mar-29 20:47 UTC
[llvm-dev] [RFC] better link error messages
I am late on the thread, but I just want to say that the new format looks awesome! Thanks, Rafael On 29 March 2017 at 15:18, Rui Ueyama via llvm-dev <llvm-dev at lists.llvm.org> wrote:> My bad. I intended this. > > Undefined symbol error: > > bin/ld.lld: error: undefined symbol: > lld::elf::EhFrameSection<llvm::object::ELFType<(llvm::support::endianness)0, > true> >>>> Referenced by Writer.cpp:207 (/ssd/llvm-project/lld/ELF/Writer.cpp:207) >>>> Writer.cpp.o in archive lib/liblldELF.a > > > Duplicate symbol error: > > bin/ld.lld: error: duplicate symbol: > lld::elf::MipsGotSection::addEntry(lld::elf::SymbolBody&, long, > lld::elf::RelExpr) >>>> defined at Writer.cpp:38 >>>> (/home/buildslave/buildslave/clang-cmake-aarch64-39vma/llvm/tools/lld/ELF/Writer.cpp:38) >>>> Writer.cpp.o in archive lib/liblldELF.a >>>> defined at SyntheticSections.cpp:673 >>>> (/home/buildslave/buildslave/clang-cmake-aarch64-39vma/llvm/tools/lld/ELF/SyntheticSections.cpp:673) >>>> SyntheticSections.cpp.o in archive lib/liblldELF.a > > > On Wed, Mar 29, 2017 at 12:12 PM, Jonathan Roelofs > <jonathan at codesourcery.com> wrote: >> >> >> >> On 3/29/17 12:53 PM, Rui Ueyama via llvm-dev wrote: >>> >>> Put it all together, the following error messages should work for >>> everybody. I'll create a patch to make this change and send it for >>> review. Thank you guys for the inputs! >>> >>> >>> Undefined symbol error: >>> >>> bin/ld.lld: error: undefined symbol: >>> >>> lld::elf::EhFrameSection<llvm::object::ELFType<(llvm::support::endianness)0, >>> true> >>> *>>> defined at* Writer.cpp:207 >>> (/ssd/llvm-project/lld/ELF/Writer.cpp:207) >>> *>>>* Writer.cpp.o in archive lib/liblldELF.a >> >> >> The wording of this one is mildly self contradictory. Undefined symbols >> aren't defined, they're... used? referenced? >> >> >> Jon >> >>> >>> >>> Duplicate symbol error: >>> >>> bin/ld.lld: error: duplicate symbol: >>> lld::elf::MipsGotSection::addEntry(lld::elf::SymbolBody&, long, >>> lld::elf::RelExpr) >>> *>>> defined at* Writer.cpp:38 >>> >>> (/home/buildslave/buildslave/clang-cmake-aarch64-39vma/llvm/tools/lld/ELF/Writer.cpp:38) >>> *>>>* Writer.cpp.o in archive lib/liblldELF.a >>> *>>> defined at* SyntheticSections.cpp:673 >>> >>> (/home/buildslave/buildslave/clang-cmake-aarch64-39vma/llvm/tools/lld/ELF/SyntheticSections.cpp:673) >>> *>>>* SyntheticSections.cpp.o in archive lib/liblldELF.a >>> >>> >> >> >> -- >> Jon Roelofs >> jonathan at codesourcery.com >> CodeSourcery / Mentor Embedded > > > > _______________________________________________ > LLVM Developers mailing list > llvm-dev at lists.llvm.org > http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev >
The first patch is sent out: https://reviews.llvm.org/D31481 On Wed, Mar 29, 2017 at 1:47 PM, Rafael Espíndola < rafael.espindola at gmail.com> wrote:> I am late on the thread, but I just want to say that the new format > looks awesome! > > Thanks, > Rafael > > > On 29 March 2017 at 15:18, Rui Ueyama via llvm-dev > <llvm-dev at lists.llvm.org> wrote: > > My bad. I intended this. > > > > Undefined symbol error: > > > > bin/ld.lld: error: undefined symbol: > > lld::elf::EhFrameSection<llvm::object::ELFType<(llvm:: > support::endianness)0, > > true> > >>>> Referenced by Writer.cpp:207 (/ssd/llvm-project/lld/ELF/ > Writer.cpp:207) > >>>> Writer.cpp.o in archive lib/liblldELF.a > > > > > > Duplicate symbol error: > > > > bin/ld.lld: error: duplicate symbol: > > lld::elf::MipsGotSection::addEntry(lld::elf::SymbolBody&, long, > > lld::elf::RelExpr) > >>>> defined at Writer.cpp:38 > >>>> (/home/buildslave/buildslave/clang-cmake-aarch64-39vma/ > llvm/tools/lld/ELF/Writer.cpp:38) > >>>> Writer.cpp.o in archive lib/liblldELF.a > >>>> defined at SyntheticSections.cpp:673 > >>>> (/home/buildslave/buildslave/clang-cmake-aarch64-39vma/ > llvm/tools/lld/ELF/SyntheticSections.cpp:673) > >>>> SyntheticSections.cpp.o in archive lib/liblldELF.a > > > > > > On Wed, Mar 29, 2017 at 12:12 PM, Jonathan Roelofs > > <jonathan at codesourcery.com> wrote: > >> > >> > >> > >> On 3/29/17 12:53 PM, Rui Ueyama via llvm-dev wrote: > >>> > >>> Put it all together, the following error messages should work for > >>> everybody. I'll create a patch to make this change and send it for > >>> review. Thank you guys for the inputs! > >>> > >>> > >>> Undefined symbol error: > >>> > >>> bin/ld.lld: error: undefined symbol: > >>> > >>> lld::elf::EhFrameSection<llvm::object::ELFType<(llvm:: > support::endianness)0, > >>> true> > >>> *>>> defined at* Writer.cpp:207 > >>> (/ssd/llvm-project/lld/ELF/Writer.cpp:207) > >>> *>>>* Writer.cpp.o in archive lib/liblldELF.a > >> > >> > >> The wording of this one is mildly self contradictory. Undefined symbols > >> aren't defined, they're... used? referenced? > >> > >> > >> Jon > >> > >>> > >>> > >>> Duplicate symbol error: > >>> > >>> bin/ld.lld: error: duplicate symbol: > >>> lld::elf::MipsGotSection::addEntry(lld::elf::SymbolBody&, long, > >>> lld::elf::RelExpr) > >>> *>>> defined at* Writer.cpp:38 > >>> > >>> (/home/buildslave/buildslave/clang-cmake-aarch64-39vma/ > llvm/tools/lld/ELF/Writer.cpp:38) > >>> *>>>* Writer.cpp.o in archive lib/liblldELF.a > >>> *>>> defined at* SyntheticSections.cpp:673 > >>> > >>> (/home/buildslave/buildslave/clang-cmake-aarch64-39vma/ > llvm/tools/lld/ELF/SyntheticSections.cpp:673) > >>> *>>>* SyntheticSections.cpp.o in archive lib/liblldELF.a > >>> > >>> > >> > >> > >> -- > >> Jon Roelofs > >> jonathan at codesourcery.com > >> CodeSourcery / Mentor Embedded > > > > > > > > _______________________________________________ > > LLVM Developers mailing list > > llvm-dev at lists.llvm.org > > http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev > > >-------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20170329/8ffc0de0/attachment.html>
Hi guys, I submitted https://reviews.llvm.org/rL299097 and https://reviews.llvm.org/rLr299280 to change the error message styles for undefined or duplicated symbols. I want to get stable error message formats until the next LLVM release, but until then, we can change them freely. So you don't need to think that they are in the final form. I'll try to use this to see if further changes are needed. If you are interested, please do that yourself too. Thanks, Rui On Wed, Mar 29, 2017 at 3:28 PM, Rui Ueyama <ruiu at google.com> wrote:> The first patch is sent out: https://reviews.llvm.org/D31481 > > On Wed, Mar 29, 2017 at 1:47 PM, Rafael Espíndola < > rafael.espindola at gmail.com> wrote: > >> I am late on the thread, but I just want to say that the new format >> looks awesome! >> >> Thanks, >> Rafael >> >> >> On 29 March 2017 at 15:18, Rui Ueyama via llvm-dev >> <llvm-dev at lists.llvm.org> wrote: >> > My bad. I intended this. >> > >> > Undefined symbol error: >> > >> > bin/ld.lld: error: undefined symbol: >> > lld::elf::EhFrameSection<llvm::object::ELFType<(llvm::suppor >> t::endianness)0, >> > true> >> >>>> Referenced by Writer.cpp:207 (/ssd/llvm-project/lld/ELF/Wri >> ter.cpp:207) >> >>>> Writer.cpp.o in archive lib/liblldELF.a >> > >> > >> > Duplicate symbol error: >> > >> > bin/ld.lld: error: duplicate symbol: >> > lld::elf::MipsGotSection::addEntry(lld::elf::SymbolBody&, long, >> > lld::elf::RelExpr) >> >>>> defined at Writer.cpp:38 >> >>>> (/home/buildslave/buildslave/clang-cmake-aarch64-39vma/llvm/ >> tools/lld/ELF/Writer.cpp:38) >> >>>> Writer.cpp.o in archive lib/liblldELF.a >> >>>> defined at SyntheticSections.cpp:673 >> >>>> (/home/buildslave/buildslave/clang-cmake-aarch64-39vma/llvm/ >> tools/lld/ELF/SyntheticSections.cpp:673) >> >>>> SyntheticSections.cpp.o in archive lib/liblldELF.a >> > >> > >> > On Wed, Mar 29, 2017 at 12:12 PM, Jonathan Roelofs >> > <jonathan at codesourcery.com> wrote: >> >> >> >> >> >> >> >> On 3/29/17 12:53 PM, Rui Ueyama via llvm-dev wrote: >> >>> >> >>> Put it all together, the following error messages should work for >> >>> everybody. I'll create a patch to make this change and send it for >> >>> review. Thank you guys for the inputs! >> >>> >> >>> >> >>> Undefined symbol error: >> >>> >> >>> bin/ld.lld: error: undefined symbol: >> >>> >> >>> lld::elf::EhFrameSection<llvm::object::ELFType<(llvm::suppor >> t::endianness)0, >> >>> true> >> >>> *>>> defined at* Writer.cpp:207 >> >>> (/ssd/llvm-project/lld/ELF/Writer.cpp:207) >> >>> *>>>* Writer.cpp.o in archive lib/liblldELF.a >> >> >> >> >> >> The wording of this one is mildly self contradictory. Undefined symbols >> >> aren't defined, they're... used? referenced? >> >> >> >> >> >> Jon >> >> >> >>> >> >>> >> >>> Duplicate symbol error: >> >>> >> >>> bin/ld.lld: error: duplicate symbol: >> >>> lld::elf::MipsGotSection::addEntry(lld::elf::SymbolBody&, long, >> >>> lld::elf::RelExpr) >> >>> *>>> defined at* Writer.cpp:38 >> >>> >> >>> (/home/buildslave/buildslave/clang-cmake-aarch64-39vma/llvm/ >> tools/lld/ELF/Writer.cpp:38) >> >>> *>>>* Writer.cpp.o in archive lib/liblldELF.a >> >>> *>>> defined at* SyntheticSections.cpp:673 >> >>> >> >>> (/home/buildslave/buildslave/clang-cmake-aarch64-39vma/llvm/ >> tools/lld/ELF/SyntheticSections.cpp:673) >> >>> *>>>* SyntheticSections.cpp.o in archive lib/liblldELF.a >> >>> >> >>> >> >> >> >> >> >> -- >> >> Jon Roelofs >> >> jonathan at codesourcery.com >> >> CodeSourcery / Mentor Embedded >> > >> > >> > >> > _______________________________________________ >> > LLVM Developers mailing list >> > llvm-dev at lists.llvm.org >> > http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev >> > >> > >-------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20170331/317ecd4c/attachment.html>