diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog
index 21f803052f382456b319f47b39b34a74c989777c..84f7775ea9877dc7edade9e976629e3559b3425e 100644
--- a/libstdc++-v3/ChangeLog
+++ b/libstdc++-v3/ChangeLog
@@ -1,3 +1,8 @@
+2006-10-30  Paolo Carlini  <pcarlini@suse.de>
+
+	* include/tr1/utility (tuple_size<std::pair<> >::value): Provide
+	definition.
+
 2006-10-30  Paolo Carlini  <pcarlini@suse.de>
 
 	* include/tr1/tuple_iterate.h (tuple_size<tuple<> >::value): Provide
diff --git a/libstdc++-v3/include/tr1/utility b/libstdc++-v3/include/tr1/utility
index db140b29a66477f1f415a9ce54acd204c60f0e45..d9b99ec00329a670b550956a7a65b1670a80bd07 100644
--- a/libstdc++-v3/include/tr1/utility
+++ b/libstdc++-v3/include/tr1/utility
@@ -1,6 +1,6 @@
 // TR1 utility -*- C++ -*-
 
-// Copyright (C) 2004, 2005 Free Software Foundation, Inc.
+// Copyright (C) 2004, 2005, 2006 Free Software Foundation, Inc.
 //
 // This file is part of the GNU ISO C++ Library.  This library is free
 // software; you can redistribute it and/or modify it under the
@@ -47,7 +47,10 @@ _GLIBCXX_BEGIN_NAMESPACE(tr1)
   template<class _Tp1, class _Tp2>
     struct tuple_size<std::pair<_Tp1, _Tp2> >
     { static const int value = 2; };
- 
+
+  template<class _Tp1, class _Tp2>
+    const int tuple_size<std::pair<_Tp1, _Tp2> >::value;
+
   template<class _Tp1, class _Tp2>
     struct tuple_element<0, std::pair<_Tp1, _Tp2> >
     { typedef _Tp1 type; };