[7918] Improve portability in work with uint64 string format specifiers and in code literals. Author: VladimirMangos

* Replace platform seelction MaNGOS code for select format descriptor for uint64 by using ACE define.
      I64FMTD renamed to UI64FMTD for more clear name.
    * Add new define UI64LIT (base at ACE seelction) for build portables uint64 literals.
      Please always use UI64LIT(0x00001) instead less portable 0x00001LL

--HG--
branch : trunk
This commit is contained in:
megamage
2009-05-31 16:15:12 -05:00
parent a36d4fc7ae
commit f92e8315cf
34 changed files with 130 additions and 125 deletions
+8 -4
View File
@@ -103,6 +103,7 @@
#include "LockedQueue.h"
#include "Threading.h"
#include <ace/Basic_Types.h>
#include <ace/Guard_T.h>
#include <ace/RW_Thread_Mutex.h>
#include <ace/Thread_Mutex.h>
@@ -130,8 +131,6 @@
#include <float.h>
#define I64FMT "%016I64X"
#define I64FMTD "%I64u"
#define SI64FMTD "%I64d"
#define snprintf _snprintf
#define atoll __atoi64
#define vsnprintf _vsnprintf
@@ -143,10 +142,15 @@
#define stricmp strcasecmp
#define strnicmp strncasecmp
#define I64FMT "%016llX"
#define I64FMTD "%llu"
#define SI64FMTD "%lld"
#endif
#define UI64FMTD ACE_UINT64_FORMAT_SPECIFIER
#define UI64LIT(N) ACE_UINT64_LITERAL(N)
#define SI64FMTD ACE_INT64_FORMAT_SPECIFIER
#define SI64LIT(N) ACE_INT64_LITERAL(N)
inline float finiteAlways(float f) { return finite(f) ? f : 0.0f; }
#define atol(a) strtoul( a, NULL, 10)