Package: gnu-smalltalk
Version: 3.2.5-1+b3
Severity: important

Dear Maintainer,

1. install gnu-smalltalk from debian 9 main
2. launch gst REPL
3. enter 0.05 or 1e-4
4. expected: 0.05 or 0.0001
5. actual:
  $ gst
  st> x := 1e-4
  Object: 1 error: The program attempted to divide a number by zero
  ZeroDivide(Exception)>>signal (ExcHandling.st:254)
  SmallInteger(Number)>>zeroDivide (SysExcept.st:1426)
  Fraction>>setNumerator:setDenominator: (Fraction.st:485)
  Fraction class>>numerator:denominator: (Fraction.st:66)
  Fraction>>- (Fraction.st:151)
  FloatE(Float)>>printOn:special: (Float.st:533)
  FloatE(Float)>>printOn: (Float.st:436)
  FloatE(Object)>>printString (Object.st:534)
  FloatE(Object)>>printNl (Object.st:571)


this error is also present in the current unstable package
'gnu-smalltalk_3.2.5-1.1+b1_amd64.deb'

compiling from source fixes the problem

it was suggested on the gnu-smalltalk mailing list-1= that this error
may be caused by the package being compiled with option -pie; but it is
not clear that the -pie flag is the cause

`gcc -v` and `g++ -v` both show --enable-default-pie; but i can not
reproduce the 'ZeroDivide' problem compiling myself from git[2] -
compiling with all of the following flags produce the same (non-error)
result for 1e-4 and 0.05:

  $ make CFLAGS='-no-pie'
  $ make CFLAGS='-pie'
  $ make

  $ /usr/local/bin/gst
  GNU Smalltalk ready

  st> 0.05
  0.05


[1]: http://lists.gnu.org/archive/html/help-smalltalk/2018-08/msg00004.html
[2]: http://git.savannah.gnu.org/cgit/smalltalk.git/


-- System Information:
Debian Release: 9.5
  APT prefers stable-updates
  APT policy: (500, 'stable-updates'), (500, 'stable')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 4.9.0-7-amd64 (SMP w/2 CPU cores)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8),
LANGUAGE=en_US.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)

Versions of packages gnu-smalltalk depends on:
ii  libc6        2.24-11+deb9u3
ii  libgnutls30  3.5.8-5+deb9u3
ii  libgst7      3.2.5-1+b3
ii  unzip        6.0-21
ii  zip          3.0-11+b1

Versions of packages gnu-smalltalk recommends:
ii  gnu-smalltalk-common  3.2.5-1

Versions of packages gnu-smalltalk suggests:
ii  gnu-smalltalk-doc  3.2.5-1

-- no debconf information

Attachment: signature.asc
Description: OpenPGP digital signature

Reply via email to