146035553Spatrick// -*- C++ -*- 2*4bdff4beSrobert//===----------------------------------------------------------------------===// 346035553Spatrick// 446035553Spatrick// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. 546035553Spatrick// See https://llvm.org/LICENSE.txt for license information. 646035553Spatrick// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception 746035553Spatrick// 846035553Spatrick//===----------------------------------------------------------------------===// 946035553Spatrick 1046035553Spatrick#ifndef _LIBCPP_CSETJMP 1146035553Spatrick#define _LIBCPP_CSETJMP 1246035553Spatrick 1346035553Spatrick/* 1446035553Spatrick csetjmp synopsis 1546035553Spatrick 1646035553SpatrickMacros: 1746035553Spatrick 1846035553Spatrick setjmp 1946035553Spatrick 2046035553Spatricknamespace std 2146035553Spatrick{ 2246035553Spatrick 2346035553SpatrickTypes: 2446035553Spatrick 2546035553Spatrick jmp_buf 2646035553Spatrick 2746035553Spatrickvoid longjmp(jmp_buf env, int val); 2846035553Spatrick 2946035553Spatrick} // std 3046035553Spatrick 3146035553Spatrick*/ 3246035553Spatrick 33*4bdff4beSrobert#include <__assert> // all public C++ headers provide the assertion handler 3446035553Spatrick#include <__config> 35*4bdff4beSrobert 3646035553Spatrick#include <setjmp.h> 3746035553Spatrick 38*4bdff4beSrobert#ifndef _LIBCPP_SETJMP_H 39*4bdff4beSrobert# error <csetjmp> tried including <setjmp.h> but didn't find libc++'s <setjmp.h> header. \ 40*4bdff4beSrobert This usually means that your header search paths are not configured properly. \ 41*4bdff4beSrobert The header search paths should contain the C++ Standard Library headers before \ 42*4bdff4beSrobert any C Standard Library, and you are probably using compiler flags that make that \ 43*4bdff4beSrobert not be the case. 44*4bdff4beSrobert#endif 45*4bdff4beSrobert 4646035553Spatrick#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) 4746035553Spatrick# pragma GCC system_header 4846035553Spatrick#endif 4946035553Spatrick 5046035553Spatrick_LIBCPP_BEGIN_NAMESPACE_STD 5146035553Spatrick 5276d0caaeSpatrickusing ::jmp_buf _LIBCPP_USING_IF_EXISTS; 5376d0caaeSpatrickusing ::longjmp _LIBCPP_USING_IF_EXISTS; 5446035553Spatrick 5546035553Spatrick_LIBCPP_END_NAMESPACE_STD 5646035553Spatrick 5746035553Spatrick#endif // _LIBCPP_CSETJMP 58