Skip to content

2 program chunks not giving the same result #92

@Overscore

Description

@Overscore

The following program:

a=1
do
  a=a+a
  b=a+1
until a=b
print "a = ",a;

c=1
more:
c=c+c
d=c+1
if c<>d then goto more
print "c = ",c;

results in:
a = 16777216
c = 2.14748e+09
a and c shall be the same. It seems there is a bug somewhere.

When defining MB_DOUBLE_FLOAT, the result is:
a = 9.0072e+15
c = 9.0072e+15
This is correct.

I'm compiling with gcc 11.4.0 on ubuntu 22.04 with CFLAGS="-fomit-frame-pointer -O3 -Wunreachable-code -Wextra -Wall -std=c17 -m64 -fopenmp -march=native -mtune=native"
LDFLAGS="-m64 -s -lm"
The processor is an INTEL i9-13900-KF

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions