microsoft / ConcordExtensibilitySamples

Visual Studio Debug Engine Extensibility Samples
Other
122 stars 50 forks source link

Exception information "view details" #20

Closed carlokok closed 8 years ago

carlokok commented 8 years ago

One thing that seems to be lost when using the concord api (and can also be seen in the iris sample by adding this to the entry point (just to trigger one):

movesMade := 0;
movesMade := movesMade / movesMade;

is the lack of "view details" when having an exception: image

When using the C# debugger there's an extra "View Details"

(and I think the locals don't show the exception info either)

gregg-miskelly commented 8 years ago

From what I recall - the exception assistant dialog doesn't have an extensibility story. From my recollection it checks if the language is C# and if so sends down some C# expressions, or if VB sends down some VB expressions. But the design of is honestly not what we would do (it was built by another team).

For Visual Studio vNext we are working on replacing the exception assistant. So if there are particular things you would like to see (other than not hard coding expressions :)), let us know.

carlokok commented 8 years ago

Ah! that would explain that part! Is there a way to get the current exception though so that locals shows $Exception (or equivalent)?

gregg-miskelly commented 8 years ago

Yes. @pnelsonmsft what is the recommended way of supporting $exception?

plnelson commented 8 years ago

I created a new documentation page here. There's a TODO in the Iris sample for this, but it will require a bunch of changes to the compiler so it can handle "unsupported" types like System.Exception. Maybe on some long weekend I'll have time to add this to the Iris sample - unless someone beats me to it :-)

carlokok commented 8 years ago

Thanks! this helps a lot!

plnelson commented 8 years ago

The original issue is about the Exception Assistant. The Exception Assistant is part of the debugger UI and not the debug engine so I'm closing this issue.

We are working on replacing the Exception Assistant experience. If you have suggestions for improving it, don't hesitate to send them to us. :-)