Details
-
Suggestion
-
Resolution: Fixed
-
P3: Somewhat important
-
6.8.0
-
None
-
MSVC; Integrity
-
-
16c5398aa (dev), ef1b24558 (6.8)
Description
qnumeric.h which is always included by QtCore, includes intrin.h for MSVC compilers and arm64_ghs.h for Integrity.
Unfortunately this renders it impossible to use SIMD Everywhere (SIMDe) because it uses its own headers to define the SIMD instructions and they conflict with those defined by the standard headers above.
This should be easy to resolve, simply move the use of the AVX intrinsics that are used for qAddOverflow and qMulOverflow into the source code for qnumeric.cpp and include the platform specific headers into the private header used by qnumeric.cpp
I propose to create a fix on the dev branch for this issue.