Index: mesa-23.0.0/include/CL/cl_platform.h =================================================================== --- mesa-23.0.0.orig/include/CL/cl_platform.h +++ mesa-23.0.0/include/CL/cl_platform.h @@ -385,7 +385,9 @@ typedef unsigned int cl_GLenum; /* Define basic vector types */ #if defined( __VEC__ ) #if !defined(__clang__) + #ifndef __cplusplus #include /* may be omitted depending on compiler. AltiVec spec provides no way to detect whether the header is required. */ + #endif #endif typedef __vector unsigned char __cl_uchar16; typedef __vector signed char __cl_char16; Index: mesa-23.0.0/src/gallium/drivers/llvmpipe/lp_rast_tri.c =================================================================== --- mesa-23.0.0.orig/src/gallium/drivers/llvmpipe/lp_rast_tri.c +++ mesa-23.0.0/src/gallium/drivers/llvmpipe/lp_rast_tri.c @@ -488,7 +488,9 @@ lp_rast_triangle_32_3_4(struct lp_raster #if defined(_ARCH_PWR8) && UTIL_ARCH_LITTLE_ENDIAN +#ifndef __cplusplus #include +#endif #include "util/u_pwr8.h" static inline void Index: mesa-23.0.0/src/gallium/drivers/llvmpipe/lp_setup_tri.c =================================================================== --- mesa-23.0.0.orig/src/gallium/drivers/llvmpipe/lp_setup_tri.c +++ mesa-23.0.0/src/gallium/drivers/llvmpipe/lp_setup_tri.c @@ -46,7 +46,9 @@ #if DETECT_ARCH_SSE #include #elif defined(_ARCH_PWR8) && UTIL_ARCH_LITTLE_ENDIAN +#ifndef __cplusplus #include +#endif #include "util/u_pwr8.h" #endif