You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Natvis1 is a framework to support programmer-defined type formatting when debugging. It's similar to the GDB/LLDB pretty printers in tools except that the files are embedded into PDBs as-is instead of relying on having the scripts available. Support is shared across all the Microsoft debugging tools (WinDbg, Visual Studio + Code).
For an example: Rust projects built in Debug mode contain these definitions in the resulting PDB.
Some things to consider:
The files are XML, but they aren't validated at link time (tested using msvc link and clang-cl).
The type names may shift around due to Zig using one compilation unit. It seems the stdlib types stick to std..
Adds the ability to include Natvis[1] files into a module's PDB using
`Compile.addObjectFile`. This is eventually passed to the linker via the
`-NATVIS:[file]` flag.
Fixes: ziglang#19646
Natvis1 is a framework to support programmer-defined type formatting when debugging. It's similar to the GDB/LLDB pretty printers in tools except that the files are embedded into PDBs as-is instead of relying on having the scripts available. Support is shared across all the Microsoft debugging tools (WinDbg, Visual Studio + Code).
For an example: Rust projects built in Debug mode contain these definitions in the resulting PDB.
Some things to consider:
link
and clang-cl).std.
.Footnotes
Create custom views of C++ objects in the debugger using the Natvis framework ↩
The text was updated successfully, but these errors were encountered: