stddef.h 1019 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. // -*- C++ -*-
  2. //===----------------------------------------------------------------------===//
  3. //
  4. // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
  5. // See https://llvm.org/LICENSE.txt for license information.
  6. // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
  7. //
  8. //===----------------------------------------------------------------------===//
  9. /*
  10. stddef.h synopsis
  11. Macros:
  12. offsetof(type,member-designator)
  13. NULL
  14. Types:
  15. ptrdiff_t
  16. size_t
  17. max_align_t // C++11
  18. nullptr_t
  19. */
  20. #include <__config>
  21. #if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
  22. # pragma GCC system_header
  23. #endif
  24. // Note: This include is outside of header guards because we sometimes get included multiple times
  25. // with different defines and the underlying <stddef.h> will know how to deal with that.
  26. #include_next <stddef.h>
  27. #ifndef _LIBCPP_STDDEF_H
  28. # define _LIBCPP_STDDEF_H
  29. # ifdef __cplusplus
  30. typedef decltype(nullptr) nullptr_t;
  31. # endif
  32. #endif // _LIBCPP_STDDEF_H