diff -r e20de85af2ee -r ce057bb09d0b genericopenlibs/cppstdlib/stl/test/eh/random_number.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/genericopenlibs/cppstdlib/stl/test/eh/random_number.cpp Fri Jun 04 16:20:51 2010 +0100 @@ -0,0 +1,39 @@ +/*********************************************************************************** + random_number.cpp + + * Copyright (c) 1997 + * Mark of the Unicorn, Inc. + * + * Permission to use, copy, modify, distribute and sell this software + * and its documentation for any purpose is hereby granted without fee, + * provided that the above copyright notice appear in all copies and + * that both that copyright notice and this permission notice appear + * in supporting documentation. Mark of the Unicorn makes no + * representations about the suitability of this software for any + * purpose. It is provided "as is" without express or implied warranty. + +***********************************************************************************/ +#include "random_number.h" +#include "Prefix.h" +#if defined (EH_NEW_HEADERS) +# include +# include +#else +# include +# include +#endif + +unsigned random_number( size_t range ) +{ +#if !defined( __SGI_STL ) + if (range == 0) return 0; + return (unsigned)(EH_STD::rand() + EH_STD::rand()) % range; +#else + static EH_STD::subtractive_rng rnd; + if (range==0) return 0; + return rnd(range); +#endif +} + +// default base for random container sizes +unsigned random_base = 1000;