[clang] [CUDA] work around more __noinline__ conflicts with libc++ (PR #74123)

Louis Dionne via cfe-commits cfe-commits at lists.llvm.org
Fri Dec 1 12:40:22 PST 2023


================
@@ -0,0 +1,10 @@
+// CUDA headers define __noinline__ which interferes with libc++'s use of
+// `__attribute((__noinline__))`. In order to avoid compilation error,
+// temporarily unset __noinline__ when we include affected libc++ header.
+
+#pragma push_macro("__noinline__")
+#undef __noinline__
+#define __noinline__ __noinline__
+#include_next "string"
----------------
ldionne wrote:

```suggestion
#include_next <string>
```

https://github.com/llvm/llvm-project/pull/74123


More information about the cfe-commits mailing list