Iwao KIMURA on Wed, 11 Sep 2002 04:28:19 +0900 (JST)


[Date Prev] [Date Next] [Thread Prev] [Thread Next] [Date Index] [Thread Index]

error recovery (was Re: gp: series bug)


Hi Pari developers,

From: Ilya Zakharevich <ilya@Math.Berkeley.EDU>
Subject: Re: gp: series bug
Date: Sun, 8 Sep 2002 14:41:07 -0700

> This is a long-standing defect in the error-recovery system.
> 
>   0) It is not documented how to do error-recovery;

BTW, does anybody tell me how to do error-recovery ?
The way I took (and am taking) is
(0) define the function
void
pariErrdie(void)
{
  longjmp (buf, 1); /* jmp_buf buf is declared somewhere globally */
  return;
}

(1) In the eary stage (after calling pari_init()), we put
pariErr->die = pariErrdie;

(2) Every time I want to call Pari library function, 

    ltop = avma;
    if (!setjmp (buf))
      {
        /* call Pari library function */
	parifunc (some, args, here);
      } else {
       /* clear up */
       avma = ltop;
     }

Regards

	;#	Iwao KIMURA			;#
	;#	Faculty. Math, Dept. of Sciece	;#
	;#	Toyama University, Toyama Japan	;#