[Libclc-dev] [PATCH v3] Don't include <stddef.h>

Jean-Sébastien Pédron dumbbell at FreeBSD.org
Sat Oct 18 04:02:08 PDT 2014


Including a standard or system header isn't allowed in OpenCL.

The type "size_t" needs to be explicitely defined now.

v2: Use __SIZE_TYPE__ instead of unsigned int.
v3: Define ptrdiff_t and NULL.
---
 generic/include/clc/clctypes.h | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/generic/include/clc/clctypes.h b/generic/include/clc/clctypes.h
index ca1372d..169fc5c 100644
--- a/generic/include/clc/clctypes.h
+++ b/generic/include/clc/clctypes.h
@@ -1,12 +1,13 @@
 /* 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 __SIZE_TYPE__ size_t;
+typedef __PTRDIFF_TYPE__ ptrdiff_t;
+
 #define __stdint_join3(a,b,c) a ## b ## c
 
 #define  __intn_t(n) __stdint_join3(__INT, n, _TYPE__)
@@ -84,3 +85,5 @@ typedef __attribute__((ext_vector_type(4))) double double4;
 typedef __attribute__((ext_vector_type(8))) double double8;
 typedef __attribute__((ext_vector_type(16))) double double16;
 #endif
+
+#define NULL __null
-- 
2.1.0





More information about the Libclc-dev mailing list