[clang] 465a3ce - [CUDA][HIP] improve error message for missing cmath (#122155)
via cfe-commits
cfe-commits at lists.llvm.org
Thu Jan 9 07:58:11 PST 2025
Author: Yaxun (Sam) Liu
Date: 2025-01-09T10:58:06-05:00
New Revision: 465a3ce9fac1fcf49d5772f70564973a73748d57
URL: https://github.com/llvm/llvm-project/commit/465a3ce9fac1fcf49d5772f70564973a73748d57
DIFF: https://github.com/llvm/llvm-project/commit/465a3ce9fac1fcf49d5772f70564973a73748d57.diff
LOG: [CUDA][HIP] improve error message for missing cmath (#122155)
One common error seen in CUDA/HIP compilation is:
fatal error: 'cmath' file not found
which is due to inproper installation of standard C++ libraries.
Since it happens with #include_next, users may feel confusing which
cmath is not found and how to fix it.
Add an error directive to help users resolve this issue.
Added:
Modified:
clang/lib/Headers/cuda_wrappers/cmath
Removed:
################################################################################
diff --git a/clang/lib/Headers/cuda_wrappers/cmath b/clang/lib/Headers/cuda_wrappers/cmath
index 45f89beec9b4df..7deca678bf252e 100644
--- a/clang/lib/Headers/cuda_wrappers/cmath
+++ b/clang/lib/Headers/cuda_wrappers/cmath
@@ -24,7 +24,11 @@
#ifndef __CLANG_CUDA_WRAPPERS_CMATH
#define __CLANG_CUDA_WRAPPERS_CMATH
+#if __has_include_next(<cmath>)
#include_next <cmath>
+#else
+#error "Could not find standard C++ header 'cmath'. Add -v to your compilation command to check the include paths being searched. You may need to install the appropriate standard C++ library package corresponding to the search path."
+#endif
#if defined(_LIBCPP_STD_VER)
More information about the cfe-commits
mailing list