Author: Michael Liao Date: 2021-01-20T16:43:44-05:00 New Revision: 7b5d7c7b0a2479de007ad18b947459b799991667
URL: https://github.com/llvm/llvm-project/commit/7b5d7c7b0a2479de007ad18b947459b799991667 DIFF: https://github.com/llvm/llvm-project/commit/7b5d7c7b0a2479de007ad18b947459b799991667.diff LOG: [hip] Fix `<complex>` compilation on Windows with VS2019. Differential Revision: https://reviews.llvm.org/D95075 Added: Modified: clang/lib/Headers/__clang_hip_cmath.h Removed: ################################################################################ diff --git a/clang/lib/Headers/__clang_hip_cmath.h b/clang/lib/Headers/__clang_hip_cmath.h index 128d64e271b8..cd22a2df954b 100644 --- a/clang/lib/Headers/__clang_hip_cmath.h +++ b/clang/lib/Headers/__clang_hip_cmath.h @@ -626,6 +626,13 @@ _GLIBCXX_END_NAMESPACE_VERSION // Define device-side math functions from <ymath.h> on MSVC. #if defined(_MSC_VER) + +// Before VS2019, `<ymath.h>` is also included in `<limits>` and other headers. +// But, from VS2019, it's only included in `<complex>`. Need to include +// `<ymath.h>` here to ensure C functions declared there won't be markded as +// `__host__` and `__device__` through `<complex>` wrapper. +#include <ymath.h> + #if defined(__cplusplus) extern "C" { #endif // defined(__cplusplus) _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits