Boost logo

Boost :

From: Michael Stevens (michael_at_[hidden])
Date: 2002-10-04 02:02:37


I have been looking at Jens's recent changes (CVS main branch) to
random. Trying to compile under VC7 reveal a few problems

1. All cases of
BOOST_STATIC_ASSERT(std::numeric_limits<IntType>::is_integer);
fail with for example
error C2027: use of undefined type 'boost::STATIC_ASSERTION_FAILURE<x>'
        with
        [
            x=false
        ]
I suspect a problem with uint64_t or boost/limits.hpp specialisations. I
will investigate further and try to determine what the actual type of
IntType is in this case.

2. linear_congruential is missing a
#include <boost/limits.hpp>

3. uniform_smallint.hpp now is defined using

template<class UniformRandomNumberGenerator, class IntType = int,
         bool is_integer = std::numeric_limits<typename
UniformRandomNumberGenerator::result_type>::is_integer>
class uniform_smallint;

template<class UniformRandomNumberGenerator, class IntType>
class uniform_smallint<UniformRandomNumberGenerator, IntType, true>
{
public:

This look an like partial template specialisation, and VC7 dies
horribly. Looks like we will loose VC6/7 compatibility with this
implementation

Michael


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk