The test/tools/gold/X86/comdat.ll regression test fails with binutils-2.30-13.fc29.x86_64 installed, but passes with binutils-2.29-13.fc27.x86_64.
Created attachment 1411580 [details] Test Input 1
Created attachment 1411581 [details] Test Input 2
Created attachment 1411582 [details] Test script
To reproduce this issue on rawhide: dnf install llvm binutils bash build.sh If the test executes correctly, then the f1 symbol should be marked STV_PROTECT, and the script should output a symbol entry that looks like: Symbol { Name: f1 (113) Value: 0x4D0 Size: 6 Binding: Weak (0x2) Type: Function (0x2) Other [ (0x3) STV_PROTECTED (0x3) ] Section: .text (0x5) } However, with binutils-2.30 the symbol is not marked STV_PROTECT and the symbol entry looks like: Symbol { Name: f1 (135) Value: 0x5B0 Size: 6 Binding: Weak (0x2) Type: Function (0x2) Other: 0 Section: .text (0x8) }
(In reply to Tom Stellard from comment #3) Hi Tom, This is just a quick note to sat that this problem appears to be specific to the gold linker. If you use ld.bfd then the problem goes away. I will file a bug report with the FSF binutils bugzilla system and see if that produces any results. Cheers Nick
Bug report submitted upstream: https://sourceware.org/bugzilla/show_bug.cgi?id=22994
(In reply to Nick Clifton from comment #6) > Bug report submitted upstream: > > https://sourceware.org/bugzilla/show_bug.cgi?id=22994 This issue was previously reported too: http://sourceware.org/bugzilla/show_bug.cgi?id=22868
Hi Tom, Thanks - I have imported the patch from 22868. Please try: binutils-2.30-14.fc29 and let me know if there are any more problems. Cheers Nick
Confirmed the failures are fixed in llvm-6.0.0-11.fc29 whith binutils-2.30-14.fc29.