setjmp.h 847 B

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  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. #ifndef _LIBCPP_SETJMP_H
  10. #define _LIBCPP_SETJMP_H
  11. /*
  12. setjmp.h synopsis
  13. Macros:
  14. setjmp
  15. Types:
  16. jmp_buf
  17. void longjmp(jmp_buf env, int val);
  18. */
  19. #include <__config>
  20. #if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
  21. # pragma GCC system_header
  22. #endif
  23. #if __has_include_next(<setjmp.h>)
  24. # include_next <setjmp.h>
  25. #endif
  26. #ifdef __cplusplus
  27. #ifndef setjmp
  28. #define setjmp(env) setjmp(env)
  29. #endif
  30. #endif // __cplusplus
  31. #endif // _LIBCPP_SETJMP_H