OSDN Git Service

2013-09-03 Paolo Carlini <paolo.carlini@oracle.com>
authorpaolo <paolo@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 3 Sep 2013 10:19:16 +0000 (10:19 +0000)
committerpaolo <paolo@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 3 Sep 2013 10:19:16 +0000 (10:19 +0000)
PR libstdc++/58302
* include/bits/random.tcc (negative_binomial_distribution<>::
operator()(_UniformRandomNumberGenerator&, const param_type&):
Fix typo in template argument.
* testsuite/26_numerics/random/negative_binomial_distribution/
operators/58302.cc: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-4_7-branch@202210 138bc75d-0d04-0410-961f-82ee72b054a4

libstdc++-v3/ChangeLog
libstdc++-v3/include/bits/random.tcc
libstdc++-v3/testsuite/26_numerics/random/negative_binomial_distribution/operators/58302.cc [new file with mode: 0644]

index 3c9ad3d..2049b68 100644 (file)
@@ -1,3 +1,12 @@
+2013-09-03  Paolo Carlini  <paolo.carlini@oracle.com>
+
+       PR libstdc++/58302
+       * include/bits/random.tcc (negative_binomial_distribution<>::
+       operator()(_UniformRandomNumberGenerator&, const param_type&):
+       Fix typo in template argument.
+       * testsuite/26_numerics/random/negative_binomial_distribution/
+       operators/58302.cc: New.
+
 2013-08-17  Uros Bizjak  <ubizjak@gmail.com>
 
        * src/c++98/compatibility.cc (_ZTIe): Use
index a182dfb..db1bd04 100644 (file)
@@ -1125,7 +1125,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
       operator()(_UniformRandomNumberGenerator& __urng,
                 const param_type& __p)
       {
-       typedef typename std::gamma_distribution<result_type>::param_type
+       typedef typename std::gamma_distribution<double>::param_type
          param_type;
        
        const double __y =
diff --git a/libstdc++-v3/testsuite/26_numerics/random/negative_binomial_distribution/operators/58302.cc b/libstdc++-v3/testsuite/26_numerics/random/negative_binomial_distribution/operators/58302.cc
new file mode 100644 (file)
index 0000000..3ced018
--- /dev/null
@@ -0,0 +1,34 @@
+// { dg-do compile }
+// { dg-options "-std=gnu++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 <random>
+
+void test01()
+{
+  typedef std::negative_binomial_distribution<> dist_type;
+
+  std::default_random_engine engine;
+
+  dist_type dist;
+  dist_type::param_type param(3, 0.5);
+
+  dist(engine, param); // compile error!
+}