10#if !defined(__STDDEF_H) || defined(__need_ptrdiff_t) || \
11 defined(__need_size_t) || defined(__need_wchar_t) || \
12 defined(__need_NULL) || defined(__need_wint_t)
14#if !defined(__need_ptrdiff_t) && !defined(__need_size_t) && \
15 !defined(__need_wchar_t) && !defined(__need_NULL) && \
16 !defined(__need_wint_t)
18#if !__has_feature(modules)
21#define __need_ptrdiff_t
25#define __need_STDDEF_H_misc
29#if defined(__need_ptrdiff_t)
30#if !defined(_PTRDIFF_T) || __has_feature(modules)
32#if !__has_feature(modules)
37#undef __need_ptrdiff_t
40#if defined(__need_size_t)
41#if !defined(_SIZE_T) || __has_feature(modules)
43#if !__has_feature(modules)
51#if defined(__need_STDDEF_H_misc)
54#if (defined(__STDC_WANT_LIB_EXT1__) && __STDC_WANT_LIB_EXT1__ >= 1 && \
55 !defined(_RSIZE_T)) || __has_feature(modules)
57#if !__has_feature(modules)
60typedef __SIZE_TYPE__ rsize_t;
64#if defined(__need_wchar_t)
67#if !defined(_WCHAR_T) || __has_feature(modules)
68#if !__has_feature(modules)
70#if defined(_MSC_EXTENSIONS)
71#define _WCHAR_T_DEFINED
80#if defined(__need_NULL)
83# if !defined(__MINGW32__) && !defined(_MSC_VER)
89# define NULL ((void*)0)
92#if defined(_MSC_EXTENSIONS) && defined(_NATIVE_NULLPTR_SUPPORTED)
93namespace std {
typedef decltype(
nullptr) nullptr_t; }
94using ::std::nullptr_t;
100#if defined(__need_STDDEF_H_misc)
101#if __STDC_VERSION__ >= 201112L || __cplusplus >= 201103L
104#define offsetof(t, d) __builtin_offsetof(t, d)
105#undef __need_STDDEF_H_misc
110#if defined(__need_wint_t)
112#if !defined(_WINT_T) || __has_feature(modules)
113#if !__has_feature(modules)
116typedef __WINT_TYPE__ wint_t;
__PTRDIFF_TYPE__ ptrdiff_t