The debugger inside Visual Studio is language-agnostic. We have integrated support for our X# language, allowing you to view variables with X#-specific types in the locals and autos windows, and enter expressions for breakpoint conditions, in the watch window and the intermediate window in X# (e.g., using case-insensitive expressions).
The debugger expression evaluator (that's how this is called) is powered by the full X# compiler.
We have added an options page to Visual Studio from where you can control how the X# debugger Expression evaluator parses and compiles expressions.
Normally, the debugger uses the settings defined in the main application.
However, if the startup application is not an X# application, then the settings from this dialog are applied.
The first two options always work.
When your application uses late binding and you see problems with late binding in the debugger, you can disable it from this dialog.