Le 14/03/2012 21:07, Vladimir Panteleev a écrit :
On Wednesday, 14 March 2012 at 19:48:28 UTC, deadalnix wrote:
Le 14/03/2012 18:28, Vladimir Panteleev a écrit :
On Wednesday, 14 March 2012 at 17:18:06 UTC, deadalnix wrote:
Le 14/03/2012 18:00, Vladimir Panteleev a écrit :
On Wednesday, 14 March 2012 at 16:37:45 UTC, deadalnix wrote:
Le 14/03/2012 17:08, Vladimir Panteleev a écrit :
On Wednesday, 14 March 2012 at 11:11:54 UTC, deadalnix wrote:
You are loosing EAX in the process.

When would this matter? EAX is a scratch register per ABIs, no?

You may want to return from the function the standard way an resume
operations. To implement a moving GC using page protection for
example.

This doesn't have anything to do with turning signals into exceptions.

No but this does, make sense to catch segfault and act according to it
to implement such a functionality. This is a very close problem.

You can't resume D exceptions.

I'm not talking about Exception anymore. In case of Exception, this
isn't a problem, but in case of regular return, this is.

I don't understand how any of your posts are related to this thread at all.

This thread is about turning SIGSEGV into an exception that 1) you can
catch 2) will print a stack trace when uncaught. You've brought in stack
overflows, moving garbage collectors, etc. I assure you, we are
well-aware of the problems when using this exact code for other purposes.

The topic is *Turning a SIGSEGV into a regular function call under Linux, allowing throw*, not only Exception. I don't understand what is the problem here ? Can't we talk about how we could keep trash register clean in case we don't throw - this doesn't make much sense if we throw anyway - ?

What your are mentioning here is already done. Nothing to discuss about that. This is why I try to jump into the next topic : how can we do more than just throwing.

Reply via email to