updated CHANGELOG

git-svn-id: svn://ttmath.org/publicrep/ttmath/trunk@1198 e52654a7-88a9-db11-a3e9-0013d4bc506e
This commit is contained in:
Tomasz Sowa 2019-07-31 07:21:10 +00:00
parent 132fa10cd4
commit f98c434fc4
1 changed files with 14 additions and 1 deletions

View File

@ -1,4 +1,17 @@
Version 0.9.4prerelease (....): Version 0.9.4_prerelease (....):
* fixed: cannot compile on MS Windows when compiling with GCC (Mingw) for 64 bit platform:
incorrect size of ttmath::uint and ::sint were used
they were 'long' but 'long' is a 32bit type on Windows
* fixed: a crash in Big::Add() (buffer overflow)
there was an offset calculated from Int type by using Abs() method and a carry was not checked
(if there is a carry we should not make addition -- the argument is too small)
this had no impact on calculated values because there was a crash (bus error) immediately
following program could crash (64bit):
typedef ttmath::Big<1, 8> MyBig;
ttmath::Parser<MyBig> parser;
parser.Parse("2^(2^63) + 1");
* fixed: similar problems were in methods Big::BitAnd() Big::BitOr() and Big::BitXor() (bitwise operations)
and they could return incorrect values
* fixed: in x86_64 asm code (*.asm for Win64) there was in some places esp register used, * fixed: in x86_64 asm code (*.asm for Win64) there was in some places esp register used,
there should be rsp used instead there should be rsp used instead
this affects MS Windows users when they use the asm version (ttmathuint_x86_64_msvc.asm) this affects MS Windows users when they use the asm version (ttmathuint_x86_64_msvc.asm)