configure.host (abi_baseline_pair): If try_cpu is generic use host_cpu for the default.
[gcc.git] / libstdc++-v3 / ChangeLog
1 2014-09-30 Andreas Schwab <schwab@linux-m68k.org>
2
3 * configure.host (abi_baseline_pair): If try_cpu is generic use
4 host_cpu for the default.
5
6 2014-09-29 François Dumont <fdumont@gcc.gnu.org>
7
8 PR libstdc++/62313
9 * include/debug/safe_base.h
10 (_Safe_iterator_base(const _Safe_iterator_base&)): Delete declaration.
11 (_Safe_iterator_base& operator=(const _Safe_iterator_base&)): Likewise.
12 * include/debug/safe_iterator.h (_Safe_iterator<>): Move normal iterator
13 before _Safe_iterator_base in memory. Lock before modifying the iterator
14 in numerous places.
15 * include/debug/safe_local_iterator.h
16 (_Safe_local_iterator_base(const _Safe_local_iterator_base&)): Delete
17 declaration.
18 (_Safe_local_iterator_base& operator=(const _Safe_local_iterator_base&)):
19 Likewise.
20 * include/debug/safe_unordered_base.h (_Safe_local_iterator<>): Move
21 normal iterator before _Safe_iterator_base in memory. Lock before
22 modifying the iterator in numerous places.
23 * include/debug/forward_list (_Safe_forward_list<>::_M_swap_aux): Adapt.
24 * include/debug/safe_sequence.tcc
25 (_Safe_sequence<>::_M_transfer_from_if): Adapt.
26
27 2014-09-25 Jonathan Wakely <jwakely@redhat.com>
28
29 DR 1339
30 * doc/xml/manual/status_cxx2011.xml: Update.
31 * include/bits/stl_uninitialized.h (uninitialized_fill_n): Return
32 an iterator.
33 (__uninitialized_fill_n_a, __uninitialized_default_n_a): Likewise.
34 * include/bits/stl_vector.h (vector::_M_fill_initialize,
35 vector::_M_default_initialize): Use returned iterator.
36 * include/bits/vector.tcc (vector::_M_fill_assign,
37 vector::_M_fill_insert, vector::_M_default_append): Likewise.
38 * testsuite/20_util/specialized_algorithms/uninitialized_fill_n/
39 16505.cc: Adjust return type.
40 * testsuite/20_util/specialized_algorithms/uninitialized_fill_n/
41 dr1339.cc: New.
42
43 2014-09-25 Jonathan Wakely <jwakely@redhat.com>
44
45 * include/bits/vector.tcc (vector::_M_fill_assign): Use _M_swap_data.
46
47 2014-09-25 Jonathan Wakely <jwakely@redhat.com>
48
49 * testsuite/27_io/basic_ios/conv/bool_neg.cc: New.
50 * testsuite/27_io/basic_ios/conv/bool.cc: New.
51 * testsuite/27_io/basic_ios/conv/voidptr.cc: New.
52
53 * testsuite/27_io/basic_ios/conv/bool_neg.cc: Add dg-do compile.
54
55 2014-09-25 Tim Shen <timshen@google.com>
56
57 PR libstdc++/63199
58 * include/bits/regex.h (basic_regex::basic_regex, basic_regex::assign,
59 basic_regex::imbue, basic_regex::getloc, basic_regex::swap): Add
60 _M_loc for basic_regex.
61 * include/bits/regex_automaton.h: Add _M_traits for _NFA.
62 * include/bits/regex_compiler.h (_Compiler::_M_get_nfa, __compile_nfa):
63 Make _Compiler::_M_nfa heap allocated.
64 * include/bits/regex_compiler.tcc (_Compiler::_Compiler): Make
65 _Compiler::_M_nfa heap allocated.
66 * include/bits/regex_executor.h (_Executor::_M_is_word):
67 Fix accessing _M_traits.
68 * include/bits/regex_executor.tcc (_Executor::_M_dfs):
69 Fix accessing _M_traits.
70 * testsuite/28_regex/algorithms/regex_match/ecma/wchar_t/63199.cc:
71 New testcase.
72
73 2014-09-24 Jonathan Wakely <jwakely@redhat.com>
74
75 * config/abi/pre/gnu.ver: Make GLIBCXX_3.4 patterns stricter so the
76 new GLIBCXX_3.4.21 symbols don't match them.
77
78 PR libstdc++/56193
79 * config/abi/pre/gnu.ver: Add new exports.
80 * include/bits/basic_ios.h (basic_ios::operator bool): Define.
81 * src/c++98/ios_locale.cc (basic_ios::operator void*): Instantiate.
82
83 2014-09-24 François Dumont <fdumont@gcc.gnu.org>
84
85 PR libstdc++/29988
86 * include/bits/stl_tree.h (_Rb_tree_reuse_or_alloc_node<>): New.
87 (_Rb_tree_alloc_node<>): New.
88 (_Rb_tree<>::operator=(_Rb_tree<>&&)): New.
89 (_Rb_tree<>::_M_assign_unique): New.
90 (_Rb_tree<>::_M_assign_equal): New.
91 (_Rb_tree<>): Adapt to reuse allocated nodes as much as possible.
92 * include/bits/stl_map.h
93 (std::map<>::operator=(std::map<>&&)): Default implementation.
94 (std::map<>::operator=(initializer_list<>)): Adapt to use
95 _Rb_tree::_M_assign_unique.
96 * include/bits/stl_multimap.h
97 (std::multimap<>::operator=(std::multimap<>&&)): Default implementation.
98 (std::multimap<>::operator=(initializer_list<>)): Adapt to use
99 _Rb_tree::_M_assign_equal.
100 * include/bits/stl_set.h
101 (std::set<>::operator=(std::set<>&&)): Default implementation.
102 (std::set<>::operator=(initializer_list<>)): Adapt to use
103 _Rb_tree::_M_assign_unique.
104 * include/bits/stl_multiset.h
105 (std::multiset<>::operator=(std::multiset<>&&)): Default implementation.
106 (std::multiset<>::operator=(initializer_list<>)): Adapt to use
107 _Rb_tree::_M_assign_equal.
108 * testsuite/23_containers/map/allocator/copy_assign.cc (test03): New.
109 * testsuite/23_containers/map/allocator/init-list.cc: New.
110 * testsuite/23_containers/map/allocator/move_assign.cc (test03): New.
111 * testsuite/23_containers/multimap/allocator/copy_assign.cc
112 (test03): New.
113 * testsuite/23_containers/multimap/allocator/init-list.cc: New.
114 * testsuite/23_containers/multimap/allocator/move_assign.cc
115 (test03): New.
116 * testsuite/23_containers/multiset/allocator/copy_assign.cc
117 (test03): New.
118 * testsuite/23_containers/multiset/allocator/init-list.cc: New.
119 * testsuite/23_containers/multiset/allocator/move_assign.cc
120 (test03): New.
121 * testsuite/23_containers/set/allocator/copy_assign.cc (test03): New.
122 * testsuite/23_containers/set/allocator/init-list.cc: New.
123 * testsuite/23_containers/set/allocator/move_assign.cc (test03): New.
124
125 2014-09-24 Jonathan Wakely <jwakely@redhat.com>
126
127 PR libstdc++/63353
128 * src/c++11/ios.cc (ios_base::_M_swap): Fix typo.
129
130 2014-09-23 Jonathan Wakely <jwakely@redhat.com>
131
132 * config/abi/pre/gnu.ver: Adjust basic_ostream exports.
133 * include/std/istream (basic_iostream(basic_iostream&&)): Pass *this
134 to ostream constructor.
135 * include/std/ostream (basic_ostream(basic_iostream*)): Change to take
136 parameter by reference, to avoid ambiguity.
137 * testsuite/27_io/basic_ostream/cons/char/null.cc: New.
138
139 2014-09-22 Jason Merrill <jason@redhat.com>
140
141 * testsuite/Makefile.am (%/site.exp): Add @.
142 (check-DEJAGNU): Likewise.
143 * testsuite/Makefile.in: Regenerate.
144
145 2014-09-22 Jonathan Wakely <jwakely@redhat.com>
146
147 * include/bits/stl_queue.h: Include missing header.
148 * include/bits/stl_stack.h: Likewise.
149 * testsuite/23_containers/priority_queue/requirements/
150 uses_allocator.cc: New.
151 * testsuite/23_containers/queue/requirements/uses_allocator.cc: New.
152 * testsuite/23_containers/stack/requirements/uses_allocator.cc: New.
153
154 2014-09-22 Jonathan Wakely <jwakely@redhat.com>
155
156 * doc/xml/manual/status_cxx2011.xml: Update C++11 status.
157 * doc/xml/manual/status_cxx2014.xml: Update TS status.
158 * doc/html/manual/status.html: Regenerate.
159
160 2014-09-22 Jonathan Wakely <jwakely@redhat.com>
161
162 * include/std/mutex (try_lock): Do not swallow exceptions.
163 * testsuite/30_threads/try_lock/4.cc: Fix test.
164
165 2014-09-22 Jonathan Wakely <jwakely@redhat.com>
166
167 PR libstdc++/54316
168 PR libstdc++/53626
169 * config/abi/pre/gnu.ver: Add new exports.
170 * config/io/basic_file_stdio.h (__basic_file): Support moving and
171 swapping.
172 * include/bits/basic_ios.h (basic_ios::move, basic_ios::swap):
173 Likewise.
174 * include/bits/ios_base.h (ios_base::_M_move, ios_base::_M_swap):
175 Likewise.
176 * include/bits/fstream.tcc (basic_filebuf): Likewise.
177 * include/bits/move.h (__exchange): Define for C++11 mode.
178 * include/ext/stdio_filebuf.h (stdio_filebuf): Support moving and
179 swapping.
180 * include/ext/stdio_sync_filebuf.h (stdio_sync_filebuf): Likewise.
181 * include/std/fstream (basic_filebuf, basic_ifstream, basic_ofstream,
182 basic_fstream): Likewise.
183 * include/std/ios: Remove whitespace.
184 * include/std/istream (basic_istream, basic_iostream): Support moving
185 and swapping.
186 * include/std/ostream (basic_ostream): Likewise.
187 * include/std/sstream (basic_stringbuf, basic_istringstream,
188 basic_ostringstream, basic_stringstream): Likewise.
189 * include/std/streambuf (basic_streambuf): Do not default copy
190 constructor and assignment on first declaration.
191 * include/std/utility (exchange): Forward to __exchange.
192 * testsuite/27_io/basic_filebuf/cons/char/copy_neg.cc: New.
193 * src/c++11/Makefile.am: Add stream-related files.
194 * src/c++11/Makefile.in: Regenerate.
195 * src/c++11/ext11-inst.cc (stdio_filebuf, stdio_sync_filebuf):
196 New file for explicit instantiation definitions.
197 * src/c++11/ios.cc: Move from src/c++98 to here.
198 (ios_base::_M_move, ios_base::_M_swap): Define.
199 * src/c++11/ios-inst.cc: Move from src/c++98 to here.
200 * src/c++11/iostream-inst.cc: Likewise.
201 * src/c++11/istream-inst.cc: Likewise.
202 * src/c++11/ostream-inst.cc: Likewise.
203 * src/c++11/sstream-inst.cc: Likewise.
204 * src/c++11/streambuf-inst.cc: Likewise.
205 * src/c++98/Makefile.am: Remove stream-related files.
206 * src/c++98/Makefile.in: Regenerate.
207 * src/c++98/ext-inst.cc (stdio_filebuf): Remove explicit
208 instantiations.
209 * src/c++98/misc-inst.cc (stdio_sync_filebuf): Likewise.
210 * src/c++98/ios-inst.cc: Move to src/c++11/.
211 * src/c++98/ios.cc: Move to src/c++11/.
212 * src/c++98/iostream-inst.cc: Likewise.
213 * src/c++98/istream-inst.cc: Likewise.
214 * src/c++98/ostream-inst.cc: Likewise.
215 * src/c++98/sstream-inst.cc: Likewise.
216 * src/c++98/streambuf-inst.cc: Likewise.
217 * testsuite/27_io/basic_filebuf/cons/char/copy_neg.cc: New.
218 * testsuite/27_io/basic_fstream/cons/move.cc: New.
219 * testsuite/27_io/basic_fstream/assign/1.cc: New.
220 * testsuite/27_io/basic_ifstream/cons/move.cc: New.
221 * testsuite/27_io/basic_ifstream/assign/1.cc: New.
222 * testsuite/27_io/basic_istringstream/assign/1.cc: New.
223 * testsuite/27_io/basic_istringstream/cons/move.cc: New.
224 * testsuite/27_io/basic_ofstream/cons/move.cc: New.
225 * testsuite/27_io/basic_ofstream/assign/1.cc: New.
226 * testsuite/27_io/basic_ostringstream/assign/1.cc: New.
227 * testsuite/27_io/basic_ostringstream/cons/move.cc: New.
228 * testsuite/27_io/basic_stringstream/assign/1.cc: New.
229 * testsuite/27_io/basic_stringstream/cons/move.cc: New.
230
231 2014-09-17 Jason Merrill <jason@redhat.com>
232
233 * libsupc++/dyncast.cc (__dynamic_cast): Handle mid-destruction
234 dynamic_cast more gracefully.
235
236 2014-09-15 Jakub Jelinek <jakub@redhat.com>
237
238 * testsuite/Makefile.am (check_p_numbers0, check_p_numbers1,
239 check_p_numbers2, check_p_numbers3, check_p_numbers4,
240 check_p_numbers5, check_p_numbers6, check_p_numbers,
241 check_p_subdirs): New variables.
242 (check_DEJAGNU_normal_targets): Use check_p_subdirs.
243 (check-DEJAGNU): Rewritten so that for parallelized
244 testing each job runs all the *.exp files, with
245 GCC_RUNTEST_PARALLELIZE_DIR set in environment.
246 * testsuite/Makefile.in: Regenerated.
247 * testsuite/lib/libstdc++.exp (gcc_parallel_test_run_p,
248 gcc_parallel_test_enable): New procedures. If
249 GCC_RUNTEST_PARALLELIZE_DIR is set in environment, override
250 runtest_file_p to invoke also gcc_parallel_test_run_p.
251 * testsuite/libstdc++-abi/abi.exp: Run all the tests serially
252 by the first parallel runtest encountering it. Fix up path
253 of the extract_symvers script.
254 * testsuite/libstdc++-xmethods/xmethods.exp: Run all the tests
255 serially by the first parallel runtest encountering it. Run
256 dg-finish even in case of error.
257
258 2014-09-15 Jonathan Wakely <jwakely@redhat.com>
259
260 * include/bits/regex.h (basic_regex): Rename _Ch_typeraits template
261 parameters to _Ch_traits.
262
263 2014-09-12 Jonathan Wakely <jwakely@redhat.com>
264
265 * include/debug/deque (__gnu_debug::deque): Make base class C++11
266 allocator aware.
267
268 2014-09-12 Jonathan Wakely <jwakely@redhat.com>
269
270 PR libstdc++/59603
271 * include/bits/stl_algo.h (random_shuffle): Prevent self-swapping.
272 * testsuite/25_algorithms/random_shuffle/59603.cc: New.
273
274 2014-09-11 Jonathan Wakely <jwakely@redhat.com>
275
276 PR libstdc++/63219
277 * include/bits/regex.h (match_results::format): Remove stray template
278 parameter.
279 * include/bits/regex_compiler.h (_RegexTranslator::_RegexTranslator):
280 Remove parameter name to avoid -Wunused-parameter warning.
281 * include/bits/regex_executor.h (_State_info::_State_info): Reorder
282 mem-initializers to avoid -Wreorder warning.
283 * include/bits/regex_executor.tcc (_Executor::_M_word_boundary):
284 Remove parameter name to avoid -Wunused-parameter warning.
285 * include/bits/regex_scanner.tcc (_Scanner::_M_advance): Add braces
286 to avoid -Wempty-body warning when not in debug mode.
287
288 2014-09-10 Siva Chandra Reddy <sivachandra@google.com>
289
290 * python/hook.in: Load the xmethods.
291 * python/Makefile.am (nobase_python_DATA): Add xmethods.py.
292 * python/Makefile.in: Regenerated.
293 * python/libstdcxx/v6/xmethods.py: New file.
294 * testsuite/lib/gdb-test.exp (gdb_version_check_xmethods): New
295 function.
296 (gdb-test): New optional argument LOAD_XMETHODS. Load xmethods
297 python script if LOAD_XMETHODS is true.
298 * testsuite/libstdc++-xmethods/unique_ptr.cc: New file.
299 * testsuite/libstdc++-xmethods/vector.cc: New file.
300 * testsuite/libstdc++-xmethods/xmethods.exp: New file.
301
302 2014-09-10 Tony Wang <tony.wang@arm.com>
303
304 PR target/56846
305 * libsupc++/eh_personality.cc (PERSONALITY_FUNCTION):
306 Return with CONTINUE_UNWINDING when the state pattern
307 contains: _US_VIRTUAL_UNWIND_FRAME | _US_FORCE_UNWIND
308
309 2014-09-09 Jonathan Wakely <jwakely@redhat.com>
310
311 * include/bits/deque.tcc (deque::operator=(const deque&)): Handle
312 allocator propagation.
313 (deque::emplace_front, deque::emplace_back): Use allocator traits.
314 (deque::_M_push_back_aux, deque::_M_push_front_aux): Likewise.
315 (deque::_M_pop_back_aux, deque::_M_pop_front_aux): Likewise.
316 * include/bits/stl_deque.h (__deque_buf_size): Add constexpr.
317 (_Deque_iterator): Handle allocators with custom pointers.
318 (_Deque_base): Likewise. Use allocator traits.
319 (deque): Likewise. Add allocator-extended constructors.
320 (deque::_M_move_assign1, deque::_M_move_assign2): Implement move
321 assignment via tag dispatching.
322 (deque::_M_replace_map): Replace existing data.
323 * include/debug/deque (deque): Add allocator-extended constructors.
324 * include/profile/deque (deque): Likewise.
325 * testsuite/23_containers/deque/allocator/copy.cc: New.
326 * testsuite/23_containers/deque/allocator/copy_assign.cc: New.
327 * testsuite/23_containers/deque/allocator/ext_ptr.cc: New.
328 * testsuite/23_containers/deque/allocator/minimal.cc: New.
329 * testsuite/23_containers/deque/allocator/move.cc: New.
330 * testsuite/23_containers/deque/allocator/move_assign-2.cc: New.
331 * testsuite/23_containers/deque/allocator/move_assign.cc: New.
332 * testsuite/23_containers/deque/allocator/noexcept.cc: New.
333 * testsuite/23_containers/deque/allocator/swap.cc: New.
334 * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
335 Adjust dg-error line number.
336 * testsuite/23_containers/deque/requirements/dr438/
337 constructor_1_neg.cc: Likewise.
338 * testsuite/23_containers/deque/requirements/dr438/
339 constructor_2_neg.cc: Likewise.
340 * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
341 Likewise.
342 * testsuite/23_containers/vector/52591.cc: Test both the propagating
343 and always-equal cases.
344
345 2014-09-06 François Dumont <fdumont@gcc.gnu.org>
346
347 * include/bits/hashtable_policy.h (_Prime_rehash_policy): Constructor
348 noexcept qualified.
349 (_Hash_code_base<>): All specialization default constructible if
350 possible.
351 (_Hashtable_base<>): Likewise.
352 * include/bits/hashtable.h (_Hashtable<>()): Implementation defaulted.
353 * include/bits/unordered_map.h (unordered_map<>::unordered_map()): New,
354 implementation defaulted.
355 (unordered_multimap<>::unordered_multimap()): Likewise.
356 * include/bits/unordered_set.h
357 (unordered_set<>::unordered_set()): Likewise.
358 (unordered_multiset<>::unordered_multiset()): Likewise.
359 * include/debug/unordered_map: Likewise.
360 * include/debug/unordered_set: Likewise.
361 * testsuite/23_containers/unordered_map/allocator/noexcept.cc
362 (test04()): New.
363 * testsuite/23_containers/unordered_multimap/allocator/noexcept.cc
364 (test04()): New.
365 * testsuite/23_containers/unordered_set/allocator/noexcept.cc
366 (test04()): New.
367 * testsuite/23_containers/unordered_multiset/allocator/noexcept.cc
368 (test04()): New.
369
370 2014-08-30 John David Anglin <danglin@gcc.gnu.org>
371
372 * config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Update.
373
374 2014-08-29 Jonathan Wakely <jwakely@redhat.com>
375
376 * include/std/complex (complex): Define copy constructor and
377 assignment operator as defaulted. Improve Doxygen comments.
378
379 2014-08-28 Jonathan Wakely <jwakely@redhat.com>
380
381 * testsuite/ext/random/*: Fix incorrect standard references in
382 comments.
383
384 2014-08-27 Jonathan Wakely <jwakely@redhat.com>
385
386 PR libstdc++/62159
387 * include/Makefile.am (install-freestanding-headers): Add missing
388 C++11 headers.
389 * include/Makefile.in: Regenerate.
390
391 2014-08-21 Tony Wang <tony.wang@arm.com>
392
393 * testsuite/18_support/nested_exception/62154.cc: Disable when the
394 target doesn't provide atomic builtins.
395
396 2014-08-19 Yaakov Selkowitz <yselkowi@redhat.com>
397 Kai Tietz <ktietz@redhat.com>
398
399 * config/os/mingw32-w64/os_defines.h (_GLIBCXX_THREAD_ATEXIT_WIN32):
400 Define.
401 * config/os/newlib/os_defines.h (_GLIBCXX_THREAD_ATEXIT_WIN32):
402 Ditto.
403 * libsupc++/atexit_thread.cc [_GLIBCXX_THREAD_ATEXIT_WIN32]:
404 #include <windows.h>.
405 (struct elt): Add dll member.
406 (run): Decrement dll refcount.
407 (__cxxabiv1::__cxa_thread_atexit): Increment dll refcount.
408
409 2014-08-15 Jonathan Wakely <jwakely@redhat.com>
410
411 PR libstdc++/62154
412 * libsupc++/nested_exception.h (throw_with_nested, rethrow_if_nested):
413 Rewrite to conform to C++11 requirements.
414 * testsuite/18_support/nested_exception/62154.cc: New.
415
416 2014-08-14 Matthias Klose <doko@ubuntu.com>
417
418 * testsuite/ext/random/uniform_on_sphere_distribution/requirements:
419 Remove empty directory.
420
421 2014-08-14 Paolo Carlini <paolo.carlini@oracle.com>
422
423 * testsuite/26_numerics/random/linear_congruential_engine/
424 requirements/non_uint_neg.cc: Adjust for parser change.
425 * testsuite/tr1/5_numerical_facilities/random/linear_congruential/
426 requirements/non_uint_neg.cc: Likewise.
427
428 2014-08-13 Jonathan Wakely <jwakely@redhat.com>
429
430 PR libstdc++/61841
431 * include/std/thread (thread::_M_start_thread): Declare new overload.
432 (thread::thread<_Callable, _Args...>): Call new overload with an
433 explicit reference to pthread_create.
434 * src/c++11/thread.cc (thread::_M_start_thread): Add new overload.
435 * config/abi/pre/gnu.ver: Export new function.
436
437 2014-08-13 Sylvestre Ledru <sylvestre@debian.org>
438
439 * include/profile/impl/profiler_hash_func.h: Fix a comment typo
440
441 2014-08-13 Paolo Carlini <paolo.carlini@oracle.com>
442
443 * Fix thinko in the last commit.
444
445 2014-08-13 Paolo Carlini <paolo.carlini@oracle.com>
446
447 PR libstdc++/62118
448 * include/ext/random.tcc (uniform_on_sphere_helper<2, _RealType>::
449 operator()): Use std::hypot only when _GLIBCXX_USE_C99_MATH_TR1.
450
451 2014-08-12 Jonathan Wakely <jwakely@redhat.com>
452
453 * include/bits/basic_string.h (getline): Qualify call to prevent ADL
454 and add overloads for rvalue streams.
455 * testsuite/21_strings/basic_string/inserters_extractors/char/12.cc:
456 New.
457 * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/12.cc:
458 New.
459
460 * include/bits/basic_string.h (getline): Declare inline.
461
462 2014-08-09 Ulrich Drepper <drepper@gmail.com>
463
464 * include/ext/random.tcc (uniform_on_sphere_helper): Define.
465 (uniform_on_sphere_distribution::operator()): Use the new helper
466 class for the implementation.
467
468 * testsuite/ext/random/uniform_on_sphere_distribution/operators/
469 equal.cc: Remove bogus part of comment.
470 * testsuite/ext/random/uniform_on_sphere_distribution/operators/
471 inequal.cc: Likewise.
472 * testsuite/ext/random/uniform_on_sphere_distribution/operators/
473 serialize.cc: Add check to verify result of serialzation and
474 deserialization.
475 * testsuite/ext/random/uniform_on_sphere_distribution/operators/
476 generate.cc: New file.
477
478 2014-08-09 Paolo Carlini <paolo.carlini@oracle.com>
479
480 * include/ext/pod_char_traits.h (char_traits<__gnu_cxx::
481 character<_Value, _Int, _St> >::eof): Fix vs narrowing conversion.
482
483 2014-08-09 François Dumont <fdumont@gcc.gnu.org>
484
485 PR libstdc++/61667
486 * include/bits/hashtable.h (_Hashtable<>::__rehash_policy): Use
487 _M_need_rehash to initialize the rehash policy and check if a rehash is
488 needed.
489 * testsuite/23_containers/unordered_map/modifiers/61667.cc: New.
490
491 2014-08-07 Jonathan Wakely <jwakely@redhat.com>
492
493 * include/bits/stl_list.h (_List_base::_List_base(_List_base&&)):
494 Optimize.
495 * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
496 Adjust dg-error line number.
497 * testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc:
498 Likewise.
499 * testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc:
500 Likewise.
501 * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
502 Likewise.
503
504 * include/std/future (_State_baseV2::_M_set_result): Pass pointers to
505 _M_do_set.
506 (_State_baseV2::_M_do_set): Change parameters to pointers.
507 (_State_baseV2::_Setter): Change _M_arg from reference to pointer.
508 (_State_baseV2::__setter): Initialize _Setter with pointers.
509 (_State_baseV2::__setter(promise<void>*)): Remove overload.
510 (promise::set_value, promise::set_exception): Pass setter directly
511 to _M_set_result.
512 (_State_baseV2::_Task_setter): Add template parameter for callable
513 type and replace std::function member with pointer to that type.
514 Change _M_result member from reference to pointer.
515 (_State_baseV2::_S_task_setter): Change parameter to lvalue reference
516 and initialize _Task_setter with pointers.
517 (__location_invariant): Specialize for _Setter and _Task_setter.
518
519 * include/std/future (__location_invariant): Move specializations
520 after preprocessor condition.
521
522 2014-08-02 Paolo Carlini <paolo.carlini@oracle.com>
523
524 PR c++/15339
525 * testsuite/26_numerics/headers/complex/synopsis.cc: Fix.
526
527 2014-08-01 Zifei Tong <zifeitong@gmail.com>
528
529 * libsupc++/atexit_thread.cc (HAVE___CXA_THREAD_ATEXIT_IMPL): Add
530 _GLIBCXX_ prefix to macro.
531
532 2014-07-29 Jonathan Wakely <jwakely@redhat.com>
533
534 * python/libstdcxx/v6/printers.py
535 (SingleObjContainerPrinter._contained): Use compatibility mixin.
536
537 2014-07-29 François Dumont <fdumont@gcc.gnu.org>
538
539 * testsuite/util/testsuite_allocator.h
540 (tracker_allocator_counter::allocate): Remove new invocation, only
541 collect information.
542 (tracker_allocator_counter::deallocate): Remove delete invocation, only
543 collect information.
544 (check_inconsistent_alloc_value_type): New.
545 (tracker_allocator): Transform as a facade for any allocator type.
546 (uneq_allocator): Likewise.
547 (propagating_allocator): Likewise.
548 * testsuite/23_containers/forward_list/debug/move_assign_neg.cc: Use an
549 explicitly non propagating allocator.
550 * testsuite/23_containers/map/debug/move_assign_neg.cc: Likewise.
551 * testsuite/23_containers/multimap/debug/move_assign_neg.cc: likewise.
552 * testsuite/23_containers/multiset/debug/move_assign_neg.cc: Likewise.
553 * testsuite/23_containers/set/debug/move_assign_neg.cc: Likewise.
554 * testsuite/23_containers/unordered_map/debug/move_assign_neg.cc:
555 Likewise.
556 * testsuite/23_containers/unordered_multimap/debug/move_assign_neg.cc:
557 Likewise.
558 * testsuite/23_containers/unordered_multiset/debug/move_assign_neg.cc:
559 Likewise.
560 * testsuite/23_containers/unordered_set/debug/move_assign_neg.cc:
561 Likewise.
562 * testsuite/23_containers/vector/debug/move_assign_neg.cc: Likewise.
563
564 2014-07-29 Jonathan Wakely <jwakely@redhat.com>
565
566 PR libstdc++/61946
567 * include/ext/rope (rope::rope(char_producer<_CharT>*, size_t, bool,
568 const allocator_type&)): Pass non-const allocator to
569 _S_new_RopeFunction.
570 * testsuite/ext/rope/61946.cc: New.
571
572 PR libstdc++/61947
573 * include/std/tuple (_Head_base): Use allocator_arg_t parameters to
574 disambiguate unary constructors.
575 (_Tuple_impl): Pass allocator_arg_t arguments.
576 * testsuite/20_util/tuple/61947.cc: New.
577 * testsuite/20_util/uses_allocator/cons_neg.cc: Adjust dg-error line.
578
579 2014-07-29 Ed Smith-Rowland <3dw4rd@verizon.net>
580
581 PR libstdc++/60037 - SIGFPE in std::generate_canonical<unsigned int...>
582 * include/bits/random.h (_Adaptor): static_assert for non floating-point
583 result type.
584 * include/bits/random.tcc (generate_canonical): Ditto.
585 * include/ext/random.tcc (hypergeometric_distribution::operator()):
586 Use double as a rng result type.
587 * testsuite/26_numerics/random/pr60037-neg.cc: New.
588 * testsuite/ext/random/hypergeometric_distribution/pr60037.cc: New.
589
590 2014-07-25 Uros Bizjak <ubizjak@gmail.com>
591
592 * config/abi/post/alpha-linux-gnu/baseline_symbols.txt: Update.
593
594 2014-07-25 Ed Smith-Rowland <3dw4rd@verizon.net>
595
596 * include/experimental/string_view: Make the literal operators
597 constexpr like the ctors they call.
598
599 2014-07-23 H.J. Lu <hongjiu.lu@intel.com>
600
601 * config/abi/post/x86_64-linux-gnu/x32/baseline_symbols.txt: Update.
602
603 2014-07-23 Jonathan Wakely <jwakely@redhat.com>
604
605 * python/libstdcxx/v6/printers.py (StdExpAnyPrinter): Convert type
606 to string instead of using gdb.Type.name attribute.
607
608 2014-07-19 Jonathan Wakely <jwakely@redhat.com>
609
610 * acinclude.m4 (GLIBCXX_CHECK_SDT_H): Replace AC_MSG_RESULT with
611 AC_MSG_CHECKING.
612
613 2014-07-18 Jonathan Wakely <jwakely@redhat.com>
614
615 PR libstdc++/61835
616 * python/libstdcxx/v6/printers.py (TemplateTypePrinter): Use
617 raw string.
618 (SingleObjContainerPrinter): Check if type printers are in use.
619
620 2014-07-16 Paolo Carlini <paolo.carlini@oracle.com>
621
622 * include/ext/random: Minor formatting and cosmetic tweaks.
623 (uniform_on_sphere_distribution<>::operator==
624 (const uniform_on_sphere_distribution&,
625 const uniform_on_sphere_distribution&)): Compare the _M_nds.
626 (uniform_on_sphere_distribution<>::reset): Reset _M_nd.
627 (operator!=(const uniform_on_sphere_distribution&,
628 const uniform_on_sphere_distribution&)): Adjust.
629 * include/ext/random.tcc: Minor cosmetc tweaks.
630
631 2014-07-15 Jonathan Wakely <jwakely@redhat.com>
632
633 * python/libstdcxx/v6/printers.py (TemplateTypePrinter): Add type
634 printer for class templates.
635 (register_type_printers): Use TemplateTypePrinter for containers
636 and other class templates with default template arguments.
637 * testsuite/libstdc++-prettyprinters/whatis.cc: Test new recognizers.
638
639 * python/libstdcxx/v6/printers.py (SingleObjContainerPrinter): New
640 base class for experimental::any and experimental::optional printers.
641 (StdExpAnyPrinter, StdExpOptionalPrinter, StdExpStringViewPrinter):
642 New printers for Fundamentals TS types.
643 * testsuite/libstdc++-prettyprinters/libfundts.cc: New.
644
645 2014-07-15 Tim Shen <timshen@google.com>
646
647 PR libstdc++/61720
648 * include/bits/regex_executor.tcc (_Executor<>::_M_main_dispatch):
649 Clear match queue for next use.
650 * testsuite/28_regex/algorithms/regex_search/61720.cc: New file.
651
652 2014-07-14 Ulrich Drepper <drepper@gmail.com>
653
654 * include/ext/random.tcc: Unfortunately more fixes for
655 operator>> and operator<< for uniform_on_sphere_distribution.
656
657 2014-07-13 Ulrich Drepper <drepper@gmail.com>
658
659 * include/ext/random.tcc: Fix operator>> and operator<< for
660 uniform_on_sphere_distribution.
661
662 2014-07-12 Ulrich Drepper <drepper@gmail.com>
663
664 * include/ext/random: Add uniform_on_sphere_distribution definition.
665 * include/ext/random.tcc: Add out-of-band member function definitions
666 for uniform_on_sphere_distribution.
667 * testsuite/ext/random/uniform_on_sphere_distribution/
668 cons/default.cc: New file.
669 * testsuite/ext/random/uniform_on_sphere_distribution/
670 operators/equal.cc: New file.
671 * testsuite/ext/random/uniform_on_sphere_distribution/
672 operators/inequal.cc: New file.
673 * testsuite/ext/random/uniform_on_sphere_distribution/
674 operators/serialize.cc: New file.
675
676 2014-07-11 Edward Smith-Rowland <3dw4rd@verizon.net>
677
678 Add the logistic_distribution as an extension.
679 * include/ext/random: Add the logistic_distribution.
680 * include/ext/random.tcc: Add the logistic_distribution.
681 * testsuite/ext/random/logistic_distribution/cons/parms.cc: New.
682 * testsuite/ext/random/logistic_distribution/cons/default.cc: New.
683 * testsuite/ext/random/logistic_distribution/requirements/typedefs.cc:
684 New.
685 * testsuite/ext/random/logistic_distribution/operators/inequal.cc: New.
686 * testsuite/ext/random/logistic_distribution/operators/equal.cc: New.
687 * testsuite/ext/random/logistic_distribution/operators/serialize.cc:
688 New.
689
690 2014-07-11 Samuel Bronson <naesten@gmail.com>
691
692 * testsuite/lib/libstdc++.exp (libstdc++_init): Set $GCC_COLORS=""
693 instead of insisting that GCC understand -fdiagnostics-color=never
694
695 * testsuite/lib/gdb-test.exp (gdb-test): Turn off GDB's auto-load,
696 list loaded libs.
697
698 2014-07-11 Samuel Bronson <naesten@gmail.com>
699 Matthias Klose <doko@ubuntu.com>
700
701 PR libstdc++/58962
702 * python/libstdcxx/v6/printers.py: Port to Python 2+3
703 (imap): New compat function.
704 (izip): Likewise.
705 (Iterator): New mixin to allow writing iterators in Python 3 style
706 regardless of which version we're running on.
707 [Python3] (long) New compat alias for "int".
708 * testsuite/lib/gdb-test.exp: Port to Python 2+3 (print syntax)
709
710 2014-07-10 Jonathan Wakely <jwakely@redhat.com>
711
712 * include/experimental/any (any::_Manager_alloc::_Data): Reorder
713 tuple members to simplify pretty printing.
714 (any::_Manager_alloc::_Data::_M_construct): Fix uses-allocator
715 construction.
716 * testsuite/experimental/any/cons/4.cc: New.
717
718 2014-07-09 Jason Merrill <jason@redhat.com>
719
720 PR libstdc++/61728
721 * libsupc++/cxxabi.h: Define __pbase_type_info::__pointer_catch here.
722 * libsupc++/tinfo.h: Not here.
723
724 2014-07-08 Jonathan Wakely <jwakely@redhat.com>
725
726 * include/bits/allocated_ptr.h (__allocated_ptr::operator=): Add
727 missing return.
728 * include/experimental/any: Remove unused header.
729 * include/std/functional (_Maybe_wrap_member_pointer): Fix comments.
730 * testsuite/experimental/any/misc/any_cast_neg.cc: Adjust dg-error.
731 * testsuite/util/testsuite_regex.h: Move include guard.
732
733 2014-07-01 Tim Shen <timshen@google.com>
734
735 PR libstdc++/61601
736 PR libstdc++/61582
737 * include/bits/regex_automaton.h (_NFA<>::_M_insert_state): Add
738 a NFA state limit. If it's exceeded, regex_constants::error_space
739 will be throwed.
740 * include/bits/regex_automaton.tcc (_StateSeq<>::_M_clone): Use
741 map (which is sparse) instead of vector. This reduce n times clones'
742 cost from O(n^2) to O(n).
743 * include/std/regex: Add map dependency.
744 * testsuite/28_regex/algorithms/regex_match/ecma/char/61601.cc: New
745 testcase.
746
747 2014-07-01 Tim Shen <timshen@google.com>
748
749 PR libstdc++/61424
750 * include/bits/regex.tcc (__regex_algo_impl<>): Use DFS for ECMAScript,
751 not just regex containing back-references.
752 * include/bits/regex_compiler.tcc (_Compiler<>::_M_disjunction):
753 exchange _M_next and _M_alt for alternative operator,
754 making matching from left to right.
755 * include/bits/regex_executor.h (_State_info<>::_M_get_sol_pos):
756 Add position tracking fom DFS.
757 * include/bits/regex_executor.tcc (_Executor<>::_M_main_dispatch,
758 _Executor<>::_M_dfs): Likewise.
759 * include/bits/regex_scanner.h: Remove unused enum entry.
760 * testsuite/28_regex/algorithms/regex_search/61424.cc: New
761 testcase from PR.
762
763 2014-06-30 Jason Merrill <jason@redhat.com>
764
765 * libsupc++/cxxabi.h (class __pbase_type_info): __pointer_catch
766 is pure, not inline.
767
768 2014-06-28 Paolo Carlini <paolo.carlini@oracle.com>
769
770 Revert:
771 2014-06-18 Paolo Carlini <paolo.carlini@oracle.com>
772 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
773
774 PR libstdc++/61536
775 * config/abi/pre/gnu.ver: Adjust for out of line comparisons.
776
777 2014-06-08 Paolo Carlini <paolo.carlini@oracle.com>
778
779 * config/abi/pre/gnu.ver: Tighten some patterns; tidy.
780
781 2014-06-26 Jonathan Wakely <jwakely@redhat.com>
782
783 * include/bits/shared_ptr_base.h (__shared_ptr::_Deleter): Fix
784 parameter type.
785
786 2014-06-25 Jonathan Wakely <jwakely@redhat.com>
787
788 * include/bits/alloc_traits.h (__alloc_rebind): Define alias template.
789 * include/bits/forward_list.h (_Fwd_list_base): Use __alloc_rebind.
790 * include/bits/hashtable_policy.h (_Insert_base, _Hashtable_alloc):
791 Likewise.
792 * include/ext/alloc_traits.h: Fix comment.
793
794 * include/Makefile.am: Add new header.
795 * include/Makefile.in: Regenerate.
796 * include/bits/allocated_ptr.h (__allocated_ptr, __allocate_guarded):
797 New RAII utilities for working with allocators.
798 * include/bits/shared_ptr_base.h (_Sp_counted_deleter): Define
799 __allocator_type typedef and use new __allocated_ptr type.
800 (_Sp_counted_ptr_inplace): Likewise.
801 (__shared_count::__shared_count, __shared_ptr::__shared_ptr): Use
802 __allocate_guarded to to simplify exception handling.
803 * include/experimental/any (any::_Manager_alloc::_S_alloc): Likewise.
804 * include/std/future (_Result_alloc::_M_destroy): Likewise.
805 (_Result_alloc::_S_allocate_result): Likewise.
806 * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust line number.
807 * testsuite/20_util/shared_ptr/cons/void_neg.cc: Likewise.
808 * testsuite/20_util/shared_ptr/creation/no_rtti.cc: New.
809 * testsuite/20_util/shared_ptr/creation/alloc.cc: Test allocator
810 with fancy pointer.
811 * testsuite/30_threads/promise/cons/alloc.cc: Likewise.
812
813 * testsuite/20_util/shared_ptr/creation/alloc.cc: Fix use of test
814 allocator.
815 * testsuite/20_util/shared_ptr/creation/no_rtti.cc: Likewise.
816 * testsuite/30_threads/promise/cons/alloc.cc: Likewise.
817
818 2014-06-24 Jonathan Wakely <jwakely@redhat.com>
819
820 * include/bits/functexcept.h (__throw_out_of_range_fmt): Change
821 attribute to __gnu_printf__ archetype to prevent warnings for "%zu".
822 * include/bits/locale_facets_nonio.tcc (time_get::do_get_weekday):
823 Remove unused typedef.
824 (time_get::do_get_monthname): Likewise.
825 * include/bits/stl_tree.h: Add system_header pragma.
826 * include/ext/stdio_sync_filebuf.h (stdio_sync_filebuf::file): Remove
827 redundant const-qualifier.
828 * include/std/complex (complex::__rep): Use _GLIBCXX_CONSTEXPR macro
829 instead of _GLIBCXX_USE_CONSTEXPR.
830
831 2014-06-23 Jonathan Wakely <jwakely@redhat.com>
832
833 * include/bits/parse_numbers.h (_Number_help): Fix divide-by-zero.
834 * include/std/chrono (_Checked_integral_constant): Allow zero.
835 * testsuite/20_util/duration/literals/values.cc: Test non-positive
836 values and digit separators.
837 * include/experimental/any
838
839 PR libstdc++/61532
840 * testsuite/20_util/make_signed/requirements/typedefs-1.cc: Do not
841 apply the signed specifier to wchar_t.
842 * testsuite/20_util/make_signed/requirements/typedefs-2.cc: Likewise.
843 * testsuite/20_util/make_unsigned/requirements/typedefs-1.cc: Check
844 cv-qualifier and size.
845 * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc:
846 Likewise.
847
848 * include/experimental/any (any_v1): Rename namespace to
849 fundamentals_v1. Change string returned by bad_any_cast::what().
850 * include/experimental/optional (fundamentals_v1): Add namespace.
851 * include/experimental/string_view (fundamentals_v1): Likewise.
852 * testsuite/experimental/any/typedefs.cc: New.
853 * testsuite/experimental/optional/typedefs.cc: New.
854 * testsuite/experimental/string_view/typedefs.cc: New.
855
856 2014-06-18 Paolo Carlini <paolo.carlini@oracle.com>
857 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
858
859 PR libstdc++/61536
860 * config/abi/pre/gnu.ver: Adjust for out of line comparisons.
861
862 2014-06-14 Jonathan Wakely <jwakely@redhat.com>
863
864 * doc/xml/manual/status_cxx2014.xml: Update Fundamentals TS status.
865 * include/Makefile.am: Add new header.
866 * include/Makefile.in: Regenerate.
867 * include/experimental/any: New.
868 * include/ext/aligned_buffer.h (__aligned_buffer(nullptr_t)): New
869 constructor.
870 * testsuite/experimental/any/assign/1.cc: New.
871 * testsuite/experimental/any/assign/2.cc: New.
872 * testsuite/experimental/any/cons/1.cc: New.
873 * testsuite/experimental/any/cons/2.cc: New.
874 * testsuite/experimental/any/cons/3.cc: New.
875 * testsuite/experimental/any/misc/any_cast.cc: New.
876 * testsuite/experimental/any/misc/any_cast_neg.cc: New.
877 * testsuite/experimental/any/misc/any_cast_no_rtti.cc: New.
878 * testsuite/experimental/any/misc/swap.cc: New.
879 * testsuite/experimental/any/modifiers/1.cc: New.
880 * testsuite/experimental/any/observers/type.cc: New.
881
882 * doc/doxygen/user.cfg.in (INPUT): Add C++14 headers.
883 * include/bits/random.h (subtract_with_carry_engine): Fix Doxygen
884 warnings.
885 * include/bits/shared_ptr.h (shared_ptr): Likewise.
886 * include/bits/unordered_map.h (unordered_map, unordered_multimap):
887 Likewise.
888 * include/bits/unordered_set.h (unordered_set, unordered_multiset):
889 Likewise.
890 * include/parallel/list_partition.h (__parallel::list_partition):
891 Likewise.
892 * include/std/iomanip (quoted): Likewise.
893 * include/tr2/dynamic_bitset (dynamic_bitset): Likewise.
894
895 * doc/xml/api.xml: Link to more recent API docs.
896 * include/bits/allocator.h: Fix link in doxygen comment.
897 * include/bits/char_traits.h: Likewise.
898 * include/bits/ios_base.h: Likewise.
899 * include/bits/stl_map.h: Likewise.
900 * include/bits/stl_multimap.h: Likewise.
901 * include/bits/stl_multiset.h: Likewise.
902 * include/bits/stl_set.h: Likewise.
903 * include/bits/unordered_map.h: Likewise.
904 * include/bits/unordered_set.h: Likewise.
905 * include/ext/mt_allocator.h: Likewise.
906 * include/std/fstream: Likewise.
907 * include/std/iosfwd: Likewise.
908 * include/std/ostream: Likewise.
909 * include/std/sstream: Likewise.
910 * include/std/streambuf: Likewise.
911 * doc/html/*: Regenerate.
912
913 * include/experimental/any (any_cast): Combine duplicate doxygen
914 comments.
915 * include/experimental/string_view (basic_string_view): Update
916 doxygen comment.
917 * include/std/bitset (bitset): Move to Doxygen 'utilities' group.
918 * include/tr2/dynamic_bitset (_Bool2UChar): Remove unused templates.
919 (dynamic_bitset): Improve Doxygen comments.
920 * include/tr2/dynamic_bitset.tcc (operator>>): Improve Doxygen
921 comment.
922
923 2014-06-11 Maciej W. Rozycki <macro@codesourcery.com>
924
925 * testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/4402.cc
926 (test02) [TEST_NUMPUT_VERBOSE]: Use `wcout' rather than `cout'.
927
928 2014-06-10 Jonathan Wakely <jwakely@redhat.com>
929
930 PR libstdc++/61390
931 * include/ext/pb_ds/detail/bin_search_tree_/traits.hpp
932 (bin_search_tree_traits): Do not redeclare template-parameters.
933 * testsuite/util/testsuite_iterators.h (test_container): Likewise.
934
935 2014-06-09 Jonathan Wakely <jwakely@redhat.com>
936
937 * doc/Makefile.am: Add missing file. Use generate.consistent.ids
938 parameter for DocBook HTML generation.
939 * doc/Makefile.in: Regenerate.
940 * doc/doxygen/user.cfg.in: Unset DOT_FONTNAME.
941 * doc/xml/faq.xml: Update content and improve formatting.
942 * doc/xml/manual/abi.xml: Add stable ID attribute and fix links.
943 * doc/xml/manual/allocator.xml: Add stable ID attribute.
944 * doc/xml/manual/bitmap_allocator.xml: Likewise.
945 * doc/xml/manual/build_hacking.xml: Likewise.
946 * doc/xml/manual/codecvt.xml: Change URL.
947 * doc/xml/manual/ctype.xml: Add stable ID attribute.
948 * doc/xml/manual/debug_mode.xml: Likewise.
949 * doc/xml/manual/documentation_hacking.xml: Likewise.
950 * doc/xml/manual/evolution.xml: Likewise.
951 * doc/xml/manual/extensions.xml: Likewise.
952 * doc/xml/manual/locale.xml: Likewise.
953 * doc/xml/manual/messages.xml: Make section id consistent, improve
954 markup, change URL.
955 * doc/xml/manual/parallel_mode.xml: Add stable ID attributes.
956 * doc/xml/manual/profile_mode.xml: Likewise.
957 * doc/xml/manual/shared_ptr.xml: Likewise. Also remove old info.
958 * doc/xml/manual/status_cxx1998.xml: Add stable ID attributes.
959 * doc/xml/manual/status_cxx2011.xml: Likewise.
960 * doc/xml/manual/status_cxx2014.xml: Likewise.
961 * doc/xml/manual/status_cxxtr1.xml: Likewise.
962 * doc/xml/manual/status_cxxtr24733.xml: Likewise.
963 * doc/xml/manual/using.xml: Likewise.
964 * doc/html/*: Regenerate.
965
966 2014-06-09 Jonathan Wakely <jwakely@redhat.com>
967
968 * include/tr1/beta_function.tcc: Fix spelling of include guard in
969 comment.
970
971 2014-06-08 Paolo Carlini <paolo.carlini@oracle.com>
972
973 * config/abi/pre/gnu.ver: Tighten some patterns; tidy.
974
975 2014-06-06 Ed Smith-Rowland <3dw4rd@verizon.net>
976
977 DR 2344 - std::quoted doesn't respect padding
978 * include/std/iomanip: Allow for padding in quoted inserters.
979 * testsuite/27_io/manipulators/standard/char/dr2344.cc: New.
980 * testsuite/27_io/manipulators/standard/wchar_t/dr2344.cc: New.
981
982 2014-06-06 François Dumont <fdumont@gcc.gnu.org>
983
984 * testsuite/23_containers/map/operators/1.cc: Simplify test.
985
986 2014-06-06 Jonathan Wakely <jwakely@redhat.com>
987
988 * doc/xml/faq.xml (faq.stream_reopening_fails): Replace <quote> in
989 code example.
990 * doc/xml/manual/backwards_compatibility.xml
991 (backwards.second.stringstreams): Likewise.
992 * doc/xml/manual/configure.xml (--enable-libstdcxx-time): Document
993 change of default.
994 * doc/xml/manual/containers.xml (associative.bitset.type_string):
995 Replace <quote> in code example.
996 * doc/xml/manual/debug.xml: Clarify reference to ThreadSanitizer.
997 * doc/xml/manual/documentation_hacking.xml: Improve debugging tips,
998 fix typos, improve markup.
999 * doc/xml/manual/intro.xml (manual.intro.status.bugs.iso): Replace
1000 <emphasis> with <replaceable>.
1001 * doc/xml/manual/locale.xml (locale.impl.c): Remove backticks.
1002 * doc/xml/manual/support.xml (std.support.memory): Replace <quote>
1003 and remove newlines in string literal.
1004
1005 2014-06-03 Paolo Carlini <paolo.carlini@oracle.com>
1006
1007 DR 1423
1008 PR c++/52174
1009 * testsuite/20_util/is_assignable/value.cc: Update.
1010
1011 2014-06-02 Jonathan Wakely <jwakely@redhat.com>
1012
1013 * include/std/condition_variable (condition_variable_any::_Unlock): Do
1014 not swallow __forced_unwind.
1015 * include/std/future (__future_base::_Task_setter): Likewise.
1016 (__future_base::_Async_state_impl): Turn __forced_unwind into broken
1017 promise and rethrow.
1018 * include/std/mutex (try_lock): Likewise.
1019 * testsuite/30_threads/async/forced_unwind.cc: New.
1020 * testsuite/30_threads/packaged_task/forced_unwind.cc: New.
1021
1022 * include/bits/regex_compiler.h (__detail::_BracketMatcher): Reorder
1023 members to avoid wasted space when not using a cache.
1024 (__detail::_BracketMatcher::_M_ready()): Sort and deduplicate set.
1025 * include/bits/regex_compiler.tcc
1026 (__detail::_BracketMatcher::_M_apply(_CharT, false_type)): Use binary
1027 search on set.
1028 * include/bits/regex_executor.h (__detail::_Executor::_Match_mode):
1029 New enumeration type to indicate match mode.
1030 (__detail::_Executor::_State_info): New type holding members only
1031 needed in BFS-mode. Replace unique_ptr<vector<bool>> with
1032 unique_ptr<bool[]>.
1033 (__detail::_Executor::_M_rep_once_more, __detail::_Executor::_M_dfs):
1034 Replace template parameter with run-time function parameter.
1035 (__detail::_Executor::_M_main): Likewise. Dispatch to ...
1036 (__detail::_Executor::_M_main_dispatch): New overloaded functions to
1037 implement DFS and BFS mode.
1038 * include/bits/regex_executor.tcc (__detail::_Executor::_M_main):
1039 Split implementation into ...
1040 (__detail::_Executor::_M_main_dispatch): New overloaded functions.
1041 (__detail::_Executor::_M_lookahead): Create nested executor on stack.
1042 (__detail::_Executor::_M_rep_once_more): Pass match mode as function
1043 argument instead of template argument.
1044 (__detail::_Executor::_M_dfs): Likewise.
1045 * include/bits/regex_scanner.tcc: Fix typos in comments.
1046 * testsuite/performance/28_regex/range.cc: New.
1047
1048 2014-06-02 Rüdiger Sonderfeld <ruediger@c-plusplus.de>
1049 Jonathan Wakely <jwakely@redhat.com>
1050
1051 * libstdc++-v3/include/std/type_traits (__strictest_alignment): New
1052 helper struct.
1053 (aligned_union): New struct (C++11).
1054 (aligned_union_t): New type alias (C++14).
1055 * doc/xml/manual/status_cxx2011.xml: Update.
1056 * libstdc++-v3/testsuite/20_util/aligned_union/1.cc: New file.
1057 * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
1058 line number.
1059
1060 2014-06-01 Jonathan Wakely <jwakely@redhat.com>
1061
1062 PR libstdc++/61374
1063 * include/experimental/string_view (operator basic_string): Correct
1064 order of arguments.
1065 (to_string): Replace with member function.
1066 Add inline specifiers. Remove unused header. Remove _S_empty_rep and
1067 allow _M_str to be null.
1068 * testsuite/experimental/string_view/cons/char/1.cc: Adjust to new
1069 default constructor semantics.
1070 * testsuite/experimental/string_view/cons/wchar_t/1.cc: Likewise.
1071 * testsuite/experimental/string_view/operations/copy/char/1.cc: Fix
1072 copyright dates. Remove unused header.
1073 * testsuite/experimental/string_view/operations/copy/wchar_t/1.cc:
1074 Likewise.
1075 * testsuite/experimental/string_view/operations/data/char/1.cc:
1076 Fix copyright dates. Adjust to new default constructor semantics.
1077 * testsuite/experimental/string_view/operations/data/wchar_t/1.cc:
1078 Likewise.
1079 * testsuite/experimental/string_view/operations/to_string/1.cc: New.
1080
1081 * include/bits/uses_allocator.h (__uses_allocator_helper): Simplify.
1082 (__uses_allocator_arg): Remove unused type.
1083 (__uses_alloc0): Turn into a trivial type.
1084 (__uses_alloc): Add missing template parameter in primary template.
1085 (__uses_alloc_impl): Rename to __uses_alloc_t.
1086
1087 2014-05-30 Jonathan Wakely <jwakely@redhat.com>
1088
1089 * testsuite/lib/libstdc++.exp (libstdc++_init): Adjust regexp to
1090 work with previous versions of Tcl.
1091
1092 * doc/xml/manual/appendix_contributing.xml (list.copyright): Replace
1093 Benjamin's old email address.
1094
1095 * doc/xml/manual/appendix_contributing.xml (list.copyright): Add
1096 Paolo's address too.
1097
1098 2014-05-29 Jonathan Wakely <jwakely@redhat.com>
1099
1100 * include/tr2/bool_set: Use UTF-8 for accented characters.
1101 * scripts/run_doxygen: Handle Doxygen 1.8.x change.
1102 * doc/doxygen/user.cfg.in: Update to Doxygen 1.8.6 format. Set
1103 QUIET=YES, remove obsolete SYMBOL_CACHE_SIZE tag.
1104
1105 2014-05-27 Jonathan Wakely <jwakely@redhat.com>
1106
1107 PR libstdc++/61329
1108 * include/bits/regex_automaton.tcc (_State_base::_M_print): Add
1109 inline specifier.
1110 (_State_base::_M_dot): Likewise.
1111
1112 2014-05-25 Paolo Carlini <paolo.carlini@oracle.com>
1113
1114 * include/profile/map.h: Fix typo in comment; minor formatting fix.
1115 * include/profile/multimap.h: Likewise.
1116 * include/profile/set.h: Likewise.
1117 * include/profile/multiset.h: Likewise.
1118
1119 2014-05-24 François Dumont <fdumont@gcc.gnu.org>
1120
1121 * include/profile/array: Clean useless white chars.
1122 * include/profile/base.h: Likewise.
1123 * include/profile/iterator_tracker.h: Likewise.
1124 * include/profile/bitset: Code cleanup and remove not instrumented code.
1125 * include/profile/deque: Likewise.
1126 * include/profile/forward_list: Likewise.
1127 * include/profile/list (std::__profile::_List_profile<>): New.
1128 (std::__profile::list<>): Inherit from latter and adapt.
1129 * include/profile/impl/profiler_map_to_unordered_map.h: Generalize
1130 advise to match any ordered to unordered container conversion.
1131 * include/profile/ordered_base.h (std::__profile::_Ordered_profile<>):
1132 New.
1133 * include/Makefile.am: Add latter.
1134 * include/Makefile.in: Regenerate.
1135 * include/profile/map.h (std::__profile::map<>): Inherit from latter,
1136 remove not instrumented code.
1137 * include/profile/multimap.h (std::__profile::multimap<>): Likewise.
1138 * include/profile/set.h (std::__profile::set<>): Likewise.
1139 * include/profile/multiset.h (std::__profile::multiset<>): Likewise.
1140 * include/profile/unordered_base.h: Add some line feed.
1141 * include/profile/unordered_map: Clean useless white chars and replace
1142 spaces with tabs.
1143 * include/profile/unordered_set: Likewise.
1144 * include/profile/vector (std::__profile::_Vector_profile_pre<>): New.
1145 (std::__profile::_Vector_profile_post<>): New.
1146 (std::__profile::vector<>): Inherit from latter and adapt.
1147
1148 2014-05-23 Jonathan Wakely <jwakely@redhat.com>
1149
1150 PR libstdc++/60793
1151 * testsuite/*: Use 's/\*-\*-freebsd\* /&*-*-dragonfly* /' to add
1152 dragonfly target selector to all tests that run on freebsd.
1153
1154 * testsuite/23_containers/vector/capacity/resize/1.cc: Add xfail for
1155 dragonfly.
1156 * testsuite/30_threads/call_once/60497.cc: Add target selectors.
1157 * testsuite/30_threads/condition_variable/members/53841.cc: Likewise.
1158
1159 * testsuite/30_threads/async/54297.cc: Remove duplicate dragonfly
1160 selector.
1161 * testsuite/30_threads/call_once/60497.cc: Likewise.
1162 * testsuite/30_threads/condition_variable/54185.cc: Likewise.
1163 * testsuite/30_threads/condition_variable_any/53830.cc: Likewise.
1164 * testsuite/30_threads/packaged_task/60564.cc: Likewise.
1165 * testsuite/30_threads/packaged_task/cons/56492.cc: Likewise.
1166 * testsuite/30_threads/promise/60966.cc: Likewise.
1167 * testsuite/30_threads/shared_lock/cons/1.cc: Likewise.
1168 * testsuite/30_threads/shared_lock/cons/2.cc: Likewise.
1169 * testsuite/30_threads/shared_lock/cons/3.cc: Likewise.
1170 * testsuite/30_threads/shared_lock/cons/4.cc: Likewise.
1171 * testsuite/30_threads/shared_lock/cons/5.cc: Likewise.
1172 * testsuite/30_threads/shared_lock/cons/6.cc: Likewise.
1173 * testsuite/30_threads/shared_lock/locking/1.cc: Likewise.
1174 * testsuite/30_threads/shared_lock/locking/2.cc: Likewise.
1175 * testsuite/30_threads/shared_lock/locking/3.cc: Likewise.
1176 * testsuite/30_threads/shared_lock/locking/4.cc: Likewise.
1177 * testsuite/30_threads/shared_lock/modifiers/1.cc: Likewise.
1178 * testsuite/30_threads/shared_lock/modifiers/2.cc: Likewise.
1179 * testsuite/30_threads/shared_timed_mutex/cons/1.cc: Likewise.
1180 * testsuite/30_threads/shared_timed_mutex/try_lock/1.cc:
1181 * testsuite/30_threads/shared_timed_mutex/try_lock/2.cc: Likewise.
1182 * testsuite/30_threads/thread/native_handle/cancel.cc: Likewise.
1183 * testsuite/30_threads/timed_mutex/try_lock_until/57641.cc: Likewise.
1184
1185 2014-05-21 François Dumont <fdumont@gcc.gnu.org>
1186
1187 PR libstdc++/61143
1188 * include/bits/hashtable.h: Fix move semantic to leave hashtable in a
1189 usable state.
1190 * testsuite/23_containers/unordered_set/61143.cc: New.
1191 * testsuite/23_containers/unordered_set/modifiers/swap.cc: New.
1192
1193 2014-05-21 Jonathan Wakely <jwakely@redhat.com>
1194
1195 PR libstdc++/61269
1196 * include/std/type_traits: Move include outside namespace std.
1197 * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error.
1198 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Likewise.
1199 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
1200 Likewise.
1201
1202 * config/locale/dragonfly/c_locale.cc (facet::_S_create_c_locale):
1203 Fix warning.
1204
1205 2014-05-21 John Marino <gnugcc@marino.st>
1206
1207 * acinclude.m4 (*-*-dragonfly*): New target.
1208 * configure: Regenerate.
1209 * configure.host (*-*-dragonfly*): New target.
1210 * config/locale/dragonfly/c_locale.cc: New.
1211 * config/locale/dragonfly/ctype_members.cc: New.
1212 * config/os/bsd/dragonfly/ctype_base.h: New.
1213 * config/os/bsd/dragonfly/ctype_configure_char.cc: New.
1214 * config/os/bsd/dragonfly/ctype_inline.h: New.
1215 * config/os/bsd/dragonfly/os_defines.h: New.
1216
1217 2014-05-20 Cesar Philippidis <cesar@codesourcery.com>
1218
1219 * scripts/testsuite_flags.in (cxxflags): Remove @CXXFLAGS@ since
1220 libstdc++.exp imports those flags via getenv.
1221 * testsuite/lib/libstdc++.exp (libstdc++_init): Ensure that
1222 CXXFLAGS contains a '-O' flag.
1223
1224 2014-05-20 Alexey Merzlyakov <alexey.merzlyakov@samsung.com>
1225
1226 PR libstdc++/61223
1227 Revert:
1228 2014-05-16 Alexey Merzlyakov <alexey.merzlyakov@samsung.com>
1229
1230 PR libstdc++/60758
1231 * libsupc++/eh_arm.cc (__cxa_end_cleanup): Change r4 to lr in save/restore
1232 and add unwind directives.
1233
1234 2014-05-20 Sebastian Huber <sebastian.huber@embedded-brains.de>
1235
1236 * testsuite/lib/libstdc++.exp (load_gcc_lib): Register loaded libs.
1237
1238 2014-05-20 Tim Shen <timshen91@gmail.com>
1239
1240 PR libstdc++/61227
1241 * include/bits/regex_compiler.h
1242 (_BracketMatcher<>::_M_add_character_class): Add negative character
1243 class support.
1244 * include/bits/regex_compiler.tcc (_BracketMatcher<>::_M_apply):
1245 Likewise.
1246 * testsuite/28_regex/algorithms/regex_match/ecma/char/quoted_char.cc:
1247 Add more testcases.
1248
1249 2014-05-19 Jonathan Wakely <jwakely@redhat.com>
1250
1251 * python/libstdcxx/v6/printers.py: Use Python3 raise syntax.
1252
1253 2014-05-17 Marc Glisse <marc.glisse@inria.fr>
1254
1255 * libsupc++/new_op.cc: Factor the calls to malloc, use __builtin_expect.
1256 * libsupc++/new_opnt.cc: Likewise.
1257
1258 2014-05-17 Jonathan Wakely <jwakely@redhat.com>
1259
1260 PR libstdc++/60966
1261 * include/std/future (__future_base::_State_baseV2::_M_set_result):
1262 Pass lock into _M_do_set and hold it until the function returns.
1263 Signal condition variable after call_once completes.
1264 (__future_base::_State_baseV2::_M_do_set): Use lock argument. Do not
1265 signal here.
1266 * testsuite/30_threads/promise/60966.cc: New.
1267
1268 2014-05-16 Iain Sandoe <iain@codesourcery.com>
1269 Sandra Loosemore <sandra@codesourcery.com>
1270
1271 * testsuite/libstdc++-abi/abi.exp: Defer setting of baseline_subdir
1272 until after checking that the test is eligible to be run.
1273
1274 2014-05-16 Jonathan Wakely <jwakely@redhat.com>
1275
1276 * testsuite/20_util/make_unsigned/requirements/typedefs-1.cc: Fix
1277 test for 32-bit target.
1278 * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc:
1279 Likewise.
1280 * testsuite/tr1/2_general_utilities/shared_ptr/modifiers/reset_neg.cc:
1281 Fix test.
1282
1283 2014-05-16 Alexey Merzlyakov <alexey.merzlyakov@samsung.com>
1284
1285 PR libstdc++/60758
1286 * libsupc++/eh_arm.cc (__cxa_end_cleanup): Change r4 to lr in save/restore
1287 and add unwind directives.
1288
1289 2014-05-16 Jonathan Wakely <jwakely@redhat.com>
1290
1291 * include/bits/parse_numbers.h (__parse_int::_Number_help): Check for
1292 overflow.
1293 * include/std/chrono (chrono_literals::__select_type::_Select_type):
1294 Remove.
1295 (chrono_literals::_Checked_integral_constant): Define.
1296 Simplify UDL operator templates and check for overflow.
1297 * testsuite/20_util/duration/literals/range.cc: New.
1298
1299 2014-05-16 Ed Smith-Rowland <3dw4rd@verizon.net>
1300 Jonathan Wakely <jwakely@redhat.com>
1301
1302 PR libstdc++/61166
1303 * include/bits/parse_numbers.h: Use integral_constant to remove
1304 duplication and simplify.
1305 * testsuite/20_util/duration/literals/61166.cc: New.
1306
1307 2014-05-15 Jonathan Wakely <jwakely@redhat.com>
1308
1309 PR libstdc++/60326
1310 * include/std/type_traits (__make_unsigned, __make_signed): Define
1311 specializations for wchar_t, char16_t and char32_t.
1312 * testsuite/20_util/make_signed/requirements/typedefs-4.cc: New.
1313 * testsuite/20_util/make_unsigned/requirements/typedefs-1.cc: Correct
1314 test for make_unsigned<volatile wchar_t>.
1315 * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc:
1316 Likewise.
1317 * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
1318 line number.
1319 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
1320 Likewise.
1321 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
1322 Likewise.
1323
1324 2014-05-15 Jonathan Wakely <jwakely@redhat.com>
1325
1326 * include/std/tuple (tuple_size<cv _Tp>): Implement LWG 2313.
1327 * include/std/array (tuple_size, tuple_element): Add Doxygen comments.
1328 * include/std/utility (tuple_size, tuple_element): Likewise.
1329 * testsuite/23_containers/array/tuple_interface/tuple_element_neg.cc:
1330 Adjust dg-error line number.
1331
1332 2014-05-14 Jonathan Wakely <jwakely@redhat.com>
1333
1334 * include/std/tuple (__add_c_ref, __add_ref, __add_r_ref): Remove.
1335 (__tuple_element_t): Define.
1336 (tuple_element): Use __tuple_element_t.
1337 (__cv_tuple_size): Define.
1338 (tuple_size<cv _Tp>): Use __cv_tuple_size.
1339 (get, __get_helper, __get_helper2): Remove uses of __add_ref etc.
1340 (get<_Tp>(tuple<_Types...>&&)): Use forward instead of move.
1341 (__tuple_compare): Remove size check, re-order parameters.
1342 (operator==, operator<): Use static_assert to check requirements.
1343 * include/std/functional (__volget): use __tuple_element_t.
1344 * testsuite/20_util/tuple/element_access/get_by_type.cc: Test rvalues.
1345 * testsuite/20_util/uses_allocator/cons_neg.cc: Adjust dg-error.
1346
1347 2014-05-13 Jonathan Wakely <jwakely@redhat.com>
1348
1349 PR libstdc++/60497
1350 * include/std/tuple (get, __tuple_compare): Qualify more calls to
1351 prevent ADL. Cast comparison results to bool.
1352 * testsuite/20_util/tuple/60497.cc: Test accessing rvalues.
1353 * testsuite/20_util/tuple/comparison_operators/overloaded.cc: New.
1354
1355 PR libstdc++/60497
1356 * include/debug/array (get): Qualify call to other get overload.
1357 * include/profile/array (get): Likewise.
1358 * include/std/array (get): Likewise.
1359 * include/std/functional (_Mu, _Bind, _Bind_result): Qualify std::get.
1360 * include/std/mutex (unique_lock, call_once): Use __addressof.
1361 (__unlock_impl): Remove unused template.
1362 (__try_to_lock): Declare inline.
1363 (__try_lock_impl::__do_try_lock): Qualify function calls.
1364 (lock): Avoid narrowing conversion.
1365 * testsuite/20_util/bind/60497.cc: New.
1366 * testsuite/23_containers/array/element_access/60497.cc: New.
1367 * testsuite/30_threads/call_once/60497.cc: New.
1368 * testsuite/30_threads/unique_lock/cons/60497.cc: New.
1369
1370 2014-05-09 Jonathan Wakely <jwakely@redhat.com>
1371
1372 * config/abi/pre/gnu.ver (GLIBCXX_3.4.20): Correct regex_error export.
1373 (GLIBCXX_3.4.21): Export base object constructor for regex_error.
1374 * acinclude.m4 (libtool_VERSION): Bump.
1375 * configure: Regenerate.
1376 * testsuite/util/testsuite_abi.cc: Add GLIBCXX_3.4.21 version.
1377 * testsuite/28_regex/regex_error/base.cc: New.
1378
1379 2014-05-08 Joshua Gay <jgay@gnu.org>
1380
1381 PR libstdc++/61117
1382 * doc/xml/faq.xml (faq.license.what_restrictions): Replace "open
1383 source" with "free software".
1384 * doc/html/faq.html: Likewise.
1385
1386 2014-05-08 Jonathan Wakely <jwakely@redhat.com>
1387
1388 PR libstdc++/57394
1389 * include/bits/ios_base.h (ios_base(const ios_base&)): Define as
1390 deleted for C++11.
1391 (operator=(const ios_base&)): Likewise.
1392 * include/std/streambuf: Remove trailing whitespace.
1393 (basic_streambuf(const basic_streambuf&)): Fix initializer for
1394 _M_out_end. Define as defaulted for C++11.
1395 (operator=(const basic_streambuf&)): Define as defaulted for C++11.
1396 (swap(basic_streambuf&)): Define for C++11.
1397 * testsuite/27_io/basic_streambuf/cons/57394.cc: New.
1398
1399 PR libstdc++/13860
1400 * include/std/fstream (basic_filebuf): Enforce requirements on traits.
1401
1402 * include/std/iostream: Fix URL in comment.
1403 * src/c++98/ios_init.cc: Fix path in comment.
1404
1405 2014-05-08 Paolo Carlini <paolo.carlini@oracle.com>
1406
1407 * acinclude.m4 ([GLIBCXX_ENABLE_C99]): Avoid -Wwrite-strings warning.
1408 * configure: Regenerate.
1409
1410 2014-05-07 Jonathan Wakely <jwakely@redhat.com>
1411
1412 PR libstdc++/61023
1413 * include/bits/stl_tree.h (_Rb_tree::_M_move_assign): Copy the
1414 comparison function.
1415 * testsuite/23_containers/set/cons/61023.cc: New.
1416
1417 PR libstdc++/61086
1418 * include/bits/stl_iterator.h (__normal_iterator::_M_const_cast):
1419 Remove.
1420 * include/bits/stl_vector.h (vector::insert, vector::erase): Use
1421 arithmetic to obtain a mutable iterator from const_iterator.
1422 * include/bits/vector.tcc (vector::insert): Likewise.
1423 * include/debug/vector (vector::erase): Likewise.
1424 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
1425 Adjust dg-error line number.
1426 * testsuite/23_containers/vector/requirements/dr438/
1427 constructor_1_neg.cc: Likewise.
1428 * testsuite/23_containers/vector/requirements/dr438/
1429 constructor_2_neg.cc: Likewise.
1430 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
1431 Likewise.
1432
1433 2014-05-06 Paolo Carlini <paolo.carlini@oracle.com>
1434
1435 * include/Makefile.in: Regenerate.
1436
1437 2014-05-06 François Dumont <fdumont@gcc.gnu.org>
1438
1439 * include/debug/macros.h [__glibcxx_check_equal_allocs]: Add
1440 parameter to pass the 2 instances to check allocator equality.
1441 * include/debug/safe_container.h: New, define _Safe_container<>.
1442 * include/Makefile.am: Add previous.
1443 * include/debug/deque (std::__debug::deque<>): Inherit
1444 _Safe_container<>. Use default implementation for all special
1445 functions.
1446 * include/debug/forward_list (std::__debug::forward_list<>):
1447 Likewise.
1448 * include/debug/list (std::__debug::list<>): Likewise.
1449 * include/debug/map.h (std::__debug::map<>): Likewise.
1450 * include/debug/multimap.h (std::__debug::multimap<>): Likewise.
1451 * include/debug/set.h (std::__debug::set<>): Likewise.
1452 * include/debug/multiset.h (std::__debug::multiset<>): Likewise.
1453 * include/debug/string (std::__debug::basic_string<>): Likewise.
1454 * include/debug/unordered_map
1455 (std::__debug::unordered_map<>): Likewise.
1456 (std::__debug::unordered_multimap<>): Likewise.
1457 * include/debug/unordered_set
1458 (std::__debug::unordered_set<>): Likewise.
1459 (std::__debug::unordered_multiset<>): Likewise.
1460 * include/debug/vector (std::__debug::vector<>): Likewise.
1461 * include/debug/safe_base.h (_Safe_sequence_base()): Add
1462 noexcept.
1463 (_Safe_sequence_base(_Safe_sequence_base&&): Remove.
1464 (~_Safe_sequence_base()): Add noexcept.
1465 * include/debug/safe_sequence.h
1466 (std::__debug::_Safe_node_sequence<>): New.
1467 * include/debug/safe_unordered_base.h
1468 (_Safe_unordered_container_base()): Add noexcept.
1469 (~_Safe_unordered_container_base()): Likewise.
1470 (_M_swap(_Safe_unordered_container_base&)): Likewise.
1471 * include/debug/safe_unordered_container.h:
1472 (_Safe_unordered_container<>::_M_invalidate_locals()): New.
1473 (_Safe_unordered_container<>::_M_invalidate_all()): New.
1474 * src/c++11/debug.cc: Limit includes, adapt methods noexcept
1475 qualifications.
1476 * testsuite/util/debug/checks.h (check_construct1): Just implement
1477 an invalid constructor invocation and no other operations
1478 potentially not supported by some types of container.
1479 (check_construct2): Likewise.
1480 (check_construct3): Likewise.
1481 * testsuite/23_containers/forward_list/allocator/move.cc: Add
1482 check on iterators to make sure they are correctly moved in debug
1483 mode.
1484 * testsuite/23_containers/forward_list/allocator/move_assign.cc:
1485 Likewise.
1486 * testsuite/23_containers/map/allocator/move.cc: Likewise.
1487 * testsuite/23_containers/map/allocator/move_assign.cc: Likewise.
1488 * testsuite/23_containers/multimap/allocator/move.cc: Likewise.
1489 * testsuite/23_containers/multimap/allocator/move_assign.cc:
1490 Likewise.
1491 * testsuite/23_containers/multiset/allocator/move.cc: Likewise.
1492 * testsuite/23_containers/multiset/allocator/move_assign.cc:
1493 Likewise.
1494 * testsuite/23_containers/set/allocator/move.cc: Likewise.
1495 * testsuite/23_containers/set/allocator/move_assign.cc: Likewise.
1496 * testsuite/23_containers/unordered_map/allocator/move.cc:
1497 Likewise.
1498 * testsuite/23_containers/unordered_map/allocator/move_assign.cc:
1499 Likewise.
1500 * testsuite/23_containers/unordered_multimap/allocator/move.cc:
1501 Likewise.
1502 * testsuite/23_containers/unordered_multimap/allocator/move_assign.cc:
1503 Likewise.
1504 * testsuite/23_containers/unordered_multiset/allocator/move.cc:
1505 Likewise.
1506 * testsuite/23_containers/unordered_multiset/allocator/move_assign.cc:
1507 Likewise.
1508 * testsuite/23_containers/unordered_set/allocator/move.cc:
1509 Likewise.
1510 * testsuite/23_containers/unordered_set/allocator/move_assign.cc:
1511 Likewise.
1512 * testsuite/23_containers/forward_list/debug/construct1_neg.cc:
1513 New.
1514 * testsuite/23_containers/forward_list/debug/construct2_neg.cc:
1515 New.
1516 * testsuite/23_containers/forward_list/debug/construct3_neg.cc:
1517 New.
1518 * testsuite/23_containers/forward_list/debug/construct4_neg.cc:
1519 New.
1520 * testsuite/23_containers/forward_list/debug/move_assign_neg.cc:
1521 New.
1522 * testsuite/23_containers/forward_list/debug/move_neg.cc: New.
1523 * testsuite/23_containers/map/debug/construct5_neg.cc: New.
1524 * testsuite/23_containers/map/debug/move_assign_neg.cc: New.
1525 * testsuite/23_containers/map/debug/move_neg.cc: New.
1526 * testsuite/23_containers/multimap/debug/construct5_neg.cc: New.
1527 * testsuite/23_containers/multimap/debug/move_assign_neg.cc: New.
1528 * testsuite/23_containers/multimap/debug/move_neg.cc: New.
1529 * testsuite/23_containers/multiset/debug/construct5_neg.cc: New.
1530 * testsuite/23_containers/multiset/debug/move_assign_neg.cc: New.
1531 * testsuite/23_containers/multiset/debug/move_neg.cc: New.
1532 * testsuite/23_containers/set/debug/construct5_neg.cc: New.
1533 * testsuite/23_containers/set/debug/move_assign_neg.cc: New.
1534 * testsuite/23_containers/set/debug/move_neg.cc: New.
1535 * testsuite/23_containers/unordered_map/debug/construct5_neg.cc:
1536 New.
1537 * testsuite/23_containers/unordered_map/debug/move_assign_neg.cc:
1538 New.
1539 * testsuite/23_containers/unordered_map/debug/move_neg.cc: New.
1540 * testsuite/23_containers/unordered_multimap/debug/construct5_neg.cc:
1541 New.
1542 * testsuite/23_containers/unordered_multimap/debug/move_assign_neg.cc:
1543 New.
1544 * testsuite/23_containers/unordered_multimap/debug/move_neg.cc:
1545 New.
1546 * testsuite/23_containers/unordered_multiset/debug/construct5_neg.cc:
1547 New.
1548 * testsuite/23_containers/unordered_multiset/debug/move_assign_neg.cc:
1549 New.
1550 * testsuite/23_containers/unordered_multiset/debug/move_neg.cc:
1551 New.
1552 * testsuite/23_containers/unordered_set/debug/construct5_neg.cc:
1553 New.
1554 * testsuite/23_containers/unordered_set/debug/move_assign_neg.cc:
1555 New.
1556 * testsuite/23_containers/unordered_set/debug/move_neg.cc: New.
1557 * testsuite/23_containers/vector/debug/move_neg.cc: New.
1558
1559 2014-05-05 Andreas Schwab <schwab@linux-m68k.org>
1560
1561 * config/abi/post/ia64-linux-gnu/baseline_symbols.txt
1562 (CXXABI_1.3.9): Remove __float128 symbols.
1563
1564 2014-05-02 Jonathan Wakely <jwakely@redhat.com>
1565
1566 PR libstdc++/59476
1567 * python/libstdcxx/v6/printers.py (get_value_from_Rb_tree_node): New
1568 function to handle both C++03 and C++11 _Rb_tree_node implementations.
1569 (StdRbtreeIteratorPrinter, StdMapPrinter, StdSetPrinter): Use it.
1570 * testsuite/libstdc++-prettyprinters/simple.cc: Update comment to
1571 refer to...
1572 * testsuite/libstdc++-prettyprinters/simple11.cc: New.
1573
1574 PR libstdc++/61036
1575 * include/bits/shared_ptr_base.h (__shared_ptr::__shared_ptr(_Tp1*)):
1576 Check the correct type in the static assertion.
1577 * testsuite/20_util/shared_ptr/cons/61036.cc: New.
1578
1579 2014-04-27 Tim Shen <timshen91@gmail.com>
1580
1581 * include/bits/regex_automaton.h (_NFA<>::_M_insert_repeat):
1582 Add _S_opcode_repeat support to distingush a loop from
1583 _S_opcode_alternative.
1584 * include/bits/regex_automaton.tcc (_State_base::_M_print,
1585 _State_base::_M_dot, _NFA<>::_M_eliminate_dummy,
1586 _StateSeq<>::_M_clone): Likewise.
1587 * include/bits/regex_compiler.tcc (_Compiler<>::_M_quantifier):
1588 Likewise.
1589 * include/bits/regex_executor.tcc (_Executor<>::_M_dfs): Likewise.
1590 * include/bits/regex_scanner.tcc (_Scanner<>::_M_eat_escape_ecma):
1591 Uglify local variable __i.
1592 * include/bits/regex_compiler.h (_BracketMatcher<>::_M_make_cache):
1593 Use size_t instead of int to compare with vector::size().
1594
1595 2014-04-27 Tim Shen <timshen91@gmail.com>
1596
1597 * include/bits/regex_executor.h: Add _M_rep_count to track how
1598 many times this repeat node are visited.
1599 * include/bits/regex_executor.tcc (_Executor<>::_M_rep_once_more,
1600 _Executor<>::_M_dfs): Use _M_rep_count to prevent entering
1601 infinite loop.
1602
1603 2014-04-27 Tim Shen <timshen91@gmail.com>
1604
1605 * include/bits/regex.tcc (__regex_algo_impl<>): Remove
1606 _GLIBCXX_REGEX_DFS_QUANTIFIERS_LIMIT and use
1607 _GLIBCXX_REGEX_USE_THOMPSON_NFA instead.
1608 * include/bits/regex_automaton.h: Remove quantifier counting variable.
1609 * include/bits/regex_automaton.tcc (_State_base::_M_dot):
1610 Adjust debug NFA dump.
1611
1612 2014-04-25 Lars Gullik Bjønnes <larsbj@gullik.org>
1613
1614 PR libstdc++/60710
1615 * include/experimental/optional (operator!=): Implement in terms of
1616 operator==.
1617 * testsuite/experimental/optional/relops/1.cc: Remove operator!=.
1618 * testsuite/experimental/optional/relops/2.cc: Likewise.
1619 * testsuite/experimental/optional/relops/3.cc: Likewise.
1620 * testsuite/experimental/optional/relops/4.cc: Likewise.
1621 * testsuite/experimental/optional/relops/5.cc: Likewise.
1622 * testsuite/experimental/optional/relops/6.cc: Likewise.
1623
1624 2014-04-25 Jonathan Wakely <jwakely@redhat.com>
1625
1626 PR libstdc++/60958
1627 * include/tr1/regex (regex_traits::isctype): Comment out broken code.
1628 * testsuite/util/testsuite_regex.h (regex_match_debug): Improve
1629 comment.
1630
1631 2014-04-25 Marc Glisse <marc.glisse@inria.fr>
1632
1633 * testsuite/util/testsuite_abi.cc (check_version): Update for
1634 CXXABI_1.3.9.
1635
1636 2014-04-24 Tim Shen <timshen91@gmail.com>
1637
1638 * include/bits/regex_automaton.tcc (_StateSeq<>::_M_clone()):
1639 Do _M_alt before _M_next.
1640 * testsuite/28_regex/basic_regex/multiple_quantifiers.cc: Add testcases.
1641
1642 2014-04-24 Marc Glisse <marc.glisse@inria.fr>
1643
1644 PR libstdc++/43622
1645 * config/abi/pre/gnu.ver (CXXABI_1.3.9): Remove __float128 symbols.
1646 * config/abi/pre/gnu-versioned-namespace.ver: Likewise.
1647 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
1648
1649 2014-04-24 Andreas Schwab <schwab@suse.de>
1650
1651 * config/abi/post/ia64-linux-gnu/baseline_symbols.txt: Update for
1652 new CXXABI_1.3.9 symbols.
1653
1654 2014-04-23 Andreas Schwab <schwab@linux-m68k.org>
1655
1656 * config/abi/post/m68k-linux-gnu/baseline_symbols.txt
1657 (CXXABI_1.3.9): New version.
1658
1659 2014-04-22 Marc Glisse <marc.glisse@inria.fr>
1660
1661 PR libstdc++/43622
1662 * config/abi/pre/gnu.ver (CXXABI_1.3.9): New version, new symbols.
1663 * config/abi/pre/gnu-versioned-namespace.ver: New symbols.
1664 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
1665
1666 2014-04-22 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1667
1668 * configure.host: Remove solaris2.9 handling.
1669 Change os_include_dir to os/solaris/solaris2.10.
1670 * acinclude.m4 (ac_has_gthreads): Remove solaris2.9* handling.
1671 * crossconfig.m4: Remove *-solaris2.9 handling, simplify.
1672 * configure: Regenerate.
1673 * config/abi/post/solaris2.9: Remove.
1674 * config/os/solaris/solaris2.9: Rename to ...
1675 * config/os/solaris/solaris2.10: ... this.
1676 * config/os/solaris/solaris2.10/os_defines.h (CLOCK_MONOTONIC):
1677 Remove.
1678
1679 * doc/xml/manual/configure.xml (--enable-libstdcxx-threads):
1680 Remove Solaris 9 reference.
1681 * doc/html/manual/configure.html: Regenerate.
1682
1683 * testsuite/27_io/basic_istream/extractors_arithmetic/char/12.cc:
1684 Remove *-*-solaris2.9 xfail.
1685 * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/12.cc:
1686 Likewise.
1687
1688 * testsuite/ext/enc_filebuf/char/13598.cc: Remove *-*-solaris2.9
1689 xfail.
1690
1691 2014-04-16 Jonathan Wakely <jwakely@redhat.com>
1692
1693 * include/std/functional (__is_location_invariant): Use __or_ helper.
1694
1695 2014-04-15 Jonathan Wakely <jwakely@redhat.com>
1696
1697 PR libstdc++/60734
1698 * include/bits/stl_tree.h (_Rb_tree::_M_end): Fix invalid cast.
1699
1700 PR libstdc++/60695
1701 * include/std/atomic (atomic<_Tp>): Add static assertion.
1702 * testsuite/29_atomics/atomic/60695.cc: New.
1703
1704 PR libstdc++/60594
1705 * include/std/functional (function::_Callable): Exclude own type
1706 from the callable checks.
1707 * testsuite/20_util/function/60594.cc: New.
1708
1709 * include/bits/atomic_base.h (__atomic_base<_PTp*>::_M_type_size): Add
1710 const to constexpr member functions.
1711
1712 * include/bits/shared_ptr.h (shared_ptr::shared_ptr(nullptr_t)): Use
1713 delegating constructor.
1714 * include/bits/shared_ptr_base.h
1715 (__shared_ptr::__shared_ptr(nullptr_t)): Likewise
1716
1717 * include/std/atomic: Uglify parameter names.
1718
1719 PR c++/60786
1720 * testsuite/20_util/shared_ptr/requirements/explicit_instantiation/
1721 1.cc: Fix invalid explicit instantiations with unqualified names.
1722 * testsuite/20_util/shared_ptr/requirements/explicit_instantiation/
1723 2.cc: Likweise.
1724 * testsuite/20_util/tuple/53648.cc: Likweise.
1725 * testsuite/20_util/weak_ptr/requirements/explicit_instantiation/1.cc:
1726 Likewise.
1727 * testsuite/20_util/weak_ptr/requirements/explicit_instantiation/2.cc:
1728 Likewise.
1729 * testsuite/23_containers/unordered_map/requirements/
1730 debug_container.cc: Likewise.
1731 * testsuite/23_containers/unordered_map/requirements/
1732 explicit_instantiation/3.cc: Likewise.
1733 * testsuite/23_containers/unordered_multimap/requirements/debug.cc:
1734 Likewise.
1735 * testsuite/23_containers/unordered_multimap/requirements/
1736 explicit_instantiation/3.cc: Likewise.
1737 * testsuite/23_containers/unordered_multiset/requirements/debug.cc:
1738 Likewise.
1739 * testsuite/23_containers/unordered_multiset/requirements/
1740 explicit_instantiation/3.cc: Likewise.
1741 * testsuite/23_containers/unordered_set/requirements/
1742 debug_container.cc: Likewise.
1743 * testsuite/23_containers/unordered_set/requirements/
1744 explicit_instantiation/3.cc: Likewise.
1745
1746 * testsuite/24_iterators/insert_iterator/requirements/container.cc: Do
1747 not use uninitialized members in mem-initializers.
1748 * testsuite/ext/throw_value/cons.cc: Fix most vexing parse.
1749 * testsuite/util/testsuite_common_types.h: Update comment.
1750
1751 * include/experimental/string_view: Fix inconsistent exception specs.
1752
1753 * include/bits/shared_ptr.h (shared_ptr::shared_ptr(nullptr_t)):
1754 Remove name of unused parameter.
1755
1756 2014-04-14 Jonathan Wakely <jwakely@redhat.com>
1757
1758 * include/bits/stl_vector.h (_Vector_base::_Vector_impl,
1759 _Vector_base::_M_allocate): NullablePointer requirements do not
1760 include initialization from literal zero, use value-initialization.
1761 * include/bits/vector.tcc (vector::_M_insert_aux,
1762 vector::_M_explace_back_aux): Likewise for assignment.
1763
1764 * include/bits/allocator.h (operator==, operator!=): Add exception
1765 specifications.
1766
1767 PR libstdc++/60497
1768 * include/std/tuple (get): Qualify calls to prevent ADL.
1769 * testsuite/20_util/tuple/60497.cc: New.
1770
1771 * include/std/tuple (tuple_element_t): Define.
1772 * testsuite/20_util/tuple/tuple_element.cc: Change to compile-only
1773 test.
1774 * testsuite/20_util/tuple/tuple_element_t.cc: New.
1775
1776 2014-04-11 Marc Glisse <marc.glisse@inria.fr>
1777
1778 PR libstdc++/59434
1779 * include/bits/stl_iterator.h (move_iterator::reference,
1780 move_iterator::operator*): Implement LWG 2106.
1781 * testsuite/24_iterators/move_iterator/dr2106.cc: New file.
1782
1783 2014-04-11 Marc Glisse <marc.glisse@inria.fr>
1784
1785 * include/std/complex (__complex_exp, pow): Specify the template
1786 parameter in calls to std::polar, for expression templates.
1787
1788 2014-04-10 Andreas Schwab <schwab@suse.de>
1789
1790 * config/abi/post/alpha-linux-gnu/baseline_symbols.txt: Remove TLS
1791 symbols.
1792 * config/abi/post/m68k-linux-gnu/baseline_symbols.txt: Likewise.
1793 * config/abi/post/mips64-linux-gnu/baseline_symbols.txt: Likewise.
1794
1795 * config/abi/post/ia64-linux-gnu/baseline_symbols.txt: Update.
1796
1797 2014-04-07 Jonathan Wakely <jwakely@redhat.com>
1798
1799 * testsuite/20_util/exchange/1.cc: Add missing return statements.
1800 * testsuite/20_util/pair/40925.cc: Avoid most vexing parse.
1801 * testsuite/22_locale/codecvt_byname/50714.cc: Add missing exception
1802 specifications.
1803
1804 2014-04-02 Dominique d'Humieres <dominiq@lps.ens.fr>
1805 Jack Howarth <howarth@bromo.med.uc.edu>
1806
1807 PR target/54407
1808 * testsuite/30_threads/condition_variable/54185.cc: Skip for
1809 darwin < 11.
1810
1811 2014-04-01 Jonathan Wakely <jwakely@redhat.com>
1812
1813 * doc/xml/manual/backwards_compatibility.xml (backwards.third.headers):
1814 Update link.
1815 * doc/xml/manual/policy_data_structures_biblio.xml (bibliography):
1816 Fix broken links.
1817 * doc/xml/manual/shared_ptr.xml (shared_ptr.impl): Likewise.
1818 * doc/xml/manual/using_exceptions.xml (bibliography): Likewise.
1819 * doc/xml/manual/concurrency_extensions.xml
1820 (manual.ext.concurrency.impl.atomic_fallbacks): Likewise.
1821 * doc/html/*: Regenerate.
1822
1823 2014-03-31 Lars Gullik Bjønnes <larsbj@gullik.org>
1824 Jonathan Wakely <jwakely@redhat.com>
1825
1826 PR libstdc++/60270
1827 * include/std/iomanip (_Quoted_string operator>>): Do not clear
1828 string if input is not quoted.
1829 * testsuite/27_io/manipulators/standard/char/60270.cc: New.
1830
1831 2014-03-31 Jonathan Wakely <jwakely@redhat.com>
1832
1833 * libsupc++/eh_ptr.cc: Improve static_assert messages.
1834
1835 2014-03-31 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1836
1837 * testsuite/18_support/exception_ptr/60612-terminate.cc
1838 (terminate, f): Wrap in _GLIBCXX_USE_C99.
1839 * testsuite/18_support/exception_ptr/60612-unexpected.cc: Likewise.
1840
1841 2014-03-27 Jonathan Wakely <jwakely@redhat.com>
1842
1843 * doc/xml/manual/io.xml (std.io.objects): Additional markup.
1844
1845 * doc/xml/faq.xml (faq): Refer to clauses instead of chapters.
1846 * doc/xml/manual/appendix_contributing.xml (contrib.design_notes):
1847 Likewise.
1848 * doc/xml/manual/backwards_compatibility.xml (backwards.third):
1849 Likewise.
1850 * doc/xml/manual/test.xml (test.organization.layout): Likewise.
1851
1852 * doc/xml/manual/containers.xml (associative.bitset.size_variable):
1853 Fix bad s/part/chapter/ substitutions.
1854 * doc/xml/manual/io.xml (std.io): Likewise.
1855 * doc/xml/manual/numerics.xml (std.numerics.generalized_ops): Likewise.
1856 * doc/xml/manual/strings.xml (strings.string.Cstring): Likewise.
1857
1858 * doc/html/*: Regenerate.
1859
1860 2014-03-27 Jonathan Wakely <jwakely@redhat.com>
1861
1862 PR libstdc++/60612
1863 * libsupc++/eh_ptr.cc: Assert __cxa_dependent_exception layout is
1864 compatible with __cxa_exception.
1865 * libsupc++/unwind-cxx.h (__cxa_dependent_exception): Add padding.
1866 Fix typos in comments.
1867 * testsuite/18_support/exception_ptr/60612-terminate.cc: New.
1868 * testsuite/18_support/exception_ptr/60612-unexpected.cc: New.
1869
1870 2014-03-25 Jonathan Wakely <jwakely@redhat.com>
1871
1872 PR libstdc++/60658
1873 * include/bits/atomic_base.h (__atomic_base<_PTp*>::is_lock_free()):
1874 Use sizeof pointer type not the element type.
1875 * testsuite/29_atomics/atomic/60658.cc: New.
1876
1877 2014-03-24 Jakub Jelinek <jakub@redhat.com>
1878
1879 * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt: Update.
1880 * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Likewise.
1881 * config/abi/post/s390-linux-gnu/baseline_symbols.txt: Likewise.
1882 * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Likewise.
1883 * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Likewise.
1884 * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Likewise.
1885 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
1886 * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Likewise.
1887 * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Likewise.
1888 * config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Remove TLS
1889 entries.
1890
1891 2014-03-23 John David Anglin <danglin@gcc.gnu.org>
1892
1893 * testsuite/23_containers/bitset/45713.cc: Skip compile on hppa*64*-*-*.
1894
1895 2014-03-23 François Dumont <fdumont@gcc.gnu.org>
1896
1897 * include/bits/hashtable.h (_Hashtable(allocator_type)): Fix call
1898 to delegated constructor.
1899 (_Hashtable(size_type, _H1, key_equal, allocator_type)): Likewise.
1900 (_Hashtable<_It>(_It, _It, size_type, _H1, key_equal, allocator_type)):
1901 Likewise.
1902 (_Hashtable(
1903 initializer_list, size_type, _H1, key_equal, allocator_type)): Likewise.
1904
1905 2014-03-23 John David Anglin <danglin@gcc.gnu.org>
1906
1907 PR libstdc++/60623
1908 * config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Update.
1909
1910 2014-03-21 Jonathan Wakely <jwakely@redhat.com>
1911
1912 PR libstdc++/60587
1913 * include/debug/functions.h (_Is_contiguous_sequence): Define.
1914 (__foreign_iterator): Accept additional iterator. Do not dispatch on
1915 iterator category.
1916 (__foreign_iterator_aux2): Likewise. Add overload for iterators
1917 from different types of debug container. Use _Is_contiguous_sequence
1918 instead of is_lvalue_reference.
1919 (__foreign_iterator_aux3): Accept additional iterator. Avoid
1920 dereferencing past-the-end iterator.
1921 (__foreign_iterator_aux4): Use const value_type* instead of
1922 potentially user-defined const_pointer type.
1923 * include/debug/macros.h (__glibcxx_check_insert_range): Fix comment
1924 and pass end iterator to __gnu_debug::__foreign_iterator.
1925 (__glibcxx_check_insert_range_after): Likewise.
1926 (__glibcxx_check_max_load_factor): Fix comment.
1927 * include/debug/vector (_Is_contiguous_sequence): Define partial
1928 specializations.
1929 * testsuite/23_containers/vector/debug/57779_neg.cc: Remove
1930 -std=gnu++11 option and unused header.
1931 * testsuite/23_containers/vector/debug/60587.cc: New.
1932 * testsuite/23_containers/vector/debug/60587_neg.cc: New.
1933
1934 2014-03-20 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
1935
1936 * crossconfig.m4: Support spu-*-elf* targets.
1937 * configure: Regenerate.
1938
1939 2014-03-18 Jonathan Wakely <jwakely@redhat.com>
1940
1941 PR libstdc++/60564
1942 * include/std/future (__future_base::_Task_state<>): Change
1943 constructors to template functions using perfect forwarding.
1944 (__create_task_state): Use decayed type as stored task.
1945 (packaged_task::packaged_task(_Fn&&)): Forward instead of moving.
1946 * testsuite/30_threads/packaged_task/60564.cc: New.
1947
1948 2014-03-16 François Dumont <fdumont@gcc.gnu.org>
1949
1950 * scripts/create_testsuite_files: Add testsuite/experimental in
1951 the list of folders to search for tests.
1952
1953 2014-03-15 Andreas Schwab <schwab@linux-m68k.org>
1954
1955 * config/abi/post/m68k-linux-gnu/baseline_symbols.txt: New file.
1956
1957 2014-03-15 Tim Shen <timshen91@gmail.com>
1958
1959 * include/bits/regex.h: Add/modify comments.
1960 * include/bits/regex_compiler.h: Likewise.
1961 * include/bits/regex_executor.h: Likewise.
1962 * include/bits/regex_executor.tcc: Likewise.
1963 * include/bits/regex_scanner.h: Likewise.
1964
1965 2014-03-14 Jonathan Wakely <jwakely@redhat.com>
1966
1967 PR ipa/58721
1968 * config/abi/pre/gnu.ver (GLIBCXX_3.4.11): Remove unused pattern for
1969 _ZNSt12system_errorC* symbols which are not exported on any target.
1970
1971 2014-03-12 Roland McGrath <mcgrathr@google.com>
1972 Mark Seaborn <mseaborn@google.com>
1973
1974 PR libstdc++/59392
1975 * libsupc++/eh_call.cc (__cxa_call_unexpected): Call __do_catch with
1976 the address of a null pointer, not with a null pointer to pointer.
1977 Copy comment for this case from eh_personality.cc:__cxa_call_unexpected.
1978 * testsuite/18_support/bad_exception/59392.cc: New file.
1979
1980 2014-03-11 Jonathan Wakely <jwakely@redhat.com>
1981
1982 PR libstdc++/60499
1983 * include/debug/forward_list (forward_list::operator=(forward_list&&)):
1984 Uglify name.
1985 * include/debug/map (map::operator=(map&&)): Likewise.
1986 * include/debug/multimap (multimap::operator=(multimap&&)): Likewise.
1987 * include/debug/multiset (multiset::operator=(multiset&&)): Likewise.
1988 * include/debug/set (set::operator=(set&&)): Likewise.
1989 * include/debug/unordered_map
1990 (unordered_map::operator=(unordered_map&&)): Likewise.
1991 (unordered_multimap::operator=(unordered_multimap&&)): Likewise.
1992 * include/debug/unordered_set
1993 (unordered_set::operator=(unordered_set&&)): Likewise.
1994 (unordered_multiset::operator=(unordered_multiset&&)): Likewise.
1995 * include/debug/vector (vector::operator=(vector&&)): Likewise.
1996 * testsuite/23_containers/forward_list/debug/60499.cc: New
1997 * testsuite/23_containers/map/debug/60499.cc: New
1998 * testsuite/23_containers/multimap/debug/60499.cc: New
1999 * testsuite/23_containers/multiset/debug/60499.cc: New
2000 * testsuite/23_containers/set/debug/60499.cc: New
2001 * testsuite/23_containers/unordered_map/debug/60499.cc: New
2002 * testsuite/23_containers/unordered_multimap/debug/60499.cc: New
2003 * testsuite/23_containers/unordered_multiset/debug/60499.cc: New
2004 * testsuite/23_containers/unordered_set/debug/60499.cc: New
2005 * testsuite/23_containers/vector/debug/60499.cc: New
2006
2007 2014-03-05 Ed Smith-Rowland <3dw4rd@verizon.net>
2008
2009 * doc/xml/manual/status_cxx2014.xml: Add new items and latest papers
2010 for filesystem and fundamentals TS work items.
2011
2012 2014-03-04 Paolo Carlini <paolo.carlini@oracle.com>
2013
2014 PR c++/60376
2015 * testsuite/29_atomics/headers/atomic/types_std_c++0x_neg.cc:
2016 Adjust dg-error directives.
2017
2018 2014-02-26 Tim Shen <timshen91@gmail.com>
2019
2020 * include/bits/regex.tcc (match_results<>::format,
2021 regex_replace<>): Update __out after calling std::copy.
2022 * testsuite/28_regex/algorithms/regex_replace/char/dr2213.cc:
2023 Add testcase.
2024 * testsuite/28_regex/match_results/format.cc: Likewise.
2025
2026 2014-02-22 Marc Glisse <marc.glisse@inria.fr>
2027
2028 PR libstdc++/60308
2029 * include/bits/stl_deque.h (_Deque_base::_Deque_base(const
2030 allocator_type&)): Remove redundant call to _M_initialize_map.
2031 (deque::deque(const allocator_type&)): Initialize _Base with a
2032 constructor that calls _M_initialize_map.
2033
2034 Partial revert:
2035
2036 2013-09-20 Marc Glisse <marc.glisse@inria.fr>
2037 PR libstdc++/58338
2038 (_Deque_base) [_Deque_base(const allocator_type&)]: Add missing call to
2039 _M_initialize_map.
2040
2041 2014-02-21 Ed Smith-Rowland <3dw4rd@verizon.net>
2042
2043 Rename testsuite directory shared_mutex to shared_timed_mutex
2044 for consistency.
2045 * testsuite/30_threads/shared_mutex: Moved to...
2046 * testsuite/30_threads/shared_timed_mutex: ...here
2047
2048 2014-02-20 Ed Smith-Rowland <3dw4rd@verizon.net>
2049
2050 Rename shared_mutex to shared_timed_mutex per C++14 acceptance of N3891.
2051 * include/std/shared_mutex: Rename shared_mutex to shared_timed_mutex.
2052 * testsuite/30_threads/shared_lock/locking/2.cc: Ditto.
2053 * testsuite/30_threads/shared_lock/locking/4.cc: Ditto.
2054 * testsuite/30_threads/shared_lock/locking/1.cc: Ditto.
2055 * testsuite/30_threads/shared_lock/locking/3.cc: Ditto.
2056 * testsuite/30_threads/shared_lock/requirements/
2057 explicit_instantiation.cc: Ditto.
2058 * testsuite/30_threads/shared_lock/requirements/typedefs.cc: Ditto.
2059 * testsuite/30_threads/shared_lock/cons/2.cc: Ditto.
2060 * testsuite/30_threads/shared_lock/cons/4.cc: Ditto.
2061 * testsuite/30_threads/shared_lock/cons/1.cc: Ditto.
2062 * testsuite/30_threads/shared_lock/cons/6.cc: Ditto.
2063 * testsuite/30_threads/shared_lock/cons/3.cc: Ditto.
2064 * testsuite/30_threads/shared_lock/cons/5.cc: Ditto.
2065 * testsuite/30_threads/shared_lock/modifiers/2.cc: Ditto.
2066 * testsuite/30_threads/shared_lock/modifiers/1.cc: Ditto.
2067 * testsuite/30_threads/shared_mutex/requirements/
2068 standard_layout.cc: Ditto.
2069 * testsuite/30_threads/shared_mutex/cons/copy_neg.cc: Ditto.
2070 * testsuite/30_threads/shared_mutex/cons/1.cc: Ditto.
2071 * testsuite/30_threads/shared_mutex/cons/assign_neg.cc: Ditto.
2072 * testsuite/30_threads/shared_mutex/try_lock/2.cc: Ditto.
2073 * testsuite/30_threads/shared_mutex/try_lock/1.cc: Ditto.
2074
2075 2014-02-10 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
2076
2077 * testsuite/22_locale/num_put/put/char/14220.cc: Don't xfail
2078 execution on i?86-*-solaris2.9, remove comment.
2079 * testsuite/22_locale/num_put/put/wchar_t/14220.cc: Likewise.
2080
2081 2014-02-09 Richard Sandiford <rdsandiford@googlemail.com>
2082
2083 * config/abi/post/mips64-linux-gnu/32/baseline_symbols.txt: New file.
2084 * config/abi/post/mips64-linux-gnu/baseline_symbols.txt: Update.
2085 * config/abi/post/mips64-linux-gnu/64/baseline_symbols.txt: Likewise.
2086
2087 2014-01-29 Jonathan Wakely <jwakely@redhat.com>
2088
2089 * include/bits/alloc_traits.h (allocator_traits::_S_allocate): Do
2090 not use varargs when argument could be non-POD.
2091 (__alloctr_rebind_helper): Eliminate static const bool member by
2092 using true_type and false_type.
2093 (allocator_traits::__allocate_helper): Likewise.
2094 (allocator_traits::__construct_helper): Likewise.
2095 (allocator_traits::__destroy_helper): Likewise.
2096 (allocator_traits::__maxsize_helper): Likewise.
2097 (allocator_traits::__select_helper): Likewise.
2098 * include/bits/ptr_traits.h (__ptrtr_rebind_helper): Likewise.
2099 * include/bits/stl_tree.h (_Rb_tree::operator=(const _Rb_tree&)):
2100 Remove redundant condition.
2101 * include/bits/stl_vector.h (vector::operator=(const vector&)):
2102 Likewise.
2103 (_Vector_impl::_M_allocate, _Vector_impl::_M_deallocate): Use
2104 indirection through __alloc_traits.
2105 * include/ext/alloc_traits.h (__allocator_always_compares_equal):
2106 Eliminate static const bool members by using true_type and false_type.
2107 (__gnu_cxx::__alloc_traits::__is_custom_pointer): Optimize.
2108 * testsuite/util/testsuite_allocator.h (PointerBase): Define.
2109 * testsuite/20_util/allocator_traits/members/allocate_hint_nonpod.cc:
2110 New.
2111 * testsuite/20_util/allocator_traits/requirements/typedefs2.cc: New.
2112
2113 PR libstdc++/59829
2114 * include/bits/stl_vector.h (vector::data()): Call _M_data_ptr.
2115 (vector::_M_data_ptr): New overloaded functions to ensure empty
2116 vectors do not dereference the pointer.
2117 * testsuite/23_containers/vector/59829.cc: New.
2118 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
2119 Adjust dg-error line number.
2120 * testsuite/23_containers/vector/requirements/dr438/
2121 constructor_1_neg.cc: Likewise.
2122 * testsuite/23_containers/vector/requirements/dr438/
2123 constructor_2_neg.cc: Likewise.
2124 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
2125 Likewise.
2126
2127 PR libstdc++/21609
2128 * include/ext/array_allocator.h: Add deprecated attribute.
2129
2130 PR libstdc++/57226
2131 * doc/xml/manual/debug.xml (debug.gdb): Update documentation for
2132 installation and use of python printers.
2133 * doc/xml/manual/status_cxx2011.xml: Update.
2134 * doc/html/*: Regenerate.
2135
2136 2014-01-28 Jonathan Wakely <jwakely@redhat.com>
2137 Kyle Lippincott <spectral@google.com>
2138
2139 PR libstdc++/59656
2140 * include/bits/shared_ptr.h (shared_ptr): Add new non-throwing
2141 constructor and grant friendship to weak_ptr.
2142 (weak_ptr::lock()): Use new constructor.
2143 * include/bits/shared_ptr_base.h
2144 (_Sp_counted_base::_M_add_ref_lock_nothrow()): Declare new function
2145 and define specializations.
2146 (__shared_count): Add new non-throwing constructor.
2147 (__shared_ptr): Add new non-throwing constructor and grant friendship
2148 to __weak_ptr.
2149 (__weak_ptr::lock()): Use new constructor.
2150 * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust dg-error.
2151 * testsuite/20_util/shared_ptr/cons/void_neg.cc: Likewise.
2152
2153 2014-01-27 Jonathan Wakely <jwakely@redhat.com>
2154
2155 PR libstdc++/59215
2156 * include/bits/shared_ptr_base.h
2157 (_Sp_counted_base<_S_atomic>::_M_add_ref_lock()): Use relaxed atomic
2158 load.
2159
2160 2014-01-27 Jason Merrill <jason@redhat.com>
2161
2162 Core DR 475
2163 PR c++/41174
2164 PR c++/59224
2165 * libsupc++/eh_throw.cc (__cxa_throw): Set uncaughtExceptions.
2166 * libsupc++/eh_alloc.cc (__cxa_allocate_dependent_exception)
2167 (__cxa_allocate_exception): Don't set it here.
2168
2169 2014-01-26 Jonathan Wakely <jwakely@redhat.com>
2170
2171 * include/bits/stl_map.h: Remove anachronistic comment.
2172 * include/bits/stl_multimap.h: Add whitespace.
2173 * testsuite/23_containers/map/modifiers/emplace/1.cc: Use
2174 -std=gnu++11 instead of -std=c++11.
2175 * testsuite/23_containers/map/operators/2.cc: Likewise.
2176 * testsuite/23_containers/multimap/modifiers/emplace/1.cc: Likewise.
2177 * testsuite/23_containers/multiset/modifiers/emplace/1.cc: Likewise.
2178 * testsuite/23_containers/set/modifiers/emplace/1.cc: Likewise.
2179
2180 * acinclude.m4 (GLIBCXX_ENABLE_C99): Fix typo.
2181 * configure: Regenerate.
2182
2183 2014-01-24 Ed Smith-Rowland <3dw4rd@verizon.net>
2184
2185 PR libstdc++/59531
2186 * testsuite/experimental/string_view/operations/copy/char/1.cc: New.
2187 * testsuite/experimental/string_view/operations/copy/wchar_t/1.cc: New.
2188
2189 2014-01-24 Ed Smith-Rowland <3dw4rd@verizon.net>
2190 Peter A. Bigot <pab@pabigot.com>
2191
2192 PR libstdc++/59531
2193 * include/experimental/string_view
2194 (copy(_CharT*, size_type, size_type) const): Correct throw string.
2195 Correct copy start location.
2196
2197 2014-01-24 Ed Smith-Rowland <3dw4rd@verizon.net>
2198 Peter A. Bigot <pab@pabigot.com>
2199
2200 PR libstdc++/59530
2201 * include/experimental/string_view (operator[](size_type) const):
2202 Fix one-off index error in debug check.
2203 * testsuite/experimental/string_view/element_access/char/1.cc: Don't
2204 test basic_string_view at size().
2205 * testsuite/experimental/string_view/element_access/wchar_t/1.cc: Ditto.
2206
2207 2014-01-24 Ed Smith-Rowland <3dw4rd@verizon.net>
2208 Peter A. Bigot <pab@pabigot.com>
2209
2210 PR libstdc++/59529
2211 * include/experimental/string_view
2212 (basic_string_view(const _CharT*, size_type)): Don't care if len == 0.
2213 * testsuite/experimental/string_view/operations/substr/char/1.cc:
2214 Comment out catch of out_of_range; No terminating null
2215 in basic_string_view. Check begin == end.
2216 * testsuite/experimental/string_view/operations/substr/wchar_t/1.cc:
2217 Ditto.
2218
2219 2014-01-24 Jonathan Wakely <jwakely@redhat.com>
2220
2221 PR libstdc++/59548
2222 * include/debug/safe_base.h (_Safe_sequence_base): Define copy
2223 constructor to prevent it being implicitly defined as deleted, but
2224 do not copy anything.
2225 * include/debug/safe_unordered_base.h (_Safe_unordered_container_base):
2226 Define copy and move constructors similar to _Safe_sequence_base's.
2227 * testsuite/23_containers/unordered_map/59548.cc: New.
2228
2229 2014-01-23 Bernhard Reutner-Fischer <aldot@gcc.gnu.org>
2230 Steve Ellcey <sellcey@mips.com>
2231
2232 * acinclude.m4 (GLIBCXX_CHECK_TMPNAM): New check for tmpnam
2233 function.
2234 * configure.ac: Use GLIBCXX_CHECK_TMPNAM.
2235 * (configure, config.h.in): Regenerate.
2236 * include/c_global/cstdio: Guard ::tmpnam with _GLIBCXX_USE_TMPNAM
2237
2238 2014-01-23 Jonathan Wakely <jwakely@redhat.com>
2239
2240 * doc/xml/faq.xml (a-how_to_set_paths): Expand FAQ answer.
2241 * doc/xml/manual/abi.xml (abi.versioning.history): Correct symver.
2242
2243 PR libstdc++/59872
2244 * include/bits/stl_map.h (map::operator=(map&&)): Fix comment.
2245 * include/bits/stl_multimap.h (multimap::operator=(multimap&&)):
2246 Likewise.
2247 * include/bits/stl_multiset.h (multiset::operator=(multiset&&)):
2248 Likewise.
2249 * include/bits/stl_set.h (set::operator=(set&&)): Likewise.
2250 * include/bits/stl_tree.h (_Rb_tree::_M_move_data): New overloaded
2251 functions to perform moving or copying of elements from rvalue tree.
2252 (_Rb_tree::_Rb_tree(_Rb_tree&&)): Use _M_move_data.
2253 (_Rb_tree::_Rb_tree(_Rb_tree&&, _Node_allocator&&)): Likewise.
2254 * testsuite/23_containers/map/59872.cc: New.
2255 * testsuite/23_containers/map/56613.cc: Remove duplicate include.
2256
2257 2014-01-22 Jonathan Wakely <jwakely@redhat.com>
2258
2259 * include/bits/stl_deque.h (_Deque_impl): Move comment.
2260
2261 PR libstdc++/58764
2262 * include/bits/stl_deque.h (deque::deque(const allocator_type&):
2263 Split into separate default constructor and constructor taking
2264 allocator.
2265 * include/bits/stl_list.h (list::list(const allocator_type&): Likewise.
2266 * include/bits/stl_vector.h (vector::vector(const allocator_type&):
2267 Likewise.
2268 * include/debug/deque (deque::deque(const allocator_type&)): Likewise.
2269 * include/debug/list (list::list(const _Allocator&)): Likewise.
2270 * include/debug/map.h (map::map(const _Compare&, const _Allocator&)):
2271 Likewise.
2272 * include/debug/multimap.h
2273 (multimap::multimap(const _Compare&, const _Allocator&)): Likewise.
2274 * include/debug/set.h (set::set(const _Compare&, const _Allocator&)):
2275 Likewise.
2276 * include/debug/multiset.h
2277 (multiset::multiset(const _Compare&, const _Allocator&)): Likewise.
2278 * include/debug/vector (vector::vector(const allocator_type&)):
2279 Likewise.
2280 * include/profile/deque (deque::deque(const _Allocator&)): Likewise.
2281 * include/profile/list (list::list(const _Allocator&)): Likewise.
2282 * include/profile/map.h
2283 (map::map(const _Compare&, const _Allocator&)): Likewise.
2284 * include/profile/multimap.h
2285 (multimap::multimap(const _Compare&, const _Allocator&)): Likewise.
2286 * include/profile/set.h
2287 (set::set(const _Compare&, const _Allocator&)): Likewise.
2288 * include/profile/multiset.h
2289 (multiset::multiset(const _Compare&, const _Allocator&)): Likewise.
2290 * include/profile/vector (vector::vector(const _Allocator&)):
2291 Likewise.
2292 * testsuite/23_containers/deque/58764.cc: New.
2293 * testsuite/23_containers/list/58764.cc: New.
2294 * testsuite/23_containers/map/58764.cc: New.
2295 * testsuite/23_containers/multimap/58764.cc: New.
2296 * testsuite/23_containers/set/58764.cc: New.
2297 * testsuite/23_containers/multiset/58764.cc: New.
2298 * testsuite/23_containers/vector/58764.cc: New.
2299 * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
2300 Adjust dg-error line number.
2301 * testsuite/23_containers/deque/requirements/dr438/
2302 constructor_1_neg.cc: Likewise.
2303 * testsuite/23_containers/deque/requirements/dr438/
2304 constructor_2_neg.cc: Likewise.
2305 * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
2306 Likewise.
2307 * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
2308 Likewise.
2309 * testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc:
2310 Likewise.
2311 * testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc:
2312 Likewise.
2313 * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
2314 Likewise.
2315 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
2316 Likewise.
2317 * testsuite/23_containers/vector/requirements/dr438/
2318 constructor_1_neg.cc: Likewise.
2319 * testsuite/23_containers/vector/requirements/dr438/
2320 constructor_2_neg.cc: Likewise.
2321 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
2322 Likewise.
2323
2324 PR libstdc++/58764 (again)
2325 * include/bits/stl_list.h (list): Make default constructor's exception
2326 specification conditional.
2327 * include/bits/stl_vector.h (vector): Likewise.
2328 * testsuite/util/testsuite_allocator.h (SimpleAllocator): Add noexcept
2329 to default constructor.
2330 * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
2331 Adjust dg-error line number.
2332 * testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc:
2333 Likewise.
2334 * testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc:
2335 Likewise.
2336 * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
2337 Likewise.
2338 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
2339 Likewise.
2340 * testsuite/23_containers/vector/requirements/dr438/
2341 constructor_1_neg.cc: Likewise.
2342 * testsuite/23_containers/vector/requirements/dr438/
2343 constructor_2_neg.cc: Likewise.
2344 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
2345 Likewise.
2346
2347 2014-01-21 Tim Shen <timshen91@gmail.com>
2348
2349 * include/bits/regex.tcc: Remove incorrect `nosubs` handling.
2350 * include/bits/regex_scanner.tcc: Handle `nosubs` correctly.
2351 * testsuite/28_regex/constants/syntax_option_type.cc: Add a test case.
2352
2353 2014-01-21 Jonathan Wakely <jwakely@redhat.com>
2354
2355 PR libstdc++/56267
2356 * include/bits/hashtable.h (__cache_default): Do not depend on
2357 whether the hash function is DefaultConstructible or CopyAssignable.
2358 (_Hashtable): Adjust static assertions.
2359 * doc/xml/manual/containers.xml (containers.unordered.cache): Update.
2360 * testsuite/23_containers/unordered_set/instantiation_neg.cc: Adjust
2361 dg-error line number.
2362 * testsuite/23_containers/unordered_set/
2363 not_default_constructible_hash_neg.cc: Remove.
2364
2365 2014-01-20 François Dumont <fdumont@gcc.gnu.org>
2366
2367 * scripts/create_testsuite_files: Add testsuite/experimental in
2368 the list of folders to search for tests.
2369 * include/experimental/string_view
2370 (basic_string_view<>::operator[]): Comment _GLIBCXX_DEBUG_ASSERT,
2371 incompatible with constexpr qualifier.
2372 (basic_string_view<>::front()): Likewise.
2373 (basic_string_view<>::back()): Likewise.
2374 * testsuite/experimental/string_view/element_access/wchar_t/2.cc:
2375 Merge dg-options directives into one.
2376 * testsuite/experimental/string_view/element_access/char/2.cc:
2377 Likewise. Remove invalid experimental namespace scope on
2378 string_view_type.
2379
2380 2014-01-20 Jonathan Wakely <jwakely@redhat.com>
2381
2382 PR libstdc++/56267
2383 * include/bits/hashtable_policy.h (_Hash_code_base<... false>): Grant
2384 friendship to _Local_iterator_base<..., false>.
2385 (_Local_iterator_base): Give protected access to all existing members.
2386 (_Local_iterator_base::_M_curr()): New public accessor.
2387 (_Local_iterator_base::_M_get_bucket()): New public accessor.
2388 (_Local_iterator_base<..., false>::_M_init()): New function to manage
2389 the lifetime of the _Hash_code_base explicitly.
2390 (_Local_iterator_base<..., false>::_M_destroy()): Likewise.
2391 (_Local_iterator_base<..., false>): Define copy constructor and copy
2392 assignment operator that use new functions to manage _Hash_code_base.
2393 (operator==(const _Local_iterator_base&, const _Local_iterator_base&),
2394 operator==(const _Local_iterator_base&, const _Local_iterator_base&)):
2395 Use public API for _Local_iterator_base.
2396 * include/debug/safe_local_iterator.h (_Safe_local_iterator): Likewise.
2397 * include/debug/unordered_map (__debug::unordered_map::erase(),
2398 __debug::unordered_multimap::erase()): Likewise.
2399 * include/debug/unordered_set (__debug::unordered_set::erase(),
2400 __debug::unordered_multiset::erase()): Likewise.
2401 * testsuite/23_containers/unordered_set/56267-2.cc: New test.
2402
2403 2014-01-19 Tim Shen <timshen91@gmail.com>
2404
2405 * include/bits/regex_compiler.h (_Comipler<>::_M_quantifier()):
2406 Fix parse error of multiple consecutive quantifiers like "a**".
2407 * include/bits/regex_compiler.tcc (_Comipler<>::_M_quantifier()):
2408 Likewise.
2409 * testsuite/28_regex/basic_regex/multiple_quantifiers.cc: New.
2410
2411 2014-01-17 François Dumont <fdumont@gcc.gnu.org>
2412
2413 * include/profile/set.h (set): Implement C++11 allocator-aware
2414 container requirements.
2415 * include/profile/map.h (map): Likewise.
2416 * include/profile/multiset.h (multiset): Likewise.
2417 * include/profile/multimap.h (multimap): Likewise.
2418 * include/profile/set.h
2419 (set::operator=(const set&)): Define as default in C++11 mode.
2420 (set::operator=(set&&)): Likewise.
2421 * include/profile/map.h
2422 (map::operator=(const map&)): Likewise.
2423 (map::operator=(map&&)): Likewise.
2424 * include/profile/multiset.h
2425 (multiset::operator=(const multiset&)): Likewise.
2426 (multiset::operator=(multiset&&)): Likewise.
2427 * include/profile/multimap.h
2428 (multimap::operator=(const multimap&)): Likewise.
2429 (multimap::operator=(multimap&&)): Likewise.
2430 * include/profile/set.h (set::operator=(std::initializer_list<>)):
2431 Rely on the same operator from normal mode.
2432 * include/profile/map.h (map::operator=(std::initializer_list<>)):
2433 Likewise.
2434 * include/profile/multiset.h
2435 (multiset::operator=(std::initializer_list<>)): Likewise.
2436 * include/profile/multimap.h
2437 (multimap::operator=(std::initializer_list<>)): Likewise.
2438 * include/profile/set.h (set::swap(set&)): Add noexcept
2439 specification.
2440 * include/profile/map.h (map::swap(map&)): Likewise.
2441 * include/profile/multiset.h (multiset::swap(multiset&)): Likewise.
2442 * include/profile/multimap.h (multimap::swap(multimap&)): Likewise.
2443
2444 2014-01-17 Tim Shen <timshen91@gmail.com>
2445
2446 * include/bits/regex_automaton.tcc (_StateSeq<>::_M_clone()): Do not
2447 use std::map.
2448 * include/bits/regex_automaton.h: Do not use std::set.
2449 * include/bits/regex_compiler.h (_BracketMatcher<>::_M_add_char(),
2450 _BracketMatcher<>::_M_add_collating_element(),
2451 _BracketMatcher<>::_M_add_equivalence_class(),
2452 _BracketMatcher<>::_M_make_range()): Likewise.
2453 * include/bits/regex_compiler.tcc (_BracketMatcher<>::_M_apply()):
2454 Likewise.
2455 * include/bits/regex_executor.h: Do not use std::queue.
2456 * include/bits/regex_executor.tcc (_Executor<>::_M_main(),
2457 _Executor<>::_M_dfs()): Likewise.
2458 * include/std/regex: Remove <map>, <set> and <queue>.
2459
2460 2014-01-17 Tim Shen <timshen91@gmail.com>
2461
2462 * include/bits/regex.h (__compile_nfa<>(), basic_regex<>::basic_regex(),
2463 basic_regex<>::assign()): Change __compile_nfa to accept
2464 const _CharT* only.
2465 * include/bits/regex_compiler.h: Change _Compiler's template
2466 argument from <_FwdIter, _TraitsT> to <_TraitsT>.
2467 * include/bits/regex_compiler.tcc: Likewise.
2468
2469 2014-01-17 Tim Shen <timshen91@gmail.com>
2470
2471 * include/bits/regex_compiler.h: Change _ScannerT into char-type
2472 templated.
2473 * include/bits/regex_scanner.h (_Scanner<>::_Scanner()): Separate
2474 _ScannerBase from _Scanner; Change _Scanner's template argument from
2475 _FwdIter to _CharT. Avoid use of std::map and std::set by using arrays
2476 instead.
2477 * include/bits/regex_scanner.tcc (_Scanner<>::_Scanner(),
2478 _Scanner<>::_M_scan_normal(), _Scanner<>::_M_eat_escape_ecma(),
2479 _Scanner<>::_M_eat_escape_posix(), _Scanner<>::_M_eat_escape_awk()):
2480 Likewise.
2481 * include/std/regex: Add <cstring> for using strchr.
2482
2483 2014-01-17 Tim Shen <timshen91@gmail.com>
2484
2485 * bits/regex_automaton.tcc: Indentation fix.
2486 * bits/regex_compiler.h (__compile_nfa<>(), _Compiler<>,
2487 _RegexTranslator<> _AnyMatcher<>, _CharMatcher<>,
2488 _BracketMatcher<>): Add bool option template parameters and
2489 specializations to make matching more efficient and space saving.
2490 * bits/regex_compiler.tcc: Likewise.
2491
2492 2014-01-15 François Dumont <fdumont@gcc.gnu.org>
2493
2494 PR libstdc++/59712
2495 * include/bits/hashtable_policy.h: Fix some long lines.
2496 * include/bits/hashtable.h (__hash_code_base_access): Define and
2497 use it to check its _M_bucket_index noexcept qualification. Use
2498 also in place of...
2499 (__access_protected_ctor): ...this.
2500 * testsuite/23_containers/unordered_set/instantiation_neg.cc:
2501 Adapt line number.
2502 * testsuite/23_containers/unordered_set/
2503 not_default_constructible_hash_neg.cc: Likewise.
2504
2505 2014-01-13 François Dumont <fdumont@gcc.gnu.org>
2506
2507 * include/debug/set.h (set): Implement C++11 allocator-aware
2508 container requirements.
2509 * include/debug/map.h (map): Likewise.
2510 * include/debug/multiset.h (multiset): Likewise.
2511 * include/debug/multimap.h (multimap): Likewise.
2512 * include/debug/set.h (set::operator=(set&&)): Add noexcept and
2513 fix implementation regarding management of safe iterators.
2514 * include/debug/map.h (map::operator=(map&&)): Likewise.
2515 * include/debug/multiset.h (multiset::operator=(multiset&&)): Likewise.
2516 * include/debug/multimap.h (multimap::operator=(multimap&&)):
2517 Likewise.
2518 * include/debug/set.h (set::operator=(std::initializer_list<>)):
2519 Rely on the same operator from normal mode.
2520 * include/debug/map.h (map::operator=(std::initializer_list<>)):
2521 Likewise.
2522 * include/debug/multiset.h
2523 (multiset::operator=(std::initializer_list<>)): Likewise.
2524 * include/debug/multimap.h
2525 (multimap::operator=(std::initializer_list<>)): Likewise.
2526 * include/debug/set.h (set::swap(set&)): Add noexcept
2527 specification, add allocator equality check.
2528 * include/debug/map.h (map::swap(map&)): Likewise.
2529 * include/debug/multiset.h (multiset::swap(multiset&)): Likewise.
2530 * include/debug/multimap.h (multimap::swap(multimap&)): Likewise.
2531
2532 2014-01-10 Jonathan Wakely <jwakely@redhat.com>
2533
2534 PR libstdc++/59698
2535 * doc/xml/manual/status_cxx1998.xml (iso.1998.specific): Markup
2536 and stylistic improvements.
2537 * doc/xml/manual/codecvt.xml (std.localization.facet.codecvt): Likewise
2538 and update for C++11.
2539 * doc/xml/manual/ctype.xml (std.localization.facet.ctype): Likewise.
2540
2541 PR libstdc++/59687
2542 * doc/xml/manual/backwards_compatibility.xml
2543 (backwards.third.nocreate_noreplace): Correct and expand.
2544
2545 PR libstdc++/59699
2546 * doc/xml/manual/support.xml (std.support.types.null): Update links.
2547
2548 2014-01-09 Jonathan Wakely <jwakely@redhat.com>
2549
2550 PR libstdc++/59738
2551 * include/bits/stl_vector.h (vector<>::_M_move_assign): Restore
2552 support for non-Movable types.
2553
2554 PR libstdc++/59680
2555 * src/c++11/thread.cc (__sleep_for): Fix call to ::sleep.
2556
2557 2014-01-08 François Dumont <fdumont@gcc.gnu.org>
2558
2559 * include/bits/stl_vector.h (std::vector<>::_M_move_assign): Pass
2560 *this allocator instance when building temporary vector instance
2561 so that *this allocator does not get moved.
2562 * include/debug/safe_base.h
2563 (_Safe_sequence_base(_Safe_sequence_base&&)): New.
2564 * include/debug/vector (__gnu_debug::vector<>(vector&&)): Use new
2565 move constructor from _Safe_sequence_base.
2566 (__gnu_debug::vector<>(vector&&, const allocator_type&)): Swap
2567 safe iterators if the instance is moved.
2568 (__gnu_debug::vector<>::operator=(vector&&)): Likewise.
2569 * testsuite/23_containers/vector/allocator/move.cc (test01): Add
2570 check on a vector iterator.
2571 * testsuite/23_containers/vector/allocator/move_assign.cc
2572 (test02): Likewise.
2573 (test03): New, test with a non-propagating allocator.
2574 * testsuite/23_containers/vector/debug/move_assign_neg.cc: New.
2575
2576 2014-01-07 Tim Shen <timshen91@gmail.com>
2577
2578 * include/bits/regex_compiler.h (_AnyMatcher<>::_AnyMatcher(),
2579 _AnyMatcher<>::operator(), _AnyMatcher<>::_M_apply(),
2580 _CharMatcher<>::_CharMatcher(), _CharMatcher<>::_M_translate(),
2581 _BracketMatcher<>::_BracketMatcher(), _BracketMatcher<>::operator(),
2582 _BracketMatcher<>::_M_add_char(),
2583 _BracketMatcher<>::_M_add_collating_element(),
2584 _BracketMatcher<>::_M_add_equivalence_class(),
2585 _BracketMatcher<>::_M_add_character_class(),
2586 _BracketMatcher<>::_M_make_range(), _BracketMatcher<>::_M_ready(),
2587 _BracketMatcher<>::_M_apply(), _BracketMatcher<>::_M_make_cache()):
2588 Fix _AnyMatcher behavior of POSIX style and move _M_flags
2589 to template parameter; Add cache for _BracketMatcher. Adjust
2590 declarations from here...
2591 * include/bits/regex.h (basic_regex<>::imbue()): ...to here. Also,
2592 imbuing a regex will trigger a recompilation to rebuild the cache.
2593 * include/bits/regex_compiler.tcc (_Compiler<>::_M_atom(),
2594 _Compiler<>::_M_bracket_expression()): Adjust matchers' caller for
2595 different template bool parameters.
2596 * include/bits/regex_executor.h: Remove unnecessary declarations.
2597 * include/std/regex: Adjust including orders.
2598 * testsuite/28_regex/traits/char/user_defined.cc: New.
2599 * testsuite/28_regex/traits/wchar_t/user_defined.cc: New.
2600
2601 2014-01-07 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
2602
2603 * config/abi/post/solaris2.9/baseline_symbols.txt: Regenerate.
2604 * config/abi/post/solaris2.9/sparcv9/baseline_symbols.txt: Likewise.
2605 * config/abi/post/solaris2.10/baseline_symbols.txt: Likewise.
2606 * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
2607 * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.
2608
2609 2014-01-02 Richard Sandiford <rdsandiford@googlemail.com>
2610
2611 Update copyright years
2612
2613 2014-01-02 Richard Sandiford <rdsandiford@googlemail.com>
2614
2615 * testsuite/18_support/new_handler.cc,
2616 testsuite/18_support/terminate_handler.cc,
2617 testsuite/18_support/unexpected_handler.cc: Use the standard form for
2618 the copyright notice.
2619 \f
2620 Copyright (C) 2014 Free Software Foundation, Inc.
2621
2622 Copying and distribution of this file, with or without modification,
2623 are permitted in any medium without royalty provided the copyright
2624 notice and this notice are preserved.