re PR libstdc++/25191 (exception_defines.h #defines try/catch)

2009-02-03  Paolo Carlini  <paolo.carlini@oracle.com>

	PR libstdc++/25191	
	* libsupc++/exception_defines.h: Depending on __EXCEPTIONS,
	deal consistently with __try and __catch too.
	* src/localename.cc: Replace try -> __try, catch -> __catch.
	* src/ios.cc: Likewise.
	* src/locale.cc: Likewise.
	* src/istream.cc: Likewise.
	* src/thread.cc: Likewise.
	* src/compatibility.cc: Likewise.
	* src/bitmap_allocator.cc: Likewise.
	* src/ios_init.cc: Likewise.
	* include/debug/deque: Likewise.
	* include/debug/list: Likewise.
	* include/tr1_impl/hashtable: Likewise.
	* include/std/bitset: Likewise.
	* include/ext/pb_ds/detail/resize_policy/
	hash_load_check_resize_trigger_imp.hpp: Likewise.
	* include/ext/pb_ds/detail/resize_policy/
	hash_standard_resize_policy_imp.hpp: Likewise.
	* include/ext/pb_ds/detail/cc_hash_table_map_/
	resize_fn_imps.hpp: Likewise.
	* include/ext/pb_ds/detail/cc_hash_table_map_/
	constructor_destructor_fn_imps.hpp: Likewise.
	* include/ext/pb_ds/detail/pat_trie_/
	split_join_branch_bag.hpp: Likewise.
	* include/ext/pb_ds/detail/pat_trie_/
	constructors_destructor_fn_imps.hpp: Likewise.
	* include/ext/pb_ds/detail/bin_search_tree_/
	constructors_destructor_fn_imps.hpp: Likewise.
	* include/ext/pb_ds/detail/gp_hash_table_map_/
	resize_fn_imps.hpp: Likewise.
	* include/ext/pb_ds/detail/gp_hash_table_map_/
	constructor_destructor_fn_imps.hpp: Likewise.
	* include/ext/pb_ds/detail/binary_heap_/
	constructors_destructor_fn_imps.hpp: Likewise.
	* include/ext/pb_ds/detail/binary_heap_/
	erase_fn_imps.hpp: Likewise.
	* include/ext/pb_ds/detail/binary_heap_/
	split_join_fn_imps.hpp: Likewise.
	* include/ext/pb_ds/detail/left_child_next_sibling_heap_/
	constructors_destructor_fn_imps.hpp: Likewise.
	* include/ext/pb_ds/detail/debug_map_base.hpp: Likewise.
	* include/ext/pb_ds/detail/list_update_map_/
	constructor_destructor_fn_imps.hpp: Likewise.
	* include/ext/slist: Likewise.
	* include/ext/memory: Likewise.
	* include/ext/rc_string_base.h: Likewise.
	* include/ext/ropeimpl.h: Likewise.
	* include/ext/vstring.tcc: Likewise.
	* include/ext/rope: Likewise.
	* include/ext/sso_string_base.h: Likewise.
	* include/bits/shared_ptr.h: Likewise.
	* include/bits/stl_list.h: Likewise.
	* include/bits/locale_classes.tcc: Likewise.
	* include/bits/locale_facets.tcc: Likewise.
	* include/bits/locale_classes.h: Likewise.
	* include/bits/forward_list.h: Likewise.
	* include/bits/stl_vector.h: Likewise.
	* include/bits/stl_deque.h: Likewise.
	* include/bits/istream.tcc: Likewise.
	* include/bits/stl_uninitialized.h: Likewise.
	* include/bits/ostream.tcc: Likewise.
	* include/bits/vector.tcc: Likewise.
	* include/bits/stl_tempbuf.h: Likewise.
	* include/bits/deque.tcc: Likewise.
	* include/bits/basic_string.tcc: Likewise.
	* include/bits/ostream_insert.h: Likewise.
	* include/bits/locale_facets_nonio.tcc: Likewise.
	* include/bits/stl_tree.h: Likewise.
	* include/bits/fstream.tcc: Likewise.
	* include/tr1/shared_ptr.h: Likewise.
	* include/tr1/hypergeometric.tcc: Likewise.
	* include/backward/hashtable.h: Likewise.
	* libsupc++/exception_ptr.h: Likewise.
	* libsupc++/eh_personality.cc: Likewise.
	* libsupc++/eh_call.cc: Likewise.
	* config/locale/gnu/monetary_members.cc: Likewise.
	* config/locale/gnu/time_members.h: Likewise.
	* config/locale/generic/time_members.h: Likewise.

From-SVN: r143913
This commit is contained in:
Paolo Carlini 2009-02-03 23:44:53 +00:00 committed by Paolo Carlini
parent d0db89893f
commit bc2631e0c6
64 changed files with 574 additions and 480 deletions

View File

@ -1,3 +1,85 @@
2009-02-03 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/25191
* libsupc++/exception_defines.h: Depending on __EXCEPTIONS,
deal consistently with __try and __catch too.
* src/localename.cc: Replace try -> __try, catch -> __catch.
* src/ios.cc: Likewise.
* src/locale.cc: Likewise.
* src/istream.cc: Likewise.
* src/thread.cc: Likewise.
* src/compatibility.cc: Likewise.
* src/bitmap_allocator.cc: Likewise.
* src/ios_init.cc: Likewise.
* include/debug/deque: Likewise.
* include/debug/list: Likewise.
* include/tr1_impl/hashtable: Likewise.
* include/std/bitset: Likewise.
* include/ext/pb_ds/detail/resize_policy/
hash_load_check_resize_trigger_imp.hpp: Likewise.
* include/ext/pb_ds/detail/resize_policy/
hash_standard_resize_policy_imp.hpp: Likewise.
* include/ext/pb_ds/detail/cc_hash_table_map_/
resize_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/cc_hash_table_map_/
constructor_destructor_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/pat_trie_/
split_join_branch_bag.hpp: Likewise.
* include/ext/pb_ds/detail/pat_trie_/
constructors_destructor_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/bin_search_tree_/
constructors_destructor_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/gp_hash_table_map_/
resize_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/gp_hash_table_map_/
constructor_destructor_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/binary_heap_/
constructors_destructor_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/binary_heap_/
erase_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/binary_heap_/
split_join_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/left_child_next_sibling_heap_/
constructors_destructor_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/debug_map_base.hpp: Likewise.
* include/ext/pb_ds/detail/list_update_map_/
constructor_destructor_fn_imps.hpp: Likewise.
* include/ext/slist: Likewise.
* include/ext/memory: Likewise.
* include/ext/rc_string_base.h: Likewise.
* include/ext/ropeimpl.h: Likewise.
* include/ext/vstring.tcc: Likewise.
* include/ext/rope: Likewise.
* include/ext/sso_string_base.h: Likewise.
* include/bits/shared_ptr.h: Likewise.
* include/bits/stl_list.h: Likewise.
* include/bits/locale_classes.tcc: Likewise.
* include/bits/locale_facets.tcc: Likewise.
* include/bits/locale_classes.h: Likewise.
* include/bits/forward_list.h: Likewise.
* include/bits/stl_vector.h: Likewise.
* include/bits/stl_deque.h: Likewise.
* include/bits/istream.tcc: Likewise.
* include/bits/stl_uninitialized.h: Likewise.
* include/bits/ostream.tcc: Likewise.
* include/bits/vector.tcc: Likewise.
* include/bits/stl_tempbuf.h: Likewise.
* include/bits/deque.tcc: Likewise.
* include/bits/basic_string.tcc: Likewise.
* include/bits/ostream_insert.h: Likewise.
* include/bits/locale_facets_nonio.tcc: Likewise.
* include/bits/stl_tree.h: Likewise.
* include/bits/fstream.tcc: Likewise.
* include/tr1/shared_ptr.h: Likewise.
* include/tr1/hypergeometric.tcc: Likewise.
* include/backward/hashtable.h: Likewise.
* libsupc++/exception_ptr.h: Likewise.
* libsupc++/eh_personality.cc: Likewise.
* libsupc++/eh_call.cc: Likewise.
* config/locale/gnu/monetary_members.cc: Likewise.
* config/locale/gnu/time_members.h: Likewise.
* config/locale/generic/time_members.h: Likewise.
2009-02-03 Johannes Singler <singler@ira.uka.de> 2009-02-03 Johannes Singler <singler@ira.uka.de>
* include/parallel/algorithmfwd.h: * include/parallel/algorithmfwd.h:

View File

@ -1,6 +1,6 @@
// std::time_get, std::time_put implementation, generic version -*- C++ -*- // std::time_get, std::time_put implementation, generic version -*- C++ -*-
// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007 // Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009
// Free Software Foundation, Inc. // Free Software Foundation, Inc.
// //
// This file is part of the GNU ISO C++ Library. This library is free // This file is part of the GNU ISO C++ Library. This library is free
@ -73,9 +73,9 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
else else
_M_name_timepunct = _S_get_c_name(); _M_name_timepunct = _S_get_c_name();
try __try
{ _M_initialize_timepunct(__cloc); } { _M_initialize_timepunct(__cloc); }
catch(...) __catch(...)
{ {
if (_M_name_timepunct != _S_get_c_name()) if (_M_name_timepunct != _S_get_c_name())
delete [] _M_name_timepunct; delete [] _M_name_timepunct;

View File

@ -1,6 +1,6 @@
// std::moneypunct implementation details, GNU version -*- C++ -*- // std::moneypunct implementation details, GNU version -*- C++ -*-
// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 // Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009
// Free Software Foundation, Inc. // Free Software Foundation, Inc.
// //
// This file is part of the GNU ISO C++ Library. This library is free // This file is part of the GNU ISO C++ Library. This library is free
@ -479,7 +479,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
wchar_t* __wcs_ps = 0; wchar_t* __wcs_ps = 0;
wchar_t* __wcs_ns = 0; wchar_t* __wcs_ns = 0;
const char __nposn = *(__nl_langinfo_l(__INT_N_SIGN_POSN, __cloc)); const char __nposn = *(__nl_langinfo_l(__INT_N_SIGN_POSN, __cloc));
try __try
{ {
mbstate_t __state; mbstate_t __state;
size_t __len = strlen(__cpossign); size_t __len = strlen(__cpossign);
@ -524,7 +524,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
_M_data->_M_curr_symbol = L""; _M_data->_M_curr_symbol = L"";
_M_data->_M_curr_symbol_size = wcslen(_M_data->_M_curr_symbol); _M_data->_M_curr_symbol_size = wcslen(_M_data->_M_curr_symbol);
} }
catch(...) __catch(...)
{ {
delete _M_data; delete _M_data;
_M_data = 0; _M_data = 0;
@ -647,7 +647,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
wchar_t* __wcs_ps = 0; wchar_t* __wcs_ps = 0;
wchar_t* __wcs_ns = 0; wchar_t* __wcs_ns = 0;
const char __nposn = *(__nl_langinfo_l(__N_SIGN_POSN, __cloc)); const char __nposn = *(__nl_langinfo_l(__N_SIGN_POSN, __cloc));
try __try
{ {
mbstate_t __state; mbstate_t __state;
size_t __len; size_t __len;
@ -693,7 +693,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
_M_data->_M_curr_symbol = L""; _M_data->_M_curr_symbol = L"";
_M_data->_M_curr_symbol_size = wcslen(_M_data->_M_curr_symbol); _M_data->_M_curr_symbol_size = wcslen(_M_data->_M_curr_symbol);
} }
catch(...) __catch(...)
{ {
delete _M_data; delete _M_data;
_M_data = 0; _M_data = 0;

View File

@ -1,6 +1,6 @@
// std::time_get, std::time_put implementation, GNU version -*- C++ -*- // std::time_get, std::time_put implementation, GNU version -*- C++ -*-
// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007 // Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009
// Free Software Foundation, Inc. // Free Software Foundation, Inc.
// //
// This file is part of the GNU ISO C++ Library. This library is free // This file is part of the GNU ISO C++ Library. This library is free
@ -70,9 +70,9 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
else else
_M_name_timepunct = _S_get_c_name(); _M_name_timepunct = _S_get_c_name();
try __try
{ _M_initialize_timepunct(__cloc); } { _M_initialize_timepunct(__cloc); }
catch(...) __catch(...)
{ {
if (_M_name_timepunct != _S_get_c_name()) if (_M_name_timepunct != _S_get_c_name())
delete [] _M_name_timepunct; delete [] _M_name_timepunct;

View File

@ -1,6 +1,6 @@
// Hashtable implementation used by containers -*- C++ -*- // Hashtable implementation used by containers -*- C++ -*-
// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007 // Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009
// Free Software Foundation, Inc. // Free Software Foundation, Inc.
// //
// This file is part of the GNU ISO C++ Library. This library is free // This file is part of the GNU ISO C++ Library. This library is free
@ -603,12 +603,12 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
{ {
_Node* __n = _M_get_node(); _Node* __n = _M_get_node();
__n->_M_next = 0; __n->_M_next = 0;
try __try
{ {
this->get_allocator().construct(&__n->_M_val, __obj); this->get_allocator().construct(&__n->_M_val, __obj);
return __n; return __n;
} }
catch(...) __catch(...)
{ {
_M_put_node(__n); _M_put_node(__n);
__throw_exception_again; __throw_exception_again;
@ -995,7 +995,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
if (__n > __old_n) if (__n > __old_n)
{ {
_Vector_type __tmp(__n, (_Node*)(0), _M_buckets.get_allocator()); _Vector_type __tmp(__n, (_Node*)(0), _M_buckets.get_allocator());
try __try
{ {
for (size_type __bucket = 0; __bucket < __old_n; ++__bucket) for (size_type __bucket = 0; __bucket < __old_n; ++__bucket)
{ {
@ -1012,7 +1012,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
} }
_M_buckets.swap(__tmp); _M_buckets.swap(__tmp);
} }
catch(...) __catch(...)
{ {
for (size_type __bucket = 0; __bucket < __tmp.size(); for (size_type __bucket = 0; __bucket < __tmp.size();
++__bucket) ++__bucket)
@ -1098,7 +1098,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
_M_buckets.clear(); _M_buckets.clear();
_M_buckets.reserve(__ht._M_buckets.size()); _M_buckets.reserve(__ht._M_buckets.size());
_M_buckets.insert(_M_buckets.end(), __ht._M_buckets.size(), (_Node*) 0); _M_buckets.insert(_M_buckets.end(), __ht._M_buckets.size(), (_Node*) 0);
try __try
{ {
for (size_type __i = 0; __i < __ht._M_buckets.size(); ++__i) { for (size_type __i = 0; __i < __ht._M_buckets.size(); ++__i) {
const _Node* __cur = __ht._M_buckets[__i]; const _Node* __cur = __ht._M_buckets[__i];
@ -1118,7 +1118,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
} }
_M_num_elements = __ht._M_num_elements; _M_num_elements = __ht._M_num_elements;
} }
catch(...) __catch(...)
{ {
clear(); clear();
__throw_exception_again; __throw_exception_again;

View File

@ -1,7 +1,7 @@
// Components for manipulating sequences of characters -*- C++ -*- // Components for manipulating sequences of characters -*- C++ -*-
// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, // Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
// 2006, 2007 // 2006, 2007, 2008, 2009
// Free Software Foundation, Inc. // Free Software Foundation, Inc.
// //
// This file is part of the GNU ISO C++ Library. This library is free // This file is part of the GNU ISO C++ Library. This library is free
@ -97,7 +97,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
} }
_Rep* __r = _Rep::_S_create(__len, size_type(0), __a); _Rep* __r = _Rep::_S_create(__len, size_type(0), __a);
_M_copy(__r->_M_refdata(), __buf, __len); _M_copy(__r->_M_refdata(), __buf, __len);
try __try
{ {
while (__beg != __end) while (__beg != __end)
{ {
@ -113,7 +113,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
++__beg; ++__beg;
} }
} }
catch(...) __catch(...)
{ {
__r->_M_destroy(__a); __r->_M_destroy(__a);
__throw_exception_again; __throw_exception_again;
@ -142,9 +142,9 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
__end)); __end));
// Check for out_of_range and length_error exceptions. // Check for out_of_range and length_error exceptions.
_Rep* __r = _Rep::_S_create(__dnew, size_type(0), __a); _Rep* __r = _Rep::_S_create(__dnew, size_type(0), __a);
try __try
{ _S_copy_chars(__r->_M_refdata(), __beg, __end); } { _S_copy_chars(__r->_M_refdata(), __beg, __end); }
catch(...) __catch(...)
{ {
__r->_M_destroy(__a); __r->_M_destroy(__a);
__throw_exception_again; __throw_exception_again;
@ -992,7 +992,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
typename __istream_type::sentry __cerb(__in, false); typename __istream_type::sentry __cerb(__in, false);
if (__cerb) if (__cerb)
{ {
try __try
{ {
// Avoid reallocation for common case. // Avoid reallocation for common case.
__str.erase(); __str.erase();
@ -1025,12 +1025,12 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
__err |= __ios_base::eofbit; __err |= __ios_base::eofbit;
__in.width(0); __in.width(0);
} }
catch(__cxxabiv1::__forced_unwind&) __catch(__cxxabiv1::__forced_unwind&)
{ {
__in._M_setstate(__ios_base::badbit); __in._M_setstate(__ios_base::badbit);
__throw_exception_again; __throw_exception_again;
} }
catch(...) __catch(...)
{ {
// _GLIBCXX_RESOLVE_LIB_DEFECTS // _GLIBCXX_RESOLVE_LIB_DEFECTS
// 91. Description of operator>> and getline() for string<> // 91. Description of operator>> and getline() for string<>
@ -1063,7 +1063,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
typename __istream_type::sentry __cerb(__in, true); typename __istream_type::sentry __cerb(__in, true);
if (__cerb) if (__cerb)
{ {
try __try
{ {
__str.erase(); __str.erase();
const __int_type __idelim = _Traits::to_int_type(__delim); const __int_type __idelim = _Traits::to_int_type(__delim);
@ -1089,12 +1089,12 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
else else
__err |= __ios_base::failbit; __err |= __ios_base::failbit;
} }
catch(__cxxabiv1::__forced_unwind&) __catch(__cxxabiv1::__forced_unwind&)
{ {
__in._M_setstate(__ios_base::badbit); __in._M_setstate(__ios_base::badbit);
__throw_exception_again; __throw_exception_again;
} }
catch(...) __catch(...)
{ {
// _GLIBCXX_RESOLVE_LIB_DEFECTS // _GLIBCXX_RESOLVE_LIB_DEFECTS
// 91. Description of operator>> and getline() for string<> // 91. Description of operator>> and getline() for string<>

View File

@ -1,6 +1,6 @@
// Deque implementation (out of line) -*- C++ -*- // Deque implementation (out of line) -*- C++ -*-
// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 // Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009
// Free Software Foundation, Inc. // Free Software Foundation, Inc.
// //
// This file is part of the GNU ISO C++ Library. This library is free // This file is part of the GNU ISO C++ Library. This library is free
@ -242,13 +242,13 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_D)
if (__pos._M_cur == this->_M_impl._M_start._M_cur) if (__pos._M_cur == this->_M_impl._M_start._M_cur)
{ {
iterator __new_start = _M_reserve_elements_at_front(__n); iterator __new_start = _M_reserve_elements_at_front(__n);
try __try
{ {
std::__uninitialized_fill_a(__new_start, this->_M_impl._M_start, std::__uninitialized_fill_a(__new_start, this->_M_impl._M_start,
__x, _M_get_Tp_allocator()); __x, _M_get_Tp_allocator());
this->_M_impl._M_start = __new_start; this->_M_impl._M_start = __new_start;
} }
catch(...) __catch(...)
{ {
_M_destroy_nodes(__new_start._M_node, _M_destroy_nodes(__new_start._M_node,
this->_M_impl._M_start._M_node); this->_M_impl._M_start._M_node);
@ -258,14 +258,14 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_D)
else if (__pos._M_cur == this->_M_impl._M_finish._M_cur) else if (__pos._M_cur == this->_M_impl._M_finish._M_cur)
{ {
iterator __new_finish = _M_reserve_elements_at_back(__n); iterator __new_finish = _M_reserve_elements_at_back(__n);
try __try
{ {
std::__uninitialized_fill_a(this->_M_impl._M_finish, std::__uninitialized_fill_a(this->_M_impl._M_finish,
__new_finish, __x, __new_finish, __x,
_M_get_Tp_allocator()); _M_get_Tp_allocator());
this->_M_impl._M_finish = __new_finish; this->_M_impl._M_finish = __new_finish;
} }
catch(...) __catch(...)
{ {
_M_destroy_nodes(this->_M_impl._M_finish._M_node + 1, _M_destroy_nodes(this->_M_impl._M_finish._M_node + 1,
__new_finish._M_node + 1); __new_finish._M_node + 1);
@ -282,7 +282,7 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_D)
_M_fill_initialize(const value_type& __value) _M_fill_initialize(const value_type& __value)
{ {
_Map_pointer __cur; _Map_pointer __cur;
try __try
{ {
for (__cur = this->_M_impl._M_start._M_node; for (__cur = this->_M_impl._M_start._M_node;
__cur < this->_M_impl._M_finish._M_node; __cur < this->_M_impl._M_finish._M_node;
@ -293,7 +293,7 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_D)
this->_M_impl._M_finish._M_cur, this->_M_impl._M_finish._M_cur,
__value, _M_get_Tp_allocator()); __value, _M_get_Tp_allocator());
} }
catch(...) __catch(...)
{ {
std::_Destroy(this->_M_impl._M_start, iterator(*__cur, __cur), std::_Destroy(this->_M_impl._M_start, iterator(*__cur, __cur),
_M_get_Tp_allocator()); _M_get_Tp_allocator());
@ -309,12 +309,12 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_D)
std::input_iterator_tag) std::input_iterator_tag)
{ {
this->_M_initialize_map(0); this->_M_initialize_map(0);
try __try
{ {
for (; __first != __last; ++__first) for (; __first != __last; ++__first)
push_back(*__first); push_back(*__first);
} }
catch(...) __catch(...)
{ {
clear(); clear();
__throw_exception_again; __throw_exception_again;
@ -332,7 +332,7 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_D)
this->_M_initialize_map(__n); this->_M_initialize_map(__n);
_Map_pointer __cur_node; _Map_pointer __cur_node;
try __try
{ {
for (__cur_node = this->_M_impl._M_start._M_node; for (__cur_node = this->_M_impl._M_start._M_node;
__cur_node < this->_M_impl._M_finish._M_node; __cur_node < this->_M_impl._M_finish._M_node;
@ -348,7 +348,7 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_D)
this->_M_impl._M_finish._M_first, this->_M_impl._M_finish._M_first,
_M_get_Tp_allocator()); _M_get_Tp_allocator());
} }
catch(...) __catch(...)
{ {
std::_Destroy(this->_M_impl._M_start, std::_Destroy(this->_M_impl._M_start,
iterator(*__cur_node, __cur_node), iterator(*__cur_node, __cur_node),
@ -372,7 +372,7 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_D)
{ {
_M_reserve_map_at_back(); _M_reserve_map_at_back();
*(this->_M_impl._M_finish._M_node + 1) = this->_M_allocate_node(); *(this->_M_impl._M_finish._M_node + 1) = this->_M_allocate_node();
try __try
{ {
#ifdef __GXX_EXPERIMENTAL_CXX0X__ #ifdef __GXX_EXPERIMENTAL_CXX0X__
this->_M_impl.construct(this->_M_impl._M_finish._M_cur, this->_M_impl.construct(this->_M_impl._M_finish._M_cur,
@ -384,7 +384,7 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_D)
+ 1); + 1);
this->_M_impl._M_finish._M_cur = this->_M_impl._M_finish._M_first; this->_M_impl._M_finish._M_cur = this->_M_impl._M_finish._M_first;
} }
catch(...) __catch(...)
{ {
_M_deallocate_node(*(this->_M_impl._M_finish._M_node + 1)); _M_deallocate_node(*(this->_M_impl._M_finish._M_node + 1));
__throw_exception_again; __throw_exception_again;
@ -406,7 +406,7 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_D)
{ {
_M_reserve_map_at_front(); _M_reserve_map_at_front();
*(this->_M_impl._M_start._M_node - 1) = this->_M_allocate_node(); *(this->_M_impl._M_start._M_node - 1) = this->_M_allocate_node();
try __try
{ {
this->_M_impl._M_start._M_set_node(this->_M_impl._M_start._M_node this->_M_impl._M_start._M_set_node(this->_M_impl._M_start._M_node
- 1); - 1);
@ -418,7 +418,7 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_D)
this->_M_impl.construct(this->_M_impl._M_start._M_cur, __t); this->_M_impl.construct(this->_M_impl._M_start._M_cur, __t);
#endif #endif
} }
catch(...) __catch(...)
{ {
++this->_M_impl._M_start; ++this->_M_impl._M_start;
_M_deallocate_node(*(this->_M_impl._M_start._M_node - 1)); _M_deallocate_node(*(this->_M_impl._M_start._M_node - 1));
@ -473,13 +473,13 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_D)
if (__pos._M_cur == this->_M_impl._M_start._M_cur) if (__pos._M_cur == this->_M_impl._M_start._M_cur)
{ {
iterator __new_start = _M_reserve_elements_at_front(__n); iterator __new_start = _M_reserve_elements_at_front(__n);
try __try
{ {
std::__uninitialized_copy_a(__first, __last, __new_start, std::__uninitialized_copy_a(__first, __last, __new_start,
_M_get_Tp_allocator()); _M_get_Tp_allocator());
this->_M_impl._M_start = __new_start; this->_M_impl._M_start = __new_start;
} }
catch(...) __catch(...)
{ {
_M_destroy_nodes(__new_start._M_node, _M_destroy_nodes(__new_start._M_node,
this->_M_impl._M_start._M_node); this->_M_impl._M_start._M_node);
@ -489,14 +489,14 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_D)
else if (__pos._M_cur == this->_M_impl._M_finish._M_cur) else if (__pos._M_cur == this->_M_impl._M_finish._M_cur)
{ {
iterator __new_finish = _M_reserve_elements_at_back(__n); iterator __new_finish = _M_reserve_elements_at_back(__n);
try __try
{ {
std::__uninitialized_copy_a(__first, __last, std::__uninitialized_copy_a(__first, __last,
this->_M_impl._M_finish, this->_M_impl._M_finish,
_M_get_Tp_allocator()); _M_get_Tp_allocator());
this->_M_impl._M_finish = __new_finish; this->_M_impl._M_finish = __new_finish;
} }
catch(...) __catch(...)
{ {
_M_destroy_nodes(this->_M_impl._M_finish._M_node + 1, _M_destroy_nodes(this->_M_impl._M_finish._M_node + 1,
__new_finish._M_node + 1); __new_finish._M_node + 1);
@ -562,7 +562,7 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_D)
iterator __new_start = _M_reserve_elements_at_front(__n); iterator __new_start = _M_reserve_elements_at_front(__n);
iterator __old_start = this->_M_impl._M_start; iterator __old_start = this->_M_impl._M_start;
__pos = this->_M_impl._M_start + __elems_before; __pos = this->_M_impl._M_start + __elems_before;
try __try
{ {
if (__elems_before >= difference_type(__n)) if (__elems_before >= difference_type(__n))
{ {
@ -586,7 +586,7 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_D)
std::fill(__old_start, __pos, __x_copy); std::fill(__old_start, __pos, __x_copy);
} }
} }
catch(...) __catch(...)
{ {
_M_destroy_nodes(__new_start._M_node, _M_destroy_nodes(__new_start._M_node,
this->_M_impl._M_start._M_node); this->_M_impl._M_start._M_node);
@ -600,7 +600,7 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_D)
const difference_type __elems_after = const difference_type __elems_after =
difference_type(__length) - __elems_before; difference_type(__length) - __elems_before;
__pos = this->_M_impl._M_finish - __elems_after; __pos = this->_M_impl._M_finish - __elems_after;
try __try
{ {
if (__elems_after > difference_type(__n)) if (__elems_after > difference_type(__n))
{ {
@ -625,7 +625,7 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_D)
std::fill(__pos, __old_finish, __x_copy); std::fill(__pos, __old_finish, __x_copy);
} }
} }
catch(...) __catch(...)
{ {
_M_destroy_nodes(this->_M_impl._M_finish._M_node + 1, _M_destroy_nodes(this->_M_impl._M_finish._M_node + 1,
__new_finish._M_node + 1); __new_finish._M_node + 1);
@ -649,7 +649,7 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_D)
iterator __new_start = _M_reserve_elements_at_front(__n); iterator __new_start = _M_reserve_elements_at_front(__n);
iterator __old_start = this->_M_impl._M_start; iterator __old_start = this->_M_impl._M_start;
__pos = this->_M_impl._M_start + __elemsbefore; __pos = this->_M_impl._M_start + __elemsbefore;
try __try
{ {
if (__elemsbefore >= difference_type(__n)) if (__elemsbefore >= difference_type(__n))
{ {
@ -674,7 +674,7 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_D)
std::copy(__mid, __last, __old_start); std::copy(__mid, __last, __old_start);
} }
} }
catch(...) __catch(...)
{ {
_M_destroy_nodes(__new_start._M_node, _M_destroy_nodes(__new_start._M_node,
this->_M_impl._M_start._M_node); this->_M_impl._M_start._M_node);
@ -688,7 +688,7 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_D)
const difference_type __elemsafter = const difference_type __elemsafter =
difference_type(__length) - __elemsbefore; difference_type(__length) - __elemsbefore;
__pos = this->_M_impl._M_finish - __elemsafter; __pos = this->_M_impl._M_finish - __elemsafter;
try __try
{ {
if (__elemsafter > difference_type(__n)) if (__elemsafter > difference_type(__n))
{ {
@ -714,7 +714,7 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_D)
std::copy(__first, __mid, __pos); std::copy(__first, __mid, __pos);
} }
} }
catch(...) __catch(...)
{ {
_M_destroy_nodes(this->_M_impl._M_finish._M_node + 1, _M_destroy_nodes(this->_M_impl._M_finish._M_node + 1,
__new_finish._M_node + 1); __new_finish._M_node + 1);
@ -757,12 +757,12 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_D)
/ _S_buffer_size()); / _S_buffer_size());
_M_reserve_map_at_front(__new_nodes); _M_reserve_map_at_front(__new_nodes);
size_type __i; size_type __i;
try __try
{ {
for (__i = 1; __i <= __new_nodes; ++__i) for (__i = 1; __i <= __new_nodes; ++__i)
*(this->_M_impl._M_start._M_node - __i) = this->_M_allocate_node(); *(this->_M_impl._M_start._M_node - __i) = this->_M_allocate_node();
} }
catch(...) __catch(...)
{ {
for (size_type __j = 1; __j < __i; ++__j) for (size_type __j = 1; __j < __i; ++__j)
_M_deallocate_node(*(this->_M_impl._M_start._M_node - __j)); _M_deallocate_node(*(this->_M_impl._M_start._M_node - __j));
@ -782,12 +782,12 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_D)
/ _S_buffer_size()); / _S_buffer_size());
_M_reserve_map_at_back(__new_nodes); _M_reserve_map_at_back(__new_nodes);
size_type __i; size_type __i;
try __try
{ {
for (__i = 1; __i <= __new_nodes; ++__i) for (__i = 1; __i <= __new_nodes; ++__i)
*(this->_M_impl._M_finish._M_node + __i) = this->_M_allocate_node(); *(this->_M_impl._M_finish._M_node + __i) = this->_M_allocate_node();
} }
catch(...) __catch(...)
{ {
for (size_type __j = 1; __j < __i; ++__j) for (size_type __j = 1; __j < __i; ++__j)
_M_deallocate_node(*(this->_M_impl._M_finish._M_node + __j)); _M_deallocate_node(*(this->_M_impl._M_finish._M_node + __j));

View File

@ -366,13 +366,13 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
_M_create_node(_Args&&... __args) _M_create_node(_Args&&... __args)
{ {
typename _Node::_Pointer __node = this->_M_get_node(); typename _Node::_Pointer __node = this->_M_get_node();
try __try
{ {
_M_get_Node_allocator().construct(__node, _M_get_Node_allocator().construct(__node,
std::forward<_Args>(__args)...); std::forward<_Args>(__args)...);
__node->_M_next = 0; __node->_M_next = 0;
} }
catch(...) __catch(...)
{ {
this->_M_put_node(__node); this->_M_put_node(__node);
__throw_exception_again; __throw_exception_again;

View File

@ -1,7 +1,7 @@
// File based streams -*- C++ -*- // File based streams -*- C++ -*-
// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, // Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006,
// 2007 // 2007, 2008, 2009
// Free Software Foundation, Inc. // Free Software Foundation, Inc.
// //
// This file is part of the GNU ISO C++ Library. This library is free // This file is part of the GNU ISO C++ Library. This library is free
@ -154,17 +154,17 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
} }
} __cs (this); } __cs (this);
try __try
{ {
if (!_M_terminate_output()) if (!_M_terminate_output())
__testfail = true; __testfail = true;
} }
catch(__cxxabiv1::__forced_unwind&) __catch(__cxxabiv1::__forced_unwind&)
{ {
_M_file.close(); _M_file.close();
__throw_exception_again; __throw_exception_again;
} }
catch(...) __catch(...)
{ __testfail = true; } { __testfail = true; }
} }

View File

@ -1,7 +1,7 @@
// istream classes -*- C++ -*- // istream classes -*- C++ -*-
// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, // Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
// 2006, 2007 // 2006, 2007, 2008, 2009
// Free Software Foundation, Inc. // Free Software Foundation, Inc.
// //
// This file is part of the GNU ISO C++ Library. This library is free // This file is part of the GNU ISO C++ Library. This library is free
@ -95,17 +95,17 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
if (__cerb) if (__cerb)
{ {
ios_base::iostate __err = ios_base::iostate(ios_base::goodbit); ios_base::iostate __err = ios_base::iostate(ios_base::goodbit);
try __try
{ {
const __num_get_type& __ng = __check_facet(this->_M_num_get); const __num_get_type& __ng = __check_facet(this->_M_num_get);
__ng.get(*this, 0, *this, __err, __v); __ng.get(*this, 0, *this, __err, __v);
} }
catch(__cxxabiv1::__forced_unwind&) __catch(__cxxabiv1::__forced_unwind&)
{ {
this->_M_setstate(ios_base::badbit); this->_M_setstate(ios_base::badbit);
__throw_exception_again; __throw_exception_again;
} }
catch(...) __catch(...)
{ this->_M_setstate(ios_base::badbit); } { this->_M_setstate(ios_base::badbit); }
if (__err) if (__err)
this->setstate(__err); this->setstate(__err);
@ -162,7 +162,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
sentry __cerb(*this, false); sentry __cerb(*this, false);
if (__cerb && __sbout) if (__cerb && __sbout)
{ {
try __try
{ {
bool __ineof; bool __ineof;
if (!__copy_streambufs_eof(this->rdbuf(), __sbout, __ineof)) if (!__copy_streambufs_eof(this->rdbuf(), __sbout, __ineof))
@ -170,12 +170,12 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
if (__ineof) if (__ineof)
__err |= ios_base::eofbit; __err |= ios_base::eofbit;
} }
catch(__cxxabiv1::__forced_unwind&) __catch(__cxxabiv1::__forced_unwind&)
{ {
this->_M_setstate(ios_base::failbit); this->_M_setstate(ios_base::failbit);
__throw_exception_again; __throw_exception_again;
} }
catch(...) __catch(...)
{ this->_M_setstate(ios_base::failbit); } { this->_M_setstate(ios_base::failbit); }
} }
else if (!__sbout) else if (!__sbout)
@ -197,7 +197,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
sentry __cerb(*this, true); sentry __cerb(*this, true);
if (__cerb) if (__cerb)
{ {
try __try
{ {
__c = this->rdbuf()->sbumpc(); __c = this->rdbuf()->sbumpc();
// 27.6.1.1 paragraph 3 // 27.6.1.1 paragraph 3
@ -206,12 +206,12 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
else else
__err |= ios_base::eofbit; __err |= ios_base::eofbit;
} }
catch(__cxxabiv1::__forced_unwind&) __catch(__cxxabiv1::__forced_unwind&)
{ {
this->_M_setstate(ios_base::badbit); this->_M_setstate(ios_base::badbit);
__throw_exception_again; __throw_exception_again;
} }
catch(...) __catch(...)
{ this->_M_setstate(ios_base::badbit); } { this->_M_setstate(ios_base::badbit); }
} }
if (!_M_gcount) if (!_M_gcount)
@ -231,7 +231,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
sentry __cerb(*this, true); sentry __cerb(*this, true);
if (__cerb) if (__cerb)
{ {
try __try
{ {
const int_type __cb = this->rdbuf()->sbumpc(); const int_type __cb = this->rdbuf()->sbumpc();
// 27.6.1.1 paragraph 3 // 27.6.1.1 paragraph 3
@ -243,12 +243,12 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
else else
__err |= ios_base::eofbit; __err |= ios_base::eofbit;
} }
catch(__cxxabiv1::__forced_unwind&) __catch(__cxxabiv1::__forced_unwind&)
{ {
this->_M_setstate(ios_base::badbit); this->_M_setstate(ios_base::badbit);
__throw_exception_again; __throw_exception_again;
} }
catch(...) __catch(...)
{ this->_M_setstate(ios_base::badbit); } { this->_M_setstate(ios_base::badbit); }
} }
if (!_M_gcount) if (!_M_gcount)
@ -268,7 +268,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
sentry __cerb(*this, true); sentry __cerb(*this, true);
if (__cerb) if (__cerb)
{ {
try __try
{ {
const int_type __idelim = traits_type::to_int_type(__delim); const int_type __idelim = traits_type::to_int_type(__delim);
const int_type __eof = traits_type::eof(); const int_type __eof = traits_type::eof();
@ -286,12 +286,12 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
if (traits_type::eq_int_type(__c, __eof)) if (traits_type::eq_int_type(__c, __eof))
__err |= ios_base::eofbit; __err |= ios_base::eofbit;
} }
catch(__cxxabiv1::__forced_unwind&) __catch(__cxxabiv1::__forced_unwind&)
{ {
this->_M_setstate(ios_base::badbit); this->_M_setstate(ios_base::badbit);
__throw_exception_again; __throw_exception_again;
} }
catch(...) __catch(...)
{ this->_M_setstate(ios_base::badbit); } { this->_M_setstate(ios_base::badbit); }
} }
// _GLIBCXX_RESOLVE_LIB_DEFECTS // _GLIBCXX_RESOLVE_LIB_DEFECTS
@ -315,7 +315,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
sentry __cerb(*this, true); sentry __cerb(*this, true);
if (__cerb) if (__cerb)
{ {
try __try
{ {
const int_type __idelim = traits_type::to_int_type(__delim); const int_type __idelim = traits_type::to_int_type(__delim);
const int_type __eof = traits_type::eof(); const int_type __eof = traits_type::eof();
@ -334,12 +334,12 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
if (traits_type::eq_int_type(__c, __eof)) if (traits_type::eq_int_type(__c, __eof))
__err |= ios_base::eofbit; __err |= ios_base::eofbit;
} }
catch(__cxxabiv1::__forced_unwind&) __catch(__cxxabiv1::__forced_unwind&)
{ {
this->_M_setstate(ios_base::badbit); this->_M_setstate(ios_base::badbit);
__throw_exception_again; __throw_exception_again;
} }
catch(...) __catch(...)
{ this->_M_setstate(ios_base::badbit); } { this->_M_setstate(ios_base::badbit); }
} }
if (!_M_gcount) if (!_M_gcount)
@ -359,7 +359,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
sentry __cerb(*this, true); sentry __cerb(*this, true);
if (__cerb) if (__cerb)
{ {
try __try
{ {
const int_type __idelim = traits_type::to_int_type(__delim); const int_type __idelim = traits_type::to_int_type(__delim);
const int_type __eof = traits_type::eof(); const int_type __eof = traits_type::eof();
@ -387,12 +387,12 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
__err |= ios_base::failbit; __err |= ios_base::failbit;
} }
} }
catch(__cxxabiv1::__forced_unwind&) __catch(__cxxabiv1::__forced_unwind&)
{ {
this->_M_setstate(ios_base::badbit); this->_M_setstate(ios_base::badbit);
__throw_exception_again; __throw_exception_again;
} }
catch(...) __catch(...)
{ this->_M_setstate(ios_base::badbit); } { this->_M_setstate(ios_base::badbit); }
} }
// _GLIBCXX_RESOLVE_LIB_DEFECTS // _GLIBCXX_RESOLVE_LIB_DEFECTS
@ -419,7 +419,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
if (__cerb) if (__cerb)
{ {
ios_base::iostate __err = ios_base::iostate(ios_base::goodbit); ios_base::iostate __err = ios_base::iostate(ios_base::goodbit);
try __try
{ {
const int_type __eof = traits_type::eof(); const int_type __eof = traits_type::eof();
__streambuf_type* __sb = this->rdbuf(); __streambuf_type* __sb = this->rdbuf();
@ -429,12 +429,12 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
else else
_M_gcount = 1; _M_gcount = 1;
} }
catch(__cxxabiv1::__forced_unwind&) __catch(__cxxabiv1::__forced_unwind&)
{ {
this->_M_setstate(ios_base::badbit); this->_M_setstate(ios_base::badbit);
__throw_exception_again; __throw_exception_again;
} }
catch(...) __catch(...)
{ this->_M_setstate(ios_base::badbit); } { this->_M_setstate(ios_base::badbit); }
if (__err) if (__err)
this->setstate(__err); this->setstate(__err);
@ -452,7 +452,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
if (__cerb && __n > 0) if (__cerb && __n > 0)
{ {
ios_base::iostate __err = ios_base::iostate(ios_base::goodbit); ios_base::iostate __err = ios_base::iostate(ios_base::goodbit);
try __try
{ {
const int_type __eof = traits_type::eof(); const int_type __eof = traits_type::eof();
__streambuf_type* __sb = this->rdbuf(); __streambuf_type* __sb = this->rdbuf();
@ -491,12 +491,12 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
if (traits_type::eq_int_type(__c, __eof)) if (traits_type::eq_int_type(__c, __eof))
__err |= ios_base::eofbit; __err |= ios_base::eofbit;
} }
catch(__cxxabiv1::__forced_unwind&) __catch(__cxxabiv1::__forced_unwind&)
{ {
this->_M_setstate(ios_base::badbit); this->_M_setstate(ios_base::badbit);
__throw_exception_again; __throw_exception_again;
} }
catch(...) __catch(...)
{ this->_M_setstate(ios_base::badbit); } { this->_M_setstate(ios_base::badbit); }
if (__err) if (__err)
this->setstate(__err); this->setstate(__err);
@ -514,7 +514,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
if (__cerb && __n > 0) if (__cerb && __n > 0)
{ {
ios_base::iostate __err = ios_base::iostate(ios_base::goodbit); ios_base::iostate __err = ios_base::iostate(ios_base::goodbit);
try __try
{ {
const int_type __eof = traits_type::eof(); const int_type __eof = traits_type::eof();
__streambuf_type* __sb = this->rdbuf(); __streambuf_type* __sb = this->rdbuf();
@ -556,12 +556,12 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
__sb->sbumpc(); __sb->sbumpc();
} }
} }
catch(__cxxabiv1::__forced_unwind&) __catch(__cxxabiv1::__forced_unwind&)
{ {
this->_M_setstate(ios_base::badbit); this->_M_setstate(ios_base::badbit);
__throw_exception_again; __throw_exception_again;
} }
catch(...) __catch(...)
{ this->_M_setstate(ios_base::badbit); } { this->_M_setstate(ios_base::badbit); }
if (__err) if (__err)
this->setstate(__err); this->setstate(__err);
@ -580,18 +580,18 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
if (__cerb) if (__cerb)
{ {
ios_base::iostate __err = ios_base::iostate(ios_base::goodbit); ios_base::iostate __err = ios_base::iostate(ios_base::goodbit);
try __try
{ {
__c = this->rdbuf()->sgetc(); __c = this->rdbuf()->sgetc();
if (traits_type::eq_int_type(__c, traits_type::eof())) if (traits_type::eq_int_type(__c, traits_type::eof()))
__err |= ios_base::eofbit; __err |= ios_base::eofbit;
} }
catch(__cxxabiv1::__forced_unwind&) __catch(__cxxabiv1::__forced_unwind&)
{ {
this->_M_setstate(ios_base::badbit); this->_M_setstate(ios_base::badbit);
__throw_exception_again; __throw_exception_again;
} }
catch(...) __catch(...)
{ this->_M_setstate(ios_base::badbit); } { this->_M_setstate(ios_base::badbit); }
if (__err) if (__err)
this->setstate(__err); this->setstate(__err);
@ -609,18 +609,18 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
if (__cerb) if (__cerb)
{ {
ios_base::iostate __err = ios_base::iostate(ios_base::goodbit); ios_base::iostate __err = ios_base::iostate(ios_base::goodbit);
try __try
{ {
_M_gcount = this->rdbuf()->sgetn(__s, __n); _M_gcount = this->rdbuf()->sgetn(__s, __n);
if (_M_gcount != __n) if (_M_gcount != __n)
__err |= (ios_base::eofbit | ios_base::failbit); __err |= (ios_base::eofbit | ios_base::failbit);
} }
catch(__cxxabiv1::__forced_unwind&) __catch(__cxxabiv1::__forced_unwind&)
{ {
this->_M_setstate(ios_base::badbit); this->_M_setstate(ios_base::badbit);
__throw_exception_again; __throw_exception_again;
} }
catch(...) __catch(...)
{ this->_M_setstate(ios_base::badbit); } { this->_M_setstate(ios_base::badbit); }
if (__err) if (__err)
this->setstate(__err); this->setstate(__err);
@ -638,7 +638,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
if (__cerb) if (__cerb)
{ {
ios_base::iostate __err = ios_base::iostate(ios_base::goodbit); ios_base::iostate __err = ios_base::iostate(ios_base::goodbit);
try __try
{ {
// Cannot compare int_type with streamsize generically. // Cannot compare int_type with streamsize generically.
const streamsize __num = this->rdbuf()->in_avail(); const streamsize __num = this->rdbuf()->in_avail();
@ -647,12 +647,12 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
else if (__num == -1) else if (__num == -1)
__err |= ios_base::eofbit; __err |= ios_base::eofbit;
} }
catch(__cxxabiv1::__forced_unwind&) __catch(__cxxabiv1::__forced_unwind&)
{ {
this->_M_setstate(ios_base::badbit); this->_M_setstate(ios_base::badbit);
__throw_exception_again; __throw_exception_again;
} }
catch(...) __catch(...)
{ this->_M_setstate(ios_base::badbit); } { this->_M_setstate(ios_base::badbit); }
if (__err) if (__err)
this->setstate(__err); this->setstate(__err);
@ -672,7 +672,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
if (__cerb) if (__cerb)
{ {
ios_base::iostate __err = ios_base::iostate(ios_base::goodbit); ios_base::iostate __err = ios_base::iostate(ios_base::goodbit);
try __try
{ {
const int_type __eof = traits_type::eof(); const int_type __eof = traits_type::eof();
__streambuf_type* __sb = this->rdbuf(); __streambuf_type* __sb = this->rdbuf();
@ -680,12 +680,12 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
|| traits_type::eq_int_type(__sb->sputbackc(__c), __eof)) || traits_type::eq_int_type(__sb->sputbackc(__c), __eof))
__err |= ios_base::badbit; __err |= ios_base::badbit;
} }
catch(__cxxabiv1::__forced_unwind&) __catch(__cxxabiv1::__forced_unwind&)
{ {
this->_M_setstate(ios_base::badbit); this->_M_setstate(ios_base::badbit);
__throw_exception_again; __throw_exception_again;
} }
catch(...) __catch(...)
{ this->_M_setstate(ios_base::badbit); } { this->_M_setstate(ios_base::badbit); }
if (__err) if (__err)
this->setstate(__err); this->setstate(__err);
@ -705,7 +705,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
if (__cerb) if (__cerb)
{ {
ios_base::iostate __err = ios_base::iostate(ios_base::goodbit); ios_base::iostate __err = ios_base::iostate(ios_base::goodbit);
try __try
{ {
const int_type __eof = traits_type::eof(); const int_type __eof = traits_type::eof();
__streambuf_type* __sb = this->rdbuf(); __streambuf_type* __sb = this->rdbuf();
@ -713,12 +713,12 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
|| traits_type::eq_int_type(__sb->sungetc(), __eof)) || traits_type::eq_int_type(__sb->sungetc(), __eof))
__err |= ios_base::badbit; __err |= ios_base::badbit;
} }
catch(__cxxabiv1::__forced_unwind&) __catch(__cxxabiv1::__forced_unwind&)
{ {
this->_M_setstate(ios_base::badbit); this->_M_setstate(ios_base::badbit);
__throw_exception_again; __throw_exception_again;
} }
catch(...) __catch(...)
{ this->_M_setstate(ios_base::badbit); } { this->_M_setstate(ios_base::badbit); }
if (__err) if (__err)
this->setstate(__err); this->setstate(__err);
@ -738,7 +738,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
if (__cerb) if (__cerb)
{ {
ios_base::iostate __err = ios_base::iostate(ios_base::goodbit); ios_base::iostate __err = ios_base::iostate(ios_base::goodbit);
try __try
{ {
__streambuf_type* __sb = this->rdbuf(); __streambuf_type* __sb = this->rdbuf();
if (__sb) if (__sb)
@ -749,12 +749,12 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
__ret = 0; __ret = 0;
} }
} }
catch(__cxxabiv1::__forced_unwind&) __catch(__cxxabiv1::__forced_unwind&)
{ {
this->_M_setstate(ios_base::badbit); this->_M_setstate(ios_base::badbit);
__throw_exception_again; __throw_exception_again;
} }
catch(...) __catch(...)
{ this->_M_setstate(ios_base::badbit); } { this->_M_setstate(ios_base::badbit); }
if (__err) if (__err)
this->setstate(__err); this->setstate(__err);
@ -770,18 +770,18 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
// _GLIBCXX_RESOLVE_LIB_DEFECTS // _GLIBCXX_RESOLVE_LIB_DEFECTS
// DR60. Do not change _M_gcount. // DR60. Do not change _M_gcount.
pos_type __ret = pos_type(-1); pos_type __ret = pos_type(-1);
try __try
{ {
if (!this->fail()) if (!this->fail())
__ret = this->rdbuf()->pubseekoff(0, ios_base::cur, __ret = this->rdbuf()->pubseekoff(0, ios_base::cur,
ios_base::in); ios_base::in);
} }
catch(__cxxabiv1::__forced_unwind&) __catch(__cxxabiv1::__forced_unwind&)
{ {
this->_M_setstate(ios_base::badbit); this->_M_setstate(ios_base::badbit);
__throw_exception_again; __throw_exception_again;
} }
catch(...) __catch(...)
{ this->_M_setstate(ios_base::badbit); } { this->_M_setstate(ios_base::badbit); }
return __ret; return __ret;
} }
@ -794,7 +794,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
// _GLIBCXX_RESOLVE_LIB_DEFECTS // _GLIBCXX_RESOLVE_LIB_DEFECTS
// DR60. Do not change _M_gcount. // DR60. Do not change _M_gcount.
ios_base::iostate __err = ios_base::iostate(ios_base::goodbit); ios_base::iostate __err = ios_base::iostate(ios_base::goodbit);
try __try
{ {
if (!this->fail()) if (!this->fail())
{ {
@ -807,12 +807,12 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
__err |= ios_base::failbit; __err |= ios_base::failbit;
} }
} }
catch(__cxxabiv1::__forced_unwind&) __catch(__cxxabiv1::__forced_unwind&)
{ {
this->_M_setstate(ios_base::badbit); this->_M_setstate(ios_base::badbit);
__throw_exception_again; __throw_exception_again;
} }
catch(...) __catch(...)
{ this->_M_setstate(ios_base::badbit); } { this->_M_setstate(ios_base::badbit); }
if (__err) if (__err)
this->setstate(__err); this->setstate(__err);
@ -827,7 +827,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
// _GLIBCXX_RESOLVE_LIB_DEFECTS // _GLIBCXX_RESOLVE_LIB_DEFECTS
// DR60. Do not change _M_gcount. // DR60. Do not change _M_gcount.
ios_base::iostate __err = ios_base::iostate(ios_base::goodbit); ios_base::iostate __err = ios_base::iostate(ios_base::goodbit);
try __try
{ {
if (!this->fail()) if (!this->fail())
{ {
@ -840,12 +840,12 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
__err |= ios_base::failbit; __err |= ios_base::failbit;
} }
} }
catch(__cxxabiv1::__forced_unwind&) __catch(__cxxabiv1::__forced_unwind&)
{ {
this->_M_setstate(ios_base::badbit); this->_M_setstate(ios_base::badbit);
__throw_exception_again; __throw_exception_again;
} }
catch(...) __catch(...)
{ this->_M_setstate(ios_base::badbit); } { this->_M_setstate(ios_base::badbit); }
if (__err) if (__err)
this->setstate(__err); this->setstate(__err);
@ -864,7 +864,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
if (__cerb) if (__cerb)
{ {
ios_base::iostate __err = ios_base::iostate(ios_base::goodbit); ios_base::iostate __err = ios_base::iostate(ios_base::goodbit);
try __try
{ {
const __int_type __cb = __in.rdbuf()->sbumpc(); const __int_type __cb = __in.rdbuf()->sbumpc();
if (!_Traits::eq_int_type(__cb, _Traits::eof())) if (!_Traits::eq_int_type(__cb, _Traits::eof()))
@ -872,12 +872,12 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
else else
__err |= (ios_base::eofbit | ios_base::failbit); __err |= (ios_base::eofbit | ios_base::failbit);
} }
catch(__cxxabiv1::__forced_unwind&) __catch(__cxxabiv1::__forced_unwind&)
{ {
__in._M_setstate(ios_base::badbit); __in._M_setstate(ios_base::badbit);
__throw_exception_again; __throw_exception_again;
} }
catch(...) __catch(...)
{ __in._M_setstate(ios_base::badbit); } { __in._M_setstate(ios_base::badbit); }
if (__err) if (__err)
__in.setstate(__err); __in.setstate(__err);
@ -900,7 +900,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
typename __istream_type::sentry __cerb(__in, false); typename __istream_type::sentry __cerb(__in, false);
if (__cerb) if (__cerb)
{ {
try __try
{ {
// Figure out how many characters to extract. // Figure out how many characters to extract.
streamsize __num = __in.width(); streamsize __num = __in.width();
@ -930,12 +930,12 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
*__s = char_type(); *__s = char_type();
__in.width(0); __in.width(0);
} }
catch(__cxxabiv1::__forced_unwind&) __catch(__cxxabiv1::__forced_unwind&)
{ {
__in._M_setstate(ios_base::badbit); __in._M_setstate(ios_base::badbit);
__throw_exception_again; __throw_exception_again;
} }
catch(...) __catch(...)
{ __in._M_setstate(ios_base::badbit); } { __in._M_setstate(ios_base::badbit); }
} }
if (!__extracted) if (!__extracted)

View File

@ -1,7 +1,7 @@
// Locale support -*- C++ -*- // Locale support -*- C++ -*-
// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, // Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
// 2006, 2007, 2008 // 2006, 2007, 2008, 2009
// Free Software Foundation, Inc. // Free Software Foundation, Inc.
// //
// This file is part of the GNU ISO C++ Library. This library is free // This file is part of the GNU ISO C++ Library. This library is free
@ -404,9 +404,9 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
{ {
if (__gnu_cxx::__exchange_and_add_dispatch(&_M_refcount, -1) == 1) if (__gnu_cxx::__exchange_and_add_dispatch(&_M_refcount, -1) == 1)
{ {
try __try
{ delete this; } { delete this; }
catch(...) __catch(...)
{ } { }
} }
} }
@ -509,9 +509,9 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
{ {
if (__gnu_cxx::__exchange_and_add_dispatch(&_M_refcount, -1) == 1) if (__gnu_cxx::__exchange_and_add_dispatch(&_M_refcount, -1) == 1)
{ {
try __try
{ delete this; } { delete this; }
catch(...) __catch(...)
{ } { }
} }
} }

View File

@ -1,6 +1,6 @@
// Locale support -*- C++ -*- // Locale support -*- C++ -*-
// Copyright (C) 2007, 2008 Free Software Foundation, Inc. // Copyright (C) 2007, 2008, 2009 Free Software Foundation, Inc.
// //
// This file is part of the GNU ISO C++ Library. This library is free // 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 // software; you can redistribute it and/or modify it under the
@ -49,9 +49,9 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
{ {
_M_impl = new _Impl(*__other._M_impl, 1); _M_impl = new _Impl(*__other._M_impl, 1);
try __try
{ _M_impl->_M_install_facet(&_Facet::id, __f); } { _M_impl->_M_install_facet(&_Facet::id, __f); }
catch(...) __catch(...)
{ {
_M_impl->_M_remove_reference(); _M_impl->_M_remove_reference();
__throw_exception_again; __throw_exception_again;
@ -66,11 +66,11 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
combine(const locale& __other) const combine(const locale& __other) const
{ {
_Impl* __tmp = new _Impl(*_M_impl, 1); _Impl* __tmp = new _Impl(*_M_impl, 1);
try __try
{ {
__tmp->_M_replace_facet(__other._M_impl, &_Facet::id); __tmp->_M_replace_facet(__other._M_impl, &_Facet::id);
} }
catch(...) __catch(...)
{ {
__tmp->_M_remove_reference(); __tmp->_M_remove_reference();
__throw_exception_again; __throw_exception_again;
@ -189,7 +189,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
_CharT* __c = new _CharT[__len]; _CharT* __c = new _CharT[__len];
try __try
{ {
// strxfrm stops when it sees a nul character so we break // strxfrm stops when it sees a nul character so we break
// the string into zero-terminated substrings and pass those // the string into zero-terminated substrings and pass those
@ -217,7 +217,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
__ret.push_back(_CharT()); __ret.push_back(_CharT());
} }
} }
catch(...) __catch(...)
{ {
delete [] __c; delete [] __c;
__throw_exception_again; __throw_exception_again;

View File

@ -1,7 +1,7 @@
// Locale support -*- C++ -*- // Locale support -*- C++ -*-
// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, // Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
// 2006, 2007, 2008 // 2006, 2007, 2008, 2009
// Free Software Foundation, Inc. // Free Software Foundation, Inc.
// //
// This file is part of the GNU ISO C++ Library. This library is free // This file is part of the GNU ISO C++ Library. This library is free
@ -62,12 +62,12 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
if (!__caches[__i]) if (!__caches[__i])
{ {
__numpunct_cache<_CharT>* __tmp = NULL; __numpunct_cache<_CharT>* __tmp = NULL;
try __try
{ {
__tmp = new __numpunct_cache<_CharT>; __tmp = new __numpunct_cache<_CharT>;
__tmp->_M_cache(__loc); __tmp->_M_cache(__loc);
} }
catch(...) __catch(...)
{ {
delete __tmp; delete __tmp;
__throw_exception_again; __throw_exception_again;

View File

@ -1,6 +1,6 @@
// Locale support -*- C++ -*- // Locale support -*- C++ -*-
// Copyright (C) 2007, 2008 Free Software Foundation, Inc. // Copyright (C) 2007, 2008, 2009 Free Software Foundation, Inc.
// //
// This file is part of the GNU ISO C++ Library. This library is free // 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 // software; you can redistribute it and/or modify it under the
@ -50,12 +50,12 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
if (!__caches[__i]) if (!__caches[__i])
{ {
__moneypunct_cache<_CharT, _Intl>* __tmp = NULL; __moneypunct_cache<_CharT, _Intl>* __tmp = NULL;
try __try
{ {
__tmp = new __moneypunct_cache<_CharT, _Intl>; __tmp = new __moneypunct_cache<_CharT, _Intl>;
__tmp->_M_cache(__loc); __tmp->_M_cache(__loc);
} }
catch(...) __catch(...)
{ {
delete __tmp; delete __tmp;
__throw_exception_again; __throw_exception_again;

View File

@ -1,7 +1,7 @@
// ostream classes -*- C++ -*- // ostream classes -*- C++ -*-
// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, // Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
// 2006, 2007 // 2006, 2007, 2008, 2009
// Free Software Foundation, Inc. // Free Software Foundation, Inc.
// //
// This file is part of the GNU ISO C++ Library. This library is free // This file is part of the GNU ISO C++ Library. This library is free
@ -72,18 +72,18 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
if (__cerb) if (__cerb)
{ {
ios_base::iostate __err = ios_base::iostate(ios_base::goodbit); ios_base::iostate __err = ios_base::iostate(ios_base::goodbit);
try __try
{ {
const __num_put_type& __np = __check_facet(this->_M_num_put); const __num_put_type& __np = __check_facet(this->_M_num_put);
if (__np.put(*this, *this, this->fill(), __v).failed()) if (__np.put(*this, *this, this->fill(), __v).failed())
__err |= ios_base::badbit; __err |= ios_base::badbit;
} }
catch(__cxxabiv1::__forced_unwind&) __catch(__cxxabiv1::__forced_unwind&)
{ {
this->_M_setstate(ios_base::badbit); this->_M_setstate(ios_base::badbit);
__throw_exception_again; __throw_exception_again;
} }
catch(...) __catch(...)
{ this->_M_setstate(ios_base::badbit); } { this->_M_setstate(ios_base::badbit); }
if (__err) if (__err)
this->setstate(__err); this->setstate(__err);
@ -128,17 +128,17 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
sentry __cerb(*this); sentry __cerb(*this);
if (__cerb && __sbin) if (__cerb && __sbin)
{ {
try __try
{ {
if (!__copy_streambufs(__sbin, this->rdbuf())) if (!__copy_streambufs(__sbin, this->rdbuf()))
__err |= ios_base::failbit; __err |= ios_base::failbit;
} }
catch(__cxxabiv1::__forced_unwind&) __catch(__cxxabiv1::__forced_unwind&)
{ {
this->_M_setstate(ios_base::badbit); this->_M_setstate(ios_base::badbit);
__throw_exception_again; __throw_exception_again;
} }
catch(...) __catch(...)
{ this->_M_setstate(ios_base::failbit); } { this->_M_setstate(ios_base::failbit); }
} }
else if (!__sbin) else if (!__sbin)
@ -163,18 +163,18 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
if (__cerb) if (__cerb)
{ {
ios_base::iostate __err = ios_base::iostate(ios_base::goodbit); ios_base::iostate __err = ios_base::iostate(ios_base::goodbit);
try __try
{ {
const int_type __put = this->rdbuf()->sputc(__c); const int_type __put = this->rdbuf()->sputc(__c);
if (traits_type::eq_int_type(__put, traits_type::eof())) if (traits_type::eq_int_type(__put, traits_type::eof()))
__err |= ios_base::badbit; __err |= ios_base::badbit;
} }
catch(__cxxabiv1::__forced_unwind&) __catch(__cxxabiv1::__forced_unwind&)
{ {
this->_M_setstate(ios_base::badbit); this->_M_setstate(ios_base::badbit);
__throw_exception_again; __throw_exception_again;
} }
catch(...) __catch(...)
{ this->_M_setstate(ios_base::badbit); } { this->_M_setstate(ios_base::badbit); }
if (__err) if (__err)
this->setstate(__err); this->setstate(__err);
@ -197,14 +197,14 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
sentry __cerb(*this); sentry __cerb(*this);
if (__cerb) if (__cerb)
{ {
try __try
{ _M_write(__s, __n); } { _M_write(__s, __n); }
catch(__cxxabiv1::__forced_unwind&) __catch(__cxxabiv1::__forced_unwind&)
{ {
this->_M_setstate(ios_base::badbit); this->_M_setstate(ios_base::badbit);
__throw_exception_again; __throw_exception_again;
} }
catch(...) __catch(...)
{ this->_M_setstate(ios_base::badbit); } { this->_M_setstate(ios_base::badbit); }
} }
return *this; return *this;
@ -219,17 +219,17 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
// DR 60. What is a formatted input function? // DR 60. What is a formatted input function?
// basic_ostream::flush() is *not* an unformatted output function. // basic_ostream::flush() is *not* an unformatted output function.
ios_base::iostate __err = ios_base::iostate(ios_base::goodbit); ios_base::iostate __err = ios_base::iostate(ios_base::goodbit);
try __try
{ {
if (this->rdbuf() && this->rdbuf()->pubsync() == -1) if (this->rdbuf() && this->rdbuf()->pubsync() == -1)
__err |= ios_base::badbit; __err |= ios_base::badbit;
} }
catch(__cxxabiv1::__forced_unwind&) __catch(__cxxabiv1::__forced_unwind&)
{ {
this->_M_setstate(ios_base::badbit); this->_M_setstate(ios_base::badbit);
__throw_exception_again; __throw_exception_again;
} }
catch(...) __catch(...)
{ this->_M_setstate(ios_base::badbit); } { this->_M_setstate(ios_base::badbit); }
if (__err) if (__err)
this->setstate(__err); this->setstate(__err);
@ -242,17 +242,17 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
tellp() tellp()
{ {
pos_type __ret = pos_type(-1); pos_type __ret = pos_type(-1);
try __try
{ {
if (!this->fail()) if (!this->fail())
__ret = this->rdbuf()->pubseekoff(0, ios_base::cur, ios_base::out); __ret = this->rdbuf()->pubseekoff(0, ios_base::cur, ios_base::out);
} }
catch(__cxxabiv1::__forced_unwind&) __catch(__cxxabiv1::__forced_unwind&)
{ {
this->_M_setstate(ios_base::badbit); this->_M_setstate(ios_base::badbit);
__throw_exception_again; __throw_exception_again;
} }
catch(...) __catch(...)
{ this->_M_setstate(ios_base::badbit); } { this->_M_setstate(ios_base::badbit); }
return __ret; return __ret;
} }
@ -263,7 +263,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
seekp(pos_type __pos) seekp(pos_type __pos)
{ {
ios_base::iostate __err = ios_base::iostate(ios_base::goodbit); ios_base::iostate __err = ios_base::iostate(ios_base::goodbit);
try __try
{ {
if (!this->fail()) if (!this->fail())
{ {
@ -277,12 +277,12 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
__err |= ios_base::failbit; __err |= ios_base::failbit;
} }
} }
catch(__cxxabiv1::__forced_unwind&) __catch(__cxxabiv1::__forced_unwind&)
{ {
this->_M_setstate(ios_base::badbit); this->_M_setstate(ios_base::badbit);
__throw_exception_again; __throw_exception_again;
} }
catch(...) __catch(...)
{ this->_M_setstate(ios_base::badbit); } { this->_M_setstate(ios_base::badbit); }
if (__err) if (__err)
this->setstate(__err); this->setstate(__err);
@ -295,7 +295,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
seekp(off_type __off, ios_base::seekdir __dir) seekp(off_type __off, ios_base::seekdir __dir)
{ {
ios_base::iostate __err = ios_base::iostate(ios_base::goodbit); ios_base::iostate __err = ios_base::iostate(ios_base::goodbit);
try __try
{ {
if (!this->fail()) if (!this->fail())
{ {
@ -309,12 +309,12 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
__err |= ios_base::failbit; __err |= ios_base::failbit;
} }
} }
catch(__cxxabiv1::__forced_unwind&) __catch(__cxxabiv1::__forced_unwind&)
{ {
this->_M_setstate(ios_base::badbit); this->_M_setstate(ios_base::badbit);
__throw_exception_again; __throw_exception_again;
} }
catch(...) __catch(...)
{ this->_M_setstate(ios_base::badbit); } { this->_M_setstate(ios_base::badbit); }
if (__err) if (__err)
this->setstate(__err); this->setstate(__err);
@ -332,7 +332,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
// _GLIBCXX_RESOLVE_LIB_DEFECTS // _GLIBCXX_RESOLVE_LIB_DEFECTS
// 167. Improper use of traits_type::length() // 167. Improper use of traits_type::length()
const size_t __clen = char_traits<char>::length(__s); const size_t __clen = char_traits<char>::length(__s);
try __try
{ {
struct __ptr_guard struct __ptr_guard
{ {
@ -347,12 +347,12 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
__ws[__i] = __out.widen(__s[__i]); __ws[__i] = __out.widen(__s[__i]);
__ostream_insert(__out, __ws, __clen); __ostream_insert(__out, __ws, __clen);
} }
catch(__cxxabiv1::__forced_unwind&) __catch(__cxxabiv1::__forced_unwind&)
{ {
__out._M_setstate(ios_base::badbit); __out._M_setstate(ios_base::badbit);
__throw_exception_again; __throw_exception_again;
} }
catch(...) __catch(...)
{ __out._M_setstate(ios_base::badbit); } { __out._M_setstate(ios_base::badbit); }
} }
return __out; return __out;

View File

@ -1,6 +1,6 @@
// Helpers for ostream inserters -*- C++ -*- // Helpers for ostream inserters -*- C++ -*-
// Copyright (C) 2007 Free Software Foundation, Inc. // Copyright (C) 2007, 2008, 2009 Free Software Foundation, Inc.
// //
// This file is part of the GNU ISO C++ Library. This library is free // 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 // software; you can redistribute it and/or modify it under the
@ -85,7 +85,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
typename __ostream_type::sentry __cerb(__out); typename __ostream_type::sentry __cerb(__out);
if (__cerb) if (__cerb)
{ {
try __try
{ {
const streamsize __w = __out.width(); const streamsize __w = __out.width();
if (__w > __n) if (__w > __n)
@ -104,12 +104,12 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
__ostream_write(__out, __s, __n); __ostream_write(__out, __s, __n);
__out.width(0); __out.width(0);
} }
catch(__cxxabiv1::__forced_unwind&) __catch(__cxxabiv1::__forced_unwind&)
{ {
__out._M_setstate(__ios_base::badbit); __out._M_setstate(__ios_base::badbit);
__throw_exception_again; __throw_exception_again;
} }
catch(...) __catch(...)
{ __out._M_setstate(__ios_base::badbit); } { __out._M_setstate(__ios_base::badbit); }
} }
return __out; return __out;

View File

@ -1,6 +1,6 @@
// <bits/shared_ptr.h> -*- C++ -*- // <bits/shared_ptr.h> -*- C++ -*-
// Copyright (C) 2007, 2008 Free Software Foundation, Inc. // Copyright (C) 2007, 2008, 2009 Free Software Foundation, Inc.
// //
// This file is part of the GNU ISO C++ Library. This library is free // 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 // software; you can redistribute it and/or modify it under the
@ -222,11 +222,11 @@ namespace std
template<typename _Ptr> template<typename _Ptr>
__shared_count(_Ptr __p) : _M_pi(0) __shared_count(_Ptr __p) : _M_pi(0)
{ {
try __try
{ {
_M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p); _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
} }
catch(...) __catch(...)
{ {
delete __p; delete __p;
__throw_exception_again; __throw_exception_again;
@ -241,12 +241,12 @@ namespace std
typedef _Sp_counted_deleter<_Ptr, _Deleter, _Alloc, _Lp> _Sp_cd_type; typedef _Sp_counted_deleter<_Ptr, _Deleter, _Alloc, _Lp> _Sp_cd_type;
typedef std::allocator<_Sp_cd_type> _Alloc2; typedef std::allocator<_Sp_cd_type> _Alloc2;
_Alloc2 __a2; _Alloc2 __a2;
try __try
{ {
_M_pi = __a2.allocate(1); _M_pi = __a2.allocate(1);
::new(static_cast<void*>(_M_pi)) _Sp_cd_type(__p, __d); ::new(static_cast<void*>(_M_pi)) _Sp_cd_type(__p, __d);
} }
catch(...) __catch(...)
{ {
__d(__p); // Call _Deleter on __p. __d(__p); // Call _Deleter on __p.
if (_M_pi) if (_M_pi)
@ -261,12 +261,12 @@ namespace std
typedef _Sp_counted_deleter<_Ptr, _Deleter, _Alloc, _Lp> _Sp_cd_type; typedef _Sp_counted_deleter<_Ptr, _Deleter, _Alloc, _Lp> _Sp_cd_type;
typedef typename _Alloc::template rebind<_Sp_cd_type>::other _Alloc2; typedef typename _Alloc::template rebind<_Sp_cd_type>::other _Alloc2;
_Alloc2 __a2(__a); _Alloc2 __a2(__a);
try __try
{ {
_M_pi = __a2.allocate(1); _M_pi = __a2.allocate(1);
::new(static_cast<void*>(_M_pi)) _Sp_cd_type(__p, __d, __a); ::new(static_cast<void*>(_M_pi)) _Sp_cd_type(__p, __d, __a);
} }
catch(...) __catch(...)
{ {
__d(__p); // Call _Deleter on __p. __d(__p); // Call _Deleter on __p.
if (_M_pi) if (_M_pi)
@ -282,13 +282,13 @@ namespace std
typedef _Sp_counted_ptr_inplace<_Tp, _Alloc, _Lp> _Sp_cp_type; typedef _Sp_counted_ptr_inplace<_Tp, _Alloc, _Lp> _Sp_cp_type;
typedef typename _Alloc::template rebind<_Sp_cp_type>::other _Alloc2; typedef typename _Alloc::template rebind<_Sp_cp_type>::other _Alloc2;
_Alloc2 __a2(__a); _Alloc2 __a2(__a);
try __try
{ {
_M_pi = __a2.allocate(1); _M_pi = __a2.allocate(1);
::new(static_cast<void*>(_M_pi)) _Sp_cp_type(__a, ::new(static_cast<void*>(_M_pi)) _Sp_cp_type(__a,
std::forward<_Args>(__args)...); std::forward<_Args>(__args)...);
} }
catch(...) __catch(...)
{ {
if (_M_pi) if (_M_pi)
__a2.deallocate(static_cast<_Sp_cp_type*>(_M_pi), 1); __a2.deallocate(static_cast<_Sp_cp_type*>(_M_pi), 1);
@ -1074,11 +1074,11 @@ namespace std
if (expired()) if (expired())
return __shared_ptr<element_type, _Lp>(); return __shared_ptr<element_type, _Lp>();
try __try
{ {
return __shared_ptr<element_type, _Lp>(*this); return __shared_ptr<element_type, _Lp>(*this);
} }
catch(const bad_weak_ptr&) __catch(const bad_weak_ptr&)
{ {
// Q: How can we get here? // Q: How can we get here?
// A: Another thread may have invalidated r after the // A: Another thread may have invalidated r after the
@ -1447,11 +1447,11 @@ namespace std
if (this->expired()) if (this->expired())
return shared_ptr<_Tp>(); return shared_ptr<_Tp>();
try __try
{ {
return shared_ptr<_Tp>(*this); return shared_ptr<_Tp>(*this);
} }
catch(const bad_weak_ptr&) __catch(const bad_weak_ptr&)
{ {
return shared_ptr<_Tp>(); return shared_ptr<_Tp>();
} }

View File

@ -1,6 +1,6 @@
// Deque implementation -*- C++ -*- // Deque implementation -*- C++ -*-
// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 // Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009
// Free Software Foundation, Inc. // Free Software Foundation, Inc.
// //
// This file is part of the GNU ISO C++ Library. This library is free // This file is part of the GNU ISO C++ Library. This library is free
@ -513,9 +513,9 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_D)
+ (this->_M_impl._M_map_size - __num_nodes) / 2); + (this->_M_impl._M_map_size - __num_nodes) / 2);
_Tp** __nfinish = __nstart + __num_nodes; _Tp** __nfinish = __nstart + __num_nodes;
try __try
{ _M_create_nodes(__nstart, __nfinish); } { _M_create_nodes(__nstart, __nfinish); }
catch(...) __catch(...)
{ {
_M_deallocate_map(this->_M_impl._M_map, this->_M_impl._M_map_size); _M_deallocate_map(this->_M_impl._M_map, this->_M_impl._M_map_size);
this->_M_impl._M_map = 0; this->_M_impl._M_map = 0;
@ -537,12 +537,12 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_D)
_M_create_nodes(_Tp** __nstart, _Tp** __nfinish) _M_create_nodes(_Tp** __nstart, _Tp** __nfinish)
{ {
_Tp** __cur; _Tp** __cur;
try __try
{ {
for (__cur = __nstart; __cur < __nfinish; ++__cur) for (__cur = __nstart; __cur < __nfinish; ++__cur)
*__cur = this->_M_allocate_node(); *__cur = this->_M_allocate_node();
} }
catch(...) __catch(...)
{ {
_M_destroy_nodes(__nstart, __cur); _M_destroy_nodes(__nstart, __cur);
__throw_exception_again; __throw_exception_again;

View File

@ -1,6 +1,6 @@
// List implementation -*- C++ -*- // List implementation -*- C++ -*-
// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 // Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009
// Free Software Foundation, Inc. // Free Software Foundation, Inc.
// //
// This file is part of the GNU ISO C++ Library. This library is free // This file is part of the GNU ISO C++ Library. This library is free
@ -465,11 +465,11 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_D)
_M_create_node(const value_type& __x) _M_create_node(const value_type& __x)
{ {
_Node* __p = this->_M_get_node(); _Node* __p = this->_M_get_node();
try __try
{ {
_M_get_Tp_allocator().construct(&__p->_M_data, __x); _M_get_Tp_allocator().construct(&__p->_M_data, __x);
} }
catch(...) __catch(...)
{ {
_M_put_node(__p); _M_put_node(__p);
__throw_exception_again; __throw_exception_again;
@ -482,12 +482,12 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_D)
_M_create_node(_Args&&... __args) _M_create_node(_Args&&... __args)
{ {
_Node* __p = this->_M_get_node(); _Node* __p = this->_M_get_node();
try __try
{ {
_M_get_Node_allocator().construct(__p, _M_get_Node_allocator().construct(__p,
std::forward<_Args>(__args)...); std::forward<_Args>(__args)...);
} }
catch(...) __catch(...)
{ {
_M_put_node(__p); _M_put_node(__p);
__throw_exception_again; __throw_exception_again;

View File

@ -1,6 +1,6 @@
// Temporary buffer implementation -*- C++ -*- // Temporary buffer implementation -*- C++ -*-
// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 // Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009
// Free Software Foundation, Inc. // Free Software Foundation, Inc.
// //
// This file is part of the GNU ISO C++ Library. This library is free // This file is part of the GNU ISO C++ Library. This library is free
@ -187,7 +187,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
: _M_original_len(std::distance(__first, __last)), : _M_original_len(std::distance(__first, __last)),
_M_len(0), _M_buffer(0) _M_len(0), _M_buffer(0)
{ {
try __try
{ {
std::pair<pointer, size_type> __p(std::get_temporary_buffer< std::pair<pointer, size_type> __p(std::get_temporary_buffer<
value_type>(_M_original_len)); value_type>(_M_original_len));
@ -196,7 +196,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
if (!__is_pod(_Tp) && _M_len > 0) if (!__is_pod(_Tp) && _M_len > 0)
std::uninitialized_fill_n(_M_buffer, _M_len, *__first); std::uninitialized_fill_n(_M_buffer, _M_len, *__first);
} }
catch(...) __catch(...)
{ {
std::return_temporary_buffer(_M_buffer); std::return_temporary_buffer(_M_buffer);
_M_buffer = 0; _M_buffer = 0;

View File

@ -1,6 +1,6 @@
// RB tree implementation -*- C++ -*- // RB tree implementation -*- C++ -*-
// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 // Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009
// Free Software Foundation, Inc. // Free Software Foundation, Inc.
// //
// This file is part of the GNU ISO C++ Library. This library is free // This file is part of the GNU ISO C++ Library. This library is free
@ -372,9 +372,9 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
_M_create_node(const value_type& __x) _M_create_node(const value_type& __x)
{ {
_Link_type __tmp = _M_get_node(); _Link_type __tmp = _M_get_node();
try __try
{ get_allocator().construct(&__tmp->_M_value_field, __x); } { get_allocator().construct(&__tmp->_M_value_field, __x); }
catch(...) __catch(...)
{ {
_M_put_node(__tmp); _M_put_node(__tmp);
__throw_exception_again; __throw_exception_again;
@ -394,12 +394,12 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
_M_create_node(_Args&&... __args) _M_create_node(_Args&&... __args)
{ {
_Link_type __tmp = _M_get_node(); _Link_type __tmp = _M_get_node();
try __try
{ {
_M_get_Node_allocator().construct(__tmp, _M_get_Node_allocator().construct(__tmp,
std::forward<_Args>(__args)...); std::forward<_Args>(__args)...);
} }
catch(...) __catch(...)
{ {
_M_put_node(__tmp); _M_put_node(__tmp);
__throw_exception_again; __throw_exception_again;
@ -937,7 +937,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
_Link_type __top = _M_clone_node(__x); _Link_type __top = _M_clone_node(__x);
__top->_M_parent = __p; __top->_M_parent = __p;
try __try
{ {
if (__x->_M_right) if (__x->_M_right)
__top->_M_right = _M_copy(_S_right(__x), __top); __top->_M_right = _M_copy(_S_right(__x), __top);
@ -955,7 +955,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
__x = _S_left(__x); __x = _S_left(__x);
} }
} }
catch(...) __catch(...)
{ {
_M_erase(__top); _M_erase(__top);
__throw_exception_again; __throw_exception_again;

View File

@ -1,6 +1,6 @@
// Raw memory manipulators -*- C++ -*- // Raw memory manipulators -*- C++ -*-
// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 // Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009
// Free Software Foundation, Inc. // Free Software Foundation, Inc.
// //
// This file is part of the GNU ISO C++ Library. This library is free // This file is part of the GNU ISO C++ Library. This library is free
@ -73,14 +73,14 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
_ForwardIterator __result) _ForwardIterator __result)
{ {
_ForwardIterator __cur = __result; _ForwardIterator __cur = __result;
try __try
{ {
for (; __first != __last; ++__first, ++__cur) for (; __first != __last; ++__first, ++__cur)
::new(static_cast<void*>(&*__cur)) typename ::new(static_cast<void*>(&*__cur)) typename
iterator_traits<_ForwardIterator>::value_type(*__first); iterator_traits<_ForwardIterator>::value_type(*__first);
return __cur; return __cur;
} }
catch(...) __catch(...)
{ {
std::_Destroy(__result, __cur); std::_Destroy(__result, __cur);
__throw_exception_again; __throw_exception_again;
@ -132,12 +132,12 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
_ForwardIterator __last, const _Tp& __x) _ForwardIterator __last, const _Tp& __x)
{ {
_ForwardIterator __cur = __first; _ForwardIterator __cur = __first;
try __try
{ {
for (; __cur != __last; ++__cur) for (; __cur != __last; ++__cur)
std::_Construct(&*__cur, __x); std::_Construct(&*__cur, __x);
} }
catch(...) __catch(...)
{ {
std::_Destroy(__first, __cur); std::_Destroy(__first, __cur);
__throw_exception_again; __throw_exception_again;
@ -186,12 +186,12 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
const _Tp& __x) const _Tp& __x)
{ {
_ForwardIterator __cur = __first; _ForwardIterator __cur = __first;
try __try
{ {
for (; __n > 0; --__n, ++__cur) for (; __n > 0; --__n, ++__cur)
std::_Construct(&*__cur, __x); std::_Construct(&*__cur, __x);
} }
catch(...) __catch(...)
{ {
std::_Destroy(__first, __cur); std::_Destroy(__first, __cur);
__throw_exception_again; __throw_exception_again;
@ -242,13 +242,13 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
_ForwardIterator __result, _Allocator& __alloc) _ForwardIterator __result, _Allocator& __alloc)
{ {
_ForwardIterator __cur = __result; _ForwardIterator __cur = __result;
try __try
{ {
for (; __first != __last; ++__first, ++__cur) for (; __first != __last; ++__first, ++__cur)
__alloc.construct(&*__cur, *__first); __alloc.construct(&*__cur, *__first);
return __cur; return __cur;
} }
catch(...) __catch(...)
{ {
std::_Destroy(__result, __cur, __alloc); std::_Destroy(__result, __cur, __alloc);
__throw_exception_again; __throw_exception_again;
@ -278,12 +278,12 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
const _Tp& __x, _Allocator& __alloc) const _Tp& __x, _Allocator& __alloc)
{ {
_ForwardIterator __cur = __first; _ForwardIterator __cur = __first;
try __try
{ {
for (; __cur != __last; ++__cur) for (; __cur != __last; ++__cur)
__alloc.construct(&*__cur, __x); __alloc.construct(&*__cur, __x);
} }
catch(...) __catch(...)
{ {
std::_Destroy(__first, __cur, __alloc); std::_Destroy(__first, __cur, __alloc);
__throw_exception_again; __throw_exception_again;
@ -303,12 +303,12 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
const _Tp& __x, _Allocator& __alloc) const _Tp& __x, _Allocator& __alloc)
{ {
_ForwardIterator __cur = __first; _ForwardIterator __cur = __first;
try __try
{ {
for (; __n > 0; --__n, ++__cur) for (; __n > 0; --__n, ++__cur)
__alloc.construct(&*__cur, __x); __alloc.construct(&*__cur, __x);
} }
catch(...) __catch(...)
{ {
std::_Destroy(__first, __cur, __alloc); std::_Destroy(__first, __cur, __alloc);
__throw_exception_again; __throw_exception_again;
@ -345,11 +345,11 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
_ForwardIterator __mid = std::__uninitialized_copy_a(__first1, __last1, _ForwardIterator __mid = std::__uninitialized_copy_a(__first1, __last1,
__result, __result,
__alloc); __alloc);
try __try
{ {
return std::__uninitialized_move_a(__first2, __last2, __mid, __alloc); return std::__uninitialized_move_a(__first2, __last2, __mid, __alloc);
} }
catch(...) __catch(...)
{ {
std::_Destroy(__result, __mid, __alloc); std::_Destroy(__result, __mid, __alloc);
__throw_exception_again; __throw_exception_again;
@ -373,11 +373,11 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
_ForwardIterator __mid = std::__uninitialized_move_a(__first1, __last1, _ForwardIterator __mid = std::__uninitialized_move_a(__first1, __last1,
__result, __result,
__alloc); __alloc);
try __try
{ {
return std::__uninitialized_copy_a(__first2, __last2, __mid, __alloc); return std::__uninitialized_copy_a(__first2, __last2, __mid, __alloc);
} }
catch(...) __catch(...)
{ {
std::_Destroy(__result, __mid, __alloc); std::_Destroy(__result, __mid, __alloc);
__throw_exception_again; __throw_exception_again;
@ -395,11 +395,11 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
_InputIterator __last, _Allocator& __alloc) _InputIterator __last, _Allocator& __alloc)
{ {
std::__uninitialized_fill_a(__result, __mid, __x, __alloc); std::__uninitialized_fill_a(__result, __mid, __x, __alloc);
try __try
{ {
return std::__uninitialized_move_a(__first, __last, __mid, __alloc); return std::__uninitialized_move_a(__first, __last, __mid, __alloc);
} }
catch(...) __catch(...)
{ {
std::_Destroy(__result, __mid, __alloc); std::_Destroy(__result, __mid, __alloc);
__throw_exception_again; __throw_exception_again;
@ -420,11 +420,11 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
_ForwardIterator __mid2 = std::__uninitialized_move_a(__first1, __last1, _ForwardIterator __mid2 = std::__uninitialized_move_a(__first1, __last1,
__first2, __first2,
__alloc); __alloc);
try __try
{ {
std::__uninitialized_fill_a(__mid2, __last2, __x, __alloc); std::__uninitialized_fill_a(__mid2, __last2, __x, __alloc);
} }
catch(...) __catch(...)
{ {
std::_Destroy(__first2, __mid2, __alloc); std::_Destroy(__first2, __mid2, __alloc);
__throw_exception_again; __throw_exception_again;
@ -439,14 +439,14 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
_ForwardIterator __result, input_iterator_tag) _ForwardIterator __result, input_iterator_tag)
{ {
_ForwardIterator __cur = __result; _ForwardIterator __cur = __result;
try __try
{ {
for (; __n > 0; --__n, ++__first, ++__cur) for (; __n > 0; --__n, ++__first, ++__cur)
::new(static_cast<void*>(&*__cur)) typename ::new(static_cast<void*>(&*__cur)) typename
iterator_traits<_ForwardIterator>::value_type(*__first); iterator_traits<_ForwardIterator>::value_type(*__first);
return __cur; return __cur;
} }
catch(...) __catch(...)
{ {
std::_Destroy(__result, __cur); std::_Destroy(__result, __cur);
__throw_exception_again; __throw_exception_again;

View File

@ -1,6 +1,6 @@
// Vector implementation -*- C++ -*- // Vector implementation -*- C++ -*-
// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 // Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009
// Free Software Foundation, Inc. // Free Software Foundation, Inc.
// //
// This file is part of the GNU ISO C++ Library. This library is free // This file is part of the GNU ISO C++ Library. This library is free
@ -968,13 +968,13 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_D)
_ForwardIterator __first, _ForwardIterator __last) _ForwardIterator __first, _ForwardIterator __last)
{ {
pointer __result = this->_M_allocate(__n); pointer __result = this->_M_allocate(__n);
try __try
{ {
std::__uninitialized_copy_a(__first, __last, __result, std::__uninitialized_copy_a(__first, __last, __result,
_M_get_Tp_allocator()); _M_get_Tp_allocator());
return __result; return __result;
} }
catch(...) __catch(...)
{ {
_M_deallocate(__result, __n); _M_deallocate(__result, __n);
__throw_exception_again; __throw_exception_again;

View File

@ -1,6 +1,6 @@
// Vector implementation (out of line) -*- C++ -*- // Vector implementation (out of line) -*- C++ -*-
// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 // Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009
// Free Software Foundation, Inc. // Free Software Foundation, Inc.
// //
// This file is part of the GNU ISO C++ Library. This library is free // This file is part of the GNU ISO C++ Library. This library is free
@ -326,7 +326,7 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_D)
const size_type __elems_before = __position - begin(); const size_type __elems_before = __position - begin();
pointer __new_start(this->_M_allocate(__len)); pointer __new_start(this->_M_allocate(__len));
pointer __new_finish(__new_start); pointer __new_finish(__new_start);
try __try
{ {
// The order of the three operations is dictated by the C++0x // The order of the three operations is dictated by the C++0x
// case, where the moves could alter a new element belonging // case, where the moves could alter a new element belonging
@ -352,7 +352,7 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_D)
__new_finish, __new_finish,
_M_get_Tp_allocator()); _M_get_Tp_allocator());
} }
catch(...) __catch(...)
{ {
if (!__new_finish) if (!__new_finish)
this->_M_impl.destroy(__new_start + __elems_before); this->_M_impl.destroy(__new_start + __elems_before);
@ -418,7 +418,7 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_D)
const size_type __elems_before = __position - begin(); const size_type __elems_before = __position - begin();
pointer __new_start(this->_M_allocate(__len)); pointer __new_start(this->_M_allocate(__len));
pointer __new_finish(__new_start); pointer __new_finish(__new_start);
try __try
{ {
// See _M_insert_aux above. // See _M_insert_aux above.
std::__uninitialized_fill_n_a(__new_start + __elems_before, std::__uninitialized_fill_n_a(__new_start + __elems_before,
@ -439,7 +439,7 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_D)
__new_finish, __new_finish,
_M_get_Tp_allocator()); _M_get_Tp_allocator());
} }
catch(...) __catch(...)
{ {
if (!__new_finish) if (!__new_finish)
std::_Destroy(__new_start + __elems_before, std::_Destroy(__new_start + __elems_before,
@ -525,7 +525,7 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_D)
_M_check_len(__n, "vector::_M_range_insert"); _M_check_len(__n, "vector::_M_range_insert");
pointer __new_start(this->_M_allocate(__len)); pointer __new_start(this->_M_allocate(__len));
pointer __new_finish(__new_start); pointer __new_finish(__new_start);
try __try
{ {
__new_finish = __new_finish =
std::__uninitialized_move_a(this->_M_impl._M_start, std::__uninitialized_move_a(this->_M_impl._M_start,
@ -542,7 +542,7 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_D)
__new_finish, __new_finish,
_M_get_Tp_allocator()); _M_get_Tp_allocator());
} }
catch(...) __catch(...)
{ {
std::_Destroy(__new_start, __new_finish, std::_Destroy(__new_start, __new_finish,
_M_get_Tp_allocator()); _M_get_Tp_allocator());

View File

@ -1,6 +1,6 @@
// Debugging deque implementation -*- C++ -*- // Debugging deque implementation -*- C++ -*-
// Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008 // Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009
// Free Software Foundation, Inc. // Free Software Foundation, Inc.
// //
// This file is part of the GNU ISO C++ Library. This library is free // This file is part of the GNU ISO C++ Library. This library is free
@ -416,12 +416,12 @@ namespace __debug
iterator __victim = __position++; iterator __victim = __position++;
__victim._M_invalidate(); __victim._M_invalidate();
} }
try __try
{ {
return iterator(_Base::erase(__first.base(), __last.base()), return iterator(_Base::erase(__first.base(), __last.base()),
this); this);
} }
catch(...) __catch(...)
{ {
this->_M_revalidate_singular(); this->_M_revalidate_singular();
__throw_exception_again; __throw_exception_again;

View File

@ -1,6 +1,6 @@
// Debugging list implementation -*- C++ -*- // Debugging list implementation -*- C++ -*-
// Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008 // Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009
// Free Software Foundation, Inc. // Free Software Foundation, Inc.
// //
// This file is part of the GNU ISO C++ Library. This library is free // This file is part of the GNU ISO C++ Library. This library is free
@ -256,11 +256,11 @@ namespace __debug
__real_victim._M_invalidate(); __real_victim._M_invalidate();
} }
try __try
{ {
_Base::resize(__sz, __c); _Base::resize(__sz, __c);
} }
catch(...) __catch(...)
{ {
this->_M_revalidate_singular(); this->_M_revalidate_singular();
__throw_exception_again; __throw_exception_again;

View File

@ -1,6 +1,7 @@
// Memory extensions -*- C++ -*- // Memory extensions -*- C++ -*-
// Copyright (C) 2002, 2004, 2005 Free Software Foundation, Inc. // Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009
// Free Software Foundation, Inc.
// //
// This file is part of the GNU ISO C++ Library. This library is free // 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 // software; you can redistribute it and/or modify it under the
@ -79,13 +80,13 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
_ForwardIter __result, std::input_iterator_tag) _ForwardIter __result, std::input_iterator_tag)
{ {
_ForwardIter __cur = __result; _ForwardIter __cur = __result;
try __try
{ {
for (; __count > 0 ; --__count, ++__first, ++__cur) for (; __count > 0 ; --__count, ++__first, ++__cur)
std::_Construct(&*__cur, *__first); std::_Construct(&*__cur, *__first);
return pair<_InputIter, _ForwardIter>(__first, __cur); return pair<_InputIter, _ForwardIter>(__first, __cur);
} }
catch(...) __catch(...)
{ {
std::_Destroy(__result, __cur); std::_Destroy(__result, __cur);
__throw_exception_again; __throw_exception_again;
@ -138,13 +139,13 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
_Allocator __alloc) _Allocator __alloc)
{ {
_ForwardIter __cur = __result; _ForwardIter __cur = __result;
try __try
{ {
for (; __count > 0 ; --__count, ++__first, ++__cur) for (; __count > 0 ; --__count, ++__first, ++__cur)
__alloc.construct(&*__cur, *__first); __alloc.construct(&*__cur, *__first);
return pair<_InputIter, _ForwardIter>(__first, __cur); return pair<_InputIter, _ForwardIter>(__first, __cur);
} }
catch(...) __catch(...)
{ {
std::_Destroy(__result, __cur, __alloc); std::_Destroy(__result, __cur, __alloc);
__throw_exception_again; __throw_exception_again;

View File

@ -1,6 +1,6 @@
// -*- C++ -*- // -*- C++ -*-
// Copyright (C) 2005, 2006 Free Software Foundation, Inc. // Copyright (C) 2005, 2006, 2007, 2008, 2009 Free Software Foundation, Inc.
// //
// This file is part of the GNU ISO C++ Library. This library is free // 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 // software; you can redistribute it and/or modify it under the terms
@ -95,7 +95,7 @@ PB_DS_CLASS_NAME(const PB_DS_CLASS_C_DEC& other) :
m_size = other.m_size; m_size = other.m_size;
_GLIBCXX_DEBUG_ONLY(other.structure_only_assert_valid();) _GLIBCXX_DEBUG_ONLY(other.structure_only_assert_valid();)
try __try
{ {
m_p_head->m_p_parent = recursive_copy_node(other.m_p_head->m_p_parent); m_p_head->m_p_parent = recursive_copy_node(other.m_p_head->m_p_parent);
if (m_p_head->m_p_parent != NULL) if (m_p_head->m_p_parent != NULL)
@ -103,7 +103,7 @@ PB_DS_CLASS_NAME(const PB_DS_CLASS_C_DEC& other) :
m_size = other.m_size; m_size = other.m_size;
initialize_min_max(); initialize_min_max();
} }
catch(...) __catch(...)
{ {
_GLIBCXX_DEBUG_ONLY(debug_base::clear();) _GLIBCXX_DEBUG_ONLY(debug_base::clear();)
s_node_allocator.deallocate(m_p_head, 1); s_node_allocator.deallocate(m_p_head, 1);
@ -163,11 +163,11 @@ recursive_copy_node(const node_pointer p_nd)
return (NULL); return (NULL);
node_pointer p_ret = s_node_allocator.allocate(1); node_pointer p_ret = s_node_allocator.allocate(1);
try __try
{ {
new (p_ret) node(*p_nd); new (p_ret) node(*p_nd);
} }
catch(...) __catch(...)
{ {
s_node_allocator.deallocate(p_ret, 1); s_node_allocator.deallocate(p_ret, 1);
__throw_exception_again; __throw_exception_again;
@ -175,12 +175,12 @@ recursive_copy_node(const node_pointer p_nd)
p_ret->m_p_left = p_ret->m_p_right = NULL; p_ret->m_p_left = p_ret->m_p_right = NULL;
try __try
{ {
p_ret->m_p_left = recursive_copy_node(p_nd->m_p_left); p_ret->m_p_left = recursive_copy_node(p_nd->m_p_left);
p_ret->m_p_right = recursive_copy_node(p_nd->m_p_right); p_ret->m_p_right = recursive_copy_node(p_nd->m_p_right);
} }
catch(...) __catch(...)
{ {
clear_imp(p_ret); clear_imp(p_ret);
__throw_exception_again; __throw_exception_again;

View File

@ -1,6 +1,6 @@
// -*- C++ -*- // -*- C++ -*-
// Copyright (C) 2005, 2006 Free Software Foundation, Inc. // Copyright (C) 2005, 2006, 2007, 2008, 2009 Free Software Foundation, Inc.
// //
// This file is part of the GNU ISO C++ Library. This library is free // 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 // software; you can redistribute it and/or modify it under the terms
@ -109,7 +109,7 @@ binary_heap_(const PB_DS_CLASS_C_DEC& other) :
const_iterator first_it = other.begin(); const_iterator first_it = other.begin();
const_iterator last_it = other.end(); const_iterator last_it = other.end();
try __try
{ {
while (first_it != last_it) while (first_it != last_it)
{ {
@ -117,7 +117,7 @@ binary_heap_(const PB_DS_CLASS_C_DEC& other) :
++first_it; ++first_it;
} }
} }
catch(...) __catch(...)
{ {
for (size_type i = 0; i < m_size; ++i) for (size_type i = 0; i < m_size; ++i)
erase_at(m_a_entries, i, s_no_throw_copies_ind); erase_at(m_a_entries, i, s_no_throw_copies_ind);

View File

@ -1,6 +1,6 @@
// -*- C++ -*- // -*- C++ -*-
// Copyright (C) 2005, 2006 Free Software Foundation, Inc. // Copyright (C) 2005, 2006, 2007, 2008, 2009 Free Software Foundation, Inc.
// //
// This file is part of the GNU ISO C++ Library. This library is free // 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 // software; you can redistribute it and/or modify it under the terms
@ -52,7 +52,7 @@ clear()
for (size_type i = 0; i < m_size; ++i) for (size_type i = 0; i < m_size; ++i)
erase_at(m_a_entries, i, s_no_throw_copies_ind); erase_at(m_a_entries, i, s_no_throw_copies_ind);
try __try
{ {
const size_type actual_size = resize_policy::get_new_size_for_arbitrary(0); const size_type actual_size = resize_policy::get_new_size_for_arbitrary(0);
@ -66,7 +66,7 @@ clear()
m_a_entries = a_entries; m_a_entries = a_entries;
} }
catch(...) __catch(...)
{ } { }
m_size = 0; m_size = 0;
@ -135,7 +135,7 @@ erase_if(Pred pred)
for (size_type i = left; i < m_size; ++i) for (size_type i = left; i < m_size; ++i)
erase_at(m_a_entries, i, s_no_throw_copies_ind); erase_at(m_a_entries, i, s_no_throw_copies_ind);
try __try
{ {
const size_type actual_size = const size_type actual_size =
resize_policy::get_new_size_for_arbitrary(left); resize_policy::get_new_size_for_arbitrary(left);
@ -150,7 +150,7 @@ erase_if(Pred pred)
resize_policy::notify_arbitrary(m_actual_size); resize_policy::notify_arbitrary(m_actual_size);
} }
catch(...) __catch(...)
{ }; { };
m_size = left; m_size = left;
@ -197,7 +197,7 @@ resize_for_erase_if_needed()
if (!resize_policy::resize_needed_for_shrink(m_size)) if (!resize_policy::resize_needed_for_shrink(m_size))
return; return;
try __try
{ {
const size_type new_actual_size = const size_type new_actual_size =
resize_policy::get_new_size_for_shrink(); resize_policy::get_new_size_for_shrink();
@ -215,7 +215,7 @@ resize_for_erase_if_needed()
m_a_entries = a_new_entries; m_a_entries = a_new_entries;
} }
catch(...) __catch(...)
{ } { }
} }

View File

@ -1,6 +1,6 @@
// -*- C++ -*- // -*- C++ -*-
// Copyright (C) 2005, 2006 Free Software Foundation, Inc. // Copyright (C) 2005, 2006, 2007, 2008, 2009 Free Software Foundation, Inc.
// //
// This file is part of the GNU ISO C++ Library. This library is free // 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 // software; you can redistribute it and/or modify it under the terms
@ -77,13 +77,13 @@ split(Pred pred, PB_DS_CLASS_C_DEC& other)
entry_pointer a_entries = NULL; entry_pointer a_entries = NULL;
entry_pointer a_other_entries = NULL; entry_pointer a_other_entries = NULL;
try __try
{ {
a_entries = s_entry_allocator.allocate(actual_size); a_entries = s_entry_allocator.allocate(actual_size);
a_other_entries = s_entry_allocator.allocate(other_actual_size); a_other_entries = s_entry_allocator.allocate(other_actual_size);
} }
catch(...) __catch(...)
{ {
if (a_entries != NULL) if (a_entries != NULL)
s_entry_allocator.deallocate(a_entries, actual_size); s_entry_allocator.deallocate(a_entries, actual_size);
@ -137,12 +137,12 @@ join(PB_DS_CLASS_C_DEC& other)
entry_pointer a_entries = NULL; entry_pointer a_entries = NULL;
entry_pointer a_other_entries = NULL; entry_pointer a_other_entries = NULL;
try __try
{ {
a_entries = s_entry_allocator.allocate(actual_size); a_entries = s_entry_allocator.allocate(actual_size);
a_other_entries = s_entry_allocator.allocate(resize_policy::min_size); a_other_entries = s_entry_allocator.allocate(resize_policy::min_size);
} }
catch(...) __catch(...)
{ {
if (a_entries != NULL) if (a_entries != NULL)
s_entry_allocator.deallocate(a_entries, actual_size); s_entry_allocator.deallocate(a_entries, actual_size);

View File

@ -1,6 +1,6 @@
// -*- C++ -*- // -*- C++ -*-
// Copyright (C) 2005, 2006 Free Software Foundation, Inc. // Copyright (C) 2005, 2006, 2007, 2008, 2009 Free Software Foundation, Inc.
// //
// This file is part of the GNU ISO C++ Library. This library is free // 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 // software; you can redistribute it and/or modify it under the terms
@ -139,11 +139,11 @@ PB_DS_CLASS_NAME(const PB_DS_CLASS_C_DEC& other) :
{ {
initialize(); initialize();
_GLIBCXX_DEBUG_ONLY(PB_DS_CLASS_C_DEC::assert_valid();) _GLIBCXX_DEBUG_ONLY(PB_DS_CLASS_C_DEC::assert_valid();)
try __try
{ {
copy_from_range(other.begin(), other.end()); copy_from_range(other.begin(), other.end());
} }
catch(...) __catch(...)
{ {
deallocate_all(); deallocate_all();
__throw_exception_again; __throw_exception_again;

View File

@ -1,6 +1,6 @@
// -*- C++ -*- // -*- C++ -*-
// Copyright (C) 2005, 2006 Free Software Foundation, Inc. // Copyright (C) 2005, 2006, 2007, 2008, 2009 Free Software Foundation, Inc.
// //
// This file is part of the GNU ISO C++ Library. This library is free // 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 // software; you can redistribute it and/or modify it under the terms
@ -69,11 +69,11 @@ do_resize_if_needed_no_throw()
if (!resize_base::is_resize_needed()) if (!resize_base::is_resize_needed())
return; return;
try __try
{ {
resize_imp(resize_base::get_new_size(m_num_e, m_num_used_e)); resize_imp(resize_base::get_new_size(m_num_e, m_num_used_e));
} }
catch(...) __catch(...)
{ } { }
_GLIBCXX_DEBUG_ONLY(assert_valid();) _GLIBCXX_DEBUG_ONLY(assert_valid();)
@ -94,13 +94,13 @@ resize_imp(size_type new_size)
// Following line might throw an exception. // Following line might throw an exception.
ranged_hash_fn_base::notify_resized(new_size); ranged_hash_fn_base::notify_resized(new_size);
try __try
{ {
// Following line might throw an exception. // Following line might throw an exception.
a_p_entries_resized = s_entry_pointer_allocator.allocate(new_size); a_p_entries_resized = s_entry_pointer_allocator.allocate(new_size);
m_num_e = new_size; m_num_e = new_size;
} }
catch(...) __catch(...)
{ {
ranged_hash_fn_base::notify_resized(old_size); ranged_hash_fn_base::notify_resized(old_size);
__throw_exception_again; __throw_exception_again;

View File

@ -1,6 +1,6 @@
// -*- C++ -*- // -*- C++ -*-
// Copyright (C) 2005, 2006, 2007, 2008 Free Software Foundation, Inc. // Copyright (C) 2005, 2006, 2007, 2008, 2009 Free Software Foundation, Inc.
// //
// This file is part of the GNU ISO C++ Library. This library is free // 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 // software; you can redistribute it and/or modify it under the terms
@ -168,11 +168,11 @@ namespace __gnu_pbds
std::abort(); std::abort();
} }
try __try
{ {
m_key_set.push_back(r_key); m_key_set.push_back(r_key);
} }
catch(...) __catch(...)
{ {
std::cerr << "insert_new" << r_key << std::endl; std::cerr << "insert_new" << r_key << std::endl;
std::abort(); std::abort();

View File

@ -1,6 +1,6 @@
// -*- C++ -*- // -*- C++ -*-
// Copyright (C) 2005, 2006 Free Software Foundation, Inc. // Copyright (C) 2005, 2006, 2007, 2008, 2009 Free Software Foundation, Inc.
// //
// This file is part of the GNU ISO C++ Library. This library is free // 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 // software; you can redistribute it and/or modify it under the terms
@ -152,7 +152,7 @@ PB_DS_CLASS_NAME(const PB_DS_CLASS_C_DEC& other) :
for (size_type i = 0; i < m_num_e; ++i) for (size_type i = 0; i < m_num_e; ++i)
m_entries[i].m_stat = (entry_status)empty_entry_status; m_entries[i].m_stat = (entry_status)empty_entry_status;
try __try
{ {
for (size_type i = 0; i < m_num_e; ++i) for (size_type i = 0; i < m_num_e; ++i)
{ {
@ -161,7 +161,7 @@ PB_DS_CLASS_NAME(const PB_DS_CLASS_C_DEC& other) :
new (m_entries + i) entry(other.m_entries[i]); new (m_entries + i) entry(other.m_entries[i]);
} }
} }
catch(...) __catch(...)
{ {
deallocate_all(); deallocate_all();
__throw_exception_again; __throw_exception_again;

View File

@ -1,6 +1,6 @@
// -*- C++ -*- // -*- C++ -*-
// Copyright (C) 2005, 2006 Free Software Foundation, Inc. // Copyright (C) 2005, 2006, 2007, 2008, 2009 Free Software Foundation, Inc.
// //
// This file is part of the GNU ISO C++ Library. This library is free // 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 // software; you can redistribute it and/or modify it under the terms
@ -69,11 +69,11 @@ do_resize_if_needed_no_throw()
if (!resize_base::is_resize_needed()) if (!resize_base::is_resize_needed())
return; return;
try __try
{ {
resize_imp(resize_base::get_new_size(m_num_e, m_num_used_e)); resize_imp(resize_base::get_new_size(m_num_e, m_num_used_e));
} }
catch(...) __catch(...)
{ } { }
_GLIBCXX_DEBUG_ONLY(assert_valid();) _GLIBCXX_DEBUG_ONLY(assert_valid();)
@ -104,11 +104,11 @@ resize_imp(size_type new_size)
for (size_type i = 0; i < m_num_e; ++i) for (size_type i = 0; i < m_num_e; ++i)
a_entries_resized[i].m_stat = empty_entry_status; a_entries_resized[i].m_stat = empty_entry_status;
try __try
{ {
resize_imp(a_entries_resized, old_size); resize_imp(a_entries_resized, old_size);
} }
catch(...) __catch(...)
{ {
erase_all_valid_entries(a_entries_resized, new_size); erase_all_valid_entries(a_entries_resized, new_size);
m_num_e = old_size; m_num_e = old_size;

View File

@ -1,6 +1,6 @@
// -*- C++ -*- // -*- C++ -*-
// Copyright (C) 2005, 2006 Free Software Foundation, Inc. // Copyright (C) 2005, 2006, 2007, 2008, 2009 Free Software Foundation, Inc.
// //
// This file is part of the GNU ISO C++ Library. This library is free // 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 // software; you can redistribute it and/or modify it under the terms
@ -122,11 +122,11 @@ recursive_copy_node(const_node_pointer p_nd)
node_pointer p_ret = s_node_allocator.allocate(1); node_pointer p_ret = s_node_allocator.allocate(1);
try __try
{ {
new (p_ret) node(*p_nd); new (p_ret) node(*p_nd);
} }
catch(...) __catch(...)
{ {
s_node_allocator.deallocate(p_ret, 1); s_node_allocator.deallocate(p_ret, 1);
__throw_exception_again; __throw_exception_again;
@ -135,12 +135,12 @@ recursive_copy_node(const_node_pointer p_nd)
p_ret->m_p_l_child = p_ret->m_p_next_sibling = p_ret->m_p_l_child = p_ret->m_p_next_sibling =
p_ret->m_p_prev_or_parent = NULL; p_ret->m_p_prev_or_parent = NULL;
try __try
{ {
p_ret->m_p_l_child = recursive_copy_node(p_nd->m_p_l_child); p_ret->m_p_l_child = recursive_copy_node(p_nd->m_p_l_child);
p_ret->m_p_next_sibling = recursive_copy_node(p_nd->m_p_next_sibling); p_ret->m_p_next_sibling = recursive_copy_node(p_nd->m_p_next_sibling);
} }
catch(...) __catch(...)
{ {
clear_imp(p_ret); clear_imp(p_ret);
__throw_exception_again; __throw_exception_again;

View File

@ -1,6 +1,6 @@
// -*- C++ -*- // -*- C++ -*-
// Copyright (C) 2005, 2006 Free Software Foundation, Inc. // Copyright (C) 2005, 2006, 2007, 2008, 2009 Free Software Foundation, Inc.
// //
// This file is part of the GNU ISO C++ Library. This library is free // 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 // software; you can redistribute it and/or modify it under the terms
@ -93,7 +93,7 @@ PB_DS_CLASS_NAME(const PB_DS_CLASS_C_DEC& other) :
#endif #endif
m_p_l(NULL) m_p_l(NULL)
{ {
try __try
{ {
for (const_iterator it = other.begin(); it != other.end(); ++it) for (const_iterator it = other.begin(); it != other.end(); ++it)
{ {
@ -104,7 +104,7 @@ m_p_l(NULL)
m_p_l = p_l; m_p_l = p_l;
} }
} }
catch(...) __catch(...)
{ {
deallocate_all(); deallocate_all();
__throw_exception_again; __throw_exception_again;

View File

@ -1,6 +1,6 @@
// -*- C++ -*- // -*- C++ -*-
// Copyright (C) 2005, 2006 Free Software Foundation, Inc. // Copyright (C) 2005, 2006, 2007, 2008, 2009 Free Software Foundation, Inc.
// //
// This file is part of the GNU ISO C++ Library. This library is free // 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 // software; you can redistribute it and/or modify it under the terms
@ -96,11 +96,11 @@ PB_DS_CLASS_NAME(const PB_DS_CLASS_C_DEC& other) :
_GLIBCXX_DEBUG_ONLY(assert_valid();) _GLIBCXX_DEBUG_ONLY(assert_valid();)
return; return;
} }
try __try
{ {
m_p_head->m_p_parent = recursive_copy_node(other.m_p_head->m_p_parent); m_p_head->m_p_parent = recursive_copy_node(other.m_p_head->m_p_parent);
} }
catch(...) __catch(...)
{ {
s_head_allocator.deallocate(m_p_head, 1); s_head_allocator.deallocate(m_p_head, 1);
__throw_exception_again; __throw_exception_again;
@ -193,13 +193,13 @@ recursive_copy_node(const_node_pointer p_other_nd)
p_other_internal_nd->begin(); p_other_internal_nd->begin();
internal_node_pointer p_ret; internal_node_pointer p_ret;
try __try
{ {
while (child_it != p_other_internal_nd->end()) while (child_it != p_other_internal_nd->end())
a_p_children[child_i++] = recursive_copy_node(*(child_it++)); a_p_children[child_i++] = recursive_copy_node(*(child_it++));
p_ret = s_internal_node_allocator.allocate(1); p_ret = s_internal_node_allocator.allocate(1);
} }
catch(...) __catch(...)
{ {
while (child_i-- > 0) while (child_i-- > 0)
clear_imp(a_p_children[child_i]); clear_imp(a_p_children[child_i]);

View File

@ -1,6 +1,6 @@
// -*- C++ -*- // -*- C++ -*-
// Copyright (C) 2005, 2006 Free Software Foundation, Inc. // Copyright (C) 2005, 2006, 2007, 2008, 2009 Free Software Foundation, Inc.
// //
// This file is part of the GNU ISO C++ Library. This library is free // 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 // software; you can redistribute it and/or modify it under the terms
@ -60,11 +60,11 @@ public:
add_branch() add_branch()
{ {
internal_node_pointer p_nd = s_internal_node_allocator.allocate(1); internal_node_pointer p_nd = s_internal_node_allocator.allocate(1);
try __try
{ {
m_bag.push_back(p_nd); m_bag.push_back(p_nd);
} }
catch(...) __catch(...)
{ {
s_internal_node_allocator.deallocate(p_nd, 1); s_internal_node_allocator.deallocate(p_nd, 1);
__throw_exception_again; __throw_exception_again;

View File

@ -1,6 +1,6 @@
// -*- C++ -*- // -*- C++ -*-
// Copyright (C) 2005, 2006, 2007 Free Software Foundation, Inc. // Copyright (C) 2005, 2006, 2007, 2008, 2009 Free Software Foundation, Inc.
// //
// This file is part of the GNU ISO C++ Library. This library is free // 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 // software; you can redistribute it and/or modify it under the terms
@ -259,13 +259,13 @@ set_loads(std::pair<float, float> load_pair)
const size_type old_next_grow_size = m_next_grow_size; const size_type old_next_grow_size = m_next_grow_size;
const bool old_resize_needed = m_resize_needed; const bool old_resize_needed = m_resize_needed;
try __try
{ {
m_load_min = load_pair.first; m_load_min = load_pair.first;
m_load_max = load_pair.second; m_load_max = load_pair.second;
do_resize(static_cast<size_type>(size_base::get_size() / ((m_load_min + m_load_max) / 2))); do_resize(static_cast<size_type>(size_base::get_size() / ((m_load_min + m_load_max) / 2)));
} }
catch(...) __catch(...)
{ {
m_load_min = old_load_min; m_load_min = old_load_min;
m_load_max = old_load_max; m_load_max = old_load_max;

View File

@ -1,6 +1,6 @@
// -*- C++ -*- // -*- C++ -*-
// Copyright (C) 2005, 2006, 2007 Free Software Foundation, Inc. // Copyright (C) 2005, 2006, 2007, 2008, 2009 Free Software Foundation, Inc.
// //
// This file is part of the GNU ISO C++ Library. This library is free // 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 // software; you can redistribute it and/or modify it under the terms
@ -205,16 +205,16 @@ resize(size_type new_size)
--actual_size; --actual_size;
const size_type old_size = m_size; const size_type old_size = m_size;
try __try
{ {
do_resize(actual_size - 1); do_resize(actual_size - 1);
} }
catch(insert_error& ) __catch(insert_error& )
{ {
m_size = old_size; m_size = old_size;
__throw_resize_error(); __throw_resize_error();
} }
catch(...) __catch(...)
{ {
m_size = old_size; m_size = old_size;
__throw_exception_again; __throw_exception_again;

View File

@ -1,6 +1,6 @@
// Reference-counted versatile string base -*- C++ -*- // Reference-counted versatile string base -*- C++ -*-
// Copyright (C) 2005, 2006, 2007, 2008 Free Software Foundation, Inc. // Copyright (C) 2005, 2006, 2007, 2008, 2009 Free Software Foundation, Inc.
// //
// This file is part of the GNU ISO C++ Library. This library is free // 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 // software; you can redistribute it and/or modify it under the
@ -515,7 +515,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
} }
_Rep* __r = _Rep::_S_create(__len, size_type(0), __a); _Rep* __r = _Rep::_S_create(__len, size_type(0), __a);
_S_copy(__r->_M_refdata(), __buf, __len); _S_copy(__r->_M_refdata(), __buf, __len);
try __try
{ {
while (__beg != __end) while (__beg != __end)
{ {
@ -531,7 +531,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
++__beg; ++__beg;
} }
} }
catch(...) __catch(...)
{ {
__r->_M_destroy(__a); __r->_M_destroy(__a);
__throw_exception_again; __throw_exception_again;
@ -559,9 +559,9 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
__end)); __end));
// Check for out_of_range and length_error exceptions. // Check for out_of_range and length_error exceptions.
_Rep* __r = _Rep::_S_create(__dnew, size_type(0), __a); _Rep* __r = _Rep::_S_create(__dnew, size_type(0), __a);
try __try
{ _S_copy_chars(__r->_M_refdata(), __beg, __end); } { _S_copy_chars(__r->_M_refdata(), __beg, __end); }
catch(...) __catch(...)
{ {
__r->_M_destroy(__a); __r->_M_destroy(__a);
__throw_exception_again; __throw_exception_again;

View File

@ -1,6 +1,6 @@
// SGI's rope class -*- C++ -*- // SGI's rope class -*- C++ -*-
// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 // Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009
// Free Software Foundation, Inc. // Free Software Foundation, Inc.
// //
// This file is part of the GNU ISO C++ Library. This library is free // This file is part of the GNU ISO C++ Library. This library is free
@ -1689,9 +1689,9 @@ protected:
__uninitialized_copy_n_a(__s, __size, __buf, __a); __uninitialized_copy_n_a(__s, __size, __buf, __a);
_S_cond_store_eos(__buf[__size]); _S_cond_store_eos(__buf[__size]);
try __try
{ return _S_new_RopeLeaf(__buf, __size, __a); } { return _S_new_RopeLeaf(__buf, __size, __a); }
catch(...) __catch(...)
{ {
_RopeRep::__STL_FREE_STRING(__buf, __size, __a); _RopeRep::__STL_FREE_STRING(__buf, __size, __a);
__throw_exception_again; __throw_exception_again;
@ -1845,12 +1845,12 @@ protected:
_CharT* __buf = this->_Data_allocate(_S_rounded_up_size(1)); _CharT* __buf = this->_Data_allocate(_S_rounded_up_size(1));
_M_get_allocator().construct(__buf, __c); _M_get_allocator().construct(__buf, __c);
try __try
{ {
this->_M_tree_ptr = _S_new_RopeLeaf(__buf, 1, this->_M_tree_ptr = _S_new_RopeLeaf(__buf, 1,
_M_get_allocator()); _M_get_allocator());
} }
catch(...) __catch(...)
{ {
_RopeRep::__STL_FREE_STRING(__buf, 1, _M_get_allocator()); _RopeRep::__STL_FREE_STRING(__buf, 1, _M_get_allocator());
__throw_exception_again; __throw_exception_again;
@ -1924,13 +1924,13 @@ protected:
_RopeRep* __old = this->_M_tree_ptr; _RopeRep* __old = this->_M_tree_ptr;
_RopeRep* __left = _RopeRep* __left =
__STL_ROPE_FROM_UNOWNED_CHAR_PTR(&__x, 1, _M_get_allocator()); __STL_ROPE_FROM_UNOWNED_CHAR_PTR(&__x, 1, _M_get_allocator());
try __try
{ {
this->_M_tree_ptr = _S_concat(__left, this->_M_tree_ptr); this->_M_tree_ptr = _S_concat(__left, this->_M_tree_ptr);
_S_unref(__old); _S_unref(__old);
_S_unref(__left); _S_unref(__left);
} }
catch(...) __catch(...)
{ {
_S_unref(__left); _S_unref(__left);
__throw_exception_again; __throw_exception_again;

View File

@ -1,6 +1,6 @@
// SGI's rope class implementation -*- C++ -*- // SGI's rope class implementation -*- C++ -*-
// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007 // Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009
// Free Software Foundation, Inc. // Free Software Foundation, Inc.
// //
// This file is part of the GNU ISO C++ Library. This library is free // This file is part of the GNU ISO C++ Library. This library is free
@ -439,12 +439,12 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
uninitialized_copy_n(__r->_M_data, __old_len, __new_data); uninitialized_copy_n(__r->_M_data, __old_len, __new_data);
uninitialized_copy_n(__iter, __len, __new_data + __old_len); uninitialized_copy_n(__iter, __len, __new_data + __old_len);
_S_cond_store_eos(__new_data[__old_len + __len]); _S_cond_store_eos(__new_data[__old_len + __len]);
try __try
{ {
__result = _S_new_RopeLeaf(__new_data, __old_len + __len, __result = _S_new_RopeLeaf(__new_data, __old_len + __len,
__r->_M_get_allocator()); __r->_M_get_allocator());
} }
catch(...) __catch(...)
{ {
_RopeRep::__STL_FREE_STRING(__new_data, __old_len + __len, _RopeRep::__STL_FREE_STRING(__new_data, __old_len + __len,
__r->_M_get_allocator()); __r->_M_get_allocator());
@ -507,12 +507,12 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
{ {
_RopeRep* __balanced; _RopeRep* __balanced;
try __try
{ {
__balanced = _S_balance(__result); __balanced = _S_balance(__result);
__result->_M_unref_nonnil(); __result->_M_unref_nonnil();
} }
catch(...) __catch(...)
{ {
_C_deallocate(__result,1); _C_deallocate(__result,1);
__throw_exception_again; __throw_exception_again;
@ -558,9 +558,9 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
_RopeRep* __nright = _RopeRep* __nright =
_S_leaf_concat_char_iter((_RopeLeaf*)__right, __s, __slen); _S_leaf_concat_char_iter((_RopeLeaf*)__right, __s, __slen);
__left->_M_ref_nonnil(); __left->_M_ref_nonnil();
try __try
{ __result = _S_tree_concat(__left, __nright); } { __result = _S_tree_concat(__left, __nright); }
catch(...) __catch(...)
{ {
_S_unref(__left); _S_unref(__left);
_S_unref(__nright); _S_unref(__nright);
@ -571,12 +571,12 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
} }
_RopeRep* __nright = _RopeRep* __nright =
__STL_ROPE_FROM_UNOWNED_CHAR_PTR(__s, __slen, __r->_M_get_allocator()); __STL_ROPE_FROM_UNOWNED_CHAR_PTR(__s, __slen, __r->_M_get_allocator());
try __try
{ {
__r->_M_ref_nonnil(); __r->_M_ref_nonnil();
__result = _S_tree_concat(__r, __nright); __result = _S_tree_concat(__r, __nright);
} }
catch(...) __catch(...)
{ {
_S_unref(__r); _S_unref(__r);
_S_unref(__nright); _S_unref(__nright);
@ -638,9 +638,9 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
_RopeRep* __right = _RopeRep* __right =
__STL_ROPE_FROM_UNOWNED_CHAR_PTR(__s, __slen, __r->_M_get_allocator()); __STL_ROPE_FROM_UNOWNED_CHAR_PTR(__s, __slen, __r->_M_get_allocator());
__r->_M_ref_nonnil(); __r->_M_ref_nonnil();
try __try
{ __result = _S_tree_concat(__r, __right); } { __result = _S_tree_concat(__r, __right); }
catch(...) __catch(...)
{ {
_S_unref(__r); _S_unref(__r);
_S_unref(__right); _S_unref(__right);
@ -690,9 +690,9 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
_M_data, _M_data,
__right->_M_size); __right->_M_size);
__leftleft->_M_ref_nonnil(); __leftleft->_M_ref_nonnil();
try __try
{ return(_S_tree_concat(__leftleft, __rest)); } { return(_S_tree_concat(__leftleft, __rest)); }
catch(...) __catch(...)
{ {
_S_unref(__leftleft); _S_unref(__leftleft);
_S_unref(__rest); _S_unref(__rest);
@ -703,9 +703,9 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
} }
__left->_M_ref_nonnil(); __left->_M_ref_nonnil();
__right->_M_ref_nonnil(); __right->_M_ref_nonnil();
try __try
{ return(_S_tree_concat(__left, __right)); } { return(_S_tree_concat(__left, __right)); }
catch(...) __catch(...)
{ {
_S_unref(__left); _S_unref(__left);
_S_unref(__right); _S_unref(__right);
@ -818,9 +818,9 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
goto lazy; goto lazy;
__section = (_CharT*) __section = (_CharT*)
_Data_allocate(_S_rounded_up_size(__result_len)); _Data_allocate(_S_rounded_up_size(__result_len));
try __try
{ (*(__f->_M_fn))(__start, __result_len, __section); } { (*(__f->_M_fn))(__start, __result_len, __section); }
catch(...) __catch(...)
{ {
_RopeRep::__STL_FREE_STRING(__section, __result_len, _RopeRep::__STL_FREE_STRING(__section, __result_len,
__base->_M_get_allocator()); __base->_M_get_allocator());
@ -965,13 +965,13 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
bool __result; bool __result;
_CharT* __buffer = _CharT* __buffer =
(_CharT*)_Alloc().allocate(__len * sizeof(_CharT)); (_CharT*)_Alloc().allocate(__len * sizeof(_CharT));
try __try
{ {
(*(__f->_M_fn))(__begin, __len, __buffer); (*(__f->_M_fn))(__begin, __len, __buffer);
__result = __c(__buffer, __len); __result = __c(__buffer, __len);
_Alloc().deallocate(__buffer, __len * sizeof(_CharT)); _Alloc().deallocate(__buffer, __len * sizeof(_CharT));
} }
catch(...) __catch(...)
{ {
_Alloc().deallocate(__buffer, __len * sizeof(_CharT)); _Alloc().deallocate(__buffer, __len * sizeof(_CharT));
__throw_exception_again; __throw_exception_again;
@ -1027,7 +1027,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
if (!__is_simple) if (!__is_simple)
__o.width(__w / __rope_len); __o.width(__w / __rope_len);
try __try
{ {
if (__is_simple && !__left && __pad_len > 0) if (__is_simple && !__left && __pad_len > 0)
_Rope_fill(__o, __pad_len); _Rope_fill(__o, __pad_len);
@ -1037,7 +1037,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
if (!__is_simple) if (!__is_simple)
__o.width(__w); __o.width(__w);
} }
catch(...) __catch(...)
{ {
if (!__is_simple) if (!__is_simple)
__o.width(__w); __o.width(__w);
@ -1216,7 +1216,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
for (__i = 0; __i <= int(__detail::_S_max_rope_depth); ++__i) for (__i = 0; __i <= int(__detail::_S_max_rope_depth); ++__i)
__forest[__i] = 0; __forest[__i] = 0;
try __try
{ {
_S_add_to_forest(__r, __forest); _S_add_to_forest(__r, __forest);
for (__i = 0; __i <= int(__detail::_S_max_rope_depth); ++__i) for (__i = 0; __i <= int(__detail::_S_max_rope_depth); ++__i)
@ -1232,7 +1232,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
#endif #endif
} }
} }
catch(...) __catch(...)
{ {
for(__i = 0; __i <= int(__detail::_S_max_rope_depth); __i++) for(__i = 0; __i <= int(__detail::_S_max_rope_depth); __i++)
_S_unref(__forest[__i]); _S_unref(__forest[__i]);
@ -1552,10 +1552,10 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
__uninitialized_fill_n_a(__rest_buffer, __rest, __c, __uninitialized_fill_n_a(__rest_buffer, __rest, __c,
_M_get_allocator()); _M_get_allocator());
_S_cond_store_eos(__rest_buffer[__rest]); _S_cond_store_eos(__rest_buffer[__rest]);
try __try
{ __remainder = _S_new_RopeLeaf(__rest_buffer, __rest, { __remainder = _S_new_RopeLeaf(__rest_buffer, __rest,
_M_get_allocator()); } _M_get_allocator()); }
catch(...) __catch(...)
{ {
_RopeRep::__STL_FREE_STRING(__rest_buffer, __rest, _RopeRep::__STL_FREE_STRING(__rest_buffer, __rest,
_M_get_allocator()); _M_get_allocator());
@ -1572,13 +1572,13 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
__uninitialized_fill_n_a(__base_buffer, __exponentiate_threshold, __c, __uninitialized_fill_n_a(__base_buffer, __exponentiate_threshold, __c,
_M_get_allocator()); _M_get_allocator());
_S_cond_store_eos(__base_buffer[__exponentiate_threshold]); _S_cond_store_eos(__base_buffer[__exponentiate_threshold]);
try __try
{ {
__base_leaf = _S_new_RopeLeaf(__base_buffer, __base_leaf = _S_new_RopeLeaf(__base_buffer,
__exponentiate_threshold, __exponentiate_threshold,
_M_get_allocator()); _M_get_allocator());
} }
catch(...) __catch(...)
{ {
_RopeRep::__STL_FREE_STRING(__base_buffer, _RopeRep::__STL_FREE_STRING(__base_buffer,
__exponentiate_threshold, __exponentiate_threshold,

View File

@ -1,6 +1,7 @@
// Singly-linked list implementation -*- C++ -*- // Singly-linked list implementation -*- C++ -*-
// Copyright (C) 2001, 2002, 2004, 2005, 2007 Free Software Foundation, Inc. // Copyright (C) 2001, 2002, 2004, 2005, 2007, 2008, 2009
// Free Software Foundation, Inc.
// //
// This file is part of the GNU ISO C++ Library. This library is free // 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 // software; you can redistribute it and/or modify it under the
@ -327,12 +328,12 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
_M_create_node(const value_type& __x) _M_create_node(const value_type& __x)
{ {
_Node* __node = this->_M_get_node(); _Node* __node = this->_M_get_node();
try __try
{ {
get_allocator().construct(&__node->_M_data, __x); get_allocator().construct(&__node->_M_data, __x);
__node->_M_next = 0; __node->_M_next = 0;
} }
catch(...) __catch(...)
{ {
this->_M_put_node(__node); this->_M_put_node(__node);
__throw_exception_again; __throw_exception_again;
@ -344,12 +345,12 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
_M_create_node() _M_create_node()
{ {
_Node* __node = this->_M_get_node(); _Node* __node = this->_M_get_node();
try __try
{ {
get_allocator().construct(&__node->_M_data, value_type()); get_allocator().construct(&__node->_M_data, value_type());
__node->_M_next = 0; __node->_M_next = 0;
} }
catch(...) __catch(...)
{ {
this->_M_put_node(__node); this->_M_put_node(__node);
__throw_exception_again; __throw_exception_again;

View File

@ -1,6 +1,6 @@
// Short-string-optimized versatile string base -*- C++ -*- // Short-string-optimized versatile string base -*- C++ -*-
// Copyright (C) 2005, 2006, 2007, 2008 Free Software Foundation, Inc. // Copyright (C) 2005, 2006, 2007, 2008, 2009 Free Software Foundation, Inc.
// //
// This file is part of the GNU ISO C++ Library. This library is free // 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 // software; you can redistribute it and/or modify it under the
@ -398,7 +398,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
++__beg; ++__beg;
} }
try __try
{ {
while (__beg != __end) while (__beg != __end)
{ {
@ -416,7 +416,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
++__beg; ++__beg;
} }
} }
catch(...) __catch(...)
{ {
_M_dispose(); _M_dispose();
__throw_exception_again; __throw_exception_again;
@ -446,9 +446,9 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
} }
// Check for out_of_range and length_error exceptions. // Check for out_of_range and length_error exceptions.
try __try
{ _S_copy_chars(_M_data(), __beg, __end); } { _S_copy_chars(_M_data(), __beg, __end); }
catch(...) __catch(...)
{ {
_M_dispose(); _M_dispose();
__throw_exception_again; __throw_exception_again;

View File

@ -1,6 +1,6 @@
// Versatile string -*- C++ -*- // Versatile string -*- C++ -*-
// Copyright (C) 2005, 2006, 2007 Free Software Foundation, Inc. // Copyright (C) 2005, 2006, 2007, 2008, 2009 Free Software Foundation, Inc.
// //
// This file is part of the GNU ISO C++ Library. This library is free // 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 // software; you can redistribute it and/or modify it under the
@ -567,7 +567,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
typename __istream_type::sentry __cerb(__in, false); typename __istream_type::sentry __cerb(__in, false);
if (__cerb) if (__cerb)
{ {
try __try
{ {
// Avoid reallocation for common case. // Avoid reallocation for common case.
__str.erase(); __str.erase();
@ -600,12 +600,12 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
__err |= __ios_base::eofbit; __err |= __ios_base::eofbit;
__in.width(0); __in.width(0);
} }
catch(__cxxabiv1::__forced_unwind&) __catch(__cxxabiv1::__forced_unwind&)
{ {
__in._M_setstate(__ios_base::badbit); __in._M_setstate(__ios_base::badbit);
__throw_exception_again; __throw_exception_again;
} }
catch(...) __catch(...)
{ {
// _GLIBCXX_RESOLVE_LIB_DEFECTS // _GLIBCXX_RESOLVE_LIB_DEFECTS
// 91. Description of operator>> and getline() for string<> // 91. Description of operator>> and getline() for string<>
@ -641,7 +641,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
typename __istream_type::sentry __cerb(__in, true); typename __istream_type::sentry __cerb(__in, true);
if (__cerb) if (__cerb)
{ {
try __try
{ {
// Avoid reallocation for common case. // Avoid reallocation for common case.
__str.erase(); __str.erase();
@ -676,12 +676,12 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
else else
__err |= __ios_base::failbit; __err |= __ios_base::failbit;
} }
catch(__cxxabiv1::__forced_unwind&) __catch(__cxxabiv1::__forced_unwind&)
{ {
__in._M_setstate(__ios_base::badbit); __in._M_setstate(__ios_base::badbit);
__throw_exception_again; __throw_exception_again;
} }
catch(...) __catch(...)
{ {
// _GLIBCXX_RESOLVE_LIB_DEFECTS // _GLIBCXX_RESOLVE_LIB_DEFECTS
// 91. Description of operator>> and getline() for string<> // 91. Description of operator>> and getline() for string<>

View File

@ -1,6 +1,6 @@
// <bitset> -*- C++ -*- // <bitset> -*- C++ -*-
// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 // Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009
// Free Software Foundation, Inc. // Free Software Foundation, Inc.
// //
// This file is part of the GNU ISO C++ Library. This library is free // This file is part of the GNU ISO C++ Library. This library is free
@ -1326,7 +1326,7 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_D)
typename __istream_type::sentry __sentry(__is); typename __istream_type::sentry __sentry(__is);
if (__sentry) if (__sentry)
{ {
try __try
{ {
for (size_t __i = _Nb; __i > 0; --__i) for (size_t __i = _Nb; __i > 0; --__i)
{ {
@ -1355,12 +1355,12 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_D)
} }
} }
} }
catch(__cxxabiv1::__forced_unwind&) __catch(__cxxabiv1::__forced_unwind&)
{ {
__is._M_setstate(__ios_base::badbit); __is._M_setstate(__ios_base::badbit);
__throw_exception_again; __throw_exception_again;
} }
catch(...) __catch(...)
{ __is._M_setstate(__ios_base::badbit); } { __is._M_setstate(__ios_base::badbit); }
} }

View File

@ -1,6 +1,6 @@
// Special functions -*- C++ -*- // Special functions -*- C++ -*-
// Copyright (C) 2006, 2007, 2008 // Copyright (C) 2006, 2007, 2008, 2009
// Free Software Foundation, Inc. // Free Software Foundation, Inc.
// //
// This file is part of the GNU ISO C++ Library. This library is free // This file is part of the GNU ISO C++ Library. This library is free
@ -477,13 +477,13 @@ namespace tr1
bool __ok_d1 = true; bool __ok_d1 = true;
_Tp __lng_ad, __lng_ad1, __lng_bd1; _Tp __lng_ad, __lng_ad1, __lng_bd1;
try __try
{ {
__lng_ad = __log_gamma(__ad); __lng_ad = __log_gamma(__ad);
__lng_ad1 = __log_gamma(__a + __d1); __lng_ad1 = __log_gamma(__a + __d1);
__lng_bd1 = __log_gamma(__b + __d1); __lng_bd1 = __log_gamma(__b + __d1);
} }
catch(...) __catch(...)
{ {
__ok_d1 = false; __ok_d1 = false;
} }
@ -525,12 +525,12 @@ namespace tr1
// Evaluate F2. // Evaluate F2.
bool __ok_d2 = true; bool __ok_d2 = true;
_Tp __lng_ad2, __lng_bd2; _Tp __lng_ad2, __lng_bd2;
try __try
{ {
__lng_ad2 = __log_gamma(__a + __d2); __lng_ad2 = __log_gamma(__a + __d2);
__lng_bd2 = __log_gamma(__b + __d2); __lng_bd2 = __log_gamma(__b + __d2);
} }
catch(...) __catch(...)
{ {
__ok_d2 = false; __ok_d2 = false;
} }
@ -600,14 +600,14 @@ namespace tr1
bool __ok1 = true; bool __ok1 = true;
_Tp __sgn_g1ca = _Tp(0), __ln_g1ca = _Tp(0); _Tp __sgn_g1ca = _Tp(0), __ln_g1ca = _Tp(0);
_Tp __sgn_g1cb = _Tp(0), __ln_g1cb = _Tp(0); _Tp __sgn_g1cb = _Tp(0), __ln_g1cb = _Tp(0);
try __try
{ {
__sgn_g1ca = __log_gamma_sign(__c - __a); __sgn_g1ca = __log_gamma_sign(__c - __a);
__ln_g1ca = __log_gamma(__c - __a); __ln_g1ca = __log_gamma(__c - __a);
__sgn_g1cb = __log_gamma_sign(__c - __b); __sgn_g1cb = __log_gamma_sign(__c - __b);
__ln_g1cb = __log_gamma(__c - __b); __ln_g1cb = __log_gamma(__c - __b);
} }
catch(...) __catch(...)
{ {
__ok1 = false; __ok1 = false;
} }
@ -615,14 +615,14 @@ namespace tr1
bool __ok2 = true; bool __ok2 = true;
_Tp __sgn_g2a = _Tp(0), __ln_g2a = _Tp(0); _Tp __sgn_g2a = _Tp(0), __ln_g2a = _Tp(0);
_Tp __sgn_g2b = _Tp(0), __ln_g2b = _Tp(0); _Tp __sgn_g2b = _Tp(0), __ln_g2b = _Tp(0);
try __try
{ {
__sgn_g2a = __log_gamma_sign(__a); __sgn_g2a = __log_gamma_sign(__a);
__ln_g2a = __log_gamma(__a); __ln_g2a = __log_gamma(__a);
__sgn_g2b = __log_gamma_sign(__b); __sgn_g2b = __log_gamma_sign(__b);
__ln_g2b = __log_gamma(__b); __ln_g2b = __log_gamma(__b);
} }
catch(...) __catch(...)
{ {
__ok2 = false; __ok2 = false;
} }

View File

@ -1,6 +1,6 @@
// <tr1/shared_ptr.h> -*- C++ -*- // <tr1/shared_ptr.h> -*- C++ -*-
// Copyright (C) 2007, 2008 Free Software Foundation, Inc. // Copyright (C) 2007, 2008, 2009 Free Software Foundation, Inc.
// //
// This file is part of the GNU ISO C++ Library. This library is free // 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 // software; you can redistribute it and/or modify it under the
@ -110,13 +110,13 @@ namespace tr1
template<typename _Ptr> template<typename _Ptr>
__shared_count(_Ptr __p) : _M_pi(0) __shared_count(_Ptr __p) : _M_pi(0)
{ {
try __try
{ {
typedef typename std::tr1::remove_pointer<_Ptr>::type _Tp; typedef typename std::tr1::remove_pointer<_Ptr>::type _Tp;
_M_pi = new _Sp_counted_base_impl<_Ptr, _Sp_deleter<_Tp>, _Lp>( _M_pi = new _Sp_counted_base_impl<_Ptr, _Sp_deleter<_Tp>, _Lp>(
__p, _Sp_deleter<_Tp>()); __p, _Sp_deleter<_Tp>());
} }
catch(...) __catch(...)
{ {
delete __p; delete __p;
__throw_exception_again; __throw_exception_again;
@ -126,11 +126,11 @@ namespace tr1
template<typename _Ptr, typename _Deleter> template<typename _Ptr, typename _Deleter>
__shared_count(_Ptr __p, _Deleter __d) : _M_pi(0) __shared_count(_Ptr __p, _Deleter __d) : _M_pi(0)
{ {
try __try
{ {
_M_pi = new _Sp_counted_base_impl<_Ptr, _Deleter, _Lp>(__p, __d); _M_pi = new _Sp_counted_base_impl<_Ptr, _Deleter, _Lp>(__p, __d);
} }
catch(...) __catch(...)
{ {
__d(__p); // Call _Deleter on __p. __d(__p); // Call _Deleter on __p.
__throw_exception_again; __throw_exception_again;
@ -709,11 +709,11 @@ namespace tr1
if (expired()) if (expired())
return __shared_ptr<element_type, _Lp>(); return __shared_ptr<element_type, _Lp>();
try __try
{ {
return __shared_ptr<element_type, _Lp>(*this); return __shared_ptr<element_type, _Lp>(*this);
} }
catch(const bad_weak_ptr&) __catch(const bad_weak_ptr&)
{ {
// Q: How can we get here? // Q: How can we get here?
// A: Another thread may have invalidated r after the // A: Another thread may have invalidated r after the
@ -958,11 +958,11 @@ namespace tr1
if (this->expired()) if (this->expired())
return shared_ptr<_Tp>(); return shared_ptr<_Tp>();
try __try
{ {
return shared_ptr<_Tp>(*this); return shared_ptr<_Tp>(*this);
} }
catch(const bad_weak_ptr&) __catch(const bad_weak_ptr&)
{ {
return shared_ptr<_Tp>(); return shared_ptr<_Tp>();
} }

View File

@ -1,6 +1,6 @@
// Internal header for TR1 unordered_set and unordered_map -*- C++ -*- // Internal header for TR1 unordered_set and unordered_map -*- C++ -*-
// Copyright (C) 2007, 2008 Free Software Foundation, Inc. // Copyright (C) 2007, 2008, 2009 Free Software Foundation, Inc.
// //
// This file is part of the GNU ISO C++ Library. This library is free // 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 // software; you can redistribute it and/or modify it under the
@ -482,7 +482,7 @@ _GLIBCXX_BEGIN_NAMESPACE_TR1
_M_allocate_node(const value_type& __v) _M_allocate_node(const value_type& __v)
{ {
_Node* __n = _M_node_allocator.allocate(1); _Node* __n = _M_node_allocator.allocate(1);
try __try
{ {
#ifdef _GLIBCXX_INCLUDE_AS_CXX0X #ifdef _GLIBCXX_INCLUDE_AS_CXX0X
_M_node_allocator.construct(__n, __v); _M_node_allocator.construct(__n, __v);
@ -492,7 +492,7 @@ _GLIBCXX_BEGIN_NAMESPACE_TR1
__n->_M_next = 0; __n->_M_next = 0;
return __n; return __n;
} }
catch(...) __catch(...)
{ {
_M_node_allocator.deallocate(__n, 1); _M_node_allocator.deallocate(__n, 1);
__throw_exception_again; __throw_exception_again;
@ -624,12 +624,12 @@ _GLIBCXX_BEGIN_NAMESPACE_TR1
__distance_fw(__f, __distance_fw(__f,
__l))); __l)));
_M_buckets = _M_allocate_buckets(_M_bucket_count); _M_buckets = _M_allocate_buckets(_M_bucket_count);
try __try
{ {
for (; __f != __l; ++__f) for (; __f != __l; ++__f)
this->insert(*__f); this->insert(*__f);
} }
catch(...) __catch(...)
{ {
clear(); clear();
_M_deallocate_buckets(_M_buckets, _M_bucket_count); _M_deallocate_buckets(_M_buckets, _M_bucket_count);
@ -654,7 +654,7 @@ _GLIBCXX_BEGIN_NAMESPACE_TR1
_M_rehash_policy(__ht._M_rehash_policy) _M_rehash_policy(__ht._M_rehash_policy)
{ {
_M_buckets = _M_allocate_buckets(_M_bucket_count); _M_buckets = _M_allocate_buckets(_M_bucket_count);
try __try
{ {
for (size_type __i = 0; __i < __ht._M_bucket_count; ++__i) for (size_type __i = 0; __i < __ht._M_bucket_count; ++__i)
{ {
@ -669,7 +669,7 @@ _GLIBCXX_BEGIN_NAMESPACE_TR1
} }
} }
} }
catch(...) __catch(...)
{ {
clear(); clear();
_M_deallocate_buckets(_M_buckets, _M_bucket_count); _M_deallocate_buckets(_M_buckets, _M_bucket_count);
@ -946,7 +946,7 @@ _GLIBCXX_BEGIN_NAMESPACE_TR1
// do a rehash if the allocation throws. // do a rehash if the allocation throws.
_Node* __new_node = _M_allocate_node(__v); _Node* __new_node = _M_allocate_node(__v);
try __try
{ {
if (__do_rehash.first) if (__do_rehash.first)
{ {
@ -961,7 +961,7 @@ _GLIBCXX_BEGIN_NAMESPACE_TR1
++_M_element_count; ++_M_element_count;
return iterator(__new_node, _M_buckets + __n); return iterator(__new_node, _M_buckets + __n);
} }
catch(...) __catch(...)
{ {
_M_deallocate_node(__new_node); _M_deallocate_node(__new_node);
__throw_exception_again; __throw_exception_again;
@ -1239,7 +1239,7 @@ _GLIBCXX_BEGIN_NAMESPACE_TR1
_M_rehash(size_type __n) _M_rehash(size_type __n)
{ {
_Node** __new_array = _M_allocate_buckets(__n); _Node** __new_array = _M_allocate_buckets(__n);
try __try
{ {
for (size_type __i = 0; __i < _M_bucket_count; ++__i) for (size_type __i = 0; __i < _M_bucket_count; ++__i)
while (_Node* __p = _M_buckets[__i]) while (_Node* __p = _M_buckets[__i])
@ -1253,7 +1253,7 @@ _GLIBCXX_BEGIN_NAMESPACE_TR1
_M_bucket_count = __n; _M_bucket_count = __n;
_M_buckets = __new_array; _M_buckets = __new_array;
} }
catch(...) __catch(...)
{ {
// A failure here means that a hash function threw an exception. // A failure here means that a hash function threw an exception.
// We can't restore the previous state without calling the hash // We can't restore the previous state without calling the hash

View File

@ -1,5 +1,6 @@
// -*- C++ -*- Helpers for calling unextected and terminate // -*- C++ -*- Helpers for calling unextected and terminate
// Copyright (C) 2001, 2002, 2003, 2008 Free Software Foundation, Inc. // Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009
// Free Software Foundation, Inc.
// //
// This file is part of GCC. // This file is part of GCC.
// //
@ -108,14 +109,14 @@ __cxa_call_unexpected(void* exc_obj_in)
} end_catch_protect_obj; } end_catch_protect_obj;
try __try
{ {
if (foreign_exception) if (foreign_exception)
std::unexpected(); std::unexpected();
else else
__unexpected(unexpectedHandler); __unexpected(unexpectedHandler);
} }
catch(...) __catch(...)
{ {
/* See if the new exception matches the rtti list. */ /* See if the new exception matches the rtti list. */
if (foreign_exception) if (foreign_exception)

View File

@ -1,5 +1,6 @@
// -*- C++ -*- The GNU C++ exception personality routine. // -*- C++ -*- The GNU C++ exception personality routine.
// Copyright (C) 2001, 2002, 2003, 2006, 2008 Free Software Foundation, Inc. // Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009
// Free Software Foundation, Inc.
// //
// This file is part of GCC. // This file is part of GCC.
// //
@ -664,9 +665,9 @@ PERSONALITY_FUNCTION (int version,
std::terminate (); std::terminate ();
else if (handler_switch_value < 0) else if (handler_switch_value < 0)
{ {
try __try
{ std::unexpected (); } { std::unexpected (); }
catch(...) __catch(...)
{ std::terminate (); } { std::terminate (); }
} }
} }
@ -753,9 +754,9 @@ __cxa_call_unexpected (void *exc_obj_in)
xh_terminate_handler = xh->terminateHandler; xh_terminate_handler = xh->terminateHandler;
info.ttype_base = (_Unwind_Ptr) xh->catchTemp; info.ttype_base = (_Unwind_Ptr) xh->catchTemp;
try __try
{ __unexpected (xh->unexpectedHandler); } { __unexpected (xh->unexpectedHandler); }
catch(...) __catch(...)
{ {
// Get the exception thrown from unexpected. // Get the exception thrown from unexpected.

View File

@ -1,6 +1,7 @@
// -fno-exceptions Support -*- C++ -*- // -fno-exceptions Support -*- C++ -*-
// Copyright (C) 2001, 2003 Free Software Foundation, Inc. // Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2006, 2007, 2008, 2009
// Free Software Foundation, Inc.
// //
// This file is part of the GNU ISO C++ Library. This library is free // 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 // software; you can redistribute it and/or modify it under the
@ -40,11 +41,13 @@
#ifndef __EXCEPTIONS #ifndef __EXCEPTIONS
// Iff -fno-exceptions, transform error handling code to work without it. // Iff -fno-exceptions, transform error handling code to work without it.
# define try if (true) # define __try if (true)
# define catch(X) if (false) # define __catch(X) if (false)
# define __throw_exception_again # define __throw_exception_again
#else #else
// Else proceed normally. // Else proceed normally.
# define __try try
# define __catch(X) catch(X)
# define __throw_exception_again throw # define __throw_exception_again throw
#endif #endif

View File

@ -1,6 +1,6 @@
// Exception Handling support header (exception_ptr class) for -*- C++ -*- // Exception Handling support header (exception_ptr class) for -*- C++ -*-
// Copyright (C) 2008 Free Software Foundation // Copyright (C) 2008, 2009 Free Software Foundation
// //
// This file is part of GCC. // This file is part of GCC.
// //
@ -39,6 +39,7 @@
#pragma GCC visibility push(default) #pragma GCC visibility push(default)
#include <bits/c++config.h> #include <bits/c++config.h>
#include <exception_defines.h>
#if !defined(_GLIBCXX_ATOMIC_BUILTINS_4) #if !defined(_GLIBCXX_ATOMIC_BUILTINS_4)
# error This platform does not support exception propagation. # error This platform does not support exception propagation.
@ -152,11 +153,11 @@ namespace std
template <class _Ex> template <class _Ex>
exception_ptr copy_exception(_Ex __ex) throw() exception_ptr copy_exception(_Ex __ex) throw()
{ {
try __try
{ {
throw __ex; throw __ex;
} }
catch(...) __catch(...)
{ {
return current_exception (); return current_exception ();
} }

View File

@ -1,6 +1,7 @@
// Bitmap Allocator. Out of line function definitions. -*- C++ -*- // Bitmap Allocator. Out of line function definitions. -*- C++ -*-
// Copyright (C) 2004, 2005, 2006 Free Software Foundation, Inc. // Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009
// Free Software Foundation, Inc.
// //
// This file is part of the GNU ISO C++ Library. This library is free // 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 // software; you can redistribute it and/or modify it under the
@ -75,12 +76,12 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
{ {
size_t* __ret = 0; size_t* __ret = 0;
--__ctr; --__ctr;
try __try
{ {
__ret = reinterpret_cast<size_t*> __ret = reinterpret_cast<size_t*>
(::operator new(__sz + sizeof(size_t))); (::operator new(__sz + sizeof(size_t)));
} }
catch(...) __catch(...)
{ {
this->_M_clear(); this->_M_clear();
} }

View File

@ -1,6 +1,6 @@
// Compatibility symbols for previous versions -*- C++ -*- // Compatibility symbols for previous versions -*- C++ -*-
// Copyright (C) 2005, 2006, 2009 // Copyright (C) 2005, 2006, 2007, 2008, 2009
// Free Software Foundation, Inc. // Free Software Foundation, Inc.
// //
// This file is part of the GNU ISO C++ Library. This library is free // This file is part of the GNU ISO C++ Library. This library is free
@ -70,7 +70,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
if (__cerb && __n > 0) if (__cerb && __n > 0)
{ {
ios_base::iostate __err = ios_base::iostate(ios_base::goodbit); ios_base::iostate __err = ios_base::iostate(ios_base::goodbit);
try __try
{ {
const int_type __eof = traits_type::eof(); const int_type __eof = traits_type::eof();
__streambuf_type* __sb = this->rdbuf(); __streambuf_type* __sb = this->rdbuf();
@ -115,12 +115,12 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
if (traits_type::eq_int_type(__c, __eof)) if (traits_type::eq_int_type(__c, __eof))
__err |= ios_base::eofbit; __err |= ios_base::eofbit;
} }
catch(__cxxabiv1::__forced_unwind&) __catch(__cxxabiv1::__forced_unwind&)
{ {
this->_M_setstate(ios_base::badbit); this->_M_setstate(ios_base::badbit);
__throw_exception_again; __throw_exception_again;
} }
catch(...) __catch(...)
{ this->_M_setstate(ios_base::badbit); } { this->_M_setstate(ios_base::badbit); }
if (__err) if (__err)
this->setstate(__err); this->setstate(__err);
@ -142,7 +142,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
if (__cerb && __n > 0) if (__cerb && __n > 0)
{ {
ios_base::iostate __err = ios_base::iostate(ios_base::goodbit); ios_base::iostate __err = ios_base::iostate(ios_base::goodbit);
try __try
{ {
const int_type __eof = traits_type::eof(); const int_type __eof = traits_type::eof();
__streambuf_type* __sb = this->rdbuf(); __streambuf_type* __sb = this->rdbuf();
@ -186,12 +186,12 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
if (traits_type::eq_int_type(__c, __eof)) if (traits_type::eq_int_type(__c, __eof))
__err |= ios_base::eofbit; __err |= ios_base::eofbit;
} }
catch(__cxxabiv1::__forced_unwind&) __catch(__cxxabiv1::__forced_unwind&)
{ {
this->_M_setstate(ios_base::badbit); this->_M_setstate(ios_base::badbit);
__throw_exception_again; __throw_exception_again;
} }
catch(...) __catch(...)
{ this->_M_setstate(ios_base::badbit); } { this->_M_setstate(ios_base::badbit); }
if (__err) if (__err)
this->setstate(__err); this->setstate(__err);

View File

@ -1,6 +1,7 @@
// Iostreams base classes -*- C++ -*- // Iostreams base classes -*- C++ -*-
// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 // Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
// 2006, 2007, 2008, 2009
// Free Software Foundation, Inc. // Free Software Foundation, Inc.
// //
// This file is part of the GNU ISO C++ Library. This library is free // This file is part of the GNU ISO C++ Library. This library is free
@ -125,9 +126,9 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
if (__ix < numeric_limits<int>::max()) if (__ix < numeric_limits<int>::max())
{ {
__newsize = __ix + 1; __newsize = __ix + 1;
try __try
{ __words = new _Words[__newsize]; } { __words = new _Words[__newsize]; }
catch(...) __catch(...)
{ {
_M_streambuf_state |= badbit; _M_streambuf_state |= badbit;
if (_M_streambuf_state & _M_exception) if (_M_streambuf_state & _M_exception)
@ -170,9 +171,9 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
_Callback_list* __p = _M_callbacks; _Callback_list* __p = _M_callbacks;
while (__p) while (__p)
{ {
try __try
{ (*__p->_M_fn) (__e, *this, __p->_M_index); } { (*__p->_M_fn) (__e, *this, __p->_M_index); }
catch(...) __catch(...)
{ } { }
__p = __p->_M_next; __p = __p->_M_next;
} }

View File

@ -1,6 +1,7 @@
// Iostreams base classes -*- C++ -*- // Iostreams base classes -*- C++ -*-
// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 // Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
// 2006, 2007, 2008, 2009
// Free Software Foundation, Inc. // Free Software Foundation, Inc.
// //
// This file is part of the GNU ISO C++ Library. This library is free // This file is part of the GNU ISO C++ Library. This library is free
@ -129,7 +130,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
if (__gnu_cxx::__exchange_and_add_dispatch(&_S_refcount, -1) == 2) if (__gnu_cxx::__exchange_and_add_dispatch(&_S_refcount, -1) == 2)
{ {
// Catch any exceptions thrown by basic_ostream::flush() // Catch any exceptions thrown by basic_ostream::flush()
try __try
{ {
// Flush standard output streams as required by 27.4.2.1.6 // Flush standard output streams as required by 27.4.2.1.6
cout.flush(); cout.flush();
@ -142,7 +143,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
wclog.flush(); wclog.flush();
#endif #endif
} }
catch(...) __catch(...)
{ } { }
} }
} }

View File

@ -1,6 +1,7 @@
// Input streams -*- C++ -*- // Input streams -*- C++ -*-
// Copyright (C) 2004, 2005 Free Software Foundation, Inc. // Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009
// Free Software Foundation, Inc.
// //
// This file is part of the GNU ISO C++ Library. This library is free // 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 // software; you can redistribute it and/or modify it under the
@ -45,7 +46,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
sentry __cerb(*this, true); sentry __cerb(*this, true);
if (__cerb) if (__cerb)
{ {
try __try
{ {
const int_type __idelim = traits_type::to_int_type(__delim); const int_type __idelim = traits_type::to_int_type(__delim);
const int_type __eof = traits_type::eof(); const int_type __eof = traits_type::eof();
@ -91,12 +92,12 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
else else
__err |= ios_base::failbit; __err |= ios_base::failbit;
} }
catch(__cxxabiv1::__forced_unwind&) __catch(__cxxabiv1::__forced_unwind&)
{ {
this->_M_setstate(ios_base::badbit); this->_M_setstate(ios_base::badbit);
__throw_exception_again; __throw_exception_again;
} }
catch(...) __catch(...)
{ this->_M_setstate(ios_base::badbit); } { this->_M_setstate(ios_base::badbit); }
} }
// _GLIBCXX_RESOLVE_LIB_DEFECTS // _GLIBCXX_RESOLVE_LIB_DEFECTS
@ -123,7 +124,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
if (__cerb && __n > 0) if (__cerb && __n > 0)
{ {
ios_base::iostate __err = ios_base::iostate(ios_base::goodbit); ios_base::iostate __err = ios_base::iostate(ios_base::goodbit);
try __try
{ {
const char_type __cdelim = traits_type::to_char_type(__delim); const char_type __cdelim = traits_type::to_char_type(__delim);
const int_type __eof = traits_type::eof(); const int_type __eof = traits_type::eof();
@ -182,12 +183,12 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
__sb->sbumpc(); __sb->sbumpc();
} }
} }
catch(__cxxabiv1::__forced_unwind&) __catch(__cxxabiv1::__forced_unwind&)
{ {
this->_M_setstate(ios_base::badbit); this->_M_setstate(ios_base::badbit);
__throw_exception_again; __throw_exception_again;
} }
catch(...) __catch(...)
{ this->_M_setstate(ios_base::badbit); } { this->_M_setstate(ios_base::badbit); }
if (__err) if (__err)
this->setstate(__err); this->setstate(__err);
@ -211,7 +212,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
__istream_type::sentry __cerb(__in, false); __istream_type::sentry __cerb(__in, false);
if (__cerb) if (__cerb)
{ {
try __try
{ {
// Figure out how many characters to extract. // Figure out how many characters to extract.
streamsize __num = __in.width(); streamsize __num = __in.width();
@ -261,12 +262,12 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
*__s = __char_type(); *__s = __char_type();
__in.width(0); __in.width(0);
} }
catch(__cxxabiv1::__forced_unwind&) __catch(__cxxabiv1::__forced_unwind&)
{ {
__in._M_setstate(ios_base::badbit); __in._M_setstate(ios_base::badbit);
__throw_exception_again; __throw_exception_again;
} }
catch(...) __catch(...)
{ __in._M_setstate(ios_base::badbit); } { __in._M_setstate(ios_base::badbit); }
} }
if (!__extracted) if (!__extracted)
@ -294,7 +295,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
__istream_type::sentry __cerb(__in, false); __istream_type::sentry __cerb(__in, false);
if (__cerb) if (__cerb)
{ {
try __try
{ {
__str.erase(); __str.erase();
const streamsize __w = __in.width(); const streamsize __w = __in.width();
@ -336,12 +337,12 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
__err |= ios_base::eofbit; __err |= ios_base::eofbit;
__in.width(0); __in.width(0);
} }
catch(__cxxabiv1::__forced_unwind&) __catch(__cxxabiv1::__forced_unwind&)
{ {
__in._M_setstate(ios_base::badbit); __in._M_setstate(ios_base::badbit);
__throw_exception_again; __throw_exception_again;
} }
catch(...) __catch(...)
{ {
// _GLIBCXX_RESOLVE_LIB_DEFECTS // _GLIBCXX_RESOLVE_LIB_DEFECTS
// 91. Description of operator>> and getline() for string<> // 91. Description of operator>> and getline() for string<>
@ -376,7 +377,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
__istream_type::sentry __cerb(__in, true); __istream_type::sentry __cerb(__in, true);
if (__cerb) if (__cerb)
{ {
try __try
{ {
__str.erase(); __str.erase();
const __int_type __idelim = __traits_type::to_int_type(__delim); const __int_type __idelim = __traits_type::to_int_type(__delim);
@ -421,12 +422,12 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
else else
__err |= ios_base::failbit; __err |= ios_base::failbit;
} }
catch(__cxxabiv1::__forced_unwind&) __catch(__cxxabiv1::__forced_unwind&)
{ {
__in._M_setstate(ios_base::badbit); __in._M_setstate(ios_base::badbit);
__throw_exception_again; __throw_exception_again;
} }
catch(...) __catch(...)
{ {
// _GLIBCXX_RESOLVE_LIB_DEFECTS // _GLIBCXX_RESOLVE_LIB_DEFECTS
// 91. Description of operator>> and getline() for string<> // 91. Description of operator>> and getline() for string<>
@ -452,7 +453,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
sentry __cerb(*this, true); sentry __cerb(*this, true);
if (__cerb) if (__cerb)
{ {
try __try
{ {
const int_type __idelim = traits_type::to_int_type(__delim); const int_type __idelim = traits_type::to_int_type(__delim);
const int_type __eof = traits_type::eof(); const int_type __eof = traits_type::eof();
@ -498,12 +499,12 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
else else
__err |= ios_base::failbit; __err |= ios_base::failbit;
} }
catch(__cxxabiv1::__forced_unwind&) __catch(__cxxabiv1::__forced_unwind&)
{ {
this->_M_setstate(ios_base::badbit); this->_M_setstate(ios_base::badbit);
__throw_exception_again; __throw_exception_again;
} }
catch(...) __catch(...)
{ this->_M_setstate(ios_base::badbit); } { this->_M_setstate(ios_base::badbit); }
} }
// _GLIBCXX_RESOLVE_LIB_DEFECTS // _GLIBCXX_RESOLVE_LIB_DEFECTS
@ -530,7 +531,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
if (__cerb && __n > 0) if (__cerb && __n > 0)
{ {
ios_base::iostate __err = ios_base::iostate(ios_base::goodbit); ios_base::iostate __err = ios_base::iostate(ios_base::goodbit);
try __try
{ {
const char_type __cdelim = traits_type::to_char_type(__delim); const char_type __cdelim = traits_type::to_char_type(__delim);
const int_type __eof = traits_type::eof(); const int_type __eof = traits_type::eof();
@ -589,12 +590,12 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
__sb->sbumpc(); __sb->sbumpc();
} }
} }
catch(__cxxabiv1::__forced_unwind&) __catch(__cxxabiv1::__forced_unwind&)
{ {
this->_M_setstate(ios_base::badbit); this->_M_setstate(ios_base::badbit);
__throw_exception_again; __throw_exception_again;
} }
catch(...) __catch(...)
{ this->_M_setstate(ios_base::badbit); } { this->_M_setstate(ios_base::badbit); }
if (__err) if (__err)
this->setstate(__err); this->setstate(__err);
@ -622,7 +623,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
__istream_type::sentry __cerb(__in, true); __istream_type::sentry __cerb(__in, true);
if (__cerb) if (__cerb)
{ {
try __try
{ {
__str.erase(); __str.erase();
const __int_type __idelim = __traits_type::to_int_type(__delim); const __int_type __idelim = __traits_type::to_int_type(__delim);
@ -667,12 +668,12 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
else else
__err |= ios_base::failbit; __err |= ios_base::failbit;
} }
catch(__cxxabiv1::__forced_unwind&) __catch(__cxxabiv1::__forced_unwind&)
{ {
__in._M_setstate(ios_base::badbit); __in._M_setstate(ios_base::badbit);
__throw_exception_again; __throw_exception_again;
} }
catch(...) __catch(...)
{ {
// _GLIBCXX_RESOLVE_LIB_DEFECTS // _GLIBCXX_RESOLVE_LIB_DEFECTS
// 91. Description of operator>> and getline() for string<> // 91. Description of operator>> and getline() for string<>

View File

@ -1,5 +1,5 @@
// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, // Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
// 2009 // 2006, 2007, 2008, 2009
// Free Software Foundation, Inc. // Free Software Foundation, Inc.
// //
// This file is part of the GNU ISO C++ Library. This library is free // This file is part of the GNU ISO C++ Library. This library is free
@ -256,7 +256,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
: _M_refcount(__refs), _M_facets(0), _M_facets_size(__imp._M_facets_size), : _M_refcount(__refs), _M_facets(0), _M_facets_size(__imp._M_facets_size),
_M_caches(0), _M_names(0) _M_caches(0), _M_names(0)
{ {
try __try
{ {
_M_facets = new const facet*[_M_facets_size]; _M_facets = new const facet*[_M_facets_size];
for (size_t __i = 0; __i < _M_facets_size; ++__i) for (size_t __i = 0; __i < _M_facets_size; ++__i)
@ -285,7 +285,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
std::memcpy(_M_names[__l], __imp._M_names[__l], __len); std::memcpy(_M_names[__l], __imp._M_names[__l], __len);
} }
} }
catch(...) __catch(...)
{ {
this->~_Impl(); this->~_Impl();
__throw_exception_again; __throw_exception_again;
@ -337,11 +337,11 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
// New cache array. // New cache array.
const facet** __oldc = _M_caches; const facet** __oldc = _M_caches;
const facet** __newc; const facet** __newc;
try __try
{ {
__newc = new const facet*[__new_size]; __newc = new const facet*[__new_size];
} }
catch(...) __catch(...)
{ {
delete [] __newf; delete [] __newf;
__throw_exception_again; __throw_exception_again;

View File

@ -1,5 +1,5 @@
// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, // Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
// 2006, 2007, 2008 // 2006, 2007, 2008, 2009
// Free Software Foundation, Inc. // Free Software Foundation, Inc.
// //
// This file is part of the GNU ISO C++ Library. This library is free // This file is part of the GNU ISO C++ Library. This library is free
@ -166,9 +166,9 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
__cat = _S_normalize_category(__cat); __cat = _S_normalize_category(__cat);
_M_impl = new _Impl(*__base._M_impl, 1); _M_impl = new _Impl(*__base._M_impl, 1);
try __try
{ _M_impl->_M_replace_categories(__add._M_impl, __cat); } { _M_impl->_M_replace_categories(__add._M_impl, __cat); }
catch (...) __catch (...)
{ {
_M_impl->_M_remove_reference(); _M_impl->_M_remove_reference();
__throw_exception_again; __throw_exception_again;
@ -186,7 +186,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
__c_locale __cloc; __c_locale __cloc;
locale::facet::_S_create_c_locale(__cloc, __s); locale::facet::_S_create_c_locale(__cloc, __s);
try __try
{ {
_M_facets = new const facet*[_M_facets_size]; _M_facets = new const facet*[_M_facets_size];
for (size_t __i = 0; __i < _M_facets_size; ++__i) for (size_t __i = 0; __i < _M_facets_size; ++__i)
@ -254,7 +254,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
#endif #endif
locale::facet::_S_destroy_c_locale(__cloc); locale::facet::_S_destroy_c_locale(__cloc);
} }
catch(...) __catch(...)
{ {
locale::facet::_S_destroy_c_locale(__cloc); locale::facet::_S_destroy_c_locale(__cloc);
this->~_Impl(); this->~_Impl();

View File

@ -44,11 +44,11 @@ namespace std
__thread_data_ptr __local_thread_data; __thread_data_ptr __local_thread_data;
__local_thread_data.swap(__t->_M_this_ptr); __local_thread_data.swap(__t->_M_this_ptr);
try __try
{ {
__local_thread_data->_M_run(); __local_thread_data->_M_run();
} }
catch(...) __catch(...)
{ {
std::terminate(); std::terminate();
} }