From d5c19c4981a6572813e7d0725c02b17fcde2a779 Mon Sep 17 00:00:00 2001 From: Paul Pluzhnikov Date: Sun, 22 Sep 2013 02:04:13 +0000 Subject: Print additional info when various out-of-range conditions are detected. 2013-09-21 Paul Pluzhnikov * include/bits/functexcept.h (__throw_out_of_range_fmt): New. * src/c++11/functexcept.cc (__throw_out_of_range_fmt): New. * src/c++11/snprintf_lite.cc: New. * src/c++11/Makefile.am: Add snprintf_lite.cc. * src/c++11/Makefile.in: Regenerate. * config/abi/pre/gnu.ver: Add _ZSt24__throw_out_of_range_fmtPKcz. * include/std/array (at): Use __throw_out_of_range_fmt. * include/debug/array (at): Likewise. * include/profile/array (at): Likewise. * include/std/bitset (_M_check_initial_position, _M_check): New. (bitset::bitset): Use _M_check_initial_position. (set, reset, flip, test): Use _M_check. * include/ext/vstring.h (_M_check, at): Use __throw_out_of_range_fmt. * include/bits/stl_vector.h (_M_range_check): Likewise. * include/bits/stl_bvector.h (_M_range_check): Likewise. * include/bits/stl_deque.h (_M_range_check): Likewise. * include/bits/basic_string.h (_M_check, at): Likewise. * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc: Adjust. * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc: Likewise. * testsuite/23_containers/vector/requirements/dr438/constructor_1_neg.cc: Likewise. * testsuite/23_containers/vector/requirements/dr438/constructor_2_neg.cc: Likewise. * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc: Likewise. * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc: Likewise. * testsuite/23_containers/deque/requirements/dr438/constructor_1_neg.cc: Likewise. * testsuite/23_containers/deque/requirements/dr438/constructor_2_neg.cc: Likewise. * testsuite/23_containers/array/tuple_interface/tuple_element_neg.cc: Likewise. * testsuite/23_containers/array/tuple_interface/tuple_element_debug_neg.cc: Likewise. * testsuite/23_containers/array/tuple_interface/get_neg.cc: Likewise. * testsuite/23_containers/array/tuple_interface/get_debug_neg.cc: Likewise. * testsuite/util/exception/safety.h (generate): Use __throw_out_of_range_fmt. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@202818 138bc75d-0d04-0410-961f-82ee72b054a4 --- libstdc++-v3/config/abi/pre/gnu.ver | 3 +++ 1 file changed, 3 insertions(+) (limited to 'libstdc++-v3/config') diff --git a/libstdc++-v3/config/abi/pre/gnu.ver b/libstdc++-v3/config/abi/pre/gnu.ver index 8972fcfca88..d3c399f6bf2 100644 --- a/libstdc++-v3/config/abi/pre/gnu.ver +++ b/libstdc++-v3/config/abi/pre/gnu.ver @@ -1365,6 +1365,9 @@ GLIBCXX_3.4.20 { # std::get_unexpected() _ZSt14get_unexpectedv; + # std::__throw_out_of_range_fmt(char const*, ...) + _ZSt24__throw_out_of_range_fmtPKcz; + } GLIBCXX_3.4.19; # Symbols in the support library (libsupc++) have their own tag. -- cgit v1.2.3