1// Copyright (C) 2005-2015 Free Software Foundation, Inc. 2// 3// This file is part of the GNU ISO C++ Library. This library is free 4// software; you can redistribute it and/or modify it under the 5// terms of the GNU General Public License as published by the 6// Free Software Foundation; either version 3, or (at your option) 7// any later version. 8 9// This library is distributed in the hope that it will be useful, 10// but WITHOUT ANY WARRANTY; without even the implied warranty of 11// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 12// GNU General Public License for more details. 13 14// You should have received a copy of the GNU General Public License along 15// with this library; see the file COPYING3. If not see 16// <http://www.gnu.org/licenses/>. 17 18#include <cmath> // for abs 19#include <cfloat> // for DBL_EPSILON 20#include <sstream> 21#include <limits> 22#include <testsuite_hooks.h> 23 24void 25test05() 26{ 27 using namespace std; 28 bool test __attribute__((unused)) = true; 29 30 double pi = 3.14159265358979323846; 31 wostringstream ostr; 32 ostr.precision(20); 33 ostr << pi; 34 wstring sval = ostr.str(); 35 wistringstream istr(sval); 36 double d; 37 istr >> d; 38 VERIFY( abs(pi-d)/pi < DBL_EPSILON ); 39} 40 41int 42main() 43{ 44 test05(); 45 return 0; 46} 47