[Libclc-dev] [PATCH] Don't include <stddef.h>
Matt Arsenault
Matthew.Arsenault at amd.com
Fri Oct 17 15:22:38 PDT 2014
On 10/17/2014 03:19 PM, Jean-Sébastien Pédron wrote:
> Including a standard or system header isn't allowed in OpenCL.
>
> The type "size_t" needs to be explicitely defined now.
> ---
> generic/include/clc/clctypes.h | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/generic/include/clc/clctypes.h b/generic/include/clc/clctypes.h
> index ca1372d..f2b7d88 100644
> --- a/generic/include/clc/clctypes.h
> +++ b/generic/include/clc/clctypes.h
> @@ -1,12 +1,12 @@
> /* 6.1.1 Built-in Scalar Data Types */
>
> -#include <stddef.h>
> -
> typedef unsigned char uchar;
> typedef unsigned short ushort;
> typedef unsigned int uint;
> typedef unsigned long ulong;
>
> +typedef unsigned int size_t;
> +
> #define __stdint_join3(a,b,c) a ## b ## c
>
> #define __intn_t(n) __stdint_join3(__INT, n, _TYPE__)
This will only work correctly for 32-bit targets. This should be typedef
__SIZE_TYPE__ size_t to be portable
More information about the Libclc-dev
mailing list