summaryrefslogtreecommitdiff
path: root/third_party/libcxx/include/c++/v1/stddef.h
diff options
context:
space:
mode:
Diffstat (limited to 'third_party/libcxx/include/c++/v1/stddef.h')
-rw-r--r--third_party/libcxx/include/c++/v1/stddef.h48
1 files changed, 48 insertions, 0 deletions
diff --git a/third_party/libcxx/include/c++/v1/stddef.h b/third_party/libcxx/include/c++/v1/stddef.h
new file mode 100644
index 0000000..e9e259d
--- /dev/null
+++ b/third_party/libcxx/include/c++/v1/stddef.h
@@ -0,0 +1,48 @@
+// -*- C++ -*-
+//===----------------------------------------------------------------------===//
+//
+// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
+// See https://llvm.org/LICENSE.txt for license information.
+// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
+//
+//===----------------------------------------------------------------------===//
+
+/*
+ stddef.h synopsis
+
+Macros:
+
+ offsetof(type,member-designator)
+ NULL
+
+Types:
+
+ ptrdiff_t
+ size_t
+ max_align_t // C++11
+ nullptr_t
+
+*/
+
+#if defined(__cplusplus) && __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+# include <__cxx03/__config>
+#else
+# include <__config>
+#endif
+
+#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
+# pragma GCC system_header
+#endif
+
+// Note: This include is outside of header guards because we sometimes get included multiple times
+// with different defines and the underlying <stddef.h> will know how to deal with that.
+#include_next <stddef.h>
+
+#ifndef _LIBCPP_STDDEF_H
+# define _LIBCPP_STDDEF_H
+
+# ifdef __cplusplus
+typedef decltype(nullptr) nullptr_t;
+# endif
+
+#endif // _LIBCPP_STDDEF_H