- 
                Notifications
    You must be signed in to change notification settings 
- Fork 148
Release Notes Form 4.2.1
        Takahiro Ueda edited this page Apr 19, 2023 
        ·
        7 revisions
      
    This release is a minor update from 4.2.0 and mostly contains bug fixes. Below, the most notable changes are listed.
For a full overview of all the changes made, see the full git logs.
- The default memory usage has been increased: 400MB->2GBfor the 64-bit sequential version (689b72d)
- 
-z<TIMEOUT>sets a timelimit in second for the program (689b72d)
- 
-Zremoves the.strfile on crash (689b72d)
- 
JumpRatiocontrols whether the lookup of cases inSwitchconstructs (at runtime) should be done by means of a jumptable or by binary searching, depending on the sparseness of the cases (689b72d)
- 
#If- 
sizeof()gives the size of an expression or a $-variable in WORD (f942350)
 
- 
- 
#System- (undocumented) -eoption ignores an error returned by thesystem()C-library function. The error code is stored inSYSTEMERROR_(689b72d)
 
- (undocumented) 
- 
#TimeoutAfterstarts a timer to terminate the current program with a given timeout (689b72d)
- 
#Write- In new %+eand%+Eformats, each term starts on a new line (f942350)
 
- In new 
- (undocumented) SYSTEMERROR_: see#System -e(689b72d)
- 
(undocumented) Added <filename>option in the executablePrintstatement (f94c1c8)
- 
Added the orderedoption forSetdeclarations (689b72d)
- 
Switch construction (at runtime) (689b72d) - 
Switch...EndSwitch
- Case
- Default
- Break
 They are used for making a switch construction. 
- 
- 
sizeof_gives the size of an expression or a $-variable in WORD (f942350)
- 
topologies_is used for diagram generation (689b72d)
- Replaced the obsolete ftime()function withclock_gettime()when the latter is available (#276)
- Improved the algorithms of division and reminder for non-monic multivariate polynomials (#281)
- Removed an inefficiency when many expressions are defined (a261560, 536e778, 7599180; see also #215 (comment))
- Improved the merge sort inside memory based on Timsort (f1b83ae)
- Fixed a bug that caused a pattern matching failure for restricted numbers in ex-Polyratfun (#55)
- Fixed crashes in routines for gzip decompression (#95)
- Fixed content_for polynomials with constant terms (#185)
- Fixed some portability issues (#217, #223)
- Fixed corrupted characters from the prepreocessor calculator when the result is the most negative integer (#219)
- Fixed a crash on accessing the first #factdollarfactor of an integer (#222)
- Fixed memory leaks in routines for gzip compression (#248)
- Fixed a memory bug for local $-variables in TFORM (#253)
- Fixed a bug that made gcd_give wrong results (#258)
- Fixed a bug in the polynomial GCD routine (#260)
- Fixed a wrong "Division by zero" runtime error by mul_(x,0)(#261)
- Fixed a bug that caused wrong results in code optimization (#272)
- Fixed transform,addargsfor the case that the result becomes0(#277)
- Fixed some bug in LHS patterns with poly(rat)fun and symbols (8e8b0ae)
- Fixed the problem that content_did not handle functions properly (6eae467)