diff options
author | Felix Weiglhofer <9267733+fweig@users.noreply.github.com> | 2025-07-28 16:24:54 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2025-07-28 16:24:54 +0200 |
commit | a22d010002baf761f84d0a8fa5fcaaf6f3b1455f (patch) | |
tree | 42a621964fbb799dec48af0536095b0163c8c57e /clang/lib | |
parent | a1a610a1285fe4cde9f5f6a4a759da95266bdcb6 (diff) | |
download | llvm-a22d010002baf761f84d0a8fa5fcaaf6f3b1455f.zip llvm-a22d010002baf761f84d0a8fa5fcaaf6f3b1455f.tar.gz llvm-a22d010002baf761f84d0a8fa5fcaaf6f3b1455f.tar.bz2 |
opencl: Ensure printf symbol is not mangled. (#150210)
Fixes #122453.
Diffstat (limited to 'clang/lib')
-rw-r--r-- | clang/lib/Headers/opencl-c-base.h | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/clang/lib/Headers/opencl-c-base.h b/clang/lib/Headers/opencl-c-base.h index 2b7f504..6206a34 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 |