<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 - Cannot view local variables in WinDbg with LLD generated PDB"
   href="https://bugs.llvm.org/show_bug.cgi?id=34049">34049</a>
          </td>
        </tr>

        <tr>
          <th>Summary</th>
          <td>Cannot view local variables in WinDbg with LLD generated PDB
          </td>
        </tr>

        <tr>
          <th>Product</th>
          <td>libraries
          </td>
        </tr>

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

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

        <tr>
          <th>Component</th>
          <td>DebugInfo
          </td>
        </tr>

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

        <tr>
          <th>Reporter</th>
          <td>zturner@google.com
          </td>
        </tr>

        <tr>
          <th>CC</th>
          <td>llvm-bugs@lists.llvm.org
          </td>
        </tr></table>
      <p>
        <div>
        <pre>#include <iostream>

struct HelloPoint {
  int X;
  int Y;
  int Z;
};

int main(int argc, char **argv) {
  HelloPoint P;
  P.X = 3;
  P.Y = 4;
  P.Z = 5;
  std::cout << "Hello, world " << P.X << "!\n";
  return 0;
}

compile and link as:
<span class="quote">> clang-cl /c /Z7 hello.cpp
> lld-link.exe /debug hello.obj</span >

Open under WinDbg, run "uf main", and set a breakpoint on the address of the
return statement.  When the breakpoint gets hit, type "dv P" which should
display the variable P.  Instead you get this error:

0:000:x86> dv P
Unable to enumerate locals, Win32 error 0n87
Private symbols (symbols.pri) are required for locals.
Type ".hh dbgerr005" for details.

Obviously we have private symbols, so this is more an issue of our symbol
stream probably having something wrong with it.</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>