From 1ae3576fa412634f1a4d8dcfe949531b8e7990da Mon Sep 17 00:00:00 2001 From: Paolo Carlini Date: Mon, 6 Apr 2009 14:50:06 +0000 Subject: [PATCH] random.tcc (linear_congruential_engine<>:: seed(seed_seq&)): Fix typo in last fix for __m == 0. 2009-04-06 Paolo Carlini * include/bits/random.tcc (linear_congruential_engine<>:: seed(seed_seq&)): Fix typo in last fix for __m == 0. From-SVN: r145605 --- libstdc++-v3/ChangeLog | 5 +++++ libstdc++-v3/include/bits/random.tcc | 4 ++-- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index 62c741154ba..d2b1cd656c5 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,3 +1,8 @@ +2009-04-06 Paolo Carlini + + * include/bits/random.tcc (linear_congruential_engine<>:: + seed(seed_seq&)): Fix typo in last fix for __m == 0. + 2009-04-06 Paolo Carlini * include/bits/random.h (operator==): Mark all inline. diff --git a/libstdc++-v3/include/bits/random.tcc b/libstdc++-v3/include/bits/random.tcc index b6a25434bf3..ee2b71c6f33 100644 --- a/libstdc++-v3/include/bits/random.tcc +++ b/libstdc++-v3/include/bits/random.tcc @@ -119,8 +119,8 @@ namespace std seed(seed_seq& __q) { const _UIntType __k0 = __m == 0 ? std::numeric_limits<_UIntType>::digits - : (std::__lg(__m) + 31); - const _UIntType __k = __k0 / 32; + : std::__lg(__m); + const _UIntType __k = (__k0 + 31) / 32; _UIntType __arr[__k + 3]; __q.generate(__arr + 0, __arr + 3); _UIntType __factor = 1U;