patch by Jeffrey Yasskin for porting to Ubuntu Hardy.  Everything was accepted except there were some bug fixes needed in <locale> for the __nolocale_* series.  For the apple branch I ended up using templates instead of the var_args solution because it seemed both safer and more efficient.

git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@104516 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/include/algorithm b/include/algorithm
index f3412f7..c53bf37 100644
--- a/include/algorithm
+++ b/include/algorithm
@@ -552,16 +552,12 @@
 #ifdef _LIBCPP_DEBUG
 #include <cassert>
 #endif
-//#include <cstdlib>
-#define RAND_MAX 0x7fffffff     // #include <cstdlib>
-extern "C" int rand(void);      // #include <cstdlib>
+#include <cstdlib>
 
 #pragma GCC system_header
 
 _LIBCPP_BEGIN_NAMESPACE_STD
 
-using ::rand;                   // #include <cstdlib>
-
 template <class _T1, class _T2 = _T1>
 struct __equal_to
 {