Files
gentoo/dev-util/hip/files/hip-7.0.2-fix-libcxx-noinline.patch

20 lines
614 B
Diff

Unsetting __noinline__ before inclusion of libc++ __config breaks libc++ headers.
Upstream PR: https://github.com/ROCm/rocm-systems/pull/1875
--- a/hipamd/include/hip/amd_detail/host_defines.h
+++ b/hipamd/include/hip/amd_detail/host_defines.h
@@ -257,6 +257,13 @@ typedef __hip_internal::int64_t __hip_int64_t;
#define __global__
+// __config in libc++ fails on `__has_attribute(__noinline__)` if __noinline__ is emptied
+#if defined(__cplusplus) && defined(__has_include)
+# if __has_include(<__config>)
+# include <__config>
+# endif
+#endif
+
#define __noinline__
#define __forceinline__ inline