# $Id$ Bug numbers refer to the BTS at http://pari.math.u-bordeaux.fr/Bugs/ Done for version 2.9.5 (released 18/05/2018): [last column crossreferences current development release 2.10.0] Fixed 1- powuu(0,1) -> SEGV [F123] 2- matsolvemod([;],2,[]~) -> no solution [ instead of []~ ] [F125] 3- a[1]=vector(10):a[1][1]=b;a[1]=vector(10); could leak memory [F126] 4- lcm(Pol(0),0) -> division by 0 [F127] 5- QX_complex_roots(a*x^n,) => SEGV [F128] BA 6- default(strictargs,1); my(a=2);(f(b,c)=123);f(1) => SEGV [#2004] [F129] 7- factor(0.*x + 1) -> SEGV [#2005] [F130] 8- sinh(x close to 0): loss of accuracy [F131] 9- sinc(0.*I) -> division by 0 [F132] 10- nffactor(y^8-y^6+y^4-y^2+1,x^4-1) -> concatenation error [#2009] [F134] 11- memory corruption in nffactor [#2013] [F137] BA 12- partitions(1,[0,5],[3,4]) -> incorrect result [F138] 13- quadclassunit(-699,,[6,6]) -> SEGV [#2015] [F139] 14- polcoeff(t_SER) -> incorrect types and values polcoeff(1/(1+x+y+O(y^2)+O(x^2)), 1,y) -> 2*x-1 [now -1+2*x+O(x^2)] polcoeff(y+O(y^2), 0, x) -> 0 [now y+O(y^2)] [F141] 15- ellperiods([1,0.1 + I/10^50]) -> division by 0 [F142] 16- nfmodpr(nfinit(x),[],[]~) -> SEGV [#2020] [F143] 17- nfisisom(nfinit(x^2+4),x^2+1) -> reverse isomorphism [#2022] [F144] 18- missing GC in lfuntheta [F148] 19- gamma(0.0+1/2*x+O(x^2)) -> domain error in factorial [F150] 20- affrr(0.0, x) did not reset the exponent correctly. [F151] 21- ellminimaltwist did not check that E is defined over Q [F153] 22- padicappr('x,Mod(0,'t^2+1)+O(7^10)) -> SEGV [#2036] [F154] Done for version 2.9.4 (released 08/01/2018): [last column crossreferences current development release 2.10.0] Fixed 1- [from 2.9.3] subst(Mod(-a,a^2-2),z,0) -> invalid object [#1988] 2- subst(1+x^2+O(x^3),x,y) -> 1 + y^2 + O(y^4) [#1950] [F87] XR 3- padicfields(3,6) -> FPE [#1947] [F89] 4- nfislocalpower could compute ZV_pval(0 vector,) -> oo loop[#1955][F90] BA 5- iferr(1/0,E,1,break()) -> SEGV [F91] 6- missing roots in nfroots (when r2>0) [#1956,#1957] [F92] BA 7- factormod(...,p,1) was incorrect for large p [F93] BA 8- foo = vectorsmall(1);for(i=1,1, foo[1]); -> error [#1958] [F94] BA 9- v=Vecsmall([2]); Fl_neg(v[1],3) when Fl_neg is installed [#1958] [F95] 10- qfminim with 'm' omitted (infinite capacity) could lose some vectors Also affected polredabs [#1963] [F95] 11- inaccuracy in ellL1 / ellanalyticrank (usually last digit) [F97] 12- nffactor factors could be non-monic [#1967] [F99] 13- bestapprPade(,explicit B): wrong result [#1946] [F100] 14- bestappr(Mod(10,307), 40) -> 10 (instead of 3/31) [F101] 15- mathnf([x;1]) -> SEGV [#1971] [F102] BA 16- ispower((x^3+ffgen([2^127-1,3])*x+1)^2,2,&r);r was wrong [#1976][F103] 17- SEGV in install() when bad prototype supplied [#1977] [F106] 18- ellzeta(., real number) possibly wrong result [#1981] [F107] BA 19- sqrtn(Mod(9, 101), -2) -> wrong result [F108] 20- multiplying t_SER with t_INTMOD entries (mod a composite) whose leading term cancels -> SEGV [#1986] [F109] 21- lambertw(t_SER) could create invalid t_FRACs [F110] 22- matintersect did not always return a basis [F111] 23- nfinit([T, listP]) could error out when a small prime outside listP divided the index [#1993] [F112] 24- memory leak due to cgetg_block / gunclone_deep usage [F116] 25- memory leak in ellminimalmodel when e memoized periods/roots [F117] BA 26- [win32] plot colors were shifted by 1 [F118] 27- RgX_translate(P,c) with c equal to \pm 1 (e.g. as t_REAL or t_PADIC) incorrectly replaced c by its t_INT approximation [#1995] [F119] BA 28- matsupplement(Mod(matrix(5,1),2)) --> SEGV [#1996] [F120] 29- PostScript engine: missing 'stroke' in plotbox method => some commands (e.g. colors) could be ignored [F121] Done for version 2.9.3 (released 13/7/2017): [last column crossreferences current development release 2.10.0] Fixed 1- K=bnfinit(x^2+2323); P=idealprimedec(K,23)[1]; [F50] bnfisprincipal(K,P); \\ oo loop BA 2- Mat()[1..0,1..0] -> SEGV [F59] PB 3- galoissubcyclo(1,1,fl) ignored fl [#1914] [F60] EB 4- GP was incorrectly issuing fflush(NULL) [#1913] [F62] 5- issquare(Mod(1,67)*x^4+Mod(14,67)*x^2+Mod(49,67)) -> SEGV [#1915][F63] 6- polroots(t_POL whose coeffs vary by a factor > 2^100000) -> SEGV [F64] 7- nfisincl(nf1, nf2) didn't work [#1921] [F65] 8- setting sopath in gprc then calling install() -> SEGV [#1922] [F66] 9- nfislocalpower did not accept a bnf in place of a nf [F67] 10- subst(t_SER, x, 0 t_POL) [#1925], e.g [F68] subst(x+O(x^2),x,0*x) -> 1 + O(x) [ instead of 0 ] subst(x+O(x^2),x,Mod(0,3)*x) -> O(x^0) [ instead of Mod(0,3) ] 11- valuation(Mod(0,3)*x,x) -> 0 [ instead of oo ] [F69] 12- factor(x^2 * (1+O(5^2))) -> domain error [F70] 13- Vecsmall(t_STR with extended (8-bit) ASCII) -> platform dependent + can't be converted back with Strchr [F72] BA 14- [pthread] do not use pthread when nbthreads=1 [F74] 15- sumdiv(arg. in factored form, k < 0) => error or wrong result [F75] 16- Mod(0,1)^0 -> invalid t_INTMOD [F76] 17- gamma and lngamma inaccurate near negative integers [F77] BA 18- nfisisom, nfisincl and factor were still using factornf [F78] PB 19- nfinit(t_POL of deg 1, 3) => incorrect change of variable [F79] 20- subst(t_SER, x, x+O(x^N)) was slow [ e.g. ellj(x+O(x^10000)) ] [F80] BA 21- setrand(2);polclass(-5032,27) -> wrong result [F81] 22- polredabs(non-monic t_POL, 1) => potentially wrong map [F82] 23- if 'a < 'b < 'c, charpoly(Mod(a, a^2 + Mod(b,b^2+1)), c) => 1 [F83] 24- mathouseholder: missing sanity check (SEGV, didn't accept t_COL)[F84] 25- bestapprPade did not handle positive valuation correctly [#1945][F85] PB 26- subst(Mod(1/z, y), z, x) -> wrong answer [#1949] [F86] Done for version 2.9.2 (released 5/4/2017): [last column crossreferences current development release 2.10.0] Fixed 1- ZG_normalize destroyed its input [F11] 2- [install] prototype code D0,U, did not work [F12] BA 3- use of complex default function argument could lead to error [F13] 4- factorpadic(2*x^4+x^2,2,2) -> division by 0 [#1876] [F14] 5- incgam(110, I) very inaccurate [F15] BA 6- ellinit over number field was not compatible with generic ops. [F16] BA 7- [breakloop] dbg_up could confuse the breakloop [F17] HC 8- sumnummonieninit(,,a);sumnummonien(n = a, ...) with a > 1 wrong [F18] 9- sumnummonieninit([a,b], t_CLOSURE) => incorrect initialization [F19] 10- lngamma(1+epsilon) much slower than in 2.7; eg. 10^-4 at \p200 [F20] BA 11- lfun(...,t_SER,n>=1) returned a wrong result [F21] 12- lfun(,, negative derivation order) => internal bug [F22] BA 13- ellidentify: check curve is over Q [F24] 14- gdivgs(t_RFRAC,s) could create invalid objects [F25] 15- chareval(G,chi,x,[[...], o]) didn't work (off-by-1) [F26] 16- polsturm(x^2-1,[-1,1]) -> SEGV [#1884] [F27] 17- typo in description of "call" symbolic operator [ _(_) ] [F28] PB 18- matinverseimage could find spurious solutions [#1888] [F29] 19- ellsea could leak variables (=> "no more variables" error) [F30] 20- ellsea leaked clones [F31] 21- 1/x - 1/x returned gen_0 (instead of Pol(0)) [F32] 22- printf("%d",factor(2*3*5*7)) => SEGV [F33] 23- bnrinit(bnf,idealfactor(bnf,1)) -> SEGV [#1890] [F35] BA 24- lfuncreate([1,0,[0],1,1,1,1]) -> SEGV (invalid input) [F36] 25- thue(imaginary quadratic of disc -3f^2, n) could return half-int [F37] BA 26- [libpari] Z_ZV_mod caused gerepile error [F38] 27- bestappr(1+0.*I) -> 1 + 0*I instead of 1 [F39] 28- memory corruption in qfminim [#1894] [F40] 29- polylog(x) used realprecision accuracy instead of precision(x) [F41] 30- exp or log(I*1.0) used realprecision instead of precision(x) [F42] PB 31- M = ffgen(2017^3)*[0, 1; 0, 0]; M^-1 -> SEGV [#1887] [F43] BA 32- lfun(lfungenus2(...),...) was much slower than intended [F44] BA 33- nfsubfields(polcyclo(88), 20) -> wrong result [#1892] [F45] BA 34- [mpi] dynamically linking with libpari did not work [F46] 35- sin(1 + 1.0*I) used realprecision accuracy instead of [F47] precision(x); same for cos, tan, arg, expm1, sinc. HIL 36- polclass could access invalid memory [F49] 37- nfvalrem() overflowed in case of negative valuation [F51] 38- ellminimalmodel over number field could divide by zero [#1899] [F52] 39- incorrect GC in nfgcd [#1903] [F53] 40- missing GC in rnfisabelian [F54] 41- missing GC in vectorsmall [F56] BA 42- missing GC in idealramgroups [F57] BA 43- ellweilpairing failed for supersingular curves in char 2 [#1910] [F58] Done for version 2.9.1 (released 1/12/2016): [last column crossreferences current development release 2.10.0] Fixed 1- subst(1+x^3+O(x^6),x,x+O(x^4)) -> SEGV [#1865] [F1] BA 2- lfunartin was using too much stack [F2] BA 3- fflog in char 3 or 5 was slower than intended [F3] 4- RgX_blocks only worked for t_INT or t_POL coeffs [F4] 5- spurious bnrdlisclist entries (with negative number of real places...) when modulus not a conductor [F5] BA 6- modular algorithms could fail for very large input [F6] BA 7- [mingw] writebin did not work [F7] BA 8- forprime(N=2^100,oo,...) did not work [F8]