Bug#1020436: giac FTBFS with PARI 2.15.0

Tobias Hansen thansen at debian.org
Wed Oct 19 10:27:23 BST 2022


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,

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://alioth-lists.debian.net/pipermail/debian-science-maintainers/attachments/20221019/664b2090/attachment-0001.htm>


More information about the debian-science-maintainers mailing list