cassert 862 B

1234567891011121314151617181920212223242526272829303132
  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. cassert synopsis
  11. Macros:
  12. assert
  13. */
  14. #include <__assert> // all public C++ headers provide the assertion handler
  15. #include <__config>
  16. // <assert.h> is not provided by libc++
  17. #if __has_include(<assert.h>)
  18. # include <assert.h>
  19. # ifdef _LIBCPP_ASSERT_H
  20. # error "If libc++ starts defining <assert.h>, the __has_include check should move to libc++'s <assert.h>"
  21. # endif
  22. #endif
  23. #if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
  24. # pragma GCC system_header
  25. #endif