templates.cc revision 1.1.1.1
1// { dg-do compile } 2 3// 2006-02-26 Paolo Carlini <pcarlini@suse.de> 4// 5// Copyright (C) 2006, 2009 Free Software Foundation, Inc. 6// 7// This file is part of the GNU ISO C++ Library. This library is free 8// software; you can redistribute it and/or modify it under the 9// terms of the GNU General Public License as published by the 10// Free Software Foundation; either version 3, or (at your option) 11// any later version. 12// 13// This library is distributed in the hope that it will be useful, 14// but WITHOUT ANY WARRANTY; without even the implied warranty of 15// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16// GNU General Public License for more details. 17// 18// You should have received a copy of the GNU General Public License along 19// with this library; see the file COPYING3. If not see 20// <http://www.gnu.org/licenses/>. 21 22// 8.16 Additions to header <cmath> 23 24#include <tr1/cmath> 25 26#if _GLIBCXX_USE_C99 27#if !_GLIBCXX_USE_C99_FP_MACROS_DYNAMIC 28 29template<typename T> 30 void test01_do() 31 { 32 T x = T(); 33 34 bool ret; 35 int iret; 36 37 ret = std::tr1::signbit(x); 38 39 iret = std::tr1::fpclassify(x); 40 41 ret = std::tr1::isfinite(x); 42 ret = std::tr1::isinf(x); 43 ret = std::tr1::isnan(x); 44 ret = std::tr1::isnormal(x); 45 46 ret = std::tr1::isgreater(x, x); 47 ret = std::tr1::isgreaterequal(x, x); 48 ret = std::tr1::isless(x, x); 49 ret = std::tr1::islessequal(x, x); 50 ret = std::tr1::islessgreater(x, x); 51 ret = std::tr1::isunordered(x, x); 52 } 53 54void test01() 55{ 56 test01_do<float>(); 57 test01_do<double>(); 58 test01_do<long double>(); 59} 60 61#endif 62#endif 63