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