Karim Belabas on Tue, 24 Feb 1998 15:16:47 +0100


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

patch 14


This patch addresses a problem reported by Guillaume Hanrot (in 2.0.6.alpha,
Linux (ix86 kernel)):

> ? numer() 
>   ***   obsolete function: numer()
>                            ^------
> For full compatibility with GP 1.39.15, type "default(compatible,3)"
> (you can also set "compatible = 3" in your .gprc)
> 
>  ***   segmentation fault: bug in GP (please report).


  This is not a fatal bug (an error was being raised anyway), but rather
annoying. It was introduced in the current update (whatnow() launched
automatically whenever the "obsolete function" exception is raised) and is
due to two arguments evaluated in the "wrong" order by the compiler.

  You don't need to apply this patch if the above works on your system (it
worked on the (many) ones I tested it upon, of course...).

Sorry about that,

   Karim.

P.S: And to say that I ranted in the manual about
 
  ltop=avma; garbage();
  return gerepile(ltop, avma, anything())

"[being] frowned upon: exactly when avma is evaluated is compiler dependant"...


========================= patch 14 (2.0.6.alpha) ============================

*** src/language/init.c.orig	Sun Feb 22 19:01:04 1998
--- src/language/init.c	Tue Feb 24 14:56:52 1998
***************
*** 657,664 ****
        {
          pariputs("For full compatibility with GP 1.39.15, type \"default(compatible,3)\"\n");
          pariputs("(you can also set \"compatible = 3\" in your .gprc)\n\n");
!         term_color(c_NONE);
!         whatnow_fun(va_arg(poer,char *), - va_arg(poer,int));
        }
        break;
  /* no context for these */
--- 657,664 ----
        {
          pariputs("For full compatibility with GP 1.39.15, type \"default(compatible,3)\"\n");
          pariputs("(you can also set \"compatible = 3\" in your .gprc)\n\n");
!         term_color(c_NONE); ch1 = va_arg(poer,char *);
!         whatnow_fun(ch1, - va_arg(poer,int));
        }
        break;
  /* no context for these */
--
Karim Belabas                          e-mail:
Max-Planck-Institut fuer Mathematik       karim@mpim-bonn.mpg.de
Gottfried-Claren-Str. 26               tel:
53225 Bonn (Germany)                      (00 49 228) 402-245