summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorCengiz Can <cengizIO@users.noreply.github.com>2015-11-02 23:21:37 +0100
committerCengiz Can <canc@eucanc.local>2015-11-03 10:09:40 +0100
commitbb48d8a7e837266b8557ed6c8ed6023ac6be3c8b (patch)
tree33cf4667605c2ff702fe5807e02abbd19a2eac9d
parentMerge pull request #2464 from bibo38/assertfix (diff)
downloadcuberite-bb48d8a7e837266b8557ed6c8ed6023ac6be3c8b.tar
cuberite-bb48d8a7e837266b8557ed6c8ed6023ac6be3c8b.tar.gz
cuberite-bb48d8a7e837266b8557ed6c8ed6023ac6be3c8b.tar.bz2
cuberite-bb48d8a7e837266b8557ed6c8ed6023ac6be3c8b.tar.lz
cuberite-bb48d8a7e837266b8557ed6c8ed6023ac6be3c8b.tar.xz
cuberite-bb48d8a7e837266b8557ed6c8ed6023ac6be3c8b.tar.zst
cuberite-bb48d8a7e837266b8557ed6c8ed6023ac6be3c8b.zip
-rw-r--r--src/FastRandom.cpp20
1 files changed, 11 insertions, 9 deletions
diff --git a/src/FastRandom.cpp b/src/FastRandom.cpp
index c1716f026..0d9c361af 100644
--- a/src/FastRandom.cpp
+++ b/src/FastRandom.cpp
@@ -8,17 +8,19 @@
#include <random>
-#ifdef _WIN32
- #define thread_local static __declspec(thread)
-#elif defined __APPLE__
- #define thread_local static __thread
+#if defined (__GNUC__)
+ #define ATTRIBUTE_TLS static __thread
+#elif defined (_MSC_VER)
+ #define ATTRIBUTE_TLS static __declspec(thread)
+#else
+ #error "Unknown thread local storage qualifier"
#endif
static unsigned int GetRandomSeed()
{
- thread_local bool SeedCounterInitialized = 0;
- thread_local unsigned int SeedCounter = 0;
-
+ ATTRIBUTE_TLS bool SeedCounterInitialized = 0;
+ ATTRIBUTE_TLS unsigned int SeedCounter = 0;
+
if (!SeedCounterInitialized)
{
std::random_device rd;
@@ -47,8 +49,8 @@ public:
TestInts();
TestFloats();
}
-
-
+
+
void TestInts(void)
{
printf("Testing ints...\n");