[llvm-bugs] [Bug 46469] New: All Qt apps are silently built inoperable when compiled with clang using LTO ("signal not found")

via llvm-bugs llvm-bugs at lists.llvm.org
Fri Jun 26 11:14:55 PDT 2020


https://bugs.llvm.org/show_bug.cgi?id=46469

            Bug ID: 46469
           Summary: All Qt apps are silently built inoperable when
                    compiled with clang using LTO ("signal not found")
           Product: clang
           Version: 10.0
          Hardware: PC
                OS: Linux
            Status: NEW
          Severity: normal
          Priority: P
         Component: C++
          Assignee: unassignedclangbugs at nondot.org
          Reporter: virtuousfox at gmail.com
                CC: blitzrakete at gmail.com, dgregor at apple.com,
                    erik.pilkington at gmail.com, llvm-bugs at lists.llvm.org,
                    richard-llvm at metafoo.co.uk

I've noticed that all packages that use Qt and that I tried to build with clang
using LTO were unable to draw their GUI at all or got stuck after creating a
window. Apparently, it's a known old… "feature" for which I failed to find a
report here.

https://www.reddit.com/r/cpp_questions/comments/82jpz5/qt5_signal_broken_by_lto/
https://bugreports.qt.io/browse/QTBUG-43556
https://bugreports.qt.io/browse/QTBUG-61710
https://github.com/InBetweenNames/gentooLTO/issues/444

So, Qt guys refuse to change anything and say that their code is correct and
allege that clang guys say the same. However, building broken binaries without
erroring-out is definitively not OK. If Qt code is truly correct it would be
nice for clang to avoid misoptimising it or, if clang code is correct, detect
such usage and skip optimising it. Or, again, at least erroring-out. What if
entire distribution would be built with clang with LTO by default ?

-- 
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-bugs/attachments/20200626/88973140/attachment.html>


More information about the llvm-bugs mailing list