2001-06-04 Kenny Simpson <theonetruekenny@yahoo.com>
authorpme <pme@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 4 Jun 2001 18:04:52 +0000 (18:04 +0000)
committerpme <pme@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 4 Jun 2001 18:04:52 +0000 (18:04 +0000)
            Phil Edwards  <pme@sources.redhat.com>

PR libstdc++/3035 and PR libstdc++/3036
* include/bits/stl_pair.h:  Fix pair ctor and make_pair according
to LWG DR 181 and 265.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@42865 138bc75d-0d04-0410-961f-82ee72b054a4

libstdc++-v3/ChangeLog
libstdc++-v3/include/bits/stl_pair.h

index 8203b2e..c482830 100644 (file)
@@ -1,3 +1,10 @@
+2001-06-04  Kenny Simpson <theonetruekenny@yahoo.com>
+            Phil Edwards  <pme@sources.redhat.com>
+
+       PR libstdc++/3035 and PR libstdc++/3036
+       * include/bits/stl_pair.h:  Fix pair ctor and make_pair according
+       to LWG DR 181 and 265.
+
 2001-06-04  Phil Edwards  <pme@sources.redhat.com>
 
        PR libstdc++/3034
index 8252d97..efb166c 100644 (file)
@@ -41,7 +41,12 @@ struct pair {
 
   _T1 first;
   _T2 second;
+#ifdef _GLIBCPP_RESOLVE_LIB_DEFECTS
+//265.  std::pair::pair() effects overly restrictive
+  pair() : first(), second() {}
+#else
   pair() : first(_T1()), second(_T2()) {}
+#endif
   pair(const _T1& __a, const _T2& __b) : first(__a), second(__b) {}
 
   template <class _U1, class _U2>
@@ -84,7 +89,7 @@ inline bool operator>=(const pair<_T1, _T2>& __x, const pair<_T1, _T2>& __y) {
 template <class _T1, class _T2>
 #ifdef _GLIBCPP_RESOLVE_LIB_DEFECTS
 //181.  make_pair() unintended behavior
-inline pair<_T1, _T2> make_pair(const _T1 __x, const _T2 __y)
+inline pair<_T1, _T2> make_pair(_T1 __x, _T2 __y)
 #else
 inline pair<_T1, _T2> make_pair(const _T1& __x, const _T2& __y)
 #endif