www.digitalmars.com Home | Search | D | Comments
Last update Fri Apr 28 00:07:45 2006
D
Language
Phobos
Comparisons

· Overview
· D for Win32
· Win32 DLLs in D
· C .h to D Modules
· FAQ
· Style Guide
· Example: wc
· Future
· D Change Log
· Tech Tips
· Rationale
· Warnings

Articles
· Exception Safety
· Templates Revisited

Tools
· DMD D Compiler
· GDC D Compiler
· Linker
· Profiler
· Code Coverage
· DMD Script Shell
· Windows Debugger

Community
· News
· Forum
· Announcements
· Learn
· D links

Archives
· digitalmars.D
· digitalmars.D.dtl
· digitalmars.D.announce
· digitalmars.D.dwt
· digitalmars.D.learn
· digitalmars.D.bugs
· D.gnu
· Old D

Appendices
· Glossary
· Ascii Table
· Acknowledgements

Debugging D on Windows

The Microsoft Windows debugger \dmd\bin\windbg.exe can be used to symbolically debug D programs, even though it is a C++ debugger. Versions of windbg.exe other than the one supplied may not work with D.

To prepare a program for symbolic debugging, compile with the -g switch:

dmd myprogram -g

To invoke the debugger on it:

windbg myprogram args...

where args... are the command line arguments to myprogram.exe.

When the debugger comes up, entering the command in the command window:

g _Dmain

will execute the program up until the entry into main(). From thence, pressing the F10 key will single step each line of code.

Basic Commands:

F5
Go until breakpoint, an exception is thrown, or the end of the program.
F7
Continue until cursor.
F8
Single step, stepping into function calls.
F10
Single step, stepping over function calls.

For more comprehensive information on windbg, consult the file \dmd\bin\windbg.hlp .