Honestly, with proper support for debug info, this kind of change is pretty meaningless to me on the *nix side. For any program seg fault, either dump a core and examine, or rerun in a debugger.

Any environment or toolchain which doesn't allow that really shouldn't be used.

Sent from my iPhone

On May 1, 2010, at 8:55 AM, Andrei Alexandrescu <[email protected]> wrote:

Since we've been looking into this now and we have a solution in our collective mental caches, is there please a chance to effect this change for this beta? I'm telling you, it is an _important_ step forward in unittesting D programs.

Thanks!

Andrei

On 05/01/2010 01:19 AM, Sean Kelly wrote:
On Apr 30, 2010, at 1:40 PM, Steve Schveighoffer wrote:

----- Original Message ----
From: Sean Kelly<[email protected]>

On Apr 28, 2010, at 1:25 PM, Andrei Alexandrescu wrote:
It's not hard to write a segfault handler that
does this, but it involves doing technically illegal stuff in a signal handler (either IO or throwing an exception) so I don't want to make it a built-in
feature.

syscalls are always legal because syscalls exit when signals occur (technically, they aren't even calls, they are software interrupts). In other words, printf is illegal, write is not.

I think it's a bit more restrictive than that, but you're right. If it helps, the list of signal-safe functions I use for reference is here:

http://www.opengroup.org/onlinepubs/009695399/functions/xsh_chap02_04.html
_______________________________________________
dmd-internals mailing list
[email protected]
http://lists.puremagic.com/mailman/listinfo/dmd-internals
_______________________________________________
dmd-internals mailing list
[email protected]
http://lists.puremagic.com/mailman/listinfo/dmd-internals
_______________________________________________
dmd-internals mailing list
[email protected]
http://lists.puremagic.com/mailman/listinfo/dmd-internals

Reply via email to