[arch-commits] Commit in pari/repos (10 files)

Gaetan Bisson bisson at archlinux.org
Fri Feb 20 17:54:31 UTC 2015


    Date: Friday, February 20, 2015 @ 18:54:31
  Author: bisson
Revision: 128041

db-move: moved pari from [community-staging] to [community] (i686, x86_64)

Added:
  pari/repos/community-i686/PKGBUILD
    (from rev 128040, pari/repos/community-staging-i686/PKGBUILD)
  pari/repos/community-i686/err_handle.patch
    (from rev 128040, pari/repos/community-staging-i686/err_handle.patch)
  pari/repos/community-x86_64/PKGBUILD
    (from rev 128040, pari/repos/community-staging-x86_64/PKGBUILD)
  pari/repos/community-x86_64/err_handle.patch
    (from rev 128040, pari/repos/community-staging-x86_64/err_handle.patch)
Deleted:
  pari/repos/community-i686/PKGBUILD
  pari/repos/community-i686/err_handle.patch
  pari/repos/community-staging-i686/
  pari/repos/community-staging-x86_64/
  pari/repos/community-x86_64/PKGBUILD
  pari/repos/community-x86_64/err_handle.patch

-----------------------------------+
 /PKGBUILD                         |   90 +++++++++++++++
 /err_handle.patch                 |  210 ++++++++++++++++++++++++++++++++++++
 community-i686/PKGBUILD           |   45 -------
 community-i686/err_handle.patch   |  105 ------------------
 community-x86_64/PKGBUILD         |   45 -------
 community-x86_64/err_handle.patch |  105 ------------------
 6 files changed, 300 insertions(+), 300 deletions(-)

Deleted: community-i686/PKGBUILD
===================================================================
--- community-i686/PKGBUILD	2015-02-20 17:40:21 UTC (rev 128040)
+++ community-i686/PKGBUILD	2015-02-20 17:54:31 UTC (rev 128041)
@@ -1,45 +0,0 @@
-# $Id$
-# Maintainer: Gaetan Bisson <bisson at archlinux.org>
-
-pkgname=pari
-pkgver=2.7.2
-pkgrel=2
-pkgdesc='Computer algebra system designed for fast computations in number theory'
-url='http://pari.math.u-bordeaux.fr/'
-license=('GPL')
-arch=('i686' 'x86_64')
-depends=('gmp' 'readline' 'libx11')
-makedepends=('perl' 'texlive-core')
-optdepends=('perl: gphelp, tex2mail')
-source=("http://pari.math.u-bordeaux.fr/pub/pari/unix/${pkgname}-${pkgver}.tar.gz"
-        'err_handle.patch')
-sha1sums=('27ef49c39860055ff97608bc323bff2afda1aa51'
-          '182066ab765eddb0b7fd98b441c158304545f5ec')
-
-prepare() {
-	cd "${srcdir}/${pkgname}-${pkgver}"
-	sed 's/\$addlib64//g' -i config/get_libpth
-	patch -p1 -i ../err_handle.patch # sage-5.6 uses this¸ from upstream trunk
-}
-
-build() {
-	cd "${srcdir}/${pkgname}-${pkgver}"
-	./Configure \
-		--prefix=/usr \
-		--with-readline \
-		--mt=pthread \
-		--with-gmp \
-
-	make all
-}
-
-check() {
-	cd "${srcdir}/${pkgname}-${pkgver}"
-	make bench
-}
-
-package() {
-	cd "${srcdir}/${pkgname}-${pkgver}"
-	make DESTDIR="${pkgdir}" install
-	ln -sf gp.1.gz "${pkgdir}"/usr/share/man/man1/pari.1
-}

Copied: pari/repos/community-i686/PKGBUILD (from rev 128040, pari/repos/community-staging-i686/PKGBUILD)
===================================================================
--- community-i686/PKGBUILD	                        (rev 0)
+++ community-i686/PKGBUILD	2015-02-20 17:54:31 UTC (rev 128041)
@@ -0,0 +1,45 @@
+# $Id$
+# Maintainer: Gaetan Bisson <bisson at archlinux.org>
+
+pkgname=pari
+pkgver=2.7.3
+pkgrel=1
+pkgdesc='Computer algebra system designed for fast computations in number theory'
+url='http://pari.math.u-bordeaux.fr/'
+license=('GPL')
+arch=('i686' 'x86_64')
+depends=('gmp' 'readline' 'libx11')
+makedepends=('perl' 'texlive-core')
+optdepends=('perl: gphelp, tex2mail')
+source=("http://pari.math.u-bordeaux.fr/pub/pari/unix/${pkgname}-${pkgver}.tar.gz"
+        'err_handle.patch')
+sha1sums=('fa01d548839301958564a2bec39928ba3c9c9d39'
+          '182066ab765eddb0b7fd98b441c158304545f5ec')
+
+prepare() {
+	cd "${srcdir}/${pkgname}-${pkgver}"
+	sed 's/\$addlib64//g' -i config/get_libpth
+	patch -p1 -i ../err_handle.patch # sage-5.6 uses this¸ from upstream trunk
+}
+
+build() {
+	cd "${srcdir}/${pkgname}-${pkgver}"
+	./Configure \
+		--prefix=/usr \
+		--with-readline \
+		--mt=pthread \
+		--with-gmp \
+
+	make all
+}
+
+check() {
+	cd "${srcdir}/${pkgname}-${pkgver}"
+	make bench
+}
+
+package() {
+	cd "${srcdir}/${pkgname}-${pkgver}"
+	make DESTDIR="${pkgdir}" install
+	ln -sf gp.1.gz "${pkgdir}"/usr/share/man/man1/pari.1
+}

Deleted: community-i686/err_handle.patch
===================================================================
--- community-i686/err_handle.patch	2015-02-20 17:40:21 UTC (rev 128040)
+++ community-i686/err_handle.patch	2015-02-20 17:54:31 UTC (rev 128041)
@@ -1,105 +0,0 @@
-Add cb_pari_err_handle() callback
-
-Backported from upstream commits
-e9e659dc9ecb5ca6a8296c7922528a4ecbb89cb0
-26a7ae0f42918407febe9901ded41faf26ef43a6
-
-diff -ru src/src/headers/paricom.h b/src/headers/paricom.h
---- src/src/headers/paricom.h	2014-03-25 09:59:21.000000000 +0100
-+++ b/src/headers/paricom.h	2015-01-13 19:41:47.430885048 +0100
-@@ -81,6 +81,7 @@
- extern int  (*cb_pari_whatnow)(PariOUT *out, const char *, int);
- extern void (*cb_pari_sigint)(void);
- extern int (*cb_pari_handle_exception)(long);
-+extern int (*cb_pari_err_handle)(GEN);
- extern void (*cb_pari_pre_recover)(long);
- extern void (*cb_pari_err_recover)(long);
- extern const char *pari_library_path;
-diff -ru src/src/language/init.c b/src/language/init.c
---- src/src/language/init.c	2015-01-13 19:40:30.643622993 +0100
-+++ b/src/language/init.c	2015-01-13 19:41:47.431884833 +0100
-@@ -87,6 +87,7 @@
- 
- void (*cb_pari_ask_confirm)(const char *);
- int  (*cb_pari_handle_exception)(long);
-+int  (*cb_pari_err_handle)(GEN);
- int  (*cb_pari_whatnow)(PariOUT *out, const char *, int);
- void (*cb_pari_sigint)(void);
- void (*cb_pari_pre_recover)(long);
-@@ -732,6 +733,8 @@
- static void
- dflt_err_recover(long errnum) { (void) errnum; pari_exit(); }
- 
-+static int pari_err_display(GEN err);
-+
- /* initialize PARI data. Initialize [new|old]fun to NULL for default set. */
- void
- pari_init_opts(size_t parisize, ulong maxprime, ulong init_opts)
-@@ -739,6 +742,8 @@
-   ulong u;
- 
-   cb_pari_whatnow = NULL;
-+  cb_pari_handle_exception = NULL;
-+  cb_pari_err_handle = pari_err_display;
-   cb_pari_pre_recover = NULL;
-   cb_pari_sigint = dflt_sigint_fun;
-   if (init_opts&INIT_JMPm) cb_pari_err_recover = dflt_err_recover;
-@@ -887,9 +892,6 @@
-   evalstate_reset();
-   killallfiles();
-   pari_init_errcatch();
--  out_puts(pariErr, "\n");
--  pariErr->flush();
--
-   cb_pari_err_recover(numerr);
- }
- 
-@@ -1266,21 +1268,22 @@
-   return NULL; /*NOT REACHED*/
- }
- 
--static void
-+static int
- pari_err_display(GEN err)
- {
-   long numerr=err_get_num(err);
-+  err_init();
-   if (numerr==e_SYNTAX)
-   {
-     const char *msg = GSTR(gel(err,2));
-     const char *s     = (const char *) gmael(err,3,1);
-     const char *entry = (const char *) gmael(err,3,2);
-     print_errcontext(pariErr, msg, s, entry);
--    return;
-   }
-   else
-   {
-     char *s = pari_err2str(err);
-+    closure_err(0);
-     err_init_msg(numerr, e_USER);
-     pariErr->puts(s);
-     if (numerr==e_NOTFUNC)
-@@ -1295,6 +1298,8 @@
-     }
-     pari_free(s);
-   }
-+  out_term_color(pariErr, c_NONE);
-+  pariErr->flush(); return 0;
- }
- 
- void
-@@ -1315,12 +1320,9 @@
-   global_err_data = E;
-   if (*iferr_env) longjmp(*iferr_env, numerr);
-   mt_err_recover(numerr);
--  err_init();
--  if (numerr != e_SYNTAX) closure_err(0);
--  pari_err_display(E);
--  out_term_color(pariErr, c_NONE);
-   va_end(ap);
--  pariErr->flush();
-+  if (cb_pari_err_handle &&
-+      cb_pari_err_handle(E)) return;
-   if (cb_pari_handle_exception &&
-       cb_pari_handle_exception(numerr)) return;
-   err_recover(numerr);

Copied: pari/repos/community-i686/err_handle.patch (from rev 128040, pari/repos/community-staging-i686/err_handle.patch)
===================================================================
--- community-i686/err_handle.patch	                        (rev 0)
+++ community-i686/err_handle.patch	2015-02-20 17:54:31 UTC (rev 128041)
@@ -0,0 +1,105 @@
+Add cb_pari_err_handle() callback
+
+Backported from upstream commits
+e9e659dc9ecb5ca6a8296c7922528a4ecbb89cb0
+26a7ae0f42918407febe9901ded41faf26ef43a6
+
+diff -ru src/src/headers/paricom.h b/src/headers/paricom.h
+--- src/src/headers/paricom.h	2014-03-25 09:59:21.000000000 +0100
++++ b/src/headers/paricom.h	2015-01-13 19:41:47.430885048 +0100
+@@ -81,6 +81,7 @@
+ extern int  (*cb_pari_whatnow)(PariOUT *out, const char *, int);
+ extern void (*cb_pari_sigint)(void);
+ extern int (*cb_pari_handle_exception)(long);
++extern int (*cb_pari_err_handle)(GEN);
+ extern void (*cb_pari_pre_recover)(long);
+ extern void (*cb_pari_err_recover)(long);
+ extern const char *pari_library_path;
+diff -ru src/src/language/init.c b/src/language/init.c
+--- src/src/language/init.c	2015-01-13 19:40:30.643622993 +0100
++++ b/src/language/init.c	2015-01-13 19:41:47.431884833 +0100
+@@ -87,6 +87,7 @@
+ 
+ void (*cb_pari_ask_confirm)(const char *);
+ int  (*cb_pari_handle_exception)(long);
++int  (*cb_pari_err_handle)(GEN);
+ int  (*cb_pari_whatnow)(PariOUT *out, const char *, int);
+ void (*cb_pari_sigint)(void);
+ void (*cb_pari_pre_recover)(long);
+@@ -732,6 +733,8 @@
+ static void
+ dflt_err_recover(long errnum) { (void) errnum; pari_exit(); }
+ 
++static int pari_err_display(GEN err);
++
+ /* initialize PARI data. Initialize [new|old]fun to NULL for default set. */
+ void
+ pari_init_opts(size_t parisize, ulong maxprime, ulong init_opts)
+@@ -739,6 +742,8 @@
+   ulong u;
+ 
+   cb_pari_whatnow = NULL;
++  cb_pari_handle_exception = NULL;
++  cb_pari_err_handle = pari_err_display;
+   cb_pari_pre_recover = NULL;
+   cb_pari_sigint = dflt_sigint_fun;
+   if (init_opts&INIT_JMPm) cb_pari_err_recover = dflt_err_recover;
+@@ -887,9 +892,6 @@
+   evalstate_reset();
+   killallfiles();
+   pari_init_errcatch();
+-  out_puts(pariErr, "\n");
+-  pariErr->flush();
+-
+   cb_pari_err_recover(numerr);
+ }
+ 
+@@ -1266,21 +1268,22 @@
+   return NULL; /*NOT REACHED*/
+ }
+ 
+-static void
++static int
+ pari_err_display(GEN err)
+ {
+   long numerr=err_get_num(err);
++  err_init();
+   if (numerr==e_SYNTAX)
+   {
+     const char *msg = GSTR(gel(err,2));
+     const char *s     = (const char *) gmael(err,3,1);
+     const char *entry = (const char *) gmael(err,3,2);
+     print_errcontext(pariErr, msg, s, entry);
+-    return;
+   }
+   else
+   {
+     char *s = pari_err2str(err);
++    closure_err(0);
+     err_init_msg(numerr, e_USER);
+     pariErr->puts(s);
+     if (numerr==e_NOTFUNC)
+@@ -1295,6 +1298,8 @@
+     }
+     pari_free(s);
+   }
++  out_term_color(pariErr, c_NONE);
++  pariErr->flush(); return 0;
+ }
+ 
+ void
+@@ -1315,12 +1320,9 @@
+   global_err_data = E;
+   if (*iferr_env) longjmp(*iferr_env, numerr);
+   mt_err_recover(numerr);
+-  err_init();
+-  if (numerr != e_SYNTAX) closure_err(0);
+-  pari_err_display(E);
+-  out_term_color(pariErr, c_NONE);
+   va_end(ap);
+-  pariErr->flush();
++  if (cb_pari_err_handle &&
++      cb_pari_err_handle(E)) return;
+   if (cb_pari_handle_exception &&
+       cb_pari_handle_exception(numerr)) return;
+   err_recover(numerr);

Deleted: community-x86_64/PKGBUILD
===================================================================
--- community-x86_64/PKGBUILD	2015-02-20 17:40:21 UTC (rev 128040)
+++ community-x86_64/PKGBUILD	2015-02-20 17:54:31 UTC (rev 128041)
@@ -1,45 +0,0 @@
-# $Id$
-# Maintainer: Gaetan Bisson <bisson at archlinux.org>
-
-pkgname=pari
-pkgver=2.7.2
-pkgrel=2
-pkgdesc='Computer algebra system designed for fast computations in number theory'
-url='http://pari.math.u-bordeaux.fr/'
-license=('GPL')
-arch=('i686' 'x86_64')
-depends=('gmp' 'readline' 'libx11')
-makedepends=('perl' 'texlive-core')
-optdepends=('perl: gphelp, tex2mail')
-source=("http://pari.math.u-bordeaux.fr/pub/pari/unix/${pkgname}-${pkgver}.tar.gz"
-        'err_handle.patch')
-sha1sums=('27ef49c39860055ff97608bc323bff2afda1aa51'
-          '182066ab765eddb0b7fd98b441c158304545f5ec')
-
-prepare() {
-	cd "${srcdir}/${pkgname}-${pkgver}"
-	sed 's/\$addlib64//g' -i config/get_libpth
-	patch -p1 -i ../err_handle.patch # sage-5.6 uses this¸ from upstream trunk
-}
-
-build() {
-	cd "${srcdir}/${pkgname}-${pkgver}"
-	./Configure \
-		--prefix=/usr \
-		--with-readline \
-		--mt=pthread \
-		--with-gmp \
-
-	make all
-}
-
-check() {
-	cd "${srcdir}/${pkgname}-${pkgver}"
-	make bench
-}
-
-package() {
-	cd "${srcdir}/${pkgname}-${pkgver}"
-	make DESTDIR="${pkgdir}" install
-	ln -sf gp.1.gz "${pkgdir}"/usr/share/man/man1/pari.1
-}

Copied: pari/repos/community-x86_64/PKGBUILD (from rev 128040, pari/repos/community-staging-x86_64/PKGBUILD)
===================================================================
--- community-x86_64/PKGBUILD	                        (rev 0)
+++ community-x86_64/PKGBUILD	2015-02-20 17:54:31 UTC (rev 128041)
@@ -0,0 +1,45 @@
+# $Id$
+# Maintainer: Gaetan Bisson <bisson at archlinux.org>
+
+pkgname=pari
+pkgver=2.7.3
+pkgrel=1
+pkgdesc='Computer algebra system designed for fast computations in number theory'
+url='http://pari.math.u-bordeaux.fr/'
+license=('GPL')
+arch=('i686' 'x86_64')
+depends=('gmp' 'readline' 'libx11')
+makedepends=('perl' 'texlive-core')
+optdepends=('perl: gphelp, tex2mail')
+source=("http://pari.math.u-bordeaux.fr/pub/pari/unix/${pkgname}-${pkgver}.tar.gz"
+        'err_handle.patch')
+sha1sums=('fa01d548839301958564a2bec39928ba3c9c9d39'
+          '182066ab765eddb0b7fd98b441c158304545f5ec')
+
+prepare() {
+	cd "${srcdir}/${pkgname}-${pkgver}"
+	sed 's/\$addlib64//g' -i config/get_libpth
+	patch -p1 -i ../err_handle.patch # sage-5.6 uses this¸ from upstream trunk
+}
+
+build() {
+	cd "${srcdir}/${pkgname}-${pkgver}"
+	./Configure \
+		--prefix=/usr \
+		--with-readline \
+		--mt=pthread \
+		--with-gmp \
+
+	make all
+}
+
+check() {
+	cd "${srcdir}/${pkgname}-${pkgver}"
+	make bench
+}
+
+package() {
+	cd "${srcdir}/${pkgname}-${pkgver}"
+	make DESTDIR="${pkgdir}" install
+	ln -sf gp.1.gz "${pkgdir}"/usr/share/man/man1/pari.1
+}

Deleted: community-x86_64/err_handle.patch
===================================================================
--- community-x86_64/err_handle.patch	2015-02-20 17:40:21 UTC (rev 128040)
+++ community-x86_64/err_handle.patch	2015-02-20 17:54:31 UTC (rev 128041)
@@ -1,105 +0,0 @@
-Add cb_pari_err_handle() callback
-
-Backported from upstream commits
-e9e659dc9ecb5ca6a8296c7922528a4ecbb89cb0
-26a7ae0f42918407febe9901ded41faf26ef43a6
-
-diff -ru src/src/headers/paricom.h b/src/headers/paricom.h
---- src/src/headers/paricom.h	2014-03-25 09:59:21.000000000 +0100
-+++ b/src/headers/paricom.h	2015-01-13 19:41:47.430885048 +0100
-@@ -81,6 +81,7 @@
- extern int  (*cb_pari_whatnow)(PariOUT *out, const char *, int);
- extern void (*cb_pari_sigint)(void);
- extern int (*cb_pari_handle_exception)(long);
-+extern int (*cb_pari_err_handle)(GEN);
- extern void (*cb_pari_pre_recover)(long);
- extern void (*cb_pari_err_recover)(long);
- extern const char *pari_library_path;
-diff -ru src/src/language/init.c b/src/language/init.c
---- src/src/language/init.c	2015-01-13 19:40:30.643622993 +0100
-+++ b/src/language/init.c	2015-01-13 19:41:47.431884833 +0100
-@@ -87,6 +87,7 @@
- 
- void (*cb_pari_ask_confirm)(const char *);
- int  (*cb_pari_handle_exception)(long);
-+int  (*cb_pari_err_handle)(GEN);
- int  (*cb_pari_whatnow)(PariOUT *out, const char *, int);
- void (*cb_pari_sigint)(void);
- void (*cb_pari_pre_recover)(long);
-@@ -732,6 +733,8 @@
- static void
- dflt_err_recover(long errnum) { (void) errnum; pari_exit(); }
- 
-+static int pari_err_display(GEN err);
-+
- /* initialize PARI data. Initialize [new|old]fun to NULL for default set. */
- void
- pari_init_opts(size_t parisize, ulong maxprime, ulong init_opts)
-@@ -739,6 +742,8 @@
-   ulong u;
- 
-   cb_pari_whatnow = NULL;
-+  cb_pari_handle_exception = NULL;
-+  cb_pari_err_handle = pari_err_display;
-   cb_pari_pre_recover = NULL;
-   cb_pari_sigint = dflt_sigint_fun;
-   if (init_opts&INIT_JMPm) cb_pari_err_recover = dflt_err_recover;
-@@ -887,9 +892,6 @@
-   evalstate_reset();
-   killallfiles();
-   pari_init_errcatch();
--  out_puts(pariErr, "\n");
--  pariErr->flush();
--
-   cb_pari_err_recover(numerr);
- }
- 
-@@ -1266,21 +1268,22 @@
-   return NULL; /*NOT REACHED*/
- }
- 
--static void
-+static int
- pari_err_display(GEN err)
- {
-   long numerr=err_get_num(err);
-+  err_init();
-   if (numerr==e_SYNTAX)
-   {
-     const char *msg = GSTR(gel(err,2));
-     const char *s     = (const char *) gmael(err,3,1);
-     const char *entry = (const char *) gmael(err,3,2);
-     print_errcontext(pariErr, msg, s, entry);
--    return;
-   }
-   else
-   {
-     char *s = pari_err2str(err);
-+    closure_err(0);
-     err_init_msg(numerr, e_USER);
-     pariErr->puts(s);
-     if (numerr==e_NOTFUNC)
-@@ -1295,6 +1298,8 @@
-     }
-     pari_free(s);
-   }
-+  out_term_color(pariErr, c_NONE);
-+  pariErr->flush(); return 0;
- }
- 
- void
-@@ -1315,12 +1320,9 @@
-   global_err_data = E;
-   if (*iferr_env) longjmp(*iferr_env, numerr);
-   mt_err_recover(numerr);
--  err_init();
--  if (numerr != e_SYNTAX) closure_err(0);
--  pari_err_display(E);
--  out_term_color(pariErr, c_NONE);
-   va_end(ap);
--  pariErr->flush();
-+  if (cb_pari_err_handle &&
-+      cb_pari_err_handle(E)) return;
-   if (cb_pari_handle_exception &&
-       cb_pari_handle_exception(numerr)) return;
-   err_recover(numerr);

Copied: pari/repos/community-x86_64/err_handle.patch (from rev 128040, pari/repos/community-staging-x86_64/err_handle.patch)
===================================================================
--- community-x86_64/err_handle.patch	                        (rev 0)
+++ community-x86_64/err_handle.patch	2015-02-20 17:54:31 UTC (rev 128041)
@@ -0,0 +1,105 @@
+Add cb_pari_err_handle() callback
+
+Backported from upstream commits
+e9e659dc9ecb5ca6a8296c7922528a4ecbb89cb0
+26a7ae0f42918407febe9901ded41faf26ef43a6
+
+diff -ru src/src/headers/paricom.h b/src/headers/paricom.h
+--- src/src/headers/paricom.h	2014-03-25 09:59:21.000000000 +0100
++++ b/src/headers/paricom.h	2015-01-13 19:41:47.430885048 +0100
+@@ -81,6 +81,7 @@
+ extern int  (*cb_pari_whatnow)(PariOUT *out, const char *, int);
+ extern void (*cb_pari_sigint)(void);
+ extern int (*cb_pari_handle_exception)(long);
++extern int (*cb_pari_err_handle)(GEN);
+ extern void (*cb_pari_pre_recover)(long);
+ extern void (*cb_pari_err_recover)(long);
+ extern const char *pari_library_path;
+diff -ru src/src/language/init.c b/src/language/init.c
+--- src/src/language/init.c	2015-01-13 19:40:30.643622993 +0100
++++ b/src/language/init.c	2015-01-13 19:41:47.431884833 +0100
+@@ -87,6 +87,7 @@
+ 
+ void (*cb_pari_ask_confirm)(const char *);
+ int  (*cb_pari_handle_exception)(long);
++int  (*cb_pari_err_handle)(GEN);
+ int  (*cb_pari_whatnow)(PariOUT *out, const char *, int);
+ void (*cb_pari_sigint)(void);
+ void (*cb_pari_pre_recover)(long);
+@@ -732,6 +733,8 @@
+ static void
+ dflt_err_recover(long errnum) { (void) errnum; pari_exit(); }
+ 
++static int pari_err_display(GEN err);
++
+ /* initialize PARI data. Initialize [new|old]fun to NULL for default set. */
+ void
+ pari_init_opts(size_t parisize, ulong maxprime, ulong init_opts)
+@@ -739,6 +742,8 @@
+   ulong u;
+ 
+   cb_pari_whatnow = NULL;
++  cb_pari_handle_exception = NULL;
++  cb_pari_err_handle = pari_err_display;
+   cb_pari_pre_recover = NULL;
+   cb_pari_sigint = dflt_sigint_fun;
+   if (init_opts&INIT_JMPm) cb_pari_err_recover = dflt_err_recover;
+@@ -887,9 +892,6 @@
+   evalstate_reset();
+   killallfiles();
+   pari_init_errcatch();
+-  out_puts(pariErr, "\n");
+-  pariErr->flush();
+-
+   cb_pari_err_recover(numerr);
+ }
+ 
+@@ -1266,21 +1268,22 @@
+   return NULL; /*NOT REACHED*/
+ }
+ 
+-static void
++static int
+ pari_err_display(GEN err)
+ {
+   long numerr=err_get_num(err);
++  err_init();
+   if (numerr==e_SYNTAX)
+   {
+     const char *msg = GSTR(gel(err,2));
+     const char *s     = (const char *) gmael(err,3,1);
+     const char *entry = (const char *) gmael(err,3,2);
+     print_errcontext(pariErr, msg, s, entry);
+-    return;
+   }
+   else
+   {
+     char *s = pari_err2str(err);
++    closure_err(0);
+     err_init_msg(numerr, e_USER);
+     pariErr->puts(s);
+     if (numerr==e_NOTFUNC)
+@@ -1295,6 +1298,8 @@
+     }
+     pari_free(s);
+   }
++  out_term_color(pariErr, c_NONE);
++  pariErr->flush(); return 0;
+ }
+ 
+ void
+@@ -1315,12 +1320,9 @@
+   global_err_data = E;
+   if (*iferr_env) longjmp(*iferr_env, numerr);
+   mt_err_recover(numerr);
+-  err_init();
+-  if (numerr != e_SYNTAX) closure_err(0);
+-  pari_err_display(E);
+-  out_term_color(pariErr, c_NONE);
+   va_end(ap);
+-  pariErr->flush();
++  if (cb_pari_err_handle &&
++      cb_pari_err_handle(E)) return;
+   if (cb_pari_handle_exception &&
+       cb_pari_handle_exception(numerr)) return;
+   err_recover(numerr);



More information about the arch-commits mailing list