<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 - lld sometimes fails with VC++ /Zi builds"
   href="https://bugs.llvm.org/show_bug.cgi?id=37020">37020</a>
          </td>
        </tr>

        <tr>
          <th>Summary</th>
          <td>lld sometimes fails with VC++ /Zi builds
          </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>Windows NT
          </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>COFF
          </td>
        </tr>

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

        <tr>
          <th>Reporter</th>
          <td>brucedawson@chromium.org
          </td>
        </tr>

        <tr>
          <th>CC</th>
          <td>llvm-bugs@lists.llvm.org
          </td>
        </tr></table>
      <p>
        <div>
        <pre>Sometimes when linking VC++ builds of Chrome with lld there is a fatal
assertion failure. The repro is fairly simple:

<span class="quote">> gn gen out\test --args="use_lld=true is_clang=false is_component_build=true"
> ninja.exe -C out\test base</span >
c:/src/depot_tools/win_tools-2_7_6_bin/python/bin/python.exe
../../build/toolchain/win/tool_wrapper.py link-wrapper environment.x64 False
../../third_party/llvm-build/Release+Asserts/bin/lld-link.exe /nologo
/IMPLIB:./base.dll.lib /DLL /OUT:./base.dll /PDB:./base.dll.pdb @./base.dll.rsp
Assertion failed: Indices.size() == 2, file
C:\b\rr\tmp7g7qqx\w\src\third_party\llvm\tools\lld\COFF\PDB.cpp, line 536
Wrote crash dump file "d:\dumps\lld-link.exe.153776.dmp"

This was tested from Chromium commit hash
e4518558818681e014f819330f8cc9655a616769. This bug is a 100% repro. The call
stack is:

00 lld_link!HandleAbort
01 lld_link!raise
02 lld_link!abort
03 lld_link!common_assert_to_stderr<wchar_t>
04 lld_link!common_assert
05 lld_link!_wassert
06 lld_link!translateIdSymbols
07 lld_link!mergeSymbolRecords::<unnamed-tag>::operator()
08 lld_link!llvm::codeview::forEachCodeViewRecord
09 lld_link!mergeSymbolRecords
0a lld_link!`anonymous namespace'::PDBLinker::addObjFile
0b lld_link!`anonymous namespace'::PDBLinker::addObjectsToPDB
0c lld_link!lld::coff::createPDB
0d lld_link!`anonymous namespace'::Writer::run
0e lld_link!lld::coff::writeResult
0f lld_link!lld::coff::LinkerDriver::link
10 lld_link!lld::coff::link
11 lld_link!main
12 lld_link!invoke_main
13 lld_link!__scrt_common_main_seh
14 kernel32!BaseThreadInitThunk
15 ntdll!RtlUserThreadStart</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>