[llvm-branch-commits] [clang] 431af6d - opencl: Ensure printf symbol is not mangled. (#150210)
Tobias Hieta via llvm-branch-commits
llvm-branch-commits at lists.llvm.org
Tue Jul 29 00:55:37 PDT 2025
Author: Felix Weiglhofer
Date: 2025-07-29T09:55:29+02:00
New Revision: 431af6d04c9da4cab060f429bade6ed341d080e5
URL: https://github.com/llvm/llvm-project/commit/431af6d04c9da4cab060f429bade6ed341d080e5
DIFF: https://github.com/llvm/llvm-project/commit/431af6d04c9da4cab060f429bade6ed341d080e5.diff
LOG: opencl: Ensure printf symbol is not mangled. (#150210)
Fixes #122453.
(cherry picked from commit a22d010002baf761f84d0a8fa5fcaaf6f3b1455f)
Added:
Modified:
clang/lib/Headers/opencl-c-base.h
Removed:
################################################################################
diff --git a/clang/lib/Headers/opencl-c-base.h b/clang/lib/Headers/opencl-c-base.h
index 2b7f5043e09e4..6206a347852be 100644
--- a/clang/lib/Headers/opencl-c-base.h
+++ b/clang/lib/Headers/opencl-c-base.h
@@ -697,7 +697,16 @@ template <typename _Tp> struct __remove_address_space<__constant _Tp> {
#if defined(__OPENCL_CPP_VERSION__) || (__OPENCL_C_VERSION__ >= CL_VERSION_1_2)
// OpenCL v1.2 s6.12.13, v2.0 s6.13.13 - printf
-int printf(__constant const char* st, ...) __attribute__((format(printf, 1, 2)));
+#ifdef __OPENCL_CPP_VERSION__
+#define CLINKAGE extern "C"
+#else
+#define CLINKAGE
+#endif
+
+CLINKAGE int printf(__constant const char *st, ...)
+ __attribute__((format(printf, 1, 2)));
+
+#undef CLINKAGE
#endif
#ifdef cl_intel_device_side_avc_motion_estimation
More information about the llvm-branch-commits
mailing list