1
0
mirror of https://github.com/VCMP-SqMod/SqMod.git synced 2025-01-31 01:47:16 +01:00

Update sqconfig.h

This commit is contained in:
Sandu Liviu Catalin 2021-02-01 00:08:02 +02:00
parent 07d215c428
commit 66599b5df3

View File

@ -1,23 +1,26 @@
#ifdef __cplusplus
#include <cstddef>
#include <cstdint>
#else
#include <stddef.h>
#include <stdint.h>
#endif
#ifdef _SQ64
typedef int64_t SQInteger;
typedef uint64_t SQUnsignedInteger;
typedef size_t SQHash; /*should be the same size of a pointer*/
#ifdef _MSC_VER
typedef __int64 SQInteger;
typedef unsigned __int64 SQUnsignedInteger;
typedef unsigned __int64 SQHash; /*should be the same size of a pointer*/
typedef int32_t SQInt32;
typedef uint32_t SQUnsignedInteger32;
#else
typedef long long SQInteger;
typedef unsigned long long SQUnsignedInteger;
typedef unsigned long long SQHash; /*should be the same size of a pointer*/
#endif
typedef int SQInt32;
typedef unsigned int SQUnsignedInteger32;
#else
typedef int SQInteger;
typedef int SQInt32; /*must be 32 bits(also on 64bits processors)*/
typedef unsigned int SQUnsignedInteger32; /*must be 32 bits(also on 64bits processors)*/
typedef unsigned int SQUnsignedInteger;
typedef unsigned int SQHash; /*should be the same size of a pointer*/
typedef int32_t SQInteger;
typedef uint32_t SQUnsignedInteger;
typedef size_t SQHash; /*should be the same size of a pointer*/
typedef int32_t SQInt32; /*must be 32 bits(also on 64bits processors)*/
typedef uint32_t SQUnsignedInteger32; /*must be 32 bits(also on 64bits processors)*/
#endif
@ -28,11 +31,7 @@ typedef float SQFloat;
#endif
#if defined(SQUSEDOUBLE) && !defined(_SQ64) || !defined(SQUSEDOUBLE) && defined(_SQ64)
#ifdef _MSC_VER
typedef __int64 SQRawObjectVal; //must be 64bits
#else
typedef long long SQRawObjectVal; //must be 64bits
#endif
typedef int64_t SQRawObjectVal; //must be 64bits
#define SQ_OBJECT_RAWINIT() { _unVal.raw = 0; }
#else
typedef SQUnsignedInteger SQRawObjectVal; //is 32 bits on 32 bits builds and 64 bits otherwise
@ -60,18 +59,22 @@ typedef wchar_t SQChar;
#define scstrcmp wcscmp
#ifdef _WIN32
#define scsprintf _snwprintf
#else
#define scsprintf swprintf
#endif
#define scstrlen wcslen
#define scstrtod wcstod
#ifdef _SQ64
#define scstrtol wcstoll
#else
#define scstrtol wcstol
#endif
#define scstrtoul wcstoul
#define scvsprintf vswprintf
#define scstrstr wcsstr
@ -89,7 +92,6 @@ typedef wchar_t SQChar;
#define _SC(a) L##a
#define scisspace iswspace
#define scisdigit iswdigit
#define scisprint iswprint
@ -98,20 +100,22 @@ typedef wchar_t SQChar;
#define sciscntrl iswcntrl
#define scisalnum iswalnum
#define sq_rsl(l) ((l)<<WCHAR_SHIFT_MUL)
#else
typedef char SQChar;
#define _SC(a) a
#define scstrcmp strcmp
#ifdef _MSC_VER
#define scsprintf _snprintf
#else
#define scsprintf snprintf
#endif
#define scstrlen strlen
#define scstrtod strtod
#ifdef _SQ64
#ifdef _MSC_VER
#define scstrtol _strtoi64
@ -121,6 +125,7 @@ typedef char SQChar;
#else
#define scstrtol strtol
#endif
#define scstrtoul strtoul
#define scvsprintf vsnprintf
#define scstrstr strstr