re PR libstdc++/64535 (Emergency buffer for exception allocation too small)
[gcc.git] / libstdc++-v3 / ChangeLog
1 2015-01-22 Richard Biener <rguenther@suse.de>
2
3 PR libstdc++/64535
4 * libsupc++/eh_alloc.cc: Include new.
5 (bitmask_type): Remove.
6 (one_buffer): Likewise.
7 (emergency_buffer): Likewise.
8 (emergency_used): Likewise.
9 (dependents_buffer): Likewise.
10 (dependents_used): Likewise.
11 (class pool): New custom fixed-size arena, variable size object
12 allocator.
13 (emergency_pool): New global.
14 (__cxxabiv1::__cxa_allocate_exception): Use new emergency_pool.
15 (__cxxabiv1::__cxa_free_exception): Likewise.
16 (__cxxabiv1::__cxa_allocate_dependent_exception): Likewise.
17 (__cxxabiv1::__cxa_free_dependent_exception): Likewise.
18
19 2015-01-22 Tim Shen <timshen@google.com>
20
21 PR libstdc++/64680
22 * include/bits/regex.h (basic_regex<>::basic_regex,
23 basic_regex<>::operator=, basic_regex<>::imbue): Conform to the
24 standard interface.
25 * testsuite/28_regex/basic_regex/assign/char/cstring.cc: New testcase.
26
27 2015-01-22 Tim Shen <timshen@google.com>
28
29 PR libstdc++/64649
30 * include/bits/regex.tcc (regex_traits<>::lookup_collatename,
31 regex_traits<>::lookup_classname): Correctly narrow input chars.
32 * testsuite/28_regex/traits/wchar_t/user_defined.cc: New testcase.
33
34 2015-01-21 Jonathan Wakely <jwakely@redhat.com>
35
36 * config/abi/pre/gnu.ver: Use [jmy] for size_t parameters.
37
38 2015-01-21 Jonathan Wakely <jwakely@redhat.com>
39
40 * testsuite/29_atomics/atomic/64658.cc: Test stored value.
41
42 2015-01-20 Jonathan Wakely <jwakely@redhat.com>
43
44 * doc/xml/manual/status_cxx2011.xml: Remove stray dbhtml tags.
45 * doc/xml/manual/status_cxx2014.xml: Update status.
46 * doc/html/manual/status.html: Regenerate.
47
48 2015-01-20 Jonathan Wakely <jwakely@redhat.com>
49
50 PR libstdc++/64650
51 * include/experimental/optional (bad_optional_access): Add default
52 constructor.
53 * testsuite/experimental/optional/requirements.cc: Test for default
54 constructor.
55
56 2015-01-20 Jonathan Wakely <jwakely@redhat.com>
57
58 * include/bits/stl_map.h (map::find<>, map::count<>,
59 map::lower_bound<>, map::upper_bound<>, map::equal_range<>): New
60 member function templates to perform heterogeneous lookup.
61 * include/bits/stl_multimap.h (multimap::find<>, multimap::count<>,
62 multimap::lower_bound<>, multimap::upper_bound<>,
63 multimap::equal_range<>): Likewise.
64 * include/bits/stl_multiset.h (multiset::find<>, multiset::count<>,
65 multiset::lower_bound<>, multiset::upper_bound<>,
66 multiset::equal_range<>): Likewise.
67 * include/bits/stl_set.h (set::find<>, set::count<>,
68 set::lower_bound<>, set::upper_bound<>, set::equal_range<>): Likewise.
69 * include/bits/stl_tree.h (_Rb_tree::_S_lower_bound_tr,
70 _Rb_tree::_S_upper_bound_tr, _Rb_tree::_M_find_tr,
71 _Rb_tree::_M_count_tr, _Rb_tree::_M_lower_bound_tr,
72 _Rb_tree::_M_upper_bound_tr, _Rb_tree::_M_equal_range_tr): Likewise.
73 * testsuite/23_containers/map/operations/2.cc: New.
74 * testsuite/23_containers/multimap/operations/2.cc: New.
75 * testsuite/23_containers/multiset/operations/2.cc: New.
76 * testsuite/23_containers/set/operations/2.cc: New.
77
78 2015-01-20 Jonathan Wakely <jwakely@redhat.com>
79
80 * config/abi/pre/gnu.ver: Export new constructors.
81 * include/bits/codecvt.h (codecvt_byname): Add string constructor.
82 (codecvt_byname<char16_t>, codecvt_byname<char32_t>): Define explicit
83 specializations and declare explicit instantiations.
84 * include/bits/locale_classes.h (locale, collate_byname): Add string
85 constructors.
86 * include/bits/locale_facets.h (ctype_byname, numpunct_byname):
87 Likewise.
88 * include/bits/locale_facets_nonio.h (time_get_byname,
89 time_put_byname, moneypunct_byname, messages_byname): Likewise.
90 * src/c++11/codecvt.cc (codecvt_byname<char16_t>,
91 codecvt_byname<char32_t>): Define explicit instantiations.
92 * src/c++11/locale-inst.cc (time_put_byname, codecvt_byname):
93 Instantiate string constructors.
94 (ctype_byname): Define string constructor.
95 * testsuite/22_locale/codecvt_byname/1.cc: New.
96 * testsuite/22_locale/collate_byname/1.cc: New.
97 * testsuite/22_locale/ctype_byname/2.cc: New.
98 * testsuite/22_locale/messages_byname/1.cc: New.
99 * testsuite/22_locale/moneypunct_byname/1.cc: New.
100 * testsuite/22_locale/numpunct_byname/1.cc: New.
101
102 2015-01-20 Jonathan Wakely <jwakely@redhat.com>
103
104 PR libstdc++/64658
105 * include/std/atomic (atomic_init): Define.
106 * testsuite/29_atomics/atomic/64658.cc: New.
107
108 2015-01-19 Tim Shen <timshen@google.com>
109
110 PR libstdc++/64649
111 * include/bits/regex.tcc (regex_traits<>::lookup_collatename,
112 regex_traits<>::lookup_classname): Support forward iterators.
113 * testsuite/28_regex/traits/char/lookup_classname.cc: New testcases.
114 * testsuite/28_regex/traits/char/lookup_collatename.cc: New testcase.
115
116 2015-01-19 Tim Shen <timshen@google.com>
117
118 PR libstdc++/64584
119 PR libstdc++/64585
120 * include/bits/regex.h (basic_regex<>::basic_regex,
121 basic_regex<>::assign, basic_regex<>::imbue,
122 basic_regex<>::swap, basic_regex<>::mark_count): Drop NFA after
123 imbuing basic_regex; Make assign() transactional against exception.
124 * include/bits/regex_compiler.h (__compile_nfa<>): Add back
125 __compile_nfa SFINAE.
126 * include/std/regex: Adjust include order to avoid __compile_nfa
127 forward declaration.
128 * testsuite/28_regex/basic_regex/assign/char/string.cc: New testcase.
129 * testsuite/28_regex/basic_regex/imbue/string.cc: New testcase.
130
131 2015-01-19 Ville Voutilainen <ville.voutilainen@gmail.com>
132 Jonathan Wakely <jwakely@redhat.com>
133
134 * include/bits/range_access.h (begin, end): Use _GLIBCXX14_CONSTEXPR
135 on overloads for arrays.
136 (cbegin, cend, rbegin, rend, crbegin, crend): New.
137 * testsuite/24_iterators/range_access_cpp14.cc: New.
138
139 2015-01-18 Jonathan Wakely <jwakely@redhat.com>
140
141 PR libstdc++/64646
142 * include/bits/stl_algo.h (__is_permutation): Also test for reaching
143 end of the second range.
144 * testsuite/25_algorithms/is_permutation/64646.cc: New.
145
146 2015-01-18 Jonathan Wakely <jwakely@redhat.com>
147
148 * doc/xml/manual/status_cxx2011.xml: Remove note about offsetof.
149 * doc/html/manual/status.html: Regenerate.
150
151 2015-01-18 Jonathan Wakely <jwakely@redhat.com>
152
153 * include/bits/atomic_futex.h: Use mutex and condition_variable when
154 atomic int is not lock-free. Make member variables private.
155 * src/c++11/futex.cc: Likewise.
156
157 * src/c++11/futex.cc: Fix order of includes and preprocessor condition.
158
159 2015-01-17 Jonathan Wakely <jwakely@redhat.com>
160
161 PR libstdc++/64638
162 * include/bits/atomic_futex.h: Use appropriate config macros for
163 availability of std::mutex, std::condition and std::chrono.
164
165 2015-01-17 Ville Voutilainen <ville.voutilainen@gmail.com>
166 Jonathan Wakely <jwakely@redhat.com>
167
168 * doc/xml/manual/status_cxx2011.xml: Update C++11 status.
169 * doc/html/*: Regenerate.
170
171 2015-01-17 Jonathan Wakely <jwakely@redhat.com>
172
173 DR 488
174 PR libstdc++/58357
175 * include/bits/algorithmfwd.h (rotate): Return an iterator.
176 * include/bits/stl_algo.h (rotate, __rotate): Likewise.
177 * testsuite/25_algorithms/rotate/dr488.cc: New.
178 * testsuite/25_algorithms/rotate/check_type.cc: Adjust function type.
179 * testsuite/25_algorithms/rotate/requirements/explicit_instantiation/
180 2.cc: Likewise.
181 * testsuite/25_algorithms/rotate/requirements/explicit_instantiation/
182 pod.cc: Likewise.
183
184 2015-01-17 Jonathan Wakely <jwakely@redhat.com>
185
186 PR libstdc++/60940
187 * include/bits/atomic_base.h: Remove atomic integral typedefs as
188 synonyms for __atomic_base<int> etc.
189 * include/std/atomic: Make atomic_int a synonym for atomic<int> and
190 likewise for all atomic integral types.
191 * testsuite/29_atomics/atomic_integral/cons/copy_list.cc: New.
192 * testsuite/29_atomics/atomic/60695.cc: Adjust dg-error line number.
193
194 2015-01-17 Jonathan Wakely <jwakely@redhat.com>
195
196 PR libstdc++/56785
197 * include/std/tuple (_Tuple_impl): Remove zero-element specialization
198 and define one-element specialization.
199 * testsuite/20_util/tuple/56785.cc: New.
200
201 2015-01-17 Jonathan Wakely <jwakely@redhat.com>
202
203 * testsuite/22_locale/codecvt/codecvt_utf8/requirements/1.cc:
204 Remove unused header.
205 * testsuite/22_locale/codecvt/codecvt_utf16/requirements/1.cc:
206 Likewise.
207 * testsuite/22_locale/codecvt/codecvt_utf8_utf16/requirements/1.cc:
208 Likewise.
209
210 2015-01-16 Jonathan Wakely <jwakely@redhat.com>
211
212 * include/bits/locale_conv.h (wstring_convert, wbuffer_convert): New.
213 * include/std/locale: Include new header.
214 * include/Makefile.am: Add it.
215 * include/Makefile.in: Regenerate.
216 * testsuite/22_locale/conversions/buffer/requirements/typedefs.cc: New.
217 * testsuite/22_locale/conversions/string/1.cc: New.
218 * testsuite/22_locale/conversions/string/2.cc: New.
219 * testsuite/22_locale/conversions/string/requirements/typedefs.cc: New.
220 * testsuite/22_locale/conversions/string/requirements/typedefs-2.cc:
221 New.
222
223 2015-01-16 Jonathan Wakely <jwakely@redhat.com>
224
225 * config/abi/pre/gnu.ver: Export new symbols.
226 * include/Makefile.am: Add codecvt.
227 * include/Makefile.in: Regenerate.
228 * include/std/codecvt: New header.
229 * src/c++11/codecvt.cc (__codecvt_utf8_base, __codecvt_utf16_base,
230 __codecvt_utf8_utf16_base): Define specializations.
231 * testsuite/22_locale/codecvt/codecvt_utf8/requirements/1.cc: New.
232 * testsuite/22_locale/codecvt/codecvt_utf16/requirements/1.cc: New.
233 * testsuite/22_locale/codecvt/codecvt_utf8_utf16/requirements/1.cc:
234 New.
235
236 2015-01-16 Torvald Riegel <triegel@redhat.com>
237
238 * src/c++11/futex.cc: New file.
239 * include/bits/atomic_futex.h: New file.
240 * include/std/future (__future_base::_State_baseV2): Use
241 atomic_futex_unsigned instead of mutex+condvar.
242 * src/c++11/futex.cc: Likewise.
243 * include/Makefile.am: Add atomic_futex.h.
244 * include/Makefile.in: Likewise.
245 * src/c++11/Makefile.am: Add futex.cc.
246 * src/c++11/Makefile.in: Likewise.
247
248 2015-01-16 Jonathan Wakely <jwakely@redhat.com>
249
250 * acinclude.m4: Fix typo in comment.
251 * configure: Regenerate.
252 * include/bits/codecvt.h (codecvt<char16_t, char, mbstate_t>,
253 codecvt<char16_t, char, mbstate_t>): Declare specializations.
254 * include/bits/locale_facets.h: Reserve space for new specializations.
255 * src/c++11/Makefile.am: Add codecvt.cc.
256 * src/c++11/Makefile.in: Regenerate.
257 * src/c++11/codecvt.cc: New.
258 * src/c++98/Makefile.am: Compile locale_init.cc and localename.cc
259 with -std=gnu++11.
260 * src/c++98/Makefile.in: Regenerate.
261 * src/c++98/locale_init.cc: Initialize new codecvt specializations.
262 * src/c++98/localename.cc: Likewise.
263 * config/abi/pre/gnu.ver: Exports for new codecvt specializations.
264 * testsuite/22_locale/codecvt/utf8.cc: New.
265 * testsuite/22_locale/locale/cons/unicode.cc: Check that new
266 specializations are installed in locale objects.
267
268 2015-01-16 Torvald Riegel <triegel@redhat.com>
269
270 * include/std/shared_mutex (shared_timed_mutex): Add POSIX-based
271 implementation.
272
273 2015-01-13 Jonathan Wakely <jwakely@redhat.com>
274
275 PR libstdc++/64571
276 * config/abi/pre/gnu.ver: Export fstream functions using new string.
277
278 2015-01-12 Jonathan Wakely <jwakely@redhat.com>
279
280 PR libstdc++/64560
281 * src/c++11/cxx11-shim_facets.cc (locale::facet::_M_sso_shim): Check
282 for RTTI support.
283
284 PR libstdc++/64553
285 * src/c++11/cxx11-shim_facets.cc: Check for wchar_t support.
286
287 2015-01-10 Thomas Schwinge <thomas@codesourcery.com>
288
289 * doc/xml/manual/parallel_mode.xml: Update for libgomp being
290 renamed from "GNU OpenMP Runtime Library" to "GNU Offloading and
291 Multi Processing Runtime Library".
292
293 2015-01-09 Jonathan Wakely <jwakely@redhat.com>
294
295 PR libstdc++/64476
296 * include/bits/stl_uninitialized.h (uninitialized_copy): Fix
297 is_assignable arguments.
298 * testsuite/20_util/specialized_algorithms/uninitialized_copy/64476.cc:
299 New.
300
301 2015-01-09 Andreas Tobler <andreast@gcc.gnu.org>
302
303 * libsupc++/unwind-cxx.h: Revert previous commit.
304
305 2015-01-09 Andreas Tobler <andreast@gcc.gnu.org>
306
307 * configure.host: Add arm*-*-freebsd* port_specific_symbol_files.
308
309 2015-01-09 Tim Shen <timshen@google.com>
310
311 PR libstdc++/64239
312 * include/bits/regex.h (match_results<>::swap): Use std::swap
313 instead of swap.
314 * include/bits/regex_compiler.tcc (_Compiler<>::_M_quantifier):
315 Likewise.
316 * testsuite/28_regex/match_results/swap.cc: New testcase.
317
318 2015-01-08 Jonathan Wakely <jwakely@redhat.com>
319
320 PR libstdc++/60132
321 * include/std/type_traits (has_trivial_default_constructor,
322 has_trivial_copy_constructor, has_trivial_copy_assign): Add deprecated
323 attribute.
324 * testsuite/20_util/has_trivial_copy_assign/requirements/
325 explicit_instantiation.cc: Use -Wno-deprecated.
326 * testsuite/20_util/has_trivial_copy_assign/requirements/typedefs.cc:
327 Likewise.
328 * testsuite/20_util/has_trivial_copy_assign/value.cc: Likewise.
329 * testsuite/20_util/has_trivial_copy_constructor/requirements/
330 explicit_instantiation.cc: Likewise.
331 * testsuite/20_util/has_trivial_copy_constructor/requirements/
332 typedefs.cc: Likewise.
333 * testsuite/20_util/has_trivial_copy_constructor/value.cc: Likewise.
334 * testsuite/20_util/has_trivial_default_constructor/requirements/
335 explicit_instantiation.c: Likewise.
336 * testsuite/20_util/has_trivial_default_constructor/requirements/
337 typedefs.cc: Likewise.
338 * testsuite/20_util/has_trivial_default_constructor/value.cc:
339 Likewise.
340 * testsuite/20_util/pair/requirements/dr801.cc: Replace deprecated
341 trait.
342 * testsuite/20_util/tuple/requirements/dr801.cc: Likewise.
343 * testsuite/util/testsuite_common_types.h: Likewise.
344
345 2015-01-08 Jonathan Wakely <jwakely@redhat.com>
346
347 * include/bits/hashtable_policy.h: Use __bool_constant.
348
349 2015-01-07 Jonathan Wakely <jwakely@redhat.com>
350
351 * libsupc++/Makefile.am: Compile del_ops.cc as C++14.
352 * libsupc++/Makefile.in: Regenerate.
353
354 2015-01-06 Jonathan Wakely <jwakely@redhat.com>
355
356 * config/abi/pre/gnu.ver: Fix version conflict for std::locale::name().
357
358 2015-01-05 Jakub Jelinek <jakub@redhat.com>
359
360 Update copyright years.
361
362 2015-01-04 Jonathan Wakely <jwakely@redhat.com>
363
364 PR libstdc++/64483
365 * testsuite/18_support/exception_ptr/64241.cc: Use
366 dg-require-atomic-builtins.
367
368 2015-01-02 Jonathan Wakely <jwakely@redhat.com>
369
370 * testsuite/21_strings/basic_string/modifiers/64422.cc: Fix copyright
371 date.
372
373 2015-01-02 Tim Shen <timshen@google.com>
374
375 PR libstdc++/64475
376 * include/bits/regex_executor.tcc (_Executor<>::_M_dfs): Copy the
377 iterator, since the original one shouldn't be mutated.
378
379 2015-01-02 Bernd Edlinger <bernd.edlinger@hotmail.de>
380
381 PR libstdc++/64422
382 * src/c++98/misc-inst.cc (string::erase): Add missing overloads.
383 (string::insert): Likewise.
384 (string::replace): Likewise.
385 (wstring::erase): Likewise.
386 (wstring::insert): Likewise.
387 (wstring::replace): Likewise.
388 * testsuite/21_strings/basic_string/modifiers/64422.cc: New testcase.
389
390 2015-01-02 Jonathan Wakely <jwakely@redhat.com>
391
392 PR libstdc++/64468
393 * doc/doxygen/user.cfg.in: Set correct TAB_SIZE.
394
395 2015-01-02 Jonathan Wakely <jwakely@redhat.com>
396
397 PR libstdc++/64438
398 * testsuite/21_strings/basic_string/numeric_conversions/char/dr1261.cc:
399 Revert removal of dg-require-string-conversions.
400 * testsuite/21_strings/basic_string/numeric_conversions/char/stod.cc:
401 Likewise.
402 * testsuite/21_strings/basic_string/numeric_conversions/char/stof.cc:
403 Likewise.
404 * testsuite/21_strings/basic_string/numeric_conversions/char/stoi.cc:
405 Likewise.
406 * testsuite/21_strings/basic_string/numeric_conversions/char/stol.cc:
407 Likewise.
408 * testsuite/21_strings/basic_string/numeric_conversions/char/stold.cc:
409 Likewise.
410 * testsuite/21_strings/basic_string/numeric_conversions/char/stoll.cc:
411 Likewise.
412 * testsuite/21_strings/basic_string/numeric_conversions/char/stoul.cc:
413 Likewise.
414 * testsuite/21_strings/basic_string/numeric_conversions/char/
415 stoull.cc: Likewise.
416 * testsuite/21_strings/basic_string/numeric_conversions/char/
417 to_string.cc: Likewise.
418 \f
419 Copyright (C) 2015 Free Software Foundation, Inc.
420
421 Copying and distribution of this file, with or without modification,
422 are permitted in any medium without royalty provided the copyright
423 notice and this notice are preserved.