1*f8a1b7d9SAlexander Kabaev// TR1 cctype -*- C++ -*- 2*f8a1b7d9SAlexander Kabaev 3*f8a1b7d9SAlexander Kabaev// Copyright (C) 2006 Free Software Foundation, Inc. 4*f8a1b7d9SAlexander Kabaev// 5*f8a1b7d9SAlexander Kabaev// This file is part of the GNU ISO C++ Library. This library is free 6*f8a1b7d9SAlexander Kabaev// software; you can redistribute it and/or modify it under the 7*f8a1b7d9SAlexander Kabaev// terms of the GNU General Public License as published by the 8*f8a1b7d9SAlexander Kabaev// Free Software Foundation; either version 2, or (at your option) 9*f8a1b7d9SAlexander Kabaev// any later version. 10*f8a1b7d9SAlexander Kabaev 11*f8a1b7d9SAlexander Kabaev// This library is distributed in the hope that it will be useful, 12*f8a1b7d9SAlexander Kabaev// but WITHOUT ANY WARRANTY; without even the implied warranty of 13*f8a1b7d9SAlexander Kabaev// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14*f8a1b7d9SAlexander Kabaev// GNU General Public License for more details. 15*f8a1b7d9SAlexander Kabaev 16*f8a1b7d9SAlexander Kabaev// You should have received a copy of the GNU General Public License along 17*f8a1b7d9SAlexander Kabaev// with this library; see the file COPYING. If not, write to the Free 18*f8a1b7d9SAlexander Kabaev// Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, 19*f8a1b7d9SAlexander Kabaev// USA. 20*f8a1b7d9SAlexander Kabaev 21*f8a1b7d9SAlexander Kabaev// As a special exception, you may use this file as part of a free software 22*f8a1b7d9SAlexander Kabaev// library without restriction. Specifically, if other files instantiate 23*f8a1b7d9SAlexander Kabaev// templates or use macros or inline functions from this file, or you compile 24*f8a1b7d9SAlexander Kabaev// this file and link it with other files to produce an executable, this 25*f8a1b7d9SAlexander Kabaev// file does not by itself cause the resulting executable to be covered by 26*f8a1b7d9SAlexander Kabaev// the GNU General Public License. This exception does not however 27*f8a1b7d9SAlexander Kabaev// invalidate any other reasons why the executable file might be covered by 28*f8a1b7d9SAlexander Kabaev// the GNU General Public License. 29*f8a1b7d9SAlexander Kabaev 30*f8a1b7d9SAlexander Kabaev/** @file tr1/cfenv 31*f8a1b7d9SAlexander Kabaev * This is a TR1 C++ Library header. 32*f8a1b7d9SAlexander Kabaev */ 33*f8a1b7d9SAlexander Kabaev 34*f8a1b7d9SAlexander Kabaev#ifndef _TR1_CFENV 35*f8a1b7d9SAlexander Kabaev#define _TR1_CFENV 1 36*f8a1b7d9SAlexander Kabaev 37*f8a1b7d9SAlexander Kabaev#include <bits/c++config.h> 38*f8a1b7d9SAlexander Kabaev 39*f8a1b7d9SAlexander Kabaev#if _GLIBCXX_USE_C99_FENV_TR1 40*f8a1b7d9SAlexander Kabaev 41*f8a1b7d9SAlexander Kabaev#include <fenv.h> 42*f8a1b7d9SAlexander Kabaev 43*f8a1b7d9SAlexander Kabaev#undef feclearexcept 44*f8a1b7d9SAlexander Kabaev#undef fegetexceptflag 45*f8a1b7d9SAlexander Kabaev#undef feraiseexcept 46*f8a1b7d9SAlexander Kabaev#undef fesetexceptflag 47*f8a1b7d9SAlexander Kabaev#undef fetestexcept 48*f8a1b7d9SAlexander Kabaev#undef fegetround 49*f8a1b7d9SAlexander Kabaev#undef fesetround 50*f8a1b7d9SAlexander Kabaev#undef fegetenv 51*f8a1b7d9SAlexander Kabaev#undef feholdexcept 52*f8a1b7d9SAlexander Kabaev#undef fesetenv 53*f8a1b7d9SAlexander Kabaev#undef feupdateenv 54*f8a1b7d9SAlexander Kabaev 55*f8a1b7d9SAlexander Kabaev// namespace std::tr1 56*f8a1b7d9SAlexander Kabaevnamespace std 57*f8a1b7d9SAlexander Kabaev{ 58*f8a1b7d9SAlexander Kabaev_GLIBCXX_BEGIN_NAMESPACE(tr1) 59*f8a1b7d9SAlexander Kabaev 60*f8a1b7d9SAlexander Kabaev // types 61*f8a1b7d9SAlexander Kabaev using ::fenv_t; 62*f8a1b7d9SAlexander Kabaev using ::fexcept_t; 63*f8a1b7d9SAlexander Kabaev 64*f8a1b7d9SAlexander Kabaev // functions 65*f8a1b7d9SAlexander Kabaev using ::feclearexcept; 66*f8a1b7d9SAlexander Kabaev using ::fegetexceptflag; 67*f8a1b7d9SAlexander Kabaev using ::feraiseexcept; 68*f8a1b7d9SAlexander Kabaev using ::fesetexceptflag; 69*f8a1b7d9SAlexander Kabaev using ::fetestexcept; 70*f8a1b7d9SAlexander Kabaev 71*f8a1b7d9SAlexander Kabaev using ::fegetround; 72*f8a1b7d9SAlexander Kabaev using ::fesetround; 73*f8a1b7d9SAlexander Kabaev 74*f8a1b7d9SAlexander Kabaev using ::fegetenv; 75*f8a1b7d9SAlexander Kabaev using ::feholdexcept; 76*f8a1b7d9SAlexander Kabaev using ::fesetenv; 77*f8a1b7d9SAlexander Kabaev using ::feupdateenv; 78*f8a1b7d9SAlexander Kabaev 79*f8a1b7d9SAlexander Kabaev_GLIBCXX_END_NAMESPACE 80*f8a1b7d9SAlexander Kabaev} 81*f8a1b7d9SAlexander Kabaev 82*f8a1b7d9SAlexander Kabaev#endif 83*f8a1b7d9SAlexander Kabaev 84*f8a1b7d9SAlexander Kabaev#endif 85