Hi, I'm applying this mainline and 4_8-branch. Tested x86_64-linux.
Thanks, Paolo. //////////////////////
2013-08-07 Paolo Carlini <paolo.carl...@oracle.com> PR libstdc++/58098 * include/bits/random.h (cauchy_distribution<>::min, extreme_value_distribution<>::min, normal_distribution<>::min, student_t_distribution<>::min): Fix. * include/ext/random (normal_mv_distribution<>::min): Likewise. * testsuite/26_numerics/random/cauchy_distribution/cons/parms.cc: Adjust. testsuite/26_numerics/random/cauchy_distribution/cons/default.cc: Likewise. * testsuite/26_numerics/random/extreme_value_distribution/cons/ parms.cc: Likewise. testsuite/26_numerics/random/extreme_value_distribution/cons/ default.cc: Likewise. * testsuite/26_numerics/random/normal_distribution/cons/parms.cc: Likewise. * testsuite/26_numerics/random/normal_distribution/cons/default.cc: Likewise. * testsuite/26_numerics/random/student_t_distribution/cons/parms.cc: Likewise. * testsuite/26_numerics/random/student_t_distribution/cons/default.cc: Likewise. * testsuite/ext/random/normal_mv_distribution/cons/parms.cc: Likewise. * testsuite/ext/random/normal_mv_distribution/cons/default.cc: Likewise. * testsuite/26_numerics/random/exponential_distribution/cons/parms.cc: Minor tweak. * testsuite/26_numerics/random/exponential_distribution/cons/default.cc: Likewise. * testsuite/ext/von_mises_distribution/*: Move to... * testsuite/ext/random/von_mises_distribution/*: ... here. * testsuite/ext/triangular_distribution/*: Move to... * testsuite/ext/random/triangular_distribution/*: ... here.
Index: include/bits/random.h =================================================================== --- include/bits/random.h (revision 201558) +++ include/bits/random.h (working copy) @@ -2178,7 +2178,7 @@ */ result_type min() const - { return std::numeric_limits<result_type>::min(); } + { return std::numeric_limits<result_type>::lowest(); } /** * @brief Returns the least upper bound value of the distribution. @@ -3011,7 +3011,7 @@ */ result_type min() const - { return std::numeric_limits<result_type>::min(); } + { return std::numeric_limits<result_type>::lowest(); } /** * @brief Returns the least upper bound value of the distribution. @@ -3428,7 +3428,7 @@ */ result_type min() const - { return std::numeric_limits<result_type>::min(); } + { return std::numeric_limits<result_type>::lowest(); } /** * @brief Returns the least upper bound value of the distribution. @@ -5136,7 +5136,7 @@ */ result_type min() const - { return std::numeric_limits<result_type>::min(); } + { return std::numeric_limits<result_type>::lowest(); } /** * @brief Returns the least upper bound value of the distribution. Index: include/ext/random =================================================================== --- include/ext/random (revision 201558) +++ include/ext/random (working copy) @@ -791,7 +791,7 @@ result_type min() const { result_type __res; - __res.fill(std::numeric_limits<_RealType>::min()); + __res.fill(std::numeric_limits<_RealType>::lowest()); return __res; } /** Index: testsuite/26_numerics/random/cauchy_distribution/cons/default.cc =================================================================== --- testsuite/26_numerics/random/cauchy_distribution/cons/default.cc (revision 201558) +++ testsuite/26_numerics/random/cauchy_distribution/cons/default.cc (working copy) @@ -35,7 +35,7 @@ VERIFY( u.a() == 0.0 ); VERIFY( u.b() == 1.0 ); typedef std::cauchy_distribution<>::result_type result_type; - VERIFY( u.min() == std::numeric_limits<result_type>::min() ); + VERIFY( u.min() == std::numeric_limits<result_type>::lowest() ); VERIFY( u.max() == std::numeric_limits<result_type>::max() ); } Index: testsuite/26_numerics/random/cauchy_distribution/cons/parms.cc =================================================================== --- testsuite/26_numerics/random/cauchy_distribution/cons/parms.cc (revision 201558) +++ testsuite/26_numerics/random/cauchy_distribution/cons/parms.cc (working copy) @@ -35,7 +35,7 @@ VERIFY( u.a() == 5.0 ); VERIFY( u.b() == 2.0 ); typedef std::cauchy_distribution<>::result_type result_type; - VERIFY( u.min() == std::numeric_limits<result_type>::min() ); + VERIFY( u.min() == std::numeric_limits<result_type>::lowest() ); VERIFY( u.max() == std::numeric_limits<result_type>::max() ); } Index: testsuite/26_numerics/random/exponential_distribution/cons/default.cc =================================================================== --- testsuite/26_numerics/random/exponential_distribution/cons/default.cc (revision 201558) +++ testsuite/26_numerics/random/exponential_distribution/cons/default.cc (working copy) @@ -34,7 +34,7 @@ std::exponential_distribution<> u; VERIFY( u.lambda() == 1.0 ); typedef std::exponential_distribution<>::result_type result_type; - VERIFY( u.min() == 0 ); + VERIFY( u.min() == 0.0 ); VERIFY( u.max() == std::numeric_limits<result_type>::max() ); } Index: testsuite/26_numerics/random/exponential_distribution/cons/parms.cc =================================================================== --- testsuite/26_numerics/random/exponential_distribution/cons/parms.cc (revision 201558) +++ testsuite/26_numerics/random/exponential_distribution/cons/parms.cc (working copy) @@ -34,7 +34,7 @@ std::exponential_distribution<> u(0.5); VERIFY( u.lambda() == 0.5 ); typedef std::exponential_distribution<>::result_type result_type; - VERIFY( u.min() == 0 ); + VERIFY( u.min() == 0.0 ); VERIFY( u.max() == std::numeric_limits<result_type>::max() ); } Index: testsuite/26_numerics/random/extreme_value_distribution/cons/default.cc =================================================================== --- testsuite/26_numerics/random/extreme_value_distribution/cons/default.cc (revision 201558) +++ testsuite/26_numerics/random/extreme_value_distribution/cons/default.cc (working copy) @@ -35,7 +35,7 @@ VERIFY( u.a() == 0.0 ); VERIFY( u.b() == 1.0 ); typedef std::extreme_value_distribution<>::result_type result_type; - VERIFY( u.min() == std::numeric_limits<result_type>::min() ); + VERIFY( u.min() == std::numeric_limits<result_type>::lowest() ); VERIFY( u.max() == std::numeric_limits<result_type>::max() ); } Index: testsuite/26_numerics/random/extreme_value_distribution/cons/parms.cc =================================================================== --- testsuite/26_numerics/random/extreme_value_distribution/cons/parms.cc (revision 201558) +++ testsuite/26_numerics/random/extreme_value_distribution/cons/parms.cc (working copy) @@ -35,7 +35,7 @@ VERIFY( u.a() == 5.0 ); VERIFY( u.b() == 2.0 ); typedef std::extreme_value_distribution<>::result_type result_type; - VERIFY( u.min() == std::numeric_limits<result_type>::min() ); + VERIFY( u.min() == std::numeric_limits<result_type>::lowest() ); VERIFY( u.max() == std::numeric_limits<result_type>::max() ); } Index: testsuite/26_numerics/random/normal_distribution/cons/default.cc =================================================================== --- testsuite/26_numerics/random/normal_distribution/cons/default.cc (revision 201558) +++ testsuite/26_numerics/random/normal_distribution/cons/default.cc (working copy) @@ -35,7 +35,7 @@ VERIFY( u.mean() == 0.0 ); VERIFY( u.stddev() == 1.0 ); typedef std::normal_distribution<>::result_type result_type; - VERIFY( u.min() == std::numeric_limits<result_type>::min() ); + VERIFY( u.min() == std::numeric_limits<result_type>::lowest() ); VERIFY( u.max() == std::numeric_limits<result_type>::max() ); } Index: testsuite/26_numerics/random/normal_distribution/cons/parms.cc =================================================================== --- testsuite/26_numerics/random/normal_distribution/cons/parms.cc (revision 201558) +++ testsuite/26_numerics/random/normal_distribution/cons/parms.cc (working copy) @@ -35,7 +35,7 @@ VERIFY( u.mean() == 5.0 ); VERIFY( u.stddev() == 2.0 ); typedef std::normal_distribution<>::result_type result_type; - VERIFY( u.min() == std::numeric_limits<result_type>::min() ); + VERIFY( u.min() == std::numeric_limits<result_type>::lowest() ); VERIFY( u.max() == std::numeric_limits<result_type>::max() ); } Index: testsuite/26_numerics/random/student_t_distribution/cons/default.cc =================================================================== --- testsuite/26_numerics/random/student_t_distribution/cons/default.cc (revision 201558) +++ testsuite/26_numerics/random/student_t_distribution/cons/default.cc (working copy) @@ -34,7 +34,7 @@ std::student_t_distribution<> u; VERIFY( u.n() == 1.0 ); typedef std::student_t_distribution<>::result_type result_type; - VERIFY( u.min() == std::numeric_limits<result_type>::min() ); + VERIFY( u.min() == std::numeric_limits<result_type>::lowest() ); VERIFY( u.max() == std::numeric_limits<result_type>::max() ); } Index: testsuite/26_numerics/random/student_t_distribution/cons/parms.cc =================================================================== --- testsuite/26_numerics/random/student_t_distribution/cons/parms.cc (revision 201558) +++ testsuite/26_numerics/random/student_t_distribution/cons/parms.cc (working copy) @@ -34,7 +34,7 @@ std::student_t_distribution<> u(1.5); VERIFY( u.n() == 1.5 ); typedef std::student_t_distribution<>::result_type result_type; - VERIFY( u.min() == std::numeric_limits<result_type>::min() ); + VERIFY( u.min() == std::numeric_limits<result_type>::lowest() ); VERIFY( u.max() == std::numeric_limits<result_type>::max() ); } Index: testsuite/ext/random/normal_mv_distribution/cons/default.cc =================================================================== --- testsuite/ext/random/normal_mv_distribution/cons/default.cc (revision 201558) +++ testsuite/ext/random/normal_mv_distribution/cons/default.cc (working copy) @@ -36,9 +36,9 @@ VERIFY( u.varcov()[1] == 0.0 ); VERIFY( u.varcov()[2] == 1.0 ); typedef __gnu_cxx::normal_mv_distribution<2>::result_type result_type; - VERIFY( u.min()[0] == std::numeric_limits<result_type::value_type>::min() ); + VERIFY( u.min()[0] == std::numeric_limits<result_type::value_type>::lowest() ); VERIFY( u.max()[0] == std::numeric_limits<result_type::value_type>::max() ); - VERIFY( u.min()[1] == std::numeric_limits<result_type::value_type>::min() ); + VERIFY( u.min()[1] == std::numeric_limits<result_type::value_type>::lowest() ); VERIFY( u.max()[1] == std::numeric_limits<result_type::value_type>::max() ); } Index: testsuite/ext/random/normal_mv_distribution/cons/parms.cc =================================================================== --- testsuite/ext/random/normal_mv_distribution/cons/parms.cc (revision 201558) +++ testsuite/ext/random/normal_mv_distribution/cons/parms.cc (working copy) @@ -36,9 +36,9 @@ VERIFY( u.varcov()[1] == 0.0 ); VERIFY( u.varcov()[2] == 3.0 ); typedef __gnu_cxx::normal_mv_distribution<2>::result_type result_type; - VERIFY( u.min()[0] == std::numeric_limits<result_type::value_type>::min() ); + VERIFY( u.min()[0] == std::numeric_limits<result_type::value_type>::lowest() ); VERIFY( u.max()[0] == std::numeric_limits<result_type::value_type>::max() ); - VERIFY( u.min()[1] == std::numeric_limits<result_type::value_type>::min() ); + VERIFY( u.min()[1] == std::numeric_limits<result_type::value_type>::lowest() ); VERIFY( u.max()[1] == std::numeric_limits<result_type::value_type>::max() ); } Index: testsuite/ext/triangular_distribution/cons/default.cc =================================================================== --- testsuite/ext/triangular_distribution/cons/default.cc (revision 201558) +++ testsuite/ext/triangular_distribution/cons/default.cc (working copy) @@ -1,44 +0,0 @@ -// { dg-options "-std=c++0x" } -// { dg-require-cstdint "" } -// -// 2008-11-24 Edward M. Smith-Rowland <3dw...@verizon.net> -// 2013-03-02 Ulrich Drepper <drep...@gmail.com> -// -// Copyright (C) 2013 Free Software Foundation, Inc. -// -// This file is part of the GNU ISO C++ Library. This library is free -// software; you can redistribute it and/or modify it under the -// terms of the GNU General Public License as published by the -// Free Software Foundation; either version 3, or (at your option) -// any later version. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU General Public License for more details. -// -// You should have received a copy of the GNU General Public License along -// with this library; see the file COPYING3. If not see -// <http://www.gnu.org/licenses/>. - -#include <ext/random> -#include <testsuite_hooks.h> - -void -test01() -{ - bool test __attribute__((unused)) = true; - - __gnu_cxx::triangular_distribution<> u; - VERIFY( u.a() == 0.0 ); - VERIFY( u.b() == 0.5 ); - VERIFY( u.c() == 1.0 ); - VERIFY( u.min() == 0.0 ); - VERIFY( u.max() == 1.0 ); -} - -int main() -{ - test01(); - return 0; -} Index: testsuite/ext/triangular_distribution/cons/parms.cc =================================================================== --- testsuite/ext/triangular_distribution/cons/parms.cc (revision 201558) +++ testsuite/ext/triangular_distribution/cons/parms.cc (working copy) @@ -1,44 +0,0 @@ -// { dg-options "-std=c++0x" } -// { dg-require-cstdint "" } -// -// 2008-11-24 Edward M. Smith-Rowland <3dw...@verizon.net> -// 2013-03-02 Ulrich Drepper <drep...@gmail.com> -// -// Copyright (C) 2013 Free Software Foundation, Inc. -// -// This file is part of the GNU ISO C++ Library. This library is free -// software; you can redistribute it and/or modify it under the -// terms of the GNU General Public License as published by the -// Free Software Foundation; either version 3, or (at your option) -// any later version. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU General Public License for more details. -// -// You should have received a copy of the GNU General Public License along -// with this library; see the file COPYING3. If not see -// <http://www.gnu.org/licenses/>. - -#include <ext/random> -#include <testsuite_hooks.h> - -void -test01() -{ - bool test __attribute__((unused)) = true; - - __gnu_cxx::triangular_distribution<> u(1.5, 3.0, 3.5); - VERIFY( u.a() == 1.5 ); - VERIFY( u.b() == 3.0 ); - VERIFY( u.c() == 3.5 ); - VERIFY( u.min() == 1.5 ); - VERIFY( u.max() == 3.5 ); -} - -int main() -{ - test01(); - return 0; -} Index: testsuite/ext/triangular_distribution/operators/equal.cc =================================================================== --- testsuite/ext/triangular_distribution/operators/equal.cc (revision 201558) +++ testsuite/ext/triangular_distribution/operators/equal.cc (working copy) @@ -1,42 +0,0 @@ -// { dg-options "-std=c++0x" } -// { dg-require-cstdint "" } -// -// 2010-03-16 Paolo Carlini <paolo.carl...@oracle.com> -// 2013-03-02 Ulrich Drepper <drep...@gmail.com> -// -// Copyright (C) 2013 Free Software Foundation, Inc. -// -// This file is part of the GNU ISO C++ Library. This library is free -// software; you can redistribute it and/or modify it under the -// terms of the GNU General Public License as published by the -// Free Software Foundation; either version 3, or (at your option) -// any later version. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU General Public License for more details. -// -// You should have received a copy of the GNU General Public License along -// with this library; see the file COPYING3. If not see -// <http://www.gnu.org/licenses/>. - -#include <ext/random> -#include <testsuite_hooks.h> - -void -test01() -{ - bool test __attribute__((unused)) = true; - - __gnu_cxx::triangular_distribution<double> u(1.5, 3.0, 4.0), v, w; - - VERIFY( v == w ); - VERIFY( !(u == v) ); -} - -int main() -{ - test01(); - return 0; -} Index: testsuite/ext/triangular_distribution/operators/inequal.cc =================================================================== --- testsuite/ext/triangular_distribution/operators/inequal.cc (revision 201558) +++ testsuite/ext/triangular_distribution/operators/inequal.cc (working copy) @@ -1,42 +0,0 @@ -// { dg-options "-std=c++0x" } -// { dg-require-cstdint "" } -// -// 2010-03-16 Paolo Carlini <paolo.carl...@oracle.com> -// 2013-03-02 Ulrich Drepper <drep...@gmail.com> -// -// Copyright (C) 2013 Free Software Foundation, Inc. -// -// This file is part of the GNU ISO C++ Library. This library is free -// software; you can redistribute it and/or modify it under the -// terms of the GNU General Public License as published by the -// Free Software Foundation; either version 3, or (at your option) -// any later version. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU General Public License for more details. -// -// You should have received a copy of the GNU General Public License along -// with this library; see the file COPYING3. If not see -// <http://www.gnu.org/licenses/>. - -#include <ext/random> -#include <testsuite_hooks.h> - -void -test01() -{ - bool test __attribute__((unused)) = true; - - __gnu_cxx::triangular_distribution<double> u(1.5, 3.0, 5.0), v, w; - - VERIFY( u != v ); - VERIFY( !(v != w) ); -} - -int main() -{ - test01(); - return 0; -} Index: testsuite/ext/triangular_distribution/operators/serialize.cc =================================================================== --- testsuite/ext/triangular_distribution/operators/serialize.cc (revision 201558) +++ testsuite/ext/triangular_distribution/operators/serialize.cc (working copy) @@ -1,44 +0,0 @@ -// { dg-options "-std=c++0x" } -// { dg-require-cstdint "" } -// -// 2009-08-14 Edward M. Smith-Rowland <3dw...@verizon.net> -// 2013-03-02 Ulrich Drepper <drep...@gmail.com> -// -// Copyright (C) 2013 Free Software Foundation, Inc. -// -// This file is part of the GNU ISO C++ Library. This library is free -// software; you can redistribute it and/or modify it under the -// terms of the GNU General Public License as published by the -// Free Software Foundation; either version 3, or (at your option) -// any later version. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU General Public License for more details. -// -// You should have received a copy of the GNU General Public License along -// with this library; see the file COPYING3. If not see -// <http://www.gnu.org/licenses/>. - -#include <ext/random> -#include <sstream> - -void -test01() -{ - std::stringstream str; - __gnu_cxx::triangular_distribution<double> u(1.5, 3.0, 4.5), v; - std::minstd_rand0 rng; - - u(rng); // advance - str << u; - - str >> v; -} - -int main() -{ - test01(); - return 0; -} Index: testsuite/ext/triangular_distribution/requirements/explicit_instantiation/1.cc =================================================================== --- testsuite/ext/triangular_distribution/requirements/explicit_instantiation/1.cc (revision 201558) +++ testsuite/ext/triangular_distribution/requirements/explicit_instantiation/1.cc (working copy) @@ -1,26 +0,0 @@ -// { dg-do compile } -// { dg-options "-std=c++11" } -// { dg-require-cstdint "" } -// -// Copyright (C) 2013 Free Software Foundation, Inc. -// -// This file is part of the GNU ISO C++ Library. This library is free -// software; you can redistribute it and/or modify it under the -// terms of the GNU General Public License as published by the -// Free Software Foundation; either version 3, or (at your option) -// any later version. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU General Public License for more details. -// -// You should have received a copy of the GNU General Public License along -// with this library; see the file COPYING3. If not see -// <http://www.gnu.org/licenses/>. - -#include <ext/random> - -template class __gnu_cxx::triangular_distribution<float>; -template class __gnu_cxx::triangular_distribution<double>; -template class __gnu_cxx::triangular_distribution<long double>; Index: testsuite/ext/triangular_distribution/requirements/typedefs.cc =================================================================== --- testsuite/ext/triangular_distribution/requirements/typedefs.cc (revision 201558) +++ testsuite/ext/triangular_distribution/requirements/typedefs.cc (working copy) @@ -1,34 +0,0 @@ -// { dg-do compile } -// { dg-options "-std=c++0x" } -// { dg-require-cstdint "" } -// -// 2008-11-24 Edward M. Smith-Rowland <3dw...@verizon.net> -// 2013-03-02 Ulrich Drepper <drep...@gmail.com> -// -// Copyright (C) 2013 Free Software Foundation, Inc. -// -// This file is part of the GNU ISO C++ Library. This library is free -// software; you can redistribute it and/or modify it under the -// terms of the GNU General Public License as published by the -// Free Software Foundation; either version 3, or (at your option) -// any later version. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU General Public License for more details. -// -// You should have received a copy of the GNU General Public License along -// with this library; see the file COPYING3. If not see -// <http://www.gnu.org/licenses/>. - -#include <ext/random> - -void -test01() -{ - typedef __gnu_cxx::triangular_distribution<double> test_type; - - typedef test_type::result_type result_type; - typedef test_type::param_type param_type; -} Index: testsuite/ext/von_mises_distribution/cons/default.cc =================================================================== --- testsuite/ext/von_mises_distribution/cons/default.cc (revision 201558) +++ testsuite/ext/von_mises_distribution/cons/default.cc (working copy) @@ -1,43 +0,0 @@ -// { dg-options "-std=c++0x" } -// { dg-require-cstdint "" } -// -// 2008-11-24 Edward M. Smith-Rowland <3dw...@verizon.net> -// 2013-03-02 Ulrich Drepper <drep...@gmail.com> -// -// Copyright (C) 2013 Free Software Foundation, Inc. -// -// This file is part of the GNU ISO C++ Library. This library is free -// software; you can redistribute it and/or modify it under the -// terms of the GNU General Public License as published by the -// Free Software Foundation; either version 3, or (at your option) -// any later version. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU General Public License for more details. -// -// You should have received a copy of the GNU General Public License along -// with this library; see the file COPYING3. If not see -// <http://www.gnu.org/licenses/>. - -#include <ext/random> -#include <testsuite_hooks.h> - -void -test01() -{ - bool test __attribute__((unused)) = true; - - __gnu_cxx::von_mises_distribution<> u; - VERIFY( u.mu() == 0.0 ); - VERIFY( u.kappa() == 1.0 ); - VERIFY( u.min() == -__gnu_cxx::__math_constants<double>::__pi ); - VERIFY( u.max() == __gnu_cxx::__math_constants<double>::__pi ); -} - -int main() -{ - test01(); - return 0; -} Index: testsuite/ext/von_mises_distribution/cons/parms.cc =================================================================== --- testsuite/ext/von_mises_distribution/cons/parms.cc (revision 201558) +++ testsuite/ext/von_mises_distribution/cons/parms.cc (working copy) @@ -1,43 +0,0 @@ -// { dg-options "-std=c++0x" } -// { dg-require-cstdint "" } -// -// 2008-11-24 Edward M. Smith-Rowland <3dw...@verizon.net> -// 2013-03-02 Ulrich Drepper <drep...@gmail.com> -// -// Copyright (C) 2013 Free Software Foundation, Inc. -// -// This file is part of the GNU ISO C++ Library. This library is free -// software; you can redistribute it and/or modify it under the -// terms of the GNU General Public License as published by the -// Free Software Foundation; either version 3, or (at your option) -// any later version. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU General Public License for more details. -// -// You should have received a copy of the GNU General Public License along -// with this library; see the file COPYING3. If not see -// <http://www.gnu.org/licenses/>. - -#include <ext/random> -#include <testsuite_hooks.h> - -void -test01() -{ - bool test __attribute__((unused)) = true; - - __gnu_cxx::von_mises_distribution<> u(1.5, 3.0); - VERIFY( u.mu() == 1.5 ); - VERIFY( u.kappa() == 3.0 ); - VERIFY( u.min() == -__gnu_cxx::__math_constants<double>::__pi ); - VERIFY( u.max() == __gnu_cxx::__math_constants<double>::__pi ); -} - -int main() -{ - test01(); - return 0; -} Index: testsuite/ext/von_mises_distribution/operators/equal.cc =================================================================== --- testsuite/ext/von_mises_distribution/operators/equal.cc (revision 201558) +++ testsuite/ext/von_mises_distribution/operators/equal.cc (working copy) @@ -1,42 +0,0 @@ -// { dg-options "-std=c++0x" } -// { dg-require-cstdint "" } -// -// 2010-03-16 Paolo Carlini <paolo.carl...@oracle.com> -// 2013-03-02 Ulrich Drepper <drep...@gmail.com> -// -// Copyright (C) 2013 Free Software Foundation, Inc. -// -// This file is part of the GNU ISO C++ Library. This library is free -// software; you can redistribute it and/or modify it under the -// terms of the GNU General Public License as published by the -// Free Software Foundation; either version 3, or (at your option) -// any later version. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU General Public License for more details. -// -// You should have received a copy of the GNU General Public License along -// with this library; see the file COPYING3. If not see -// <http://www.gnu.org/licenses/>. - -#include <ext/random> -#include <testsuite_hooks.h> - -void -test01() -{ - bool test __attribute__((unused)) = true; - - __gnu_cxx::von_mises_distribution<double> u(1.5, 3.0), v, w; - - VERIFY( v == w ); - VERIFY( !(u == v) ); -} - -int main() -{ - test01(); - return 0; -} Index: testsuite/ext/von_mises_distribution/operators/inequal.cc =================================================================== --- testsuite/ext/von_mises_distribution/operators/inequal.cc (revision 201558) +++ testsuite/ext/von_mises_distribution/operators/inequal.cc (working copy) @@ -1,42 +0,0 @@ -// { dg-options "-std=c++0x" } -// { dg-require-cstdint "" } -// -// 2010-03-16 Paolo Carlini <paolo.carl...@oracle.com> -// 2013-03-02 Ulrich Drepper <drep...@gmail.com> -// -// Copyright (C) 2013 Free Software Foundation, Inc. -// -// This file is part of the GNU ISO C++ Library. This library is free -// software; you can redistribute it and/or modify it under the -// terms of the GNU General Public License as published by the -// Free Software Foundation; either version 3, or (at your option) -// any later version. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU General Public License for more details. -// -// You should have received a copy of the GNU General Public License along -// with this library; see the file COPYING3. If not see -// <http://www.gnu.org/licenses/>. - -#include <ext/random> -#include <testsuite_hooks.h> - -void -test01() -{ - bool test __attribute__((unused)) = true; - - __gnu_cxx::von_mises_distribution<double> u(1.5, 3.0), v, w; - - VERIFY( u != v ); - VERIFY( !(v != w) ); -} - -int main() -{ - test01(); - return 0; -} Index: testsuite/ext/von_mises_distribution/operators/serialize.cc =================================================================== --- testsuite/ext/von_mises_distribution/operators/serialize.cc (revision 201558) +++ testsuite/ext/von_mises_distribution/operators/serialize.cc (working copy) @@ -1,44 +0,0 @@ -// { dg-options "-std=c++0x" } -// { dg-require-cstdint "" } -// -// 2009-08-14 Edward M. Smith-Rowland <3dw...@verizon.net> -// 2013-03-02 Ulrich Drepper <drep...@gmail.com> -// -// Copyright (C) 2013 Free Software Foundation, Inc. -// -// This file is part of the GNU ISO C++ Library. This library is free -// software; you can redistribute it and/or modify it under the -// terms of the GNU General Public License as published by the -// Free Software Foundation; either version 3, or (at your option) -// any later version. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU General Public License for more details. -// -// You should have received a copy of the GNU General Public License along -// with this library; see the file COPYING3. If not see -// <http://www.gnu.org/licenses/>. - -#include <ext/random> -#include <sstream> - -void -test01() -{ - std::stringstream str; - __gnu_cxx::von_mises_distribution<double> u(1.5, 3.0), v; - std::minstd_rand0 rng; - - u(rng); // advance - str << u; - - str >> v; -} - -int main() -{ - test01(); - return 0; -} Index: testsuite/ext/von_mises_distribution/requirements/explicit_instantiation/1.cc =================================================================== --- testsuite/ext/von_mises_distribution/requirements/explicit_instantiation/1.cc (revision 201558) +++ testsuite/ext/von_mises_distribution/requirements/explicit_instantiation/1.cc (working copy) @@ -1,26 +0,0 @@ -// { dg-do compile } -// { dg-options "-std=c++11" } -// { dg-require-cstdint "" } -// -// Copyright (C) 2013 Free Software Foundation, Inc. -// -// This file is part of the GNU ISO C++ Library. This library is free -// software; you can redistribute it and/or modify it under the -// terms of the GNU General Public License as published by the -// Free Software Foundation; either version 3, or (at your option) -// any later version. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU General Public License for more details. -// -// You should have received a copy of the GNU General Public License along -// with this library; see the file COPYING3. If not see -// <http://www.gnu.org/licenses/>. - -#include <ext/random> - -template class __gnu_cxx::von_mises_distribution<float>; -template class __gnu_cxx::von_mises_distribution<double>; -template class __gnu_cxx::von_mises_distribution<long double>; Index: testsuite/ext/von_mises_distribution/requirements/typedefs.cc =================================================================== --- testsuite/ext/von_mises_distribution/requirements/typedefs.cc (revision 201558) +++ testsuite/ext/von_mises_distribution/requirements/typedefs.cc (working copy) @@ -1,34 +0,0 @@ -// { dg-do compile } -// { dg-options "-std=c++0x" } -// { dg-require-cstdint "" } -// -// 2008-11-24 Edward M. Smith-Rowland <3dw...@verizon.net> -// 2013-03-02 Ulrich Drepper <drep...@gmail.com> -// -// Copyright (C) 2013 Free Software Foundation, Inc. -// -// This file is part of the GNU ISO C++ Library. This library is free -// software; you can redistribute it and/or modify it under the -// terms of the GNU General Public License as published by the -// Free Software Foundation; either version 3, or (at your option) -// any later version. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU General Public License for more details. -// -// You should have received a copy of the GNU General Public License along -// with this library; see the file COPYING3. If not see -// <http://www.gnu.org/licenses/>. - -#include <ext/random> - -void -test01() -{ - typedef __gnu_cxx::von_mises_distribution<double> test_type; - - typedef test_type::result_type result_type; - typedef test_type::param_type param_type; -}