123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354 |
- // -*- 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
- //
- //===----------------------------------------------------------------------===//
- #ifndef _LIBCPP_CSETJMP
- #define _LIBCPP_CSETJMP
- /*
- csetjmp synopsis
- Macros:
- setjmp
- namespace std
- {
- Types:
- jmp_buf
- void longjmp(jmp_buf env, int val);
- } // std
- */
- #include <__config>
- // <setjmp.h> is not provided by libc++
- #if __has_include(<setjmp.h>)
- # include <setjmp.h>
- # ifdef _LIBCPP_SETJMP_H
- # error "If libc++ starts defining <setjmp.h>, the __has_include check should move to libc++'s <setjmp.h>"
- # endif
- #endif
- #if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
- # pragma GCC system_header
- #endif
- _LIBCPP_BEGIN_NAMESPACE_STD
- using ::jmp_buf _LIBCPP_USING_IF_EXISTS;
- using ::longjmp _LIBCPP_USING_IF_EXISTS;
- _LIBCPP_END_NAMESPACE_STD
- #endif // _LIBCPP_CSETJMP
|