
Zitat von Andrey Semashev <andrey.semashev@gmail.com>:
I'm not too familiar with delay-loading, but why can't these platforms be supported by hiding the TLS-access behind a function call so it always originates from the same module?
I'm not sure I understand how it helps. Could you elaborate?
I assumed an executable linked against boost.
in that case, I guess I am suggesting to add a public interface like static_thread_specific_ptr, to support the semantics of __declspec(thread)/__thread/thread_local, i.e. crash when used from delay-loaded modules on platforms that don't support it.
That is a different extension from what I am proposing. But frankly speaking, I don't see much use from it if it crashes on some setups and I can't detect such setups in my code that uses this component.
I could reply to this in terms of content, but this is easier: what you're saying by that is that declspec(thread)/... make no sense on platforms that don't support delay-loading with static TSS, and was/will never be used. that's obviously not the case. right now boost offers a platform independent interface to TlsAlloc/..., but not to declspec(thread)/...