From 27207436367eb10ec087ad47bfaf1b442bcf62b9 Mon Sep 17 00:00:00 2001 From: Anatol Belski Date: Sat, 20 Sep 2014 22:13:10 +0200 Subject: [PATCH] vars with __declspec(thread) cannot use __declspec(dllexport) --- TSRM/TSRM.c | 4 ++++ TSRM/TSRM.h | 4 ++++ 2 files changed, 8 insertions(+) diff --git a/TSRM/TSRM.c b/TSRM/TSRM.c index 32c28993f84..6b0bf445e9c 100644 --- a/TSRM/TSRM.c +++ b/TSRM/TSRM.c @@ -63,8 +63,12 @@ static int tsrm_error_level; static FILE *tsrm_error_file; #ifdef USE___THREAD +#ifdef TSRM_WIN32 +TSRM_TLS void *tsrm_ls_cache = 0; +#else TSRM_API TSRM_TLS void *tsrm_ls_cache = 0; #endif +#endif #ifdef PASS_TSRMLS # define CALL_TSRMG_CTOR(ctor, globale, storage) (ctor)((globale), (storage)) diff --git a/TSRM/TSRM.h b/TSRM/TSRM.h index f77dcbf0358..840c303d6c5 100644 --- a/TSRM/TSRM.h +++ b/TSRM/TSRM.h @@ -109,7 +109,11 @@ extern "C" { # define TSRM_TLS __thread # endif +#ifdef TSRM_WIN32 +extern TSRM_TLS void *tsrm_ls_cache; +#else TSRM_API extern TSRM_TLS void *tsrm_ls_cache; +#endif #define TSRMG(id, type, element) \ ((type)((tsrm_uintptr_t)tsrm_ls_cache + id##_offset))->element