1227825Stheraven// -*- C++ -*- 2300770Sdim//===---------------------------- cfenv -----------------------------------===// 3227825Stheraven// 4353358Sdim// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. 5353358Sdim// See https://llvm.org/LICENSE.txt for license information. 6353358Sdim// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception 7227825Stheraven// 8227825Stheraven//===----------------------------------------------------------------------===// 9227825Stheraven 10227825Stheraven#ifndef _LIBCPP_CFENV 11227825Stheraven#define _LIBCPP_CFENV 12227825Stheraven 13227825Stheraven/* 14227825Stheraven cfenv synopsis 15227825Stheraven 16227825StheravenThis entire header is C99 / C++0X 17227825Stheraven 18227825StheravenMacros: 19227825Stheraven 20227825Stheraven FE_DIVBYZERO 21227825Stheraven FE_INEXACT 22227825Stheraven FE_INVALID 23227825Stheraven FE_OVERFLOW 24227825Stheraven FE_UNDERFLOW 25227825Stheraven FE_ALL_EXCEPT 26227825Stheraven FE_DOWNWARD 27227825Stheraven FE_TONEAREST 28227825Stheraven FE_TOWARDZERO 29227825Stheraven FE_UPWARD 30227825Stheraven FE_DFL_ENV 31227825Stheraven 32227825Stheravennamespace std 33227825Stheraven{ 34227825Stheraven 35227825StheravenTypes: 36227825Stheraven 37227825Stheraven fenv_t 38227825Stheraven fexcept_t 39227825Stheraven 40227825Stheravenint feclearexcept(int excepts); 41227825Stheravenint fegetexceptflag(fexcept_t* flagp, int excepts); 42227825Stheravenint feraiseexcept(int excepts); 43227825Stheravenint fesetexceptflag(const fexcept_t* flagp, int excepts); 44227825Stheravenint fetestexcept(int excepts); 45227825Stheravenint fegetround(); 46227825Stheravenint fesetround(int round); 47227825Stheravenint fegetenv(fenv_t* envp); 48227825Stheravenint feholdexcept(fenv_t* envp); 49227825Stheravenint fesetenv(const fenv_t* envp); 50227825Stheravenint feupdateenv(const fenv_t* envp); 51227825Stheraven 52227825Stheraven} // std 53227825Stheraven*/ 54227825Stheraven 55227825Stheraven#include <__config> 56227825Stheraven#include <fenv.h> 57227825Stheraven 58227825Stheraven#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) 59227825Stheraven#pragma GCC system_header 60227825Stheraven#endif 61227825Stheraven 62227825Stheraven_LIBCPP_BEGIN_NAMESPACE_STD 63227825Stheraven 64227825Stheravenusing ::fenv_t; 65227825Stheravenusing ::fexcept_t; 66227825Stheraven 67227825Stheravenusing ::feclearexcept; 68227825Stheravenusing ::fegetexceptflag; 69227825Stheravenusing ::feraiseexcept; 70227825Stheravenusing ::fesetexceptflag; 71227825Stheravenusing ::fetestexcept; 72227825Stheravenusing ::fegetround; 73227825Stheravenusing ::fesetround; 74227825Stheravenusing ::fegetenv; 75227825Stheravenusing ::feholdexcept; 76227825Stheravenusing ::fesetenv; 77227825Stheravenusing ::feupdateenv; 78227825Stheraven 79227825Stheraven_LIBCPP_END_NAMESPACE_STD 80227825Stheraven 81227825Stheraven#endif // _LIBCPP_CFENV 82