We recommend using Visual Studio 2017

Language Service Support for Debugging


The new home for Visual Studio documentation is Visual Studio 2017 Documentation on docs.microsoft.com.

The latest version of this topic can be found at Language Service Support for Debugging.

A language service can provide features that support a debugger through the IVsLanguageDebugInfo interface. These features include validating breakpoints and supplying a list of expressions to the Autos window.

However, you need to have an expression evaluator to debug your language. The expression evaluator is responsible for evaluating expressions to produce values while debugging. For information about implementing CLR expression evaluators, please see:

The type of compiler determines what you need to do to implement debugging for your language. If your compiler targets the Windows operating system and writes a .pdb file, you can debug programs with the native code debugging engine that is integrated into Visual Studio. If your compiler produces Microsoft intermediate language (MSIL), you can debug programs with the managed code debugging engine, which is also integrated into Visual Studio. If your compiler targets a proprietary operating system or a different runtime environment, you need to write your own debugging engine.

For more information on implementing debugging for your language, see Getting Started in the Visual Studio Debugging SDK.