<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 - clang/llvm revision 325569 and newer are unable to build Firefox, with "test-ctors.so: terminate called after throwing an instance of 'std::runtime_error'" and then " what(): Unsupported relocation type""
   href="https://bugs.llvm.org/show_bug.cgi?id=36470">36470</a>
          </td>
        </tr>

        <tr>
          <th>Summary</th>
          <td>clang/llvm revision 325569 and newer are unable to build Firefox, with "test-ctors.so: terminate called after throwing an instance of 'std::runtime_error'" and then " what():  Unsupported relocation type"
          </td>
        </tr>

        <tr>
          <th>Product</th>
          <td>new-bugs
          </td>
        </tr>

        <tr>
          <th>Version</th>
          <td>trunk
          </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>enhancement
          </td>
        </tr>

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

        <tr>
          <th>Component</th>
          <td>new bugs
          </td>
        </tr>

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

        <tr>
          <th>Reporter</th>
          <td>dholbert@mozilla.com
          </td>
        </tr>

        <tr>
          <th>CC</th>
          <td>grimar@accesssoftek.com, llvm-bugs@lists.llvm.org, mh+llvm@glandium.org, sylvestre@debian.org
          </td>
        </tr></table>
      <p>
        <div>
        <pre>I build Firefox with clang trunk (which I build locally ~weekly), and I noticed
today that I got a build failure with the newest clang trunk.

Specifically:
 llvm revision 325568 builds Firefox fine
 llvm revision 325569 hits a build error

So I believe this is a regression from grimar's <a href="https://reviews.llvm.org/D43383">https://reviews.llvm.org/D43383</a>

The build error is in the "elfhack" stage of the build, and my output looks
like this:

 4:21.16 === If you get failures below, please file a bug describing the error
 4:21.16 === and your environment (compiler and linker versions), and
 4:21.16 === provide the pre-elfhacked library as an attachment.
 4:21.16 === Use --disable-elf-hack until this is fixed.
 4:21.16 ===
 4:21.17  0x000000000000000c (INIT)               0x4060
 4:21.17 test-ctors.so: terminate called after throwing an instance of
'std::runtime_error'
 4:21.17   what():  Unsupported relocation type
 4:21.22 Makefile:17: recipe for target 'test-array.so' failed
 4:21.22 make[4]: *** [test-array.so] Aborted (core dumped)
 4:21.22 make[4]: *** Waiting for unfinished jobs....
 4:21.28 Makefile:17: recipe for target 'test-ctors.so' failed
 4:21.28 make[4]: *** [test-ctors.so] Aborted (core dumped)
 4:21.28 /scratch/work/builds/mozilla-inbound/mozilla/config/recurse.mk:100:
recipe for target 'build/unix/elfhack/libs' failed
 4:21.28 make[3]: *** [build/unix/elfhack/libs] Error 2
 4:21.28 /scratch/work/builds/mozilla-inbound/mozilla/config/recurse.mk:32:
recipe for target 'libs' failed
 4:21.28 make[2]: *** [libs] Error 2
 4:21.28 /scratch/work/builds/mozilla-inbound/mozilla/config/rules.mk:434:
recipe for target 'default' failed
 4:21.28 make[1]: *** [default] Error 2
 4:21.28 client.mk:168: recipe for target 'build' failed
 4:21.28 make: *** [build] Error 2


The "Aborted (core dumped)" there looks like it's saying the compiler crashed,
I think....</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>