<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 - ELF dependent-library specifier to itself in an object file causes LLD to hang"
   href="https://bugs.llvm.org/show_bug.cgi?id=42460">42460</a>
          </td>
        </tr>

        <tr>
          <th>Summary</th>
          <td>ELF dependent-library specifier to itself in an object file causes LLD to hang
          </td>
        </tr>

        <tr>
          <th>Product</th>
          <td>lld
          </td>
        </tr>

        <tr>
          <th>Version</th>
          <td>unspecified
          </td>
        </tr>

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

        <tr>
          <th>OS</th>
          <td>All
          </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>ELF
          </td>
        </tr>

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

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

        <tr>
          <th>CC</th>
          <td>llvm-bugs@lists.llvm.org, peter.smith@linaro.org
          </td>
        </tr></table>
      <p>
        <div>
        <pre>In the upstream review for ELF dependent-libraries it was decided that we only
need to support libraries being specified to LLD via the dependent-libraries
metadata and not object files. However, to keep the implementation simple, the
upstream code does allow object files to be specified.

The simplest problem is: if an object file has a dependent-library specifier to
itself the linker will loop forever (assuming that it does not fail with e.g.
multiply defined symbol errors). More generally, the linker will never finish
if there is a loop of dependent library specifiers in a set of object files(and
again that linking those object files multiple times does not cause the link to
fail for another reason).

I think this extremely unlikely to occur in real use cases as in normal use
linking the same object file twice will cause a linking error.</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>