Larry Wall |Perl 6| wrote:
No, just the new exception, which merely has to contain the old
unhandled exceptions somehow in case the user wants more information.

OK, so it's more like the "inner exception" in Microsoft's .NET framework. My C++ exceptions have always had the ability to record multiple "stanzas" of information, to re-throw and update the picky details with context-specific interpretation. It sounds like what you want is that if there is a pending unhandled exception in dynamic scope, then 'die' or the fresh Exception object's constructor will automatically pick that up as the inner exception.

By the way, I'd like to see a user interface where the outer exception
is the one printed out in simple form, with the complete "cockpit
recorder" dump of information going into a file that is browser
accessible with a click on a link in the error message to "more info".


I did that about fifteen years ago. The dialog box had a drop-down to show all the layers of information, and also a save button. The format predates XML though, and was designed for high-speed and failsafe logging, so it used control characters instead of XML-like tags.


Reply via email to