<html>
    <head>
      <base href="https://bugs.llvm.org/">
    </head>
    <body><table border="1" cellspacing="0" cellpadding="8">
        <tr>
          <th>Bug ID</th>
          <td><a class="bz_bug_link 
          bz_status_NEW "
   title="NEW - All Qt apps are silently built inoperable when compiled with clang using LTO ("signal not found")"
   href="https://bugs.llvm.org/show_bug.cgi?id=46469">46469</a>
          </td>
        </tr>

        <tr>
          <th>Summary</th>
          <td>All Qt apps are silently built inoperable when compiled with clang using LTO ("signal not found")
          </td>
        </tr>

        <tr>
          <th>Product</th>
          <td>clang
          </td>
        </tr>

        <tr>
          <th>Version</th>
          <td>10.0
          </td>
        </tr>

        <tr>
          <th>Hardware</th>
          <td>PC
          </td>
        </tr>

        <tr>
          <th>OS</th>
          <td>Linux
          </td>
        </tr>

        <tr>
          <th>Status</th>
          <td>NEW
          </td>
        </tr>

        <tr>
          <th>Severity</th>
          <td>normal
          </td>
        </tr>

        <tr>
          <th>Priority</th>
          <td>P
          </td>
        </tr>

        <tr>
          <th>Component</th>
          <td>C++
          </td>
        </tr>

        <tr>
          <th>Assignee</th>
          <td>unassignedclangbugs@nondot.org
          </td>
        </tr>

        <tr>
          <th>Reporter</th>
          <td>virtuousfox@gmail.com
          </td>
        </tr>

        <tr>
          <th>CC</th>
          <td>blitzrakete@gmail.com, dgregor@apple.com, erik.pilkington@gmail.com, llvm-bugs@lists.llvm.org, richard-llvm@metafoo.co.uk
          </td>
        </tr></table>
      <p>
        <div>
        <pre>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.

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

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 ?</pre>
        </div>
      </p>


      <hr>
      <span>You are receiving this mail because:</span>

      <ul>
          <li>You are on the CC list for the bug.</li>
      </ul>
    </body>
</html>