1
0

Use an unreserved qualifier for thread local storage

Fixes #1906
This commit is contained in:
Cengiz Can 2015-11-03 00:21:37 +02:00 committed by Cengiz Can
parent 445938e01d
commit bb48d8a7e8

View File

@ -8,16 +8,18 @@
#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)
{