| /* |
| * Copyright (c) 2017 Linaro Limited |
| * |
| * SPDX-License-Identifier: Apache-2.0 |
| */ |
| |
| #ifndef ZEPHYR_INCLUDE_ZEPHYR_TYPES_H_ |
| #define ZEPHYR_INCLUDE_ZEPHYR_TYPES_H_ |
| |
| #include <stddef.h> |
| #include <stdint.h> |
| |
| #ifdef __cplusplus |
| extern "C" { |
| #endif |
| |
| /* 32 bits on ILP32 builds, 64 bits on LP64 builds */ |
| typedef unsigned long ulong_t; |
| |
| /* |
| * A type with strong alignment requirements, similar to C11 max_align_t. It can |
| * be used to force alignment of data structures allocated on the stack or as |
| * return * type for heap allocators. |
| */ |
| typedef union { |
| long long thelonglong; |
| long double thelongdouble; |
| uintmax_t theuintmax_t; |
| size_t thesize_t; |
| uintptr_t theuintptr_t; |
| void *thepvoid; |
| void (*thepfunc)(void); |
| } z_max_align_t; |
| |
| #ifdef __cplusplus |
| } |
| #endif |
| |
| #endif /* ZEPHYR_INCLUDE_ZEPHYR_TYPES_H_ */ |