This page is a snapshot from the LWG issues list, see the Library Active Issues List for more information and the meaning of C++11 status.
Section: 28.5.9.6.2 [rand.dist.samp.pconst] Status: C++11 Submitter: INCITS Opened: 2010-08-25 Last modified: 2016-01-28
Priority: Not Prioritized
View all other issues in [rand.dist.samp.pconst].
View all issues with C++11 status.
Discussion:
Addresses US-134
These two distributions have a member function called densities() which returns a vector<double>. The distribution is templated on RealType. The distribution also has another member called intervals() which returns a vector<RealType>. Why doesn't densities return vector<RealType> as well? If RealType is long double, the computed densities property isn't being computed to the precision the client desires. If RealType is float, the densities vector is taking up twice as much space as the client desires.
[ Resolution proposed by ballot comment: ]
Change the piecewise constant and linear distributions to hold / return the densities in a vector<result_type>.
If this is not done, at least correct 28.5.9.6.2 [rand.dist.samp.pconst] p. 13 which describes the return of densities as a vector<result_type>.
[ Batavia 2010: After reviewing this issue, the working group concurred with the first of the suggestions proposed by the NB comment: "Change the piecewise constant and linear distributions to hold/return the densities in a vector. " ]
[ Adopted at 2010-11 Batavia ]
Proposed resolution:
vector<doubleresult_type> densities() const;
vector<doubleresult_type> densities() const;