-
Notifications
You must be signed in to change notification settings - Fork 112
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
Don't define BOOST_SP_HAS_GCC_INTRINSICS for MSVC #112
Conversation
I wonder what's the root cause for this, because MSVC doesn't define e.g. |
@pdimov I don't actually know. It is certainly confusing to me too but it's a compiler I only have access to via a Continuous Integration setup, and so I can't find out :-( All I know is that it is indeed the compiler in that set-up that sets these I will note that the test as written does not actually check what you want to check. The test tests for compiler preprocessor defines like |
Actually, I will retract what I just said. I found where the
|
Fixed in Kokkos 4.1.00 (kokkos/kokkos#5804). |
At the moment This is likely to become moot soon though, as I'll be removing the platform-specific implementations in favor of always using the standard |
@pdimov The flag to use C++11 features instead of compiler intrinsics is not well documented, and I couldn't find much about it when searching online. Is your recommendation to just set this flag and not use intrinsics? |
No, I never intended to make such a recommendation; from the closing of this PR I infer that you'll fix the problem by upgrading Kokkos? |
We patched the bundled |
@pdimov I inferred that you didn't intend to make such a recommendation in any of the comments above. But is that your recommendation anyway (independent of the problem this PR was about)? At least for reasonably modern compilers, one would expect C++11 atomics to be implemented correctly. |
The plan at the moment is to make C++11 a requirement in 1.86, and if/when I do that, I'll make the C++11 atomics the default, so you shouldn't need to do anything on your side. |
Mirroring dealii/dealii@
e969195
(#16621). We were running into errors likewith MSVC, see dealii/dealii#16621 (comment) and dealii/dealii#16413 (comment). It seems the compiler doesn't support
__atomic_*
intrinsics.