re PR libstdc++/60710 (experimental::optional<T> is using T::operator!=)
[gcc.git] / libstdc++-v3 / ChangeLog
1 2014-04-25 Lars Gullik Bjønnes <larsbj@gullik.org>
2
3 PR libstdc++/60710
4 * include/experimental/optional (operator!=): Implement in terms of
5 operator==.
6 * testsuite/experimental/optional/relops/1.cc: Remove operator!=.
7 * testsuite/experimental/optional/relops/2.cc: Likewise.
8 * testsuite/experimental/optional/relops/3.cc: Likewise.
9 * testsuite/experimental/optional/relops/4.cc: Likewise.
10 * testsuite/experimental/optional/relops/5.cc: Likewise.
11 * testsuite/experimental/optional/relops/6.cc: Likewise.
12
13 2014-04-25 Jonathan Wakely <jwakely@redhat.com>
14
15 PR libstdc++/60958
16 * include/tr1/regex (regex_traits::isctype): Comment out broken code.
17 * testsuite/util/testsuite_regex.h (regex_match_debug): Improve
18 comment.
19
20 2014-04-25 Marc Glisse <marc.glisse@inria.fr>
21
22 * testsuite/util/testsuite_abi.cc (check_version): Update for
23 CXXABI_1.3.9.
24
25 2014-04-24 Tim Shen <timshen91@gmail.com>
26
27 * include/bits/regex_automaton.tcc (_StateSeq<>::_M_clone()):
28 Do _M_alt before _M_next.
29 * testsuite/28_regex/basic_regex/multiple_quantifiers.cc: Add testcases.
30
31 2014-04-24 Marc Glisse <marc.glisse@inria.fr>
32
33 PR libstdc++/43622
34 * config/abi/pre/gnu.ver (CXXABI_1.3.9): Remove __float128 symbols.
35 * config/abi/pre/gnu-versioned-namespace.ver: Likewise.
36 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
37
38 2014-04-24 Andreas Schwab <schwab@suse.de>
39
40 * config/abi/post/ia64-linux-gnu/baseline_symbols.txt: Update for
41 new CXXABI_1.3.9 symbols.
42
43 2014-04-23 Andreas Schwab <schwab@linux-m68k.org>
44
45 * config/abi/post/m68k-linux-gnu/baseline_symbols.txt
46 (CXXABI_1.3.9): New version.
47
48 2014-04-22 Marc Glisse <marc.glisse@inria.fr>
49
50 PR libstdc++/43622
51 * config/abi/pre/gnu.ver (CXXABI_1.3.9): New version, new symbols.
52 * config/abi/pre/gnu-versioned-namespace.ver: New symbols.
53 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
54
55 2014-04-22 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
56
57 * configure.host: Remove solaris2.9 handling.
58 Change os_include_dir to os/solaris/solaris2.10.
59 * acinclude.m4 (ac_has_gthreads): Remove solaris2.9* handling.
60 * crossconfig.m4: Remove *-solaris2.9 handling, simplify.
61 * configure: Regenerate.
62 * config/abi/post/solaris2.9: Remove.
63 * config/os/solaris/solaris2.9: Rename to ...
64 * config/os/solaris/solaris2.10: ... this.
65 * config/os/solaris/solaris2.10/os_defines.h (CLOCK_MONOTONIC):
66 Remove.
67
68 * doc/xml/manual/configure.xml (--enable-libstdcxx-threads):
69 Remove Solaris 9 reference.
70 * doc/html/manual/configure.html: Regenerate.
71
72 * testsuite/27_io/basic_istream/extractors_arithmetic/char/12.cc:
73 Remove *-*-solaris2.9 xfail.
74 * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/12.cc:
75 Likewise.
76
77 * testsuite/ext/enc_filebuf/char/13598.cc: Remove *-*-solaris2.9
78 xfail.
79
80 2014-04-16 Jonathan Wakely <jwakely@redhat.com>
81
82 * include/std/functional (__is_location_invariant): Use __or_ helper.
83
84 2014-04-15 Jonathan Wakely <jwakely@redhat.com>
85
86 PR libstdc++/60734
87 * include/bits/stl_tree.h (_Rb_tree::_M_end): Fix invalid cast.
88
89 PR libstdc++/60695
90 * include/std/atomic (atomic<_Tp>): Add static assertion.
91 * testsuite/29_atomics/atomic/60695.cc: New.
92
93 PR libstdc++/60594
94 * include/std/functional (function::_Callable): Exclude own type
95 from the callable checks.
96 * testsuite/20_util/function/60594.cc: New.
97
98 * include/bits/atomic_base.h (__atomic_base<_PTp*>::_M_type_size): Add
99 const to constexpr member functions.
100
101 * include/bits/shared_ptr.h (shared_ptr::shared_ptr(nullptr_t)): Use
102 delegating constructor.
103 * include/bits/shared_ptr_base.h
104 (__shared_ptr::__shared_ptr(nullptr_t)): Likewise
105
106 * include/std/atomic: Uglify parameter names.
107
108 PR c++/60786
109 * testsuite/20_util/shared_ptr/requirements/explicit_instantiation/
110 1.cc: Fix invalid explicit instantiations with unqualified names.
111 * testsuite/20_util/shared_ptr/requirements/explicit_instantiation/
112 2.cc: Likweise.
113 * testsuite/20_util/tuple/53648.cc: Likweise.
114 * testsuite/20_util/weak_ptr/requirements/explicit_instantiation/1.cc:
115 Likewise.
116 * testsuite/20_util/weak_ptr/requirements/explicit_instantiation/2.cc:
117 Likewise.
118 * testsuite/23_containers/unordered_map/requirements/
119 debug_container.cc: Likewise.
120 * testsuite/23_containers/unordered_map/requirements/
121 explicit_instantiation/3.cc: Likewise.
122 * testsuite/23_containers/unordered_multimap/requirements/debug.cc:
123 Likewise.
124 * testsuite/23_containers/unordered_multimap/requirements/
125 explicit_instantiation/3.cc: Likewise.
126 * testsuite/23_containers/unordered_multiset/requirements/debug.cc:
127 Likewise.
128 * testsuite/23_containers/unordered_multiset/requirements/
129 explicit_instantiation/3.cc: Likewise.
130 * testsuite/23_containers/unordered_set/requirements/
131 debug_container.cc: Likewise.
132 * testsuite/23_containers/unordered_set/requirements/
133 explicit_instantiation/3.cc: Likewise.
134
135 * testsuite/24_iterators/insert_iterator/requirements/container.cc: Do
136 not use uninitialized members in mem-initializers.
137 * testsuite/ext/throw_value/cons.cc: Fix most vexing parse.
138 * testsuite/util/testsuite_common_types.h: Update comment.
139
140 * include/experimental/string_view: Fix inconsistent exception specs.
141
142 * include/bits/shared_ptr.h (shared_ptr::shared_ptr(nullptr_t)):
143 Remove name of unused parameter.
144
145 2014-04-14 Jonathan Wakely <jwakely@redhat.com>
146
147 * include/bits/stl_vector.h (_Vector_base::_Vector_impl,
148 _Vector_base::_M_allocate): NullablePointer requirements do not
149 include initialization from literal zero, use value-initialization.
150 * include/bits/vector.tcc (vector::_M_insert_aux,
151 vector::_M_explace_back_aux): Likewise for assignment.
152
153 * include/bits/allocator.h (operator==, operator!=): Add exception
154 specifications.
155
156 PR libstdc++/60497
157 * include/std/tuple (get): Qualify calls to prevent ADL.
158 * testsuite/20_util/tuple/60497.cc: New.
159
160 * include/std/tuple (tuple_element_t): Define.
161 * testsuite/20_util/tuple/tuple_element.cc: Change to compile-only
162 test.
163 * testsuite/20_util/tuple/tuple_element_t.cc: New.
164
165 2014-04-11 Marc Glisse <marc.glisse@inria.fr>
166
167 PR libstdc++/59434
168 * include/bits/stl_iterator.h (move_iterator::reference,
169 move_iterator::operator*): Implement LWG 2106.
170 * testsuite/24_iterators/move_iterator/dr2106.cc: New file.
171
172 2014-04-11 Marc Glisse <marc.glisse@inria.fr>
173
174 * include/std/complex (__complex_exp, pow): Specify the template
175 parameter in calls to std::polar, for expression templates.
176
177 2014-04-10 Andreas Schwab <schwab@suse.de>
178
179 * config/abi/post/alpha-linux-gnu/baseline_symbols.txt: Remove TLS
180 symbols.
181 * config/abi/post/m68k-linux-gnu/baseline_symbols.txt: Likewise.
182 * config/abi/post/mips64-linux-gnu/baseline_symbols.txt: Likewise.
183
184 * config/abi/post/ia64-linux-gnu/baseline_symbols.txt: Update.
185
186 2014-04-07 Jonathan Wakely <jwakely@redhat.com>
187
188 * testsuite/20_util/exchange/1.cc: Add missing return statements.
189 * testsuite/20_util/pair/40925.cc: Avoid most vexing parse.
190 * testsuite/22_locale/codecvt_byname/50714.cc: Add missing exception
191 specifications.
192
193 2014-04-02 Dominique d'Humieres <dominiq@lps.ens.fr>
194 Jack Howarth <howarth@bromo.med.uc.edu>
195
196 PR target/54407
197 * testsuite/30_threads/condition_variable/54185.cc: Skip for
198 darwin < 11.
199
200 2014-04-01 Jonathan Wakely <jwakely@redhat.com>
201
202 * doc/xml/manual/backwards_compatibility.xml (backwards.third.headers):
203 Update link.
204 * doc/xml/manual/policy_data_structures_biblio.xml (bibliography):
205 Fix broken links.
206 * doc/xml/manual/shared_ptr.xml (shared_ptr.impl): Likewise.
207 * doc/xml/manual/using_exceptions.xml (bibliography): Likewise.
208 * doc/xml/manual/concurrency_extensions.xml
209 (manual.ext.concurrency.impl.atomic_fallbacks): Likewise.
210 * doc/html/*: Regenerate.
211
212 2014-03-31 Lars Gullik Bjønnes <larsbj@gullik.org>
213 Jonathan Wakely <jwakely@redhat.com>
214
215 PR libstdc++/60270
216 * include/std/iomanip (_Quoted_string operator>>): Do not clear
217 string if input is not quoted.
218 * testsuite/27_io/manipulators/standard/char/60270.cc: New.
219
220 2014-03-31 Jonathan Wakely <jwakely@redhat.com>
221
222 * libsupc++/eh_ptr.cc: Improve static_assert messages.
223
224 2014-03-31 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
225
226 * testsuite/18_support/exception_ptr/60612-terminate.cc
227 (terminate, f): Wrap in _GLIBCXX_USE_C99.
228 * testsuite/18_support/exception_ptr/60612-unexpected.cc: Likewise.
229
230 2014-03-27 Jonathan Wakely <jwakely@redhat.com>
231
232 * doc/xml/manual/io.xml (std.io.objects): Additional markup.
233
234 * doc/xml/faq.xml (faq): Refer to clauses instead of chapters.
235 * doc/xml/manual/appendix_contributing.xml (contrib.design_notes):
236 Likewise.
237 * doc/xml/manual/backwards_compatibility.xml (backwards.third):
238 Likewise.
239 * doc/xml/manual/test.xml (test.organization.layout): Likewise.
240
241 * doc/xml/manual/containers.xml (associative.bitset.size_variable):
242 Fix bad s/part/chapter/ substitutions.
243 * doc/xml/manual/io.xml (std.io): Likewise.
244 * doc/xml/manual/numerics.xml (std.numerics.generalized_ops): Likewise.
245 * doc/xml/manual/strings.xml (strings.string.Cstring): Likewise.
246
247 * doc/html/*: Regenerate.
248
249 2014-03-27 Jonathan Wakely <jwakely@redhat.com>
250
251 PR libstdc++/60612
252 * libsupc++/eh_ptr.cc: Assert __cxa_dependent_exception layout is
253 compatible with __cxa_exception.
254 * libsupc++/unwind-cxx.h (__cxa_dependent_exception): Add padding.
255 Fix typos in comments.
256 * testsuite/18_support/exception_ptr/60612-terminate.cc: New.
257 * testsuite/18_support/exception_ptr/60612-unexpected.cc: New.
258
259 2014-03-25 Jonathan Wakely <jwakely@redhat.com>
260
261 PR libstdc++/60658
262 * include/bits/atomic_base.h (__atomic_base<_PTp*>::is_lock_free()):
263 Use sizeof pointer type not the element type.
264 * testsuite/29_atomics/atomic/60658.cc: New.
265
266 2014-03-24 Jakub Jelinek <jakub@redhat.com>
267
268 * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt: Update.
269 * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Likewise.
270 * config/abi/post/s390-linux-gnu/baseline_symbols.txt: Likewise.
271 * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Likewise.
272 * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Likewise.
273 * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Likewise.
274 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
275 * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Likewise.
276 * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Likewise.
277 * config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Remove TLS
278 entries.
279
280 2014-03-23 John David Anglin <danglin@gcc.gnu.org>
281
282 * testsuite/23_containers/bitset/45713.cc: Skip compile on hppa*64*-*-*.
283
284 2014-03-23 François Dumont <fdumont@gcc.gnu.org>
285
286 * include/bits/hashtable.h (_Hashtable(allocator_type)): Fix call
287 to delegated constructor.
288 (_Hashtable(size_type, _H1, key_equal, allocator_type)): Likewise.
289 (_Hashtable<_It>(_It, _It, size_type, _H1, key_equal, allocator_type)):
290 Likewise.
291 (_Hashtable(
292 initializer_list, size_type, _H1, key_equal, allocator_type)): Likewise.
293
294 2014-03-23 John David Anglin <danglin@gcc.gnu.org>
295
296 PR libstdc++/60623
297 * config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Update.
298
299 2014-03-21 Jonathan Wakely <jwakely@redhat.com>
300
301 PR libstdc++/60587
302 * include/debug/functions.h (_Is_contiguous_sequence): Define.
303 (__foreign_iterator): Accept additional iterator. Do not dispatch on
304 iterator category.
305 (__foreign_iterator_aux2): Likewise. Add overload for iterators
306 from different types of debug container. Use _Is_contiguous_sequence
307 instead of is_lvalue_reference.
308 (__foreign_iterator_aux3): Accept additional iterator. Avoid
309 dereferencing past-the-end iterator.
310 (__foreign_iterator_aux4): Use const value_type* instead of
311 potentially user-defined const_pointer type.
312 * include/debug/macros.h (__glibcxx_check_insert_range): Fix comment
313 and pass end iterator to __gnu_debug::__foreign_iterator.
314 (__glibcxx_check_insert_range_after): Likewise.
315 (__glibcxx_check_max_load_factor): Fix comment.
316 * include/debug/vector (_Is_contiguous_sequence): Define partial
317 specializations.
318 * testsuite/23_containers/vector/debug/57779_neg.cc: Remove
319 -std=gnu++11 option and unused header.
320 * testsuite/23_containers/vector/debug/60587.cc: New.
321 * testsuite/23_containers/vector/debug/60587_neg.cc: New.
322
323 2014-03-20 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
324
325 * crossconfig.m4: Support spu-*-elf* targets.
326 * configure: Regenerate.
327
328 2014-03-18 Jonathan Wakely <jwakely@redhat.com>
329
330 PR libstdc++/60564
331 * include/std/future (__future_base::_Task_state<>): Change
332 constructors to template functions using perfect forwarding.
333 (__create_task_state): Use decayed type as stored task.
334 (packaged_task::packaged_task(_Fn&&)): Forward instead of moving.
335 * testsuite/30_threads/packaged_task/60564.cc: New.
336
337 2014-03-16 François Dumont <fdumont@gcc.gnu.org>
338
339 * scripts/create_testsuite_files: Add testsuite/experimental in
340 the list of folders to search for tests.
341
342 2014-03-15 Andreas Schwab <schwab@linux-m68k.org>
343
344 * config/abi/post/m68k-linux-gnu/baseline_symbols.txt: New file.
345
346 2014-03-15 Tim Shen <timshen91@gmail.com>
347
348 * include/bits/regex.h: Add/modify comments.
349 * include/bits/regex_compiler.h: Likewise.
350 * include/bits/regex_executor.h: Likewise.
351 * include/bits/regex_executor.tcc: Likewise.
352 * include/bits/regex_scanner.h: Likewise.
353
354 2014-03-14 Jonathan Wakely <jwakely@redhat.com>
355
356 PR ipa/58721
357 * config/abi/pre/gnu.ver (GLIBCXX_3.4.11): Remove unused pattern for
358 _ZNSt12system_errorC* symbols which are not exported on any target.
359
360 2014-03-12 Roland McGrath <mcgrathr@google.com>
361 Mark Seaborn <mseaborn@google.com>
362
363 PR libstdc++/59392
364 * libsupc++/eh_call.cc (__cxa_call_unexpected): Call __do_catch with
365 the address of a null pointer, not with a null pointer to pointer.
366 Copy comment for this case from eh_personality.cc:__cxa_call_unexpected.
367 * testsuite/18_support/bad_exception/59392.cc: New file.
368
369 2014-03-11 Jonathan Wakely <jwakely@redhat.com>
370
371 PR libstdc++/60499
372 * include/debug/forward_list (forward_list::operator=(forward_list&&)):
373 Uglify name.
374 * include/debug/map (map::operator=(map&&)): Likewise.
375 * include/debug/multimap (multimap::operator=(multimap&&)): Likewise.
376 * include/debug/multiset (multiset::operator=(multiset&&)): Likewise.
377 * include/debug/set (set::operator=(set&&)): Likewise.
378 * include/debug/unordered_map
379 (unordered_map::operator=(unordered_map&&)): Likewise.
380 (unordered_multimap::operator=(unordered_multimap&&)): Likewise.
381 * include/debug/unordered_set
382 (unordered_set::operator=(unordered_set&&)): Likewise.
383 (unordered_multiset::operator=(unordered_multiset&&)): Likewise.
384 * include/debug/vector (vector::operator=(vector&&)): Likewise.
385 * testsuite/23_containers/forward_list/debug/60499.cc: New
386 * testsuite/23_containers/map/debug/60499.cc: New
387 * testsuite/23_containers/multimap/debug/60499.cc: New
388 * testsuite/23_containers/multiset/debug/60499.cc: New
389 * testsuite/23_containers/set/debug/60499.cc: New
390 * testsuite/23_containers/unordered_map/debug/60499.cc: New
391 * testsuite/23_containers/unordered_multimap/debug/60499.cc: New
392 * testsuite/23_containers/unordered_multiset/debug/60499.cc: New
393 * testsuite/23_containers/unordered_set/debug/60499.cc: New
394 * testsuite/23_containers/vector/debug/60499.cc: New
395
396 2014-03-05 Ed Smith-Rowland <3dw4rd@verizon.net>
397
398 * doc/xml/manual/status_cxx2014.xml: Add new items and latest papers
399 for filesystem and fundamentals TS work items.
400
401 2014-03-04 Paolo Carlini <paolo.carlini@oracle.com>
402
403 PR c++/60376
404 * testsuite/29_atomics/headers/atomic/types_std_c++0x_neg.cc:
405 Adjust dg-error directives.
406
407 2014-02-26 Tim Shen <timshen91@gmail.com>
408
409 * include/bits/regex.tcc (match_results<>::format,
410 regex_replace<>): Update __out after calling std::copy.
411 * testsuite/28_regex/algorithms/regex_replace/char/dr2213.cc:
412 Add testcase.
413 * testsuite/28_regex/match_results/format.cc: Likewise.
414
415 2014-02-22 Marc Glisse <marc.glisse@inria.fr>
416
417 PR libstdc++/60308
418 * include/bits/stl_deque.h (_Deque_base::_Deque_base(const
419 allocator_type&)): Remove redundant call to _M_initialize_map.
420 (deque::deque(const allocator_type&)): Initialize _Base with a
421 constructor that calls _M_initialize_map.
422
423 Partial revert:
424
425 2013-09-20 Marc Glisse <marc.glisse@inria.fr>
426 PR libstdc++/58338
427 (_Deque_base) [_Deque_base(const allocator_type&)]: Add missing call to
428 _M_initialize_map.
429
430 2014-02-21 Ed Smith-Rowland <3dw4rd@verizon.net>
431
432 Rename testsuite directory shared_mutex to shared_timed_mutex
433 for consistency.
434 * testsuite/30_threads/shared_mutex: Moved to...
435 * testsuite/30_threads/shared_timed_mutex: ...here
436
437 2014-02-20 Ed Smith-Rowland <3dw4rd@verizon.net>
438
439 Rename shared_mutex to shared_timed_mutex per C++14 acceptance of N3891.
440 * include/std/shared_mutex: Rename shared_mutex to shared_timed_mutex.
441 * testsuite/30_threads/shared_lock/locking/2.cc: Ditto.
442 * testsuite/30_threads/shared_lock/locking/4.cc: Ditto.
443 * testsuite/30_threads/shared_lock/locking/1.cc: Ditto.
444 * testsuite/30_threads/shared_lock/locking/3.cc: Ditto.
445 * testsuite/30_threads/shared_lock/requirements/
446 explicit_instantiation.cc: Ditto.
447 * testsuite/30_threads/shared_lock/requirements/typedefs.cc: Ditto.
448 * testsuite/30_threads/shared_lock/cons/2.cc: Ditto.
449 * testsuite/30_threads/shared_lock/cons/4.cc: Ditto.
450 * testsuite/30_threads/shared_lock/cons/1.cc: Ditto.
451 * testsuite/30_threads/shared_lock/cons/6.cc: Ditto.
452 * testsuite/30_threads/shared_lock/cons/3.cc: Ditto.
453 * testsuite/30_threads/shared_lock/cons/5.cc: Ditto.
454 * testsuite/30_threads/shared_lock/modifiers/2.cc: Ditto.
455 * testsuite/30_threads/shared_lock/modifiers/1.cc: Ditto.
456 * testsuite/30_threads/shared_mutex/requirements/
457 standard_layout.cc: Ditto.
458 * testsuite/30_threads/shared_mutex/cons/copy_neg.cc: Ditto.
459 * testsuite/30_threads/shared_mutex/cons/1.cc: Ditto.
460 * testsuite/30_threads/shared_mutex/cons/assign_neg.cc: Ditto.
461 * testsuite/30_threads/shared_mutex/try_lock/2.cc: Ditto.
462 * testsuite/30_threads/shared_mutex/try_lock/1.cc: Ditto.
463
464 2014-02-10 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
465
466 * testsuite/22_locale/num_put/put/char/14220.cc: Don't xfail
467 execution on i?86-*-solaris2.9, remove comment.
468 * testsuite/22_locale/num_put/put/wchar_t/14220.cc: Likewise.
469
470 2014-02-09 Richard Sandiford <rdsandiford@googlemail.com>
471
472 * config/abi/post/mips64-linux-gnu/32/baseline_symbols.txt: New file.
473 * config/abi/post/mips64-linux-gnu/baseline_symbols.txt: Update.
474 * config/abi/post/mips64-linux-gnu/64/baseline_symbols.txt: Likewise.
475
476 2014-01-29 Jonathan Wakely <jwakely@redhat.com>
477
478 * include/bits/alloc_traits.h (allocator_traits::_S_allocate): Do
479 not use varargs when argument could be non-POD.
480 (__alloctr_rebind_helper): Eliminate static const bool member by
481 using true_type and false_type.
482 (allocator_traits::__allocate_helper): Likewise.
483 (allocator_traits::__construct_helper): Likewise.
484 (allocator_traits::__destroy_helper): Likewise.
485 (allocator_traits::__maxsize_helper): Likewise.
486 (allocator_traits::__select_helper): Likewise.
487 * include/bits/ptr_traits.h (__ptrtr_rebind_helper): Likewise.
488 * include/bits/stl_tree.h (_Rb_tree::operator=(const _Rb_tree&)):
489 Remove redundant condition.
490 * include/bits/stl_vector.h (vector::operator=(const vector&)):
491 Likewise.
492 (_Vector_impl::_M_allocate, _Vector_impl::_M_deallocate): Use
493 indirection through __alloc_traits.
494 * include/ext/alloc_traits.h (__allocator_always_compares_equal):
495 Eliminate static const bool members by using true_type and false_type.
496 (__gnu_cxx::__alloc_traits::__is_custom_pointer): Optimize.
497 * testsuite/util/testsuite_allocator.h (PointerBase): Define.
498 * testsuite/20_util/allocator_traits/members/allocate_hint_nonpod.cc:
499 New.
500 * testsuite/20_util/allocator_traits/requirements/typedefs2.cc: New.
501
502 PR libstdc++/59829
503 * include/bits/stl_vector.h (vector::data()): Call _M_data_ptr.
504 (vector::_M_data_ptr): New overloaded functions to ensure empty
505 vectors do not dereference the pointer.
506 * testsuite/23_containers/vector/59829.cc: New.
507 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
508 Adjust dg-error line number.
509 * testsuite/23_containers/vector/requirements/dr438/
510 constructor_1_neg.cc: Likewise.
511 * testsuite/23_containers/vector/requirements/dr438/
512 constructor_2_neg.cc: Likewise.
513 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
514 Likewise.
515
516 PR libstdc++/21609
517 * include/ext/array_allocator.h: Add deprecated attribute.
518
519 PR libstdc++/57226
520 * doc/xml/manual/debug.xml (debug.gdb): Update documentation for
521 installation and use of python printers.
522 * doc/xml/manual/status_cxx2011.xml: Update.
523 * doc/html/*: Regenerate.
524
525 2014-01-28 Jonathan Wakely <jwakely@redhat.com>
526 Kyle Lippincott <spectral@google.com>
527
528 PR libstdc++/59656
529 * include/bits/shared_ptr.h (shared_ptr): Add new non-throwing
530 constructor and grant friendship to weak_ptr.
531 (weak_ptr::lock()): Use new constructor.
532 * include/bits/shared_ptr_base.h
533 (_Sp_counted_base::_M_add_ref_lock_nothrow()): Declare new function
534 and define specializations.
535 (__shared_count): Add new non-throwing constructor.
536 (__shared_ptr): Add new non-throwing constructor and grant friendship
537 to __weak_ptr.
538 (__weak_ptr::lock()): Use new constructor.
539 * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust dg-error.
540 * testsuite/20_util/shared_ptr/cons/void_neg.cc: Likewise.
541
542 2014-01-27 Jonathan Wakely <jwakely@redhat.com>
543
544 PR libstdc++/59215
545 * include/bits/shared_ptr_base.h
546 (_Sp_counted_base<_S_atomic>::_M_add_ref_lock()): Use relaxed atomic
547 load.
548
549 2014-01-27 Jason Merrill <jason@redhat.com>
550
551 Core DR 475
552 PR c++/41174
553 PR c++/59224
554 * libsupc++/eh_throw.cc (__cxa_throw): Set uncaughtExceptions.
555 * libsupc++/eh_alloc.cc (__cxa_allocate_dependent_exception)
556 (__cxa_allocate_exception): Don't set it here.
557
558 2014-01-26 Jonathan Wakely <jwakely@redhat.com>
559
560 * include/bits/stl_map.h: Remove anachronistic comment.
561 * include/bits/stl_multimap.h: Add whitespace.
562 * testsuite/23_containers/map/modifiers/emplace/1.cc: Use
563 -std=gnu++11 instead of -std=c++11.
564 * testsuite/23_containers/map/operators/2.cc: Likewise.
565 * testsuite/23_containers/multimap/modifiers/emplace/1.cc: Likewise.
566 * testsuite/23_containers/multiset/modifiers/emplace/1.cc: Likewise.
567 * testsuite/23_containers/set/modifiers/emplace/1.cc: Likewise.
568
569 * acinclude.m4 (GLIBCXX_ENABLE_C99): Fix typo.
570 * configure: Regenerate.
571
572 2014-01-24 Ed Smith-Rowland <3dw4rd@verizon.net>
573
574 PR libstdc++/59531
575 * testsuite/experimental/string_view/operations/copy/char/1.cc: New.
576 * testsuite/experimental/string_view/operations/copy/wchar_t/1.cc: New.
577
578 2014-01-24 Ed Smith-Rowland <3dw4rd@verizon.net>
579 Peter A. Bigot <pab@pabigot.com>
580
581 PR libstdc++/59531
582 * include/experimental/string_view
583 (copy(_CharT*, size_type, size_type) const): Correct throw string.
584 Correct copy start location.
585
586 2014-01-24 Ed Smith-Rowland <3dw4rd@verizon.net>
587 Peter A. Bigot <pab@pabigot.com>
588
589 PR libstdc++/59530
590 * include/experimental/string_view (operator[](size_type) const):
591 Fix one-off index error in debug check.
592 * testsuite/experimental/string_view/element_access/char/1.cc: Don't
593 test basic_string_view at size().
594 * testsuite/experimental/string_view/element_access/wchar_t/1.cc: Ditto.
595
596 2014-01-24 Ed Smith-Rowland <3dw4rd@verizon.net>
597 Peter A. Bigot <pab@pabigot.com>
598
599 PR libstdc++/59529
600 * include/experimental/string_view
601 (basic_string_view(const _CharT*, size_type)): Don't care if len == 0.
602 * testsuite/experimental/string_view/operations/substr/char/1.cc:
603 Comment out catch of out_of_range; No terminating null
604 in basic_string_view. Check begin == end.
605 * testsuite/experimental/string_view/operations/substr/wchar_t/1.cc:
606 Ditto.
607
608 2014-01-24 Jonathan Wakely <jwakely@redhat.com>
609
610 PR libstdc++/59548
611 * include/debug/safe_base.h (_Safe_sequence_base): Define copy
612 constructor to prevent it being implicitly defined as deleted, but
613 do not copy anything.
614 * include/debug/safe_unordered_base.h (_Safe_unordered_container_base):
615 Define copy and move constructors similar to _Safe_sequence_base's.
616 * testsuite/23_containers/unordered_map/59548.cc: New.
617
618 2014-01-23 Bernhard Reutner-Fischer <aldot@gcc.gnu.org>
619 Steve Ellcey <sellcey@mips.com>
620
621 * acinclude.m4 (GLIBCXX_CHECK_TMPNAM): New check for tmpnam
622 function.
623 * configure.ac: Use GLIBCXX_CHECK_TMPNAM.
624 * (configure, config.h.in): Regenerate.
625 * include/c_global/cstdio: Guard ::tmpnam with _GLIBCXX_USE_TMPNAM
626
627 2014-01-23 Jonathan Wakely <jwakely@redhat.com>
628
629 * doc/xml/faq.xml (a-how_to_set_paths): Expand FAQ answer.
630 * doc/xml/manual/abi.xml (abi.versioning.history): Correct symver.
631
632 PR libstdc++/59872
633 * include/bits/stl_map.h (map::operator=(map&&)): Fix comment.
634 * include/bits/stl_multimap.h (multimap::operator=(multimap&&)):
635 Likewise.
636 * include/bits/stl_multiset.h (multiset::operator=(multiset&&)):
637 Likewise.
638 * include/bits/stl_set.h (set::operator=(set&&)): Likewise.
639 * include/bits/stl_tree.h (_Rb_tree::_M_move_data): New overloaded
640 functions to perform moving or copying of elements from rvalue tree.
641 (_Rb_tree::_Rb_tree(_Rb_tree&&)): Use _M_move_data.
642 (_Rb_tree::_Rb_tree(_Rb_tree&&, _Node_allocator&&)): Likewise.
643 * testsuite/23_containers/map/59872.cc: New.
644 * testsuite/23_containers/map/56613.cc: Remove duplicate include.
645
646 2014-01-22 Jonathan Wakely <jwakely@redhat.com>
647
648 * include/bits/stl_deque.h (_Deque_impl): Move comment.
649
650 PR libstdc++/58764
651 * include/bits/stl_deque.h (deque::deque(const allocator_type&):
652 Split into separate default constructor and constructor taking
653 allocator.
654 * include/bits/stl_list.h (list::list(const allocator_type&): Likewise.
655 * include/bits/stl_vector.h (vector::vector(const allocator_type&):
656 Likewise.
657 * include/debug/deque (deque::deque(const allocator_type&)): Likewise.
658 * include/debug/list (list::list(const _Allocator&)): Likewise.
659 * include/debug/map.h (map::map(const _Compare&, const _Allocator&)):
660 Likewise.
661 * include/debug/multimap.h
662 (multimap::multimap(const _Compare&, const _Allocator&)): Likewise.
663 * include/debug/set.h (set::set(const _Compare&, const _Allocator&)):
664 Likewise.
665 * include/debug/multiset.h
666 (multiset::multiset(const _Compare&, const _Allocator&)): Likewise.
667 * include/debug/vector (vector::vector(const allocator_type&)):
668 Likewise.
669 * include/profile/deque (deque::deque(const _Allocator&)): Likewise.
670 * include/profile/list (list::list(const _Allocator&)): Likewise.
671 * include/profile/map.h
672 (map::map(const _Compare&, const _Allocator&)): Likewise.
673 * include/profile/multimap.h
674 (multimap::multimap(const _Compare&, const _Allocator&)): Likewise.
675 * include/profile/set.h
676 (set::set(const _Compare&, const _Allocator&)): Likewise.
677 * include/profile/multiset.h
678 (multiset::multiset(const _Compare&, const _Allocator&)): Likewise.
679 * include/profile/vector (vector::vector(const _Allocator&)):
680 Likewise.
681 * testsuite/23_containers/deque/58764.cc: New.
682 * testsuite/23_containers/list/58764.cc: New.
683 * testsuite/23_containers/map/58764.cc: New.
684 * testsuite/23_containers/multimap/58764.cc: New.
685 * testsuite/23_containers/set/58764.cc: New.
686 * testsuite/23_containers/multiset/58764.cc: New.
687 * testsuite/23_containers/vector/58764.cc: New.
688 * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
689 Adjust dg-error line number.
690 * testsuite/23_containers/deque/requirements/dr438/
691 constructor_1_neg.cc: Likewise.
692 * testsuite/23_containers/deque/requirements/dr438/
693 constructor_2_neg.cc: Likewise.
694 * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
695 Likewise.
696 * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
697 Likewise.
698 * testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc:
699 Likewise.
700 * testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc:
701 Likewise.
702 * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
703 Likewise.
704 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
705 Likewise.
706 * testsuite/23_containers/vector/requirements/dr438/
707 constructor_1_neg.cc: Likewise.
708 * testsuite/23_containers/vector/requirements/dr438/
709 constructor_2_neg.cc: Likewise.
710 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
711 Likewise.
712
713 PR libstdc++/58764 (again)
714 * include/bits/stl_list.h (list): Make default constructor's exception
715 specification conditional.
716 * include/bits/stl_vector.h (vector): Likewise.
717 * testsuite/util/testsuite_allocator.h (SimpleAllocator): Add noexcept
718 to default constructor.
719 * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
720 Adjust dg-error line number.
721 * testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc:
722 Likewise.
723 * testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc:
724 Likewise.
725 * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
726 Likewise.
727 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
728 Likewise.
729 * testsuite/23_containers/vector/requirements/dr438/
730 constructor_1_neg.cc: Likewise.
731 * testsuite/23_containers/vector/requirements/dr438/
732 constructor_2_neg.cc: Likewise.
733 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
734 Likewise.
735
736 2014-01-21 Tim Shen <timshen91@gmail.com>
737
738 * include/bits/regex.tcc: Remove incorrect `nosubs` handling.
739 * include/bits/regex_scanner.tcc: Handle `nosubs` correctly.
740 * testsuite/28_regex/constants/syntax_option_type.cc: Add a test case.
741
742 2014-01-21 Jonathan Wakely <jwakely@redhat.com>
743
744 PR libstdc++/56267
745 * include/bits/hashtable.h (__cache_default): Do not depend on
746 whether the hash function is DefaultConstructible or CopyAssignable.
747 (_Hashtable): Adjust static assertions.
748 * doc/xml/manual/containers.xml (containers.unordered.cache): Update.
749 * testsuite/23_containers/unordered_set/instantiation_neg.cc: Adjust
750 dg-error line number.
751 * testsuite/23_containers/unordered_set/
752 not_default_constructible_hash_neg.cc: Remove.
753
754 2014-01-20 François Dumont <fdumont@gcc.gnu.org>
755
756 * scripts/create_testsuite_files: Add testsuite/experimental in
757 the list of folders to search for tests.
758 * include/experimental/string_view
759 (basic_string_view<>::operator[]): Comment _GLIBCXX_DEBUG_ASSERT,
760 incompatible with constexpr qualifier.
761 (basic_string_view<>::front()): Likewise.
762 (basic_string_view<>::back()): Likewise.
763 * testsuite/experimental/string_view/element_access/wchar_t/2.cc:
764 Merge dg-options directives into one.
765 * testsuite/experimental/string_view/element_access/char/2.cc:
766 Likewise. Remove invalid experimental namespace scope on
767 string_view_type.
768
769 2014-01-20 Jonathan Wakely <jwakely@redhat.com>
770
771 PR libstdc++/56267
772 * include/bits/hashtable_policy.h (_Hash_code_base<... false>): Grant
773 friendship to _Local_iterator_base<..., false>.
774 (_Local_iterator_base): Give protected access to all existing members.
775 (_Local_iterator_base::_M_curr()): New public accessor.
776 (_Local_iterator_base::_M_get_bucket()): New public accessor.
777 (_Local_iterator_base<..., false>::_M_init()): New function to manage
778 the lifetime of the _Hash_code_base explicitly.
779 (_Local_iterator_base<..., false>::_M_destroy()): Likewise.
780 (_Local_iterator_base<..., false>): Define copy constructor and copy
781 assignment operator that use new functions to manage _Hash_code_base.
782 (operator==(const _Local_iterator_base&, const _Local_iterator_base&),
783 operator==(const _Local_iterator_base&, const _Local_iterator_base&)):
784 Use public API for _Local_iterator_base.
785 * include/debug/safe_local_iterator.h (_Safe_local_iterator): Likewise.
786 * include/debug/unordered_map (__debug::unordered_map::erase(),
787 __debug::unordered_multimap::erase()): Likewise.
788 * include/debug/unordered_set (__debug::unordered_set::erase(),
789 __debug::unordered_multiset::erase()): Likewise.
790 * testsuite/23_containers/unordered_set/56267-2.cc: New test.
791
792 2014-01-19 Tim Shen <timshen91@gmail.com>
793
794 * include/bits/regex_compiler.h (_Comipler<>::_M_quantifier()):
795 Fix parse error of multiple consecutive quantifiers like "a**".
796 * include/bits/regex_compiler.tcc (_Comipler<>::_M_quantifier()):
797 Likewise.
798 * testsuite/28_regex/basic_regex/multiple_quantifiers.cc: New.
799
800 2014-01-17 François Dumont <fdumont@gcc.gnu.org>
801
802 * include/profile/set.h (set): Implement C++11 allocator-aware
803 container requirements.
804 * include/profile/map.h (map): Likewise.
805 * include/profile/multiset.h (multiset): Likewise.
806 * include/profile/multimap.h (multimap): Likewise.
807 * include/profile/set.h
808 (set::operator=(const set&)): Define as default in C++11 mode.
809 (set::operator=(set&&)): Likewise.
810 * include/profile/map.h
811 (map::operator=(const map&)): Likewise.
812 (map::operator=(map&&)): Likewise.
813 * include/profile/multiset.h
814 (multiset::operator=(const multiset&)): Likewise.
815 (multiset::operator=(multiset&&)): Likewise.
816 * include/profile/multimap.h
817 (multimap::operator=(const multimap&)): Likewise.
818 (multimap::operator=(multimap&&)): Likewise.
819 * include/profile/set.h (set::operator=(std::initializer_list<>)):
820 Rely on the same operator from normal mode.
821 * include/profile/map.h (map::operator=(std::initializer_list<>)):
822 Likewise.
823 * include/profile/multiset.h
824 (multiset::operator=(std::initializer_list<>)): Likewise.
825 * include/profile/multimap.h
826 (multimap::operator=(std::initializer_list<>)): Likewise.
827 * include/profile/set.h (set::swap(set&)): Add noexcept
828 specification.
829 * include/profile/map.h (map::swap(map&)): Likewise.
830 * include/profile/multiset.h (multiset::swap(multiset&)): Likewise.
831 * include/profile/multimap.h (multimap::swap(multimap&)): Likewise.
832
833 2014-01-17 Tim Shen <timshen91@gmail.com>
834
835 * include/bits/regex_automaton.tcc (_StateSeq<>::_M_clone()): Do not
836 use std::map.
837 * include/bits/regex_automaton.h: Do not use std::set.
838 * include/bits/regex_compiler.h (_BracketMatcher<>::_M_add_char(),
839 _BracketMatcher<>::_M_add_collating_element(),
840 _BracketMatcher<>::_M_add_equivalence_class(),
841 _BracketMatcher<>::_M_make_range()): Likewise.
842 * include/bits/regex_compiler.tcc (_BracketMatcher<>::_M_apply()):
843 Likewise.
844 * include/bits/regex_executor.h: Do not use std::queue.
845 * include/bits/regex_executor.tcc (_Executor<>::_M_main(),
846 _Executor<>::_M_dfs()): Likewise.
847 * include/std/regex: Remove <map>, <set> and <queue>.
848
849 2014-01-17 Tim Shen <timshen91@gmail.com>
850
851 * include/bits/regex.h (__compile_nfa<>(), basic_regex<>::basic_regex(),
852 basic_regex<>::assign()): Change __compile_nfa to accept
853 const _CharT* only.
854 * include/bits/regex_compiler.h: Change _Compiler's template
855 argument from <_FwdIter, _TraitsT> to <_TraitsT>.
856 * include/bits/regex_compiler.tcc: Likewise.
857
858 2014-01-17 Tim Shen <timshen91@gmail.com>
859
860 * include/bits/regex_compiler.h: Change _ScannerT into char-type
861 templated.
862 * include/bits/regex_scanner.h (_Scanner<>::_Scanner()): Separate
863 _ScannerBase from _Scanner; Change _Scanner's template argument from
864 _FwdIter to _CharT. Avoid use of std::map and std::set by using arrays
865 instead.
866 * include/bits/regex_scanner.tcc (_Scanner<>::_Scanner(),
867 _Scanner<>::_M_scan_normal(), _Scanner<>::_M_eat_escape_ecma(),
868 _Scanner<>::_M_eat_escape_posix(), _Scanner<>::_M_eat_escape_awk()):
869 Likewise.
870 * include/std/regex: Add <cstring> for using strchr.
871
872 2014-01-17 Tim Shen <timshen91@gmail.com>
873
874 * bits/regex_automaton.tcc: Indentation fix.
875 * bits/regex_compiler.h (__compile_nfa<>(), _Compiler<>,
876 _RegexTranslator<> _AnyMatcher<>, _CharMatcher<>,
877 _BracketMatcher<>): Add bool option template parameters and
878 specializations to make matching more efficient and space saving.
879 * bits/regex_compiler.tcc: Likewise.
880
881 2014-01-15 François Dumont <fdumont@gcc.gnu.org>
882
883 PR libstdc++/59712
884 * include/bits/hashtable_policy.h: Fix some long lines.
885 * include/bits/hashtable.h (__hash_code_base_access): Define and
886 use it to check its _M_bucket_index noexcept qualification. Use
887 also in place of...
888 (__access_protected_ctor): ...this.
889 * testsuite/23_containers/unordered_set/instantiation_neg.cc:
890 Adapt line number.
891 * testsuite/23_containers/unordered_set/
892 not_default_constructible_hash_neg.cc: Likewise.
893
894 2014-01-13 François Dumont <fdumont@gcc.gnu.org>
895
896 * include/debug/set.h (set): Implement C++11 allocator-aware
897 container requirements.
898 * include/debug/map.h (map): Likewise.
899 * include/debug/multiset.h (multiset): Likewise.
900 * include/debug/multimap.h (multimap): Likewise.
901 * include/debug/set.h (set::operator=(set&&)): Add noexcept and
902 fix implementation regarding management of safe iterators.
903 * include/debug/map.h (map::operator=(map&&)): Likewise.
904 * include/debug/multiset.h (multiset::operator=(multiset&&)): Likewise.
905 * include/debug/multimap.h (multimap::operator=(multimap&&)):
906 Likewise.
907 * include/debug/set.h (set::operator=(std::initializer_list<>)):
908 Rely on the same operator from normal mode.
909 * include/debug/map.h (map::operator=(std::initializer_list<>)):
910 Likewise.
911 * include/debug/multiset.h
912 (multiset::operator=(std::initializer_list<>)): Likewise.
913 * include/debug/multimap.h
914 (multimap::operator=(std::initializer_list<>)): Likewise.
915 * include/debug/set.h (set::swap(set&)): Add noexcept
916 specification, add allocator equality check.
917 * include/debug/map.h (map::swap(map&)): Likewise.
918 * include/debug/multiset.h (multiset::swap(multiset&)): Likewise.
919 * include/debug/multimap.h (multimap::swap(multimap&)): Likewise.
920
921 2014-01-10 Jonathan Wakely <jwakely@redhat.com>
922
923 PR libstdc++/59698
924 * doc/xml/manual/status_cxx1998.xml (iso.1998.specific): Markup
925 and stylistic improvements.
926 * doc/xml/manual/codecvt.xml (std.localization.facet.codecvt): Likewise
927 and update for C++11.
928 * doc/xml/manual/ctype.xml (std.localization.facet.ctype): Likewise.
929
930 PR libstdc++/59687
931 * doc/xml/manual/backwards_compatibility.xml
932 (backwards.third.nocreate_noreplace): Correct and expand.
933
934 PR libstdc++/59699
935 * doc/xml/manual/support.xml (std.support.types.null): Update links.
936
937 2014-01-09 Jonathan Wakely <jwakely@redhat.com>
938
939 PR libstdc++/59738
940 * include/bits/stl_vector.h (vector<>::_M_move_assign): Restore
941 support for non-Movable types.
942
943 PR libstdc++/59680
944 * src/c++11/thread.cc (__sleep_for): Fix call to ::sleep.
945
946 2014-01-08 François Dumont <fdumont@gcc.gnu.org>
947
948 * include/bits/stl_vector.h (std::vector<>::_M_move_assign): Pass
949 *this allocator instance when building temporary vector instance
950 so that *this allocator does not get moved.
951 * include/debug/safe_base.h
952 (_Safe_sequence_base(_Safe_sequence_base&&)): New.
953 * include/debug/vector (__gnu_debug::vector<>(vector&&)): Use new
954 move constructor from _Safe_sequence_base.
955 (__gnu_debug::vector<>(vector&&, const allocator_type&)): Swap
956 safe iterators if the instance is moved.
957 (__gnu_debug::vector<>::operator=(vector&&)): Likewise.
958 * testsuite/23_containers/vector/allocator/move.cc (test01): Add
959 check on a vector iterator.
960 * testsuite/23_containers/vector/allocator/move_assign.cc
961 (test02): Likewise.
962 (test03): New, test with a non-propagating allocator.
963 * testsuite/23_containers/vector/debug/move_assign_neg.cc: New.
964
965 2014-01-07 Tim Shen <timshen91@gmail.com>
966
967 * include/bits/regex_compiler.h (_AnyMatcher<>::_AnyMatcher(),
968 _AnyMatcher<>::operator(), _AnyMatcher<>::_M_apply(),
969 _CharMatcher<>::_CharMatcher(), _CharMatcher<>::_M_translate(),
970 _BracketMatcher<>::_BracketMatcher(), _BracketMatcher<>::operator(),
971 _BracketMatcher<>::_M_add_char(),
972 _BracketMatcher<>::_M_add_collating_element(),
973 _BracketMatcher<>::_M_add_equivalence_class(),
974 _BracketMatcher<>::_M_add_character_class(),
975 _BracketMatcher<>::_M_make_range(), _BracketMatcher<>::_M_ready(),
976 _BracketMatcher<>::_M_apply(), _BracketMatcher<>::_M_make_cache()):
977 Fix _AnyMatcher behavior of POSIX style and move _M_flags
978 to template parameter; Add cache for _BracketMatcher. Adjust
979 declarations from here...
980 * include/bits/regex.h (basic_regex<>::imbue()): ...to here. Also,
981 imbuing a regex will trigger a recompilation to rebuild the cache.
982 * include/bits/regex_compiler.tcc (_Compiler<>::_M_atom(),
983 _Compiler<>::_M_bracket_expression()): Adjust matchers' caller for
984 different template bool parameters.
985 * include/bits/regex_executor.h: Remove unnecessary declarations.
986 * include/std/regex: Adjust including orders.
987 * testsuite/28_regex/traits/char/user_defined.cc: New.
988 * testsuite/28_regex/traits/wchar_t/user_defined.cc: New.
989
990 2014-01-07 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
991
992 * config/abi/post/solaris2.9/baseline_symbols.txt: Regenerate.
993 * config/abi/post/solaris2.9/sparcv9/baseline_symbols.txt: Likewise.
994 * config/abi/post/solaris2.10/baseline_symbols.txt: Likewise.
995 * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
996 * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.
997
998 2014-01-02 Richard Sandiford <rdsandiford@googlemail.com>
999
1000 Update copyright years
1001
1002 2014-01-02 Richard Sandiford <rdsandiford@googlemail.com>
1003
1004 * testsuite/18_support/new_handler.cc,
1005 testsuite/18_support/terminate_handler.cc,
1006 testsuite/18_support/unexpected_handler.cc: Use the standard form for
1007 the copyright notice.
1008 \f
1009 Copyright (C) 2014 Free Software Foundation, Inc.
1010
1011 Copying and distribution of this file, with or without modification,
1012 are permitted in any medium without royalty provided the copyright
1013 notice and this notice are preserved.