summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorMan, Jianting (Meco) <[email protected]>2022-05-18 22:35:32 -0400
committerGitHub <[email protected]>2022-05-19 10:35:32 +0800
commitc147ff417cd8f36a96e4bbee55c76092b85513e3 (patch)
treea663597bdd08149f8d210362b5db2a00cfb797e7 /include
parent50a42331e6c3aa138bea2ff8ecedf8ad719dc3b7 (diff)
[rtdef][libc] solve the conflicts between libc data types and rtdef data types (#5961)
Diffstat (limited to 'include')
-rw-r--r--include/rtdef.h15
1 files changed, 15 insertions, 0 deletions
diff --git a/include/rtdef.h b/include/rtdef.h
index 0ab52f977d..4da65aa356 100644
--- a/include/rtdef.h
+++ b/include/rtdef.h
@@ -71,6 +71,20 @@ extern "C" {
/* RT-Thread basic data type definitions */
#ifndef RT_USING_ARCH_DATA_TYPE
+#ifdef RT_USING_LIBC
+#include <stdint.h>
+#include <stddef.h>
+typedef int8_t rt_int8_t; /**< 8bit integer type */
+typedef int16_t rt_int16_t; /**< 16bit integer type */
+typedef int32_t rt_int32_t; /**< 32bit integer type */
+typedef uint8_t rt_uint8_t; /**< 8bit unsigned integer type */
+typedef uint16_t rt_uint16_t; /**< 16bit unsigned integer type */
+typedef uint32_t rt_uint32_t; /**< 32bit unsigned integer type */
+typedef int64_t rt_int64_t; /**< 64bit integer type */
+typedef uint64_t rt_uint64_t; /**< 64bit unsigned integer type */
+typedef size_t rt_size_t; /**< Type for size number */
+
+#else
typedef signed char rt_int8_t; /**< 8bit integer type */
typedef signed short rt_int16_t; /**< 16bit integer type */
typedef signed int rt_int32_t; /**< 32bit integer type */
@@ -87,6 +101,7 @@ typedef signed long long rt_int64_t; /**< 64bit integer type
typedef unsigned long long rt_uint64_t; /**< 64bit unsigned integer type */
typedef unsigned int rt_size_t; /**< Type for size number */
#endif /* ARCH_CPU_64BIT */
+#endif /* RT_USING_LIBC */
#endif /* RT_USING_ARCH_DATA_TYPE */
typedef int rt_bool_t; /**< boolean type */