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. <[email protected]>
Imagine a large red swirl here.
--
To UNSUBSCRIBE, email to [email protected]
with a subject of "unsubscribe". Trouble? Contact [email protected]