Hello, I am using Visual Studio 7.1.3008. While using the Random library, I ran into an issue with the seed function of mt19937. From what I can gather, the compiler becomes confused about one of the overloads and tries to call the seed function: template<class Generator> void seed(Generator & gen) I couldn't this issue on the list of known issues for this compiler. Is this known. For now, it appears that the work-around is to cast it as an unsigned long. Below is a small test file that demonstrates this issue. Thank you, David Walthall ////// boost_random_error.cpp ////// #include <boost/random/mersenne_twister.hpp> int main() { boost::mt19937 generator(42u); unsigned int uint = 42u; unsigned long int ulong = 42u; generator.seed(static_cast<unsigned int>(42u)); // ok generator.seed(42u); // ok generator.seed(static_cast<unsigned long>(uint)); // ok generator.seed(static_cast<unsigned int>(ulong)); // ok generator.seed(ulong); // ok // comment out the next lines to get it to compile generator.seed(static_cast<unsigned int>(uint)); // error generator.seed(uint); // error (also an error on g++ 3.4.4) return 0; } ////// end of boost_random_error.cpp //////