aboutsummaryrefslogtreecommitdiff
path: root/libstdc++-v3
diff options
context:
space:
mode:
authorPaolo Carlini <pcarlini@suse.de>2004-07-29 10:52:49 +0000
committerPaolo Carlini <paolo@gcc.gnu.org>2004-07-29 10:52:49 +0000
commit587530637932f8e7cf65de50ec063ae0fb2e301f (patch)
treef3f5d8147e3d3fb82ef927e9ecd2e04b388a8e5d /libstdc++-v3
parent3de1919168a95b13e9503f4820cde7a47770d004 (diff)
downloadgcc-587530637932f8e7cf65de50ec063ae0fb2e301f.zip
gcc-587530637932f8e7cf65de50ec063ae0fb2e301f.tar.gz
gcc-587530637932f8e7cf65de50ec063ae0fb2e301f.tar.bz2
re PR libstdc++/16813 (compiler error in DEBUG version of range insertion std::map::insert)
2004-07-29 Paolo Carlini <pcarlini@suse.de> PR libstdc++/16813 * include/debug/map.h (insert(_InputIterator, _InputIterator)): Fix typo. * testsuite/23_containers/map/insert/16813.cc: New. From-SVN: r85295
Diffstat (limited to 'libstdc++-v3')
-rw-r--r--libstdc++-v3/ChangeLog7
-rw-r--r--libstdc++-v3/include/debug/map.h2
-rw-r--r--libstdc++-v3/testsuite/23_containers/map/insert/16813.cc42
3 files changed, 50 insertions, 1 deletions
diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog
index dba7411..8e46102 100644
--- a/libstdc++-v3/ChangeLog
+++ b/libstdc++-v3/ChangeLog
@@ -1,3 +1,10 @@
+2004-07-29 Paolo Carlini <pcarlini@suse.de>
+
+ PR libstdc++/16813
+ * include/debug/map.h (insert(_InputIterator, _InputIterator)):
+ Fix typo.
+ * testsuite/23_containers/map/insert/16813.cc: New.
+
2004-07-29 Phil Edwards <phil@codesourcery.com>
* docs/html/faq/index.html: Update version references. Make
diff --git a/libstdc++-v3/include/debug/map.h b/libstdc++-v3/include/debug/map.h
index 2a6794b..0171584 100644
--- a/libstdc++-v3/include/debug/map.h
+++ b/libstdc++-v3/include/debug/map.h
@@ -163,7 +163,7 @@ namespace __gnu_debug_def
void
insert(_InputIterator __first, _InputIterator __last)
{
- __glibcxx_valid_range(__first, __last);
+ __glibcxx_check_valid_range(__first, __last);
_Base::insert(__first, __last);
}
diff --git a/libstdc++-v3/testsuite/23_containers/map/insert/16813.cc b/libstdc++-v3/testsuite/23_containers/map/insert/16813.cc
new file mode 100644
index 0000000..cf22578
--- /dev/null
+++ b/libstdc++-v3/testsuite/23_containers/map/insert/16813.cc
@@ -0,0 +1,42 @@
+// Copyright (C) 2004 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
+// terms of the GNU General Public License as published by the
+// Free Software Foundation; either version 2, or (at your option)
+// any later version.
+
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+
+// You should have received a copy of the GNU General Public License along
+// with this library; see the file COPYING. If not, write to the Free
+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
+// USA.
+
+#include <debug/map>
+#include <testsuite_hooks.h>
+
+// libstdc++/16813
+void test01()
+{
+ using __gnu_debug::map;
+ bool test __attribute__((unused)) = true;
+
+ map<int, float> m1, m2;
+
+ m1[3] = 3.0f;
+ m1[11] = -67.0f;
+
+ m2.insert(m1.begin(), m1.end());
+
+ VERIFY( m1 == m2 );
+}
+
+int main()
+{
+ test01();
+ return 0;
+}