
"Bronek Kozicki" wrote
I think that definition of _tls_used (from Holger) is something new and useful :>
That's great! _tls_used variable appears to be absolutely required. To explain, I was testing one ordinary (not using any boost code) static library with VC7.1 and forcing .tss segment creation with __declspec(thread) as in example: <code> void NTAPI tls_callback (PVOID, DWORD Reason, PVOID) { if(Reason == DLL_THREAD_DETACH) { on_thread_exit(); } else if(Reason == DLL_PROCESS_DETACH) { on_thread_exit(); on_process_exit(); } } #pragma data_seg(push, old_seg) #pragma data_seg(".CRT$XLB") DWORD tls_callback_ptr = (DWORD)tls_callback; #pragma data_seg(pop, old_seg) __declspec(thread) int ithread; ... some other library code </code> I was surprised to find that tls_callback code was not invoked at all! Tony