mirror of
https://github.com/vishapoberon/compiler.git
synced 2026-04-06 20:22:24 +00:00
fixed bug in Reals.Mod which was actual on x86_64
without prototype, return type of ecvt was int, which has 4 byte size on
x86 but still has the same size on x86_64, that's why pointer which is 8
byte long could not fit in the variable holding return value. And it
could get negative value causing programs to explode. Fixed with casting
the result to LONGINT.
Former-commit-id: 0d85205cfd
This commit is contained in:
parent
4a77f04720
commit
ca407472a0
8 changed files with 12 additions and 14 deletions
|
|
@ -5,7 +5,7 @@ MODULE Reals;
|
|||
|
||||
|
||||
PROCEDURE -ecvt (x: LONGREAL; ndigit, decpt, sign: LONGINT): LONGINT
|
||||
"ecvt (x, ndigit, decpt, sign)";
|
||||
"(LONGINT)ecvt (x, ndigit, decpt, sign)";
|
||||
|
||||
PROCEDURE Ten*(e: INTEGER): REAL;
|
||||
VAR r, power: LONGREAL;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue