Post Reply 
[Free42] DSE bug
08-09-2017, 08:50 PM
Post: #1
[Free42] DSE bug
Hello Thomas,

1e19
DSE ST X

skips and adds 8 instead of subtracting 1 (and not skipping).
I use that all the time as a shortcut for 1 -. Old habits die hard.
Up till 1e18 it's ok, 1e19 and up is wrong.

Cheers, Werner
(latest version 2.0.5. Of course)
Find all posts by this user
Quote this message in a reply
08-09-2017, 09:00 PM
Post: #2
RE: [Free42] DSE bug
(08-09-2017 08:50 PM)Werner Wrote:  1e19
DSE ST X
skips and adds 8 instead of subtracting 1 (and not skipping).
(...)
(latest version 2.0.5. Of course)

FWIW: my Free42 Decimal version 1.5.5 from 2014 behaves the same.

Dieter
Find all posts by this user
Quote this message in a reply
08-10-2017, 01:52 AM
Post: #3
RE: [Free42] DSE bug
(08-09-2017 08:50 PM)Werner Wrote:  Hello Thomas,

1e19
DSE ST X

skips and adds 8 instead of subtracting 1 (and not skipping).
I use that all the time as a shortcut for 1 -. Old habits die hard.
Up till 1e18 it's ok, 1e19 and up is wrong.

Cheers, Werner
(latest version 2.0.5. Of course)

The DSE and ISG code uses a 64-bit integer while breaking up the control variable into its components. That works fine in Free42 Binary, but can fail in Decimal, since the Decimal versions (both BCD20- and Intel-based) can represent integers that don't fit in 64 bits.

I'll fix this in 2.0.6.

I guess I should also take a look at the other functions that break up numbers in this manner, like HMS+. Seems unlikely to cause problems in practice, but a bug is a bug is a bug!
Find all posts by this user
Quote this message in a reply
08-13-2017, 03:40 AM
Post: #4
RE: [Free42] DSE bug
I fixed ISG and DSE in the Decimal versions.

→HMS, →HR, HMS+, and HMS- didn't have this 64-bit int issue, so those are unchanged.
Find all posts by this user
Quote this message in a reply
08-13-2017, 07:55 AM
Post: #5
RE: [Free42] DSE bug
Thanks, Thomas!
Werner
Find all posts by this user
Quote this message in a reply
Post Reply 




User(s) browsing this thread: 1 Guest(s)