// -*- 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 // //===----------------------------------------------------------------------===// //============================================================================== // NOTICE: This file has been modified by Green Hills Software, Inc. Such // modifications are subject to copyright by Green Hills Software, Inc. See the // "Green Hills Software Modifications" section in the LICENSE.txt included with // this distribution for more information. //============================================================================== #ifndef _LIBCPP_FENV_H #define _LIBCPP_FENV_H /* fenv.h synopsis This entire header is C99 / C++0X Macros: FE_DIVBYZERO FE_INEXACT FE_INVALID FE_OVERFLOW FE_UNDERFLOW FE_ALL_EXCEPT FE_DOWNWARD FE_TONEAREST FE_TOWARDZERO FE_UPWARD FE_DFL_ENV Types: fenv_t fexcept_t int feclearexcept(int excepts); int fegetexceptflag(fexcept_t* flagp, int excepts); int feraiseexcept(int excepts); int fesetexceptflag(const fexcept_t* flagp, int excepts); int fetestexcept(int excepts); int fegetround(); int fesetround(int round); int fegetenv(fenv_t* envp); int feholdexcept(fenv_t* envp); int fesetenv(const fenv_t* envp); int feupdateenv(const fenv_t* envp); */ #include <__config> #if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) # pragma GCC system_header #endif #ifndef __ghs__ #if __has_include_next() # include_next #endif #else // __ghs__ #pragma ghs nowarning 518 # include_next #pragma ghs endnowarning 518 #endif // __ghs__ #if defined(__ghs__) #pragma ghs start_cxx_lib_header #pragma ghs startdata #if defined(__ghs_max_pack_value) #pragma pack (push, __ghs_max_pack_value) #endif #endif #ifdef __cplusplus extern "C++" { #ifdef feclearexcept #undef feclearexcept #endif #ifdef fegetexceptflag #undef fegetexceptflag #endif #ifdef feraiseexcept #undef feraiseexcept #endif #ifdef fesetexceptflag #undef fesetexceptflag #endif #ifdef fetestexcept #undef fetestexcept #endif #ifdef fegetround #undef fegetround #endif #ifdef fesetround #undef fesetround #endif #ifdef fegetenv #undef fegetenv #endif #ifdef feholdexcept #undef feholdexcept #endif #ifdef fesetenv #undef fesetenv #endif #ifdef feupdateenv #undef feupdateenv #endif } // extern "C++" #endif // defined(__cplusplus) #if defined(__ghs__) #if defined(__ghs_max_pack_value) #pragma pack(pop) #endif #pragma ghs enddata #pragma ghs end_cxx_lib_header #endif #endif // _LIBCPP_FENV_H