On Wed, Mar 04, 2015 at 10:47:28PM +0100, Julien Puydt wrote:
> >block that is put somewhere appropriate.
> 
> *They* won't do anything, but *I* am trying to wrap my head between
> what they already have, and what they should have -- I must admit
> I'm quite unfamiliar with setjmp/longjmp.



> Let's see if I'm starting to get it ; in their code to setup error
> handling, they should :
> (1) have something like:
> if (setjmp(&iferr_env)) {
> 
>   GEN E = pari_err_last ();
> 
>   /* the code of their cb_pari_err_handle implementation,
>    * whose argument is precisely a GEN, and E[1] has the error
>    * number, so it's possible to decide to raise a python exception
>    * or resize the stack */
> 
>   pari_err(0, err); /* <- no infinite loop? */

You would need to set iferr_env=NULL for pari_err(0, err); to work.
But this is not what you want to do: instead just call
cb_pari_err_recover which does not return.

Cheers,
-- 
Bill. <ballo...@debian.org>

Imagine a large red swirl here. 


-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org

Reply via email to