gcc/libstdc++-v3/testsuite/22_locale
Paolo Carlini af90c8c9ae re PR libstdc++/40712 (locale(const locale&, const char*, locale::category) can create broken locale)
2009-07-18  Paolo Carlini  <paolo.carlini@oracle.com>

	PR libstdc++/40712
	* config/locale/gnu/numeric_members.cc (numpunct<>::
	_M_initialize_numpunct): Dynamically allocate _M_data->_M_grouping
	and copy the langinfo data into it.
	(numpunct<>::~numpunct): Free the allocated memory.
	* config/locale/gnu/monetary_members.cc (moneypunct<>::
	_M_initialize_moneypunct): Dynamically allocate _M_data->_M_grouping,
	_M_data->_M_positive_sign, _M_data->_M_negative_sign,
	_M_data->_M_curr_symbol.
	(moneypunct<>::~moneypunct): Free the allocated memory.
	* testsuite/22_locale/moneypunct/40712.cc: New.

	* include/bits/locale_facets.tcc (__numpunct_cache<>::_M_cache):
	Do not leak memory if new throws.
	* include/bits/locale_facets_nonio.tcc
	(__moneypunct_cache<>::_M_cache): Likewise.

From-SVN: r149782
2009-07-18 22:58:10 +00:00
..
codecvt
codecvt_byname/requirements
collate
collate_byname
ctype
ctype_base
ctype_byname
facet
global_templates
headers
locale re PR libstdc++/40184 (locale(const char* std_name) can create invalid facets for nonuniform locale) 2009-05-19 18:20:47 +00:00
messages
messages_byname
money_get
money_put
moneypunct re PR libstdc++/40712 (locale(const locale&, const char*, locale::category) can create broken locale) 2009-07-18 22:58:10 +00:00
moneypunct_byname
num_get
num_put
numpunct
numpunct_byname
time_get
time_put