std library hooks

Manu turkeyman at gmail.com
Sat Apr 14 03:49:48 PDT 2012


On 14 April 2012 00:16, Sean Kelly <sean at invisibleduck.org> wrote:

> On Apr 13, 2012, at 12:28 PM, Jacob Carlborg <doob at me.com> wrote:
>
> > On 2012-04-13 17:26, Sean Kelly wrote:
> >> Because no one used it. Sounds like I may need to un-deprecate it for
> 2.060.
> >
> > Yes, please. There are now several people that want to use it. But does
> the compiler handles this correctly? I think you previously mentioned
> something about this.
>
> DMD requires that you throw from the assert handler (at least when you
> compile with the -release flag or similar). That limitation is the other
> reason I deprecated the assert handler, but I imagine there are plenty of
> uses for it that exit with a throw.


Really? Are graceful asserts (ie, inner assert with an outer catch) used
throughout druntime and phobos?
I can still throw from my own handler I guess if that's a requirement, just
as long as I have the opportunity to write it to the log/output
window/pop-up message box etc before I do throw.
In my codebase, asserts are fatal anyway, so if it crashes just like the
default assert as soon as I throw, it doesn't matter anyway.. I just wanna
see what went wrong :)

I have a D DLL, loaded into a C app, if D throws, C doesn't seem to be able
to catch it and it just crashes without any useful messages. Maybe I'm
doing it wrong?
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.puremagic.com/pipermail/digitalmars-d/attachments/20120414/5cb2d3e6/attachment.html>


More information about the Digitalmars-d mailing list