blob: dd7db37f8e48496c67a9d88789afcef609695a63 [file] [log] [blame]
Howard Hinnantbc8d3f92010-05-11 19:42:16 +00001// -*- C++ -*-
Dan Albert1d4a1ed2016-05-25 22:36:09 -07002//===---------------------------- cctype ----------------------------------===//
Howard Hinnantbc8d3f92010-05-11 19:42:16 +00003//
Howard Hinnantf5256e12010-05-11 21:36:01 +00004// The LLVM Compiler Infrastructure
Howard Hinnantbc8d3f92010-05-11 19:42:16 +00005//
Howard Hinnantb64f8b02010-11-16 22:09:02 +00006// This file is dual licensed under the MIT and the University of Illinois Open
7// Source Licenses. See LICENSE.TXT for details.
Howard Hinnantbc8d3f92010-05-11 19:42:16 +00008//
9//===----------------------------------------------------------------------===//
10
11#ifndef _LIBCPP_CFENV
12#define _LIBCPP_CFENV
13
14/*
15 cfenv synopsis
16
17This entire header is C99 / C++0X
18
19Macros:
20
21 FE_DIVBYZERO
22 FE_INEXACT
23 FE_INVALID
24 FE_OVERFLOW
25 FE_UNDERFLOW
26 FE_ALL_EXCEPT
27 FE_DOWNWARD
28 FE_TONEAREST
29 FE_TOWARDZERO
30 FE_UPWARD
31 FE_DFL_ENV
32
33namespace std
34{
35
36Types:
37
38 fenv_t
39 fexcept_t
40
41int feclearexcept(int excepts);
42int fegetexceptflag(fexcept_t* flagp, int excepts);
43int feraiseexcept(int excepts);
44int fesetexceptflag(const fexcept_t* flagp, int excepts);
45int fetestexcept(int excepts);
46int fegetround();
47int fesetround(int round);
48int fegetenv(fenv_t* envp);
49int feholdexcept(fenv_t* envp);
50int fesetenv(const fenv_t* envp);
51int feupdateenv(const fenv_t* envp);
52
53} // std
54*/
55
56#include <__config>
57#include <fenv.h>
58
Howard Hinnant08e17472011-10-17 20:05:10 +000059#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
Howard Hinnantbc8d3f92010-05-11 19:42:16 +000060#pragma GCC system_header
Howard Hinnant08e17472011-10-17 20:05:10 +000061#endif
Howard Hinnantbc8d3f92010-05-11 19:42:16 +000062
63_LIBCPP_BEGIN_NAMESPACE_STD
64
65using ::fenv_t;
66using ::fexcept_t;
67
68using ::feclearexcept;
69using ::fegetexceptflag;
70using ::feraiseexcept;
71using ::fesetexceptflag;
72using ::fetestexcept;
73using ::fegetround;
74using ::fesetround;
75using ::fegetenv;
76using ::feholdexcept;
77using ::fesetenv;
78using ::feupdateenv;
79
80_LIBCPP_END_NAMESPACE_STD
81
82#endif // _LIBCPP_CFENV