diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog
index 00f61e4f5fec08b99d9a463049d5ff3418044bc4..b8f16da3f98da5621ba470e78f3228de768825a2 100644
--- a/libstdc++-v3/ChangeLog
+++ b/libstdc++-v3/ChangeLog
@@ -1,3 +1,9 @@
+2008-03-04  Joseph Myers  <joseph@codesourcery.com>
+
+	* crossconfig.m4 (*-mingw32*): Define HAVE_STRTOF and
+	HAVE_STRTOLD.
+	* configure: Regenerate.
+
 2008-03-02  Hans-Peter Nilsson  <hp@axis.com>
 
 	* testsuite/20_util/shared_ptr/assign/shared_ptr_neg.cc,
diff --git a/libstdc++-v3/configure b/libstdc++-v3/configure
index b95feb423219b28f67facb6ee845c87f8cd6a4cb..b20e87477475d0adccd3eea11a95da820c82cc94 100755
--- a/libstdc++-v3/configure
+++ b/libstdc++-v3/configure
@@ -17976,7 +17976,7 @@ ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
 
   # Fake what AC_TRY_COMPILE does.  XXX Look at redoing this new-style.
     cat > conftest.$ac_ext << EOF
-#line 17851 "configure"
+#line 17979 "configure"
 int main()
 {
   // NB: _Atomic_word not necessarily int.
@@ -110019,6 +110019,14 @@ fi
 
 done
 
+    cat >>confdefs.h <<\_ACEOF
+#define HAVE_STRTOF 1
+_ACEOF
+
+    cat >>confdefs.h <<\_ACEOF
+#define HAVE_STRTOLD 1
+_ACEOF
+
 
   # If we're not using GNU ld, then there's no point in even trying these
   # tests.  Check for that first.  We should have already tested for gld
diff --git a/libstdc++-v3/crossconfig.m4 b/libstdc++-v3/crossconfig.m4
index 6d0c226f79412c708e972f4a5c94ca6e7caee49b..2eb67568a6a3fb737f9caa79c070c8570a82a19d 100644
--- a/libstdc++-v3/crossconfig.m4
+++ b/libstdc++-v3/crossconfig.m4
@@ -234,6 +234,8 @@ case "${host}" in
     ;;
   *-mingw32*)
     AC_CHECK_HEADERS([sys/types.h locale.h float.h])
+    AC_DEFINE(HAVE_STRTOF)
+    AC_DEFINE(HAVE_STRTOLD)
     GLIBCXX_CHECK_LINKER_FEATURES
     GLIBCXX_CHECK_COMPLEX_MATH_SUPPORT
     ;;