From 5b6b04375270f3f3ba90780ecf692d56af157e49 Mon Sep 17 00:00:00 2001 From: peterbell10 Date: Sat, 21 Oct 2017 14:29:20 +0100 Subject: Fix tool builds on AppleClang --- Tools/GrownBiomeGenVisualiser/Globals.h | 66 +++++++++++++++------------------ 1 file changed, 30 insertions(+), 36 deletions(-) (limited to 'Tools/GrownBiomeGenVisualiser') diff --git a/Tools/GrownBiomeGenVisualiser/Globals.h b/Tools/GrownBiomeGenVisualiser/Globals.h index 790111572..bc2b6834f 100644 --- a/Tools/GrownBiomeGenVisualiser/Globals.h +++ b/Tools/GrownBiomeGenVisualiser/Globals.h @@ -12,30 +12,30 @@ #if defined(_MSC_VER) // MSVC produces warning C4481 on the override keyword usage, so disable the warning altogether #pragma warning(disable:4481) - + // Disable some warnings that we don't care about: #pragma warning(disable:4100) #define OBSOLETE __declspec(deprecated) - + // No alignment needed in MSVC #define ALIGN_8 #define ALIGN_16 - + #define FORMATSTRING(formatIndex, va_argsIndex) // MSVC has its own custom version of zu format #define SIZE_T_FMT "%Iu" #define SIZE_T_FMT_PRECISION(x) "%" #x "Iu" #define SIZE_T_FMT_HEX "%Ix" - + #define NORETURN __declspec(noreturn) #elif defined(__GNUC__) // TODO: Can GCC explicitly mark classes as abstract (no instances can be created)? #define abstract - + // override is part of c++11 #if __cplusplus < 201103L #define override @@ -48,7 +48,7 @@ // Some portability macros :) #define stricmp strcasecmp - + #define FORMATSTRING(formatIndex, va_argsIndex) __attribute__((format (printf, formatIndex, va_argsIndex))) #if defined(_WIN32) @@ -69,18 +69,18 @@ #define SIZE_T_FMT_PRECISION(x) "%" #x "zu" #define SIZE_T_FMT_HEX "%zx" #endif - + #define NORETURN __attribute((__noreturn__)) #else #error "You are using an unsupported compiler, you might need to #define some stuff here for your compiler" - + /* // Copy and uncomment this into another #elif section based on your compiler identification - + // Explicitly mark classes as abstract (no instances can be created) #define abstract - + // Mark virtual methods as overriding (forcing them to have a virtual function of the same signature in the base class) #define override @@ -91,8 +91,8 @@ #define ALIGN_8 #define ALIGN_16 */ - - #define FORMATSTRING(formatIndex,va_argsIndex) __attribute__((format (printf, formatIndex, va_argsIndex))) + + #define FORMATSTRING(formatIndex, va_argsIndex) __attribute__((format (printf, formatIndex, va_argsIndex))) #endif @@ -133,16 +133,16 @@ typedef unsigned char Byte; #include #include #include - + // Windows SDK defines min and max macros, messing up with our std::min and std::max usage #undef min #undef max - + // Windows SDK defines GetFreeSpace as a constant, probably a Win16 API remnant #ifdef GetFreeSpace #undef GetFreeSpace #endif // GetFreeSpace - + #define SocketError WSAGetLastError() #else #include @@ -152,19 +152,16 @@ typedef unsigned char Byte; #include #include #include - #include #include - #include #include #include - #include #include #include #include - #include + #include #include - + typedef int SOCKET; enum { @@ -172,9 +169,6 @@ typedef unsigned char Byte; }; #define closesocket close #define SocketError errno -#if !defined(ANDROID_NDK) - #include -#endif #endif #if !defined(ANDROID_NDK) @@ -192,11 +186,11 @@ typedef unsigned char Byte; // CRT stuff: -#include -#include -#include -#include -#include +#include +#include +#include +#include +#include @@ -227,17 +221,17 @@ typedef unsigned char Byte; // Common definitions: -/// Evaluates to the number of elements in an array (compile-time!) +/** Evaluates to the number of elements in an array (compile-time!) */ #define ARRAYCOUNT(X) (sizeof(X) / sizeof(*(X))) -/// Allows arithmetic expressions like "32 KiB" (but consider using parenthesis around it, "(32 KiB)" ) +/** Allows arithmetic expressions like "32 KiB" (but consider using parenthesis around it, "(32 KiB)") */ #define KiB * 1024 #define MiB * 1024 * 1024 -/// Faster than (int)floorf((float)x / (float)div) -#define FAST_FLOOR_DIV( x, div ) ( (x) < 0 ? (((int)x / div) - 1) : ((int)x / div) ) +/** Faster than (int)floorf((float)x / (float)div) */ +#define FAST_FLOOR_DIV(x, div) ((x) < 0 ? (((int)x / div) - 1) : ((int)x / div)) -// Own version of assert() that writes failed assertions to the log for review +/** Own version of assert() that writes failed assertions to the log for review */ #ifdef NDEBUG #define ASSERT(x) ((void)0) #else @@ -245,17 +239,17 @@ typedef unsigned char Byte; #endif // Pretty much the same as ASSERT() but stays in Release builds -#define VERIFY( x ) ( !!(x) || ( LOGERROR("Verification failed: %s, file %s, line %i", #x, __FILE__, __LINE__ ), exit(1), 0 ) ) +#define VERIFY(x) (!!(x) || (LOGERROR("Verification failed: %s, file %s, line %i", #x, __FILE__, __LINE__), exit(1), 0)) -/// A generic interface used mainly in ForEach() functions +/** A generic interface used mainly in ForEach() functions */ template class cItemCallback { public: - /// Called for each item in the internal list; return true to stop the loop, or false to continue enumerating + /** Called for each item in the internal list; return true to stop the loop, or false to continue enumerating */ virtual bool Item(Type * a_Type) = 0; virtual ~cItemCallback() {} } ; -- cgit v1.2.3