diff --git a/CHANGELOG b/CHANGELOG index 0a27869..22dbe96 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -1,4 +1,9 @@ -Version 0.9.3 prerelease (2011.02.27): +Version 0.9.3 (2012.12.28): + * fixed: in Big::FromDouble(double value) (only 32 bit version) + buffer overflow in referencing to UInt<2> + this was used when 'value' was in so called "unnormalized" state + (E=0 and F is nonzero) + it produced incorrect mantissa (on about 8th decimal digit up) * added: Parser::InitCGamma() initializing coefficients used when calculating the gamma (or factorial) function this speed up the next calculations diff --git a/COPYRIGHT b/COPYRIGHT index 0eb8d17..15bec4e 100644 --- a/COPYRIGHT +++ b/COPYRIGHT @@ -1,4 +1,4 @@ -Copyright (c) 2006-2011, Tomasz Sowa +Copyright (c) 2006-2012, Tomasz Sowa All rights reserved. Redistribution and use in source and binary forms, with or without diff --git a/ttmath/ttmath.h b/ttmath/ttmath.h index f862b8b..ee40e6e 100644 --- a/ttmath/ttmath.h +++ b/ttmath/ttmath.h @@ -5,7 +5,7 @@ */ /* - * Copyright (c) 2006-2010, Tomasz Sowa + * Copyright (c) 2006-2012, Tomasz Sowa * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -2835,7 +2835,9 @@ namespace ttmath he can only use '#include ' */ #include "ttmathparser.h" -#include "ttmathdec.h" + +// Dec is not finished yet +//#include "ttmathdec.h" diff --git a/ttmath/ttmathtypes.h b/ttmath/ttmathtypes.h index 539c100..3d9ddbe 100644 --- a/ttmath/ttmathtypes.h +++ b/ttmath/ttmathtypes.h @@ -5,7 +5,7 @@ */ /* - * Copyright (c) 2006-2011, Tomasz Sowa + * Copyright (c) 2006-2012, Tomasz Sowa * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -74,7 +74,7 @@ #define TTMATH_MINOR_VER 9 #define TTMATH_REVISION_VER 3 -#define TTMATH_PRERELEASE_VER 1 +#define TTMATH_PRERELEASE_VER 0 @@ -122,7 +122,7 @@ _M_IX86 defined by Visual Studio, Intel C/C++, Digital Mars and Watcom C/C++ amd64 architecture: - __x86_64__ defined by GNU C and Sun Studio + __x86_64__ defined by GNU C, CLANG (LLVM) and Sun Studio _M_X64 defined by Visual Studio asm version is available only for x86 or amd64 platforms @@ -134,7 +134,8 @@ #if !defined _MSC_VER && !defined __GNUC__ /*! - another compilers than MS VC or GCC by default use no asm version + another compilers than MS VC or GCC or CLANG (LLVM) by default use no asm version + (CLANG defines __GNUC__ too) */ #define TTMATH_NOASM #endif diff --git a/ttmath/ttmathuint.h b/ttmath/ttmathuint.h index 2365bf5..d00a0d7 100644 --- a/ttmath/ttmathuint.h +++ b/ttmath/ttmathuint.h @@ -1260,9 +1260,18 @@ private: UInt res; Mul2Big2(ss1, ss2, res); +#ifdef __clang__ +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wtautological-compare" +#endif + for(uint i=0 ; i(temp.table, temp2.table, z1.table); +#ifdef __clang__ +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wtautological-compare" +#endif + // clearing the rest of z1 for(i=first_size*2 ; i