<html>
    <head>
      <base href="https://bugs.llvm.org/">
    </head>
    <body><span class="vcard"><a class="email" href="mailto:nicolasweber@gmx.de" title="Nico Weber <nicolasweber@gmx.de>"> <span class="fn">Nico Weber</span></a>
</span> changed
          <a class="bz_bug_link 
          bz_status_RESOLVED  bz_closed"
   title="RESOLVED FIXED - clang-cl and libc++ produce PDBs that confuse windbg / cdb, prints "<unknown base type NNN>""
   href="https://bugs.llvm.org/show_bug.cgi?id=41451">bug 41451</a>
          <br>
             <table border="1" cellspacing="0" cellpadding="8">
          <tr>
            <th>What</th>
            <th>Removed</th>
            <th>Added</th>
          </tr>

         <tr>
           <td style="text-align:right;">Resolution</td>
           <td>---
           </td>
           <td>FIXED
           </td>
         </tr>

         <tr>
           <td style="text-align:right;">Status</td>
           <td>NEW
           </td>
           <td>RESOLVED
           </td>
         </tr></table>
      <p>
        <div>
            <b><a class="bz_bug_link 
          bz_status_RESOLVED  bz_closed"
   title="RESOLVED FIXED - clang-cl and libc++ produce PDBs that confuse windbg / cdb, prints "<unknown base type NNN>""
   href="https://bugs.llvm.org/show_bug.cgi?id=41451#c2">Comment # 2</a>
              on <a class="bz_bug_link 
          bz_status_RESOLVED  bz_closed"
   title="RESOLVED FIXED - clang-cl and libc++ produce PDBs that confuse windbg / cdb, prints "<unknown base type NNN>""
   href="https://bugs.llvm.org/show_bug.cgi?id=41451">bug 41451</a>
              from <span class="vcard"><a class="email" href="mailto:nicolasweber@gmx.de" title="Nico Weber <nicolasweber@gmx.de>"> <span class="fn">Nico Weber</span></a>
</span></b>
        <pre>To get libc++.dll, I ran

<span class="quote">>ninja -C out\gn libcxx</span >

in a chrome checkout, with empty args.gn. Then copied:

C:\src\chrome\src>cdb -c "bp `test.cc:6`; g; dv; q" test.exe

C:\src\chrome\src>copy "out\gn\libc++.dll" .
        1 file(s) copied.

C:\src\chrome\src>copy "out\gn\libc++.dll.lib" .
        1 file(s) copied.

C:\src\chrome\src>copy "out\gn\libc++.dll.pdb" .
        1 file(s) copied.

New libc++ needs an additional define:

C:\src\chrome\src>"third_party\llvm-build\Release+Asserts\bin\clang-cl.exe"
test.cc /I "buildtools\third_party\libc++\trunk\include" -D_LIBCPP_NO_AUTO_LINK
-D_LIBCPP_ABI_UNSTABLE libc++.dll.lib /Zi
/D_LIBCPP_HAS_NO_VENDOR_AVAILABILITY_ANNOTATIONS




C:\src\chrome\src>cdb -c "bp `test.cc:6`; g; dv; q" test.exe

Microsoft (R) Windows Debugger Version 10.0.17763.1 AMD64
Copyright (c) Microsoft Corporation. All rights reserved.

CommandLine: test.exe
Symbol search path is: srv*
Executable search path is:
ModLoad: 00007ff6`07410000 00007ff6`074a0000   test.exe
ModLoad: 00007ff9`399e0000 00007ff9`39bd0000   ntdll.dll
ModLoad: 00007ff9`38970000 00007ff9`38a22000   C:\WINDOWS\System32\KERNEL32.DLL
ModLoad: 00007ff9`36d90000 00007ff9`37035000  
C:\WINDOWS\System32\KERNELBASE.dll
ModLoad: 00007ff9`12070000 00007ff9`12181000   C:\src\chrome\src\libc++.dll
ModLoad: 00007ff9`2cb60000 00007ff9`2cb8a000  
C:\WINDOWS\SYSTEM32\VCRUNTIME140D.dll
ModLoad: 00007ff9`02330000 00007ff9`024f3000  
C:\WINDOWS\SYSTEM32\ucrtbased.dll
ModLoad: 00007ff9`18d50000 00007ff9`18e37000  
C:\WINDOWS\SYSTEM32\MSVCP140D.dll
ModLoad: 00007ff9`2e200000 00007ff9`2e20f000  
C:\WINDOWS\SYSTEM32\VCRUNTIME140_1D.dll
(2b50.5d5c): Break instruction exception - code 80000003 (first chance)
ntdll!LdrpDoDebuggerBreak+0x30:
00007ff9`39ab0fac cc              int     3
0:000> cdb: Reading initial command 'bp `test.cc:6`; g; dv; q'
WARNING: Line information loading disabled
*** WARNING: Unable to verify checksum for test.exe
Breakpoint 0 hit
              s = class
std::__1::basic_string<char,std::char_traits<char>,std::allocator<char> >
             s2 = class
std::__1::basic_string<char,std::char_traits<char>,std::allocator<char> >
quit:
NatVis script unloaded from 'C:\Program Files (x86)\Windows
Kits\10\Debuggers\x64\Visualizers\atlmfc.natvis'
NatVis script unloaded from 'C:\Program Files (x86)\Windows
Kits\10\Debuggers\x64\Visualizers\concurrency.natvis'
NatVis script unloaded from 'C:\Program Files (x86)\Windows
Kits\10\Debuggers\x64\Visualizers\cpp_rest.natvis'
NatVis script unloaded from 'C:\Program Files (x86)\Windows
Kits\10\Debuggers\x64\Visualizers\stl.natvis'
NatVis script unloaded from 'C:\Program Files (x86)\Windows
Kits\10\Debuggers\x64\Visualizers\Windows.Data.Json.natvis'
NatVis script unloaded from 'C:\Program Files (x86)\Windows
Kits\10\Debuggers\x64\Visualizers\Windows.Devices.Geolocation.natvis'
NatVis script unloaded from 'C:\Program Files (x86)\Windows
Kits\10\Debuggers\x64\Visualizers\Windows.Devices.Sensors.natvis'
NatVis script unloaded from 'C:\Program Files (x86)\Windows
Kits\10\Debuggers\x64\Visualizers\Windows.Media.natvis'
NatVis script unloaded from 'C:\Program Files (x86)\Windows
Kits\10\Debuggers\x64\Visualizers\windows.natvis'
NatVis script unloaded from 'C:\Program Files (x86)\Windows
Kits\10\Debuggers\x64\Visualizers\winrt.natvis'



Looks like this is no longer a problem \o/</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>