-
-
Notifications
You must be signed in to change notification settings - Fork 262
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
ICE with extern(C++) #927
Comments
That said, it would be nice if TLS variables were supported with extern (C++), since this actually is a C++ struct I'm trying to link against. |
Any comment on the extern to C++ TLS? |
It is likely just an arbitrary restriction in the frontend because nobody has needed it so far. We should definitely be able to implement it in LDC. LLVM does the TLS handling for us, we only need to get the C++ mangling correct. As for DMD: @yebblies? |
Just to be clear, the static in the struct above is deliberately a TLS; it is declared |
And it raises the question, is the LLVM MSVC support compatible with MSC's TLS? |
There is no special name mangling with thread local variables in Visual C++. LLVM uses the same approach as Visual C++ therefore LDC should be compatible with MSC's TLS. |
Cool. I'm surprised they don't mangle differently, there must be some serious ABI difference for TLS from |
These errors do not crash the compiler any longer. To actually add support for further parts of C++, the changes should go into the upstream frontend first. |
ICE with popup error dialog probably not the best way to inform the user of the problem here:
The text was updated successfully, but these errors were encountered: