FS#50048 - [smalltalk] arithmetic error since update to 3.2.91
Attached to Project:
Community Packages
Opened by Robert Kuszinger (kuszinger) - Friday, 15 July 2016, 07:52 GMT
Last edited by Alexander F. Rødseth (xyproto) - Monday, 08 August 2016, 15:38 GMT
Opened by Robert Kuszinger (kuszinger) - Friday, 15 July 2016, 07:52 GMT
Last edited by Alexander F. Rødseth (xyproto) - Monday, 08 August 2016, 15:38 GMT
|
Details
Description:
Since the latest upgrade of smalltalk (GNU Smalltalk) there are some issues on X86_64 (29th June, 2016) It affects numerical calculations (of arbitrary precision arithmetic in smalltalk provided by gmp). Other users on other Linux boxes were not able to reproduce yet. I have no chance to test on i686. Additional info: * smalltalk-3.2.91-1-x86_64 * Linux kuszidell 4.6.3-1-ARCH #1 SMP PREEMPT Fri Jun 24 21:19:13 CEST 2016 x86_64 GNU/Linux Steps to reproduce: # start gst # Enter the following: 2 raisedToInteger: -67 Result is: st> 2 raisedToInteger: -67 Object: 1 error: The program attempted to divide a number by zero ZeroDivide(Exception)>>signal (ExcHandling.st:254) SmallInteger(Number)>>zeroDivide (SysExcept.st:1386) Fraction>>setNumerator:setDenominator: (Fraction.st:485) Fraction class>>numerator:denominator: (Fraction.st:66) Fraction>>raisedToInteger: (Fraction.st:510) SmallInteger(Number)>>raisedToInteger: (Number.st:922) UndefinedObject>>executeStatements (a String:1) Test on earlier version works fine (smalltalk-3.2.5-3-x86_64). Developers of GNU Smalltalk were not able to reproduce on their Linux boxes yet. Workaround: stay with smalltalk-3.2.5-3-x86_64. Latest gmp also work with smalltalk 3.2.5 so error is not gmp version specific. I also contacted smalltalk developers. They need git bisect tests on soruce/compile to identify if it came with a commit. They have no Arch linux box to play it through (and also not working with makepkg). I'd make it myself but I cannot make it (I'm not a C but Smalltalk developer, mostly...). Anyway, with some help or guidelines I'd make it happily (git bisect on local repo copy and makepkg on each versions, if I understand it right... and test when it gone bad) Robert |
This task depends upon
Closed by Alexander F. Rødseth (xyproto)
Monday, 08 August 2016, 15:38 GMT
Reason for closing: Fixed
Additional comments about closing: Using later commit instead of release tag.
Monday, 08 August 2016, 15:38 GMT
Reason for closing: Fixed
Additional comments about closing: Using later commit instead of release tag.
Cheers!