I tried rebuilding with this patch from sagemath: |diff --git a/src/pari.cc b/src/pari.cc index 76ce8e1..50d08ab 100644 --- a/src/pari.cc +++ b/src/pari.cc @@ -40,6 +40,13 @@ using namespace std; #ifdef HAVE_LIBPARI +// Anyarg disappeared from PARI 2.15.0 +#ifdef __cplusplus +# define ANYARG ... +#else +# define ANYARG +#endif + #ifdef HAVE_PTHREAD_H #include <pthread.h> #endif|
But I get one test failure: FAIL: chk_fhan4 =============== // Using locale /usr/share/locale/ // C.UTF-8 // /usr/share/locale/ // giac // UTF-8 // Maximum number of parallel threads 8 // Unable to find keyword file doc/en/keywords Added 0 synonyms // Warning: a, declared as global variable(s). If symbolic variables are required, declare them as local and run purge // Success // Success // Success // Success // Success // Success // Success // Success // End defining T ============== restarted =============== // Time 0 // Time 0 // Time 0 // Time 0 // Time 0 // Time 0 // Time 0 // Time 0 // Time 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 // Time 0.02 // Time 0 // Time 0 // Time 0 // Time 0 0 0 0 0 0 0 0 0 0 // Time 0.03 // Time 0 // Time 0 // Time 0 // Time 0 // Time 0 0 0 0 0 // Time 0.04 // Time 0 // Time 0 // Time 0 // Time 0 0 // Time 0.06 // Time 0 // Time 0 // Time 0 // Time 0 // Time 0 // Time 0 // Time 0 // Time 0 // Time 0 // Time 0 // Time 0 // Time 0 // Time 0 // Time 0 // Time 0.01 // Time 0 // Time 0 // Time 0 // Time 0 // Time 0 // Time 0 // Time 0.01 *** the thread stack overflows ! current stack size: 1024000 (0.977 Mbytes) [hint] set 'threadsizemax' to a nonzero value in your GPRC *** matdet: Warning: increasing stack size to 2048000. *** at top-level: matdet([-10,-7,6,-7,1,4,-1,-2,-2,-5,1,7,-6,7,- *** ^---------------------------------------------- *** matdet: the thread stack overflows ! current stack size: 1024000 (0.977 Mbytes) [hint] set 'threadsizemax' to a nonzero value in your GPRC Error in PARI subsystem Segmentation fault 49c49,108 < --- > "Done", > "Done", > "Done", > 0, > 0, > 50, > "Done", > "Done", > "Done", > "Done", > 0, > 0, > 30, > "Done", > "Done", > "Done", > "Done", > "Done", > "Done", > 0, > 0, > 0, > 40, > "Done", > "Done", > 0, > 50, > "Done", > "Done", > 0, > [[0,-2,1,3],[0,0,0,1],[1,1,0,0],[-3,4,1,0]], > "Done", > "Done", > "Done", > "Done", > "Done", > [[0,1,0,0],[1,0,0,0],[0,0,1,0],[0,0,0,1]], > [[0,0,0,1],[0,-2,1,3],[1,1,0,0],[-3,4,1,0]], > proc(i,j,a) > local TT; > TT:=identity(4); > TT[i,j]:=a; > TT; > > end;, > [[0,0,0,1],[0,-2,1,3],[1,1,0,1/2],[-3,4,1,0]], > [[0,0,0,1],[0,-2,1,3],[1,1,0,1/2],[-3,4,1,3/2]], > "Done", > "Done", > "Done", > "Done", > "Done", > [[1,0,0,0],[0,0,0,1],[0,0,1,0],[0,1,0,0]], > [[0,0,0,1],[-3,4,1,3/2],[1,1,0,1/2],[0,-2,1,3]], > [[0,0,1,0],[1,0,0,0],[0,0,0,1],[0,1,0,0]], > [[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0]], > [[0,0,0,1],[-3,4,1,3/2],[1,1,0,1/2],[-2,-4,1,2]], > [[1,0,0,0],[-3/2,1,0,0],[-1/2,0,1,0],[0,0,2,1]], > [[0,0,0,1],[1,0,0,0],[0,0,1,0],[0,1,0,0]], > [[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0]] FAIL chk_fhan4 (exit status: 1) ============================================================================ Testsuite summary for giac 1.9.0 ============================================================================ # TOTAL: 30 # PASS: 29 # SKIP: 0 # XFAIL: 0 # FAIL: 1 # XPASS: 0 # ERROR: 0 On 10/1/22 20:46, Bill Allombert wrote: > On Wed, Sep 21, 2022 at 09:01:51PM +0300, Adrian Bunk wrote: >> Source: giac >> Version: 1.9.0.19+dfsg2-1 >> Severity: serious >> Tags: ftbfs >> >> https://buildd.debian.org/status/logs.php?pkg=giac&ver=1.9.0.19%2Bdfsg2-1%2Bb1 >> >> ... >> pari.cc: At global scope: >> pari.cc:752:17: error: typedef ‘giac::PFGEN’ is initialized (use ‘decltype’ >> instead) >> 752 | typedef GEN (*PFGEN)(ANYARG); >> | ^~~~~ >> pari.cc:752:24: error: ‘ANYARG’ was not declared in this scope > This is my comment on this bug: > > PARI used to define ANYARG as > #ifdef __cplusplus > # define ANYARG ... > #else > # define ANYARG > #endif > > This definition was removed because newer gcc/clang do not like to call > function without prototype and it was not particularly > useful. > > So you can replace this by > > typedef GEN (*PFGEN)(); > > if you like, but recent gcc 12 will issue warning. > In PARI we changed EVAL_f to cast the pointer to the right prototype > before calling it. > > Sorry for the trouble. > > Cheers,