]> git.ipfire.org Git - thirdparty/gcc.git/blob - libstdc++-v3/ChangeLog
* testsuite/libstdc++-prettyprinters/shared_ptr.cc: Use -O0.
[thirdparty/gcc.git] / libstdc++-v3 / ChangeLog
1 2013-06-05 Tom Tromey <tromey@redhat.com>
2
3 * testsuite/libstdc++-prettyprinters/shared_ptr.cc: Use -O0.
4
5 2013-06-03 Paolo Carlini <paolo.carlini@oracle.com>
6
7 PR c++/57419
8 * testsuite/20_util/default_delete/48631_neg.cc: Adjust.
9
10 2013-06-01 Ed Smith-Rowland <3dw4rd@verizon.net>
11
12 * include/std/chrono: Collapse redundant 'inline' from 'inline
13 constexpr'.
14 * include/std/tuple: Ditto.
15 * include/bits/move.h: Ditto.
16
17 2013-05-30 Ed Smith-Rowland <3dw4rd@verizon.net>
18
19 Implement N3642 - User-defined Literals for Standard Library Types
20 * include/bits/parse_numbers.h: New.
21 * include/std/chrono: Add duration literal operators.
22 * include/bits/basic_string.h: Add string literal operators.
23 * include/Makefile.in: Add parse_numbers.h.
24 * include/Makefile.am: Ditto.
25 * testsuite/20_util/duration/literals/values.cc: New.
26 * testsuite/20_util/duration/literals/types.cc: New.
27 * testsuite/20_util/duration/requirements/typedefs_neg1.cc: Adjust.
28 * testsuite/20_util/duration/requirements/typedefs_neg2.cc: Adjust.
29 * testsuite/20_util/duration/requirements/typedefs_neg3.cc: Adjust.
30 * testsuite/21_strings/basic_string/literals/values.cc: New.
31 * testsuite/21_strings/basic_string/literals/types.cc: New.
32
33 2013-05-28 Jonathan Wakely <jwakely.gcc@gmail.com>
34
35 * src/c++11/compatibility-chrono.cc (steady_clock::now()): If
36 !_GLIBCXX_USE_GETTIMEOFDAY perform conversion inline instead of
37 calling non-existent from_time_t.
38
39 2013-05-28 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
40
41 * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt:
42 Regenerate.
43
44 2013-05-24 Benjamin Kosnik <bkoz@redhat.com>
45
46 * include/std/chrono: Wrap clocks in inline namespace _V2.
47 * src/c++11/chrono.cc: Same.
48 * src/c++11/compatibility-chrono.cc: Revert to previous chrono.cc
49 file, with default configure macros selected.
50
51 * config/abi/pre/gnu.ver (GLIBCXX_3.4.19): Use symbols from inline
52 namespace.
53 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Fix up.
54
55 * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Regenerated.
56 * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Regenerated.
57 * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt:
58 Regenerated.
59 * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt:
60 Regenerated.
61 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Regenerated.
62 * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt:
63 Regenerated.
64 * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Regenerated.
65 * config/abi/post/s390-linux-gnu/baseline_symbols.txt: Regenerated.
66 * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Regenerated.
67 * config/abi/post/solaris2.10/baseline_symbols.txt: Regenerated.
68 * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Regenerated.
69 * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt:
70 Regenerated.
71 * config/abi/post/solaris2.9/baseline_symbols.txt: Regenerated.
72 * config/abi/post/solaris2.9/sparcv9/baseline_symbols.txt: Regenerated.
73
74 2013-05-24 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
75
76 * config/os/solaris/solaris2.9/os_defines.h [!CLOCK_MONOTONIC]
77 (CLOCK_MONOTONIC): Define.
78
79 2013-05-24 Paolo Carlini <paolo.carlini@oracle.com>
80
81 * include/ext/type_traits.h (__is_null_pointer): Add std::nullptr_t
82 overload.
83
84 * include/bits/cpp_type_traits.h (__is_fundamental): Remove, unused.
85
86 2013-05-24 Jakub Jelinek <jakub@redhat.com>
87
88 * src/c++11/chrono.cc: If _GLIBCXX_USE_CLOCK_GETTIME_SYSCALL,
89 include unistd.h and sys/syscall.h. If _GLIBCXX_COMPATIBILITY_CXX0X,
90 don't define system_clock::is_steady, system_clock::now() and
91 steady_clock::is_steady.
92 (std::chrono::system_clock::now()): If
93 _GLIBCXX_USE_CLOCK_GETTIME_SYSCALL, call
94 syscall (SYS_clock_gettime, ...) instead of clock_gettime (...).
95 (std::chrono::system_clock::now()): Likewise. Add weak attribute
96 if _GLIBCXX_COMPATIBILITY_CXX0X and compatibility-chrono.cc will
97 be non-empty.
98 * src/Makefile.am (cxx11_sources): Add compatibility-chrono.cc.
99 (compatibility-chrono.lo, compatibility-chrono.o): New goals.
100 * src/c++11/compatibility-chrono.cc: New file.
101 * acinclude.m4 (GLIBCXX_ENABLE_LIBSTDCXX_TIME): On linux*, check for
102 syscall (SYS_clock_gettime, CLOCK_MONOTONIC, &tp).
103 * testsuite/util/testsuite_abi.cc (check_version): Add
104 GLIBCXX_3.4.20 version and make it the latest.
105 * config/abi/pre/gnu.ver (_ZNSt6chrono12steady_clock3nowEv): Export
106 also @@GLIBCXX_3.4.19. Move all symbols so far added for GCC 4.9 to
107 @@GLIBCXX_3.4.20 instead.
108 * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Regenerated.
109 * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Regenerated.
110 * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt:
111 Regenerated.
112 * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt:
113 Regenerated.
114 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Regenerated.
115 * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt:
116 Regenerated.
117 * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Regenerated.
118 * config/abi/post/s390-linux-gnu/baseline_symbols.txt: Regenerated.
119 * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Regenerated.
120 * config/abi/post/solaris2.10/baseline_symbols.txt: Regenerated.
121 * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Regenerated.
122 * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt:
123 Regenerated.
124 * config/abi/post/solaris2.9/baseline_symbols.txt: Regenerated.
125 * config/abi/post/solaris2.9/sparcv9/baseline_symbols.txt: Regenerated.
126 * config.h.in: Regenerated.
127 * src/Makefile.in: Regenerated.
128 * configure: Regenerated.
129
130 2013-05-23 Matthias Klose <doko@ubuntu.com>
131
132 * include/Makefile.am (bits_headers): Remove ${bits_host_headers}.
133 (ext_headers): Remove ${ext_host_headers}.
134 (stamp-${host_alias}): Create ${host_builddir}/../ext.
135 (stamp-host): Link ${bits_host_headers} and ${ext_host_headers}.
136 (install-headers): Install ${bits_host_headers} and ${ext_host_headers}.
137 * include/Makefile.in: Regenerate.
138 * include/ext/random: Include ext/opt_random.h.
139
140 2013-05-22 Jonathan Wakely <jwakely.gcc@gmail.com>
141
142 * acinclude.m4 (GLIBCXX_ENABLE_LIBSTDCXX_TIME): Add KIND=auto to
143 enable features if target OS is known to support them.
144 * configure.ac (GLIBCXX_ENABLE_LIBSTDCXX_TIME): Default to 'auto'.
145 * configure: Regenerate.
146
147 2013-05-21 Jonathan Wakely <jwakely.gcc@gmail.com>
148
149 PR libstdc++/57336
150 * include/std/functional (__invoke): Do not form function types with
151 abstract return type.
152 * testsuite/20_util/reference_wrapper/invoke-3.cc: New.
153
154 2013-05-19 Jonathan Wakely <jwakely.gcc@gmail.com>
155
156 * include/std/tuple (get): Implement N3670.
157 * include/std/utility (get): Likewise.
158 * testsuite/20_util/pair/get.cc: Move to ...
159 * testsuite/20_util/pair/astuple/get.cc: Here.
160 * testsuite/20_util/pair/astuple/astuple.cc: New.
161 * testsuite/20_util/pair/astuple/constexpr_get.cc: New.
162 * testsuite/20_util/pair/astuple/constexpr_get_by_type.cc: New.
163 * testsuite/20_util/pair/astuple/get_by_type.cc: New.
164 * testsuite/20_util/pair/astuple/get_by_type_neg.cc: New.
165 * testsuite/20_util/pair/astuple/get_neg.cc: New.
166 * testsuite/20_util/tuple/element_access/constexpr_get_by_type.cc: New.
167 * testsuite/20_util/tuple/element_access/get2_by_type.cc: New.
168 * testsuite/20_util/tuple/element_access/get_by_type.cc: New.
169
170 2013-05-19 Paolo Carlini <paolo.carlini@oracle.com>
171
172 * Revert last commit.
173
174 2013-05-19 Matthias Klose <doko@ubuntu.com>
175
176 * include/Makefile.am (bits_headers): Remove ${bits_host_headers}.
177 (ext_headers): Remove ${ext_host_headers}.
178 (stamp-${host_alias}): Create ${host_builddir}/../ext.
179 (stamp-host): Link ${bits_host_headers} and ${ext_host_headers}.
180 (install-headers): Install ${bits_host_headers} and ${ext_host_headers}.
181 * include/Makefile.in: Regenerate.
182
183 2013-05-18 Jonathan Wakely <jwakely.gcc@gmail.com>
184
185 * include/std/system_error (error_category::error_category()): LWG
186 2145: Declare public and constexpr.
187 * src/c++11/system_error.cc (error_category::error_category()): Move
188 definition to ...
189 * src/c++11/compatibility-c++0x.cc: Here.
190
191 2013-05-18 Jonathan Wakely <jwakely.gcc@gmail.com>
192
193 * include/std/typeindex (type_index::name()): LWG 2144: Add noexcept.
194
195 2013-05-18 Jonathan Wakely <jwakely.gcc@gmail.com>
196
197 * include/bits/unique_ptr.h (make_unique): Declare inline.
198 (unique_ptr<T[],D>::reset()): Combine two overloads into one.
199 (default_delete, unique_ptr): Add doxygen comments.
200 * include/bits/shared_ptr_base.h: Improve doxygen comments.
201 * include/bits/shared_ptr.h: Likewise.
202 * testsuite/20_util/default_delete/48631_neg.cc: Adjust dg-error line
203 number.
204 * testsuite/20_util/unique_ptr/assign/48635_neg.cc: Likewise.
205
206 2013-05-18 Jonathan Wakely <jwakely.gcc@gmail.com>
207
208 * doc/xml/manual/status_cxx2011.xml: Fix markup error.
209
210 2013-05-18 Jonathan Wakely <jwakely.gcc@gmail.com>
211
212 * doc/xml/manual/status_cxx2011.xml: Fix markup error.
213
214 2013-05-18 Jonathan Wakely <jwakely.gcc@gmail.com>
215
216 * include/std/utility (exchange): Define.
217 * testsuite/20_util/exchange/1.cc: New.
218
219 2013-05-18 Jonathan Wakely <jwakely.gcc@gmail.com>
220
221 * include/bits/unique_ptr.h (make_unique): Define.
222 * testsuite/20_util/unique_ptr/creation/single.cc: New.
223 * testsuite/20_util/unique_ptr/creation/array.cc: New.
224 * testsuite/20_util/unique_ptr/creation/array_neg.cc: New.
225
226 2013-05-15 François Dumont <fdumont@gcc.gnu.org>
227
228 * python/libstdcxx/v6/printers.py (Tr1HashtableIterator): Fix
229 rendering of std::tr1 unordered containers iterator.
230 (StdHashtableIterator): New, render std unordered containers iterator.
231 * testsuite/libstdc++-prettyprinters/tr1.cc: New.
232
233 2013-05-15 Jonathan Wakely <jwakely.gcc@gmail.com>
234
235 * include/bits/basic_string.h (getline): Fix doxygen comments.
236
237 2013-05-14 Paolo Carlini <paolo.carlini@oracle.com>
238
239 * include/bits/stl_iterator.h (__normal_iterator<>::_M_const_cast):
240 Use std::pointer_traits.
241
242 2013-05-13 Benjamin Kosnik <bkoz@redhat.com>
243
244 * libsupc++/Makefile.am (sources): Add bad_array_length.cc,
245 bad_array_new.cc.
246 * libsupc++/Makefile.in: Regenerate.
247 * libsupc++/bad_array_length.cc: Tweak.
248 * libsupc++/bad_array_new.cc: Tweak.
249
250 2013-05-10 Paolo Carlini <paolo.carlini@oracle.com>
251
252 PR libstdc++/54577
253 * include/bits/stl_deque.h (erase): Fix signatures in C++11 mode.
254 (_Deque_iterator<>::_M_const_cast): Add.
255 (deque<>::_M_erase): Declare.
256 * include/bits/deque.tcc: ... and define.
257 * include/bits/stl_list.h (erase): Fix signatures in C++11 mode.
258 (_List_const_iterator<>::_M_const_cast): Add.
259 * include/bits/list.tcc (erase (iterator)): Fix.
260 * include/bits/stl_iterator.h (__normal_iterator<>::_M_const_cast):
261 Add; include <ext/cast.h>.
262 * include/bits/stl_vector.h (erase): Fix signatures in C++11 mode.
263 (vector<>::_M_erase): Declare.
264 * include/bits/stl_bvector.h: Likewise.
265 * include/bits/vector.tcc (vector<>::_M_erase): Define.
266 * include/ext/vstring.h (erase): Fix signatures in C++11 mode.
267 * include/debug/deque: Adjust.
268 * include/debug/list: Likewise.
269 * include/debug/vector: Likewise.
270 * include/profile/deque: Likewise.
271 * include/profile/list: Likewise.
272 * include/profile/vector: Likewise.
273 * testsuite/util/exception/safety.h (erase_base<deque>,
274 erase_base<deque>, erase_base<vector>): Remove.
275 (erase_base<__versa_string>): Update.
276 * testsuite/ext/vstring/modifiers/char/54577.cc: New.
277 * testsuite/ext/vstring/modifiers/wchar_t/54577.cc: Likewise.
278 * testsuite/23_containers/deque/modifiers/erase/54577.cc: Likewise.
279 * testsuite/23_containers/list/modifiers/erase/54577.cc: Likewise.
280 * testsuite/23_containers/vector/bool/modifiers/erase/54577.cc:
281 Likewise.
282 * testsuite/23_containers/vector/modifiers/erase/54577.cc: Likewise.
283 * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
284 Adjust dg-error line numbers.
285 * testsuite/23_containers/deque/requirements/dr438/
286 constructor_1_neg.cc: Likewise.
287 * testsuite/23_containers/deque/requirements/dr438/
288 constructor_2_neg.cc: Likewise.
289 * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
290 Likewise.
291 * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
292 Likewise.
293 * testsuite/23_containers/list/requirements/dr438/
294 constructor_1_neg.cc: Likewise.
295 * testsuite/23_containers/list/requirements/dr438/
296 constructor_2_neg.cc: Likewise.
297 * testsuite/23_containers/list/requirements/dr438/
298 insert_neg.cc: Likewise.
299 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
300 Likewise.
301 * testsuite/23_containers/vector/requirements/dr438/
302 constructor_1_neg.cc: Likewise.
303 * testsuite/23_containers/vector/requirements/dr438/
304 constructor_2_neg.cc: Likewise.
305 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
306 Likewise.
307
308 2013-05-09 Uros Bizjak <ubizjak@gmail.com>
309
310 * testsuite/util/testsuite_abi.cc (check_version): Add CXXABI_1.3.8.
311
312 2013-05-08 Jason Merrill <jason@redhat.com>
313
314 Add std::bad_array_length (N3639)
315 * libsupc++/new: Add std::bad_array_length.
316 * libsupc++/bad_array_length.cc: New.
317 * libsupc++/eh_aux_runtime.cc: Add __cxa_bad_array_length.
318 * libsupc++/Makefile.in: Build them.
319 * config/abi/pre/gnu.ver: Add new symbols.
320 * config/abi/pre/gnu-versioned-namespace.ver: Add new symbols.
321
322 2013-05-08 Andi Kleen <ak@linux.intel.com>
323
324 PR target/55947
325 * libstdc++-v3/include/bits/atomic_base.h
326 (_GLIBCXX_ALWAYS_INLINE): Add new macro.
327 (atomic_thread_fence, atomic_signal_fence, test_and_set,
328 clear, store, load, exchange, compare_exchange_weak)
329 compare_exchange_strong, fetch_add, fetch_sub, fetch_and,
330 fetch_or, fetch_xor): Mark _GLIBCXX_ALWAYS_INLINE.
331
332 2013-05-08 Jason Merrill <jason@redhat.com>
333
334 Add std::bad_array_new_length (N2932)
335 * libsupc++/new: Add std::bad_array_new_length.
336 * libsupc++/bad_array_new.cc: New.
337 * libsupc++/eh_aux_runtime.cc: Add __cxa_throw_bad_array_new_length.
338 * libsupc++/Makefile.in: Build them.
339 * config/abi/pre/gnu.ver: Add new symbols.
340 * config/abi/pre/gnu-versioned-namespace.ver: Add new symbols.
341
342 2013-05-08 Andoni Morales Alastruey <ylatuya@gmail.com>
343
344 PR libstdc++/57212
345 * include/Makefile.am (_GLIBCXX___MINGW32_GLIBCXX___): Modify
346 to __MINGW32__.
347 * include/Makefile.in: Regenerated.
348
349 2013-05-07 François Dumont <fdumont@gcc.gnu.org>
350
351 * include/profile/unordered_base.h: New.
352 * include/Makefile.am: Add new profile header.
353 * include/Makefile.in: Regenerate.
354 * include/profile/impl/profiler.h
355 (__profcxx_inefficient_hash_is_on): New macro.
356 * include/profile/unordered_map (std::profile::unordered_map<>):
357 Use new _Unordered_profile base class. Use default implementations
358 for special functions.
359 (std::profile::unordered_multimap<>): Likewise.
360 * include/profile/unordered_set (std::profile::unordered_set<>):
361 Likewise.
362 (std::profile::unordered_multiset<>): Likewise.
363 * testsuite/23_containers/unordered_multiset/55043.cc: Fix
364 MoveOnly equality operator signature.
365
366 2013-05-02 Paolo Carlini <paolo.carlini@oracle.com>
367
368 * testsuite/tr1/4_metaprogramming/integral_constant/requirements/
369 constexpr_data.cc: Move...
370 * testsuite/20_util/integral_constant/requirements/constexpr_data.cc:
371 ... here.
372 * testsuite/20_util/integral_constant/requirements/
373 explicit_instantiation.cc: New.
374 * testsuite/20_util/integral_constant/requirements/typedefs.cc:
375 Likewise.
376 * testsuite/20_util/integral_constant/static_definition.cc: Likewise.
377 * testsuite/20_util/integral_constant/true_false_type_typedefs.cc:
378 Likewise.
379 * testsuite/20_util/integral_constant/true_false_value.cc: Likewise.
380 * testsuite/20_util/integral_constant/operator_value_type.cc: Likewise.
381
382 2013-05-02 Paolo Carlini <paolo.carlini@oracle.com>
383
384 * include/std/type_traits (is_null_pointer): Add.
385 (__is_nullptr_t): Implement in terms of the latter.
386 (is_fundamental, is_scalar): Adjust.
387 * testsuite/20_util/is_null_pointer/requirements/
388 explicit_instantiation.cc: New.
389 * testsuite/20_util/is_null_pointer/requirements/typedefs.cc:
390 Likewise.
391 * testsuite/20_util/is_null_pointer/value.cc: Likewise.
392 * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
393 line number.
394 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
395 Likewise.
396 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
397 Likewise.
398
399 2013-05-02 Paolo Carlini <paolo.carlini@oracle.com>
400
401 * include/c_global/cstdio: Add comment about LWG 2249.
402 * include/c_std/cstdio: Likewise.
403
404 2013-04-28 Jonathan Wakely <jwakely.gcc@gmail.com>
405
406 * include/bits/hashtable_policy.h (_Hashtable_ebo_helper): Fix
407 comment.
408 * include/std/mutex (__recursive_mutex_base): Likewise.
409
410 2013-04-28 Jonathan Wakely <jwakely.gcc@gmail.com>
411
412 PR libstdc++/51365
413 * include/bits/shared_ptr_base (_Sp_ebo_helper): Helper class to
414 implement EBO safely.
415 (_Sp_counted_base::_M_get_deleter): Add noexcept.
416 (_Sp_counter_ptr): Use noexcept instead of comments.
417 (_Sp_counted_deleter): Likewise. Use _Sp_ebo_helper.
418 (_Sp_counted_ptr_inplace): Likewise.
419 * testsuite/20_util/shared_ptr/cons/51365.cc: New.
420 * testsuite/20_util/shared_ptr/cons/52924.cc: Add rebind member to
421 custom allocator and test construction with custom allocator.
422 * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust dg-error
423 line number.
424
425 2013-04-26 Paolo Carlini <paolo.carlini@oracle.com>
426
427 * testsuite/23_containers/unordered_set/insert/move_range.cc: Adjust
428 dialect to -std=gnu++11.
429
430 2013-04-26 François Dumont <fdumont@gcc.gnu.org>
431
432 * include/bits/hashtable_policy.h
433 (_Insert_base<>::insert<_It>(_It, _It)): Enable move semantics.
434 * testsuite/23_containers/unordered_set/insert/move_range.cc: New.
435
436 2013-04-26 Paolo Carlini <paolo.carlini@oracle.com>
437
438 * include/c_global/cstdio (gets): Provide only in C++98 and C++11.
439 * include/c_std/cstdio (gets): Likewise.
440 * testsuite/27_io/headers/cstdio/functions_std.cc: Adjust.
441
442 2013-04-25 Paolo Carlini <paolo.carlini@oracle.com>
443
444 PR libstdc++/57065
445 * include/debug/unordered_map (unordered_map, unordered_multimap):
446 Fix default allocator type.
447 * include/profile/unordered_map (unordered_map, unordered_multimap):
448 Likewise.
449 * include/bits/unordered_map.h: Fix comments.
450
451 2013-04-24 Jonathan Wakely <jwakely.gcc@gmail.com>
452
453 PR libstdc++/56905
454 * libsupc++/exception_ptr.h (copy_exception): Deprecate and
455 move implementation to make_exception_ptr.
456 * include/std/future (_State_base::_M_break_promise): Replace
457 copy_exception with make_exception_ptr.
458 * testsuite/18_support/exception_ptr/move.cc: Likewise.
459 * testsuite/18_support/exception_ptr/rethrow_exception.cc: Likewise.
460 * testsuite/30_threads/future/members/get2.cc: Likewise.
461 * testsuite/30_threads/promise/members/set_exception.cc: Likewise.
462 * testsuite/30_threads/promise/members/set_exception2.cc: Likewise.
463 * testsuite/30_threads/promise/members/set_value2.cc: Likewise.
464 * testsuite/30_threads/shared_future/members/get2.cc: Likewise.
465
466 2013-04-22 Jason Merrill <jason@redhat.com>
467
468 * src/c++11/hashtable_c++0x.cc: Include ext/aligned_buffer.h.
469
470 * testsuite/lib/prune.exp (libstdc++-dg-prune): Also ignore "In
471 substitution" lines.
472
473 * testsuite/20_util/is_assignable/value.cc: Comment out tests involving
474 function-cv-quals.
475 * testsuite/20_util/is_constructible/value-2.cc: Likewise.
476 * testsuite/20_util/reference_wrapper/result_type.cc: Likewise.
477 * testsuite/20_util/reference_wrapper/typedefs-2.cc: Likewise.
478
479 2013-04-22 François Dumont <fdumont@gcc.gnu.org>
480
481 * include/bits/hashtable_policy.h: Add C++11 allocator support.
482 * include/bits/hashtable.h: Likewise.
483 * include/bits/unordered_set.h: Likewise.
484 * include/bits/unordered_map.h: Likewise.
485 * include/debug/unordered_set: Likewise.
486 * include/debug/unordered_map: Likewise.
487 * include/std/unordered_set: Remove bits/algobase.h
488 include. Replace bits/alloc_traits.h by ext/alloc_traits.h.
489 * include/std/unordered_map: Likewise.
490 * include/ext/throw_allocator.h: Add checks on calls to allocator
491 construct/destroy.
492 (std::hash<__gnu_cxx::throw_value_limit>): Add conditional throw.
493 (std::hash<__gnu_cxx::throw_value_random>): Likewise.
494 * testsuite/util/regression/rand/priority_queue
495 /container_rand_regression_test.tcc: Adapt.
496 * testsuite/util/regression/rand/assoc
497 /container_rand_regression_test.tcc: Likewise.
498 * testsuite/util/testsuite_counter_type.h: Add count of destructors.
499 * testsuite/23_containers/unordered_set
500 /not_default_constructible_hash_neg.cc: Adjust dg-error line number.
501 * testsuite/23_containers/unordered_set/instantiation_neg.cc: Likewise.
502 * testsuite/23_containers/unordered_set/allocator/copy.cc: New.
503 * testsuite/23_containers/unordered_set/allocator/copy_assign.cc: New.
504 * testsuite/23_containers/unordered_set/allocator/minimal.cc: New.
505 * testsuite/23_containers/unordered_set/allocator/move_assign.cc: New.
506 * testsuite/23_containers/unordered_set/allocator/noexcept.cc: New.
507 * testsuite/23_containers/unordered_set/allocator/swap.cc: New.
508 * testsuite/23_containers/unordered_multiset/allocator/copy.cc: New.
509 * testsuite/23_containers/unordered_multiset/allocator/copy_assign.cc:
510 New.
511 * testsuite/23_containers/unordered_multiset/allocator/minimal.cc: New.
512 * testsuite/23_containers/unordered_multiset/allocator/move_assign.cc:
513 New.
514 * testsuite/23_containers/unordered_multiset/allocator/noexcept.cc: New.
515 * testsuite/23_containers/unordered_multiset/allocator/swap.cc: New.
516 * testsuite/23_containers/unordered_map/allocator/copy.cc: New.
517 * testsuite/23_containers/unordered_map/allocator/copy_assign.cc: New.
518 * testsuite/23_containers/unordered_map/allocator/minimal.cc: New.
519 * testsuite/23_containers/unordered_map/allocator/move_assign.cc: New.
520 * testsuite/23_containers/unordered_map/allocator/noexcept.cc:
521 New.
522 * testsuite/23_containers/unordered_map/allocator/swap.cc: New.
523 * testsuite/23_containers/unordered_multimap/allocator/copy.cc: New.
524 * testsuite/23_containers/unordered_multimap/allocator/copy_assign.cc:
525 New.
526 * testsuite/23_containers/unordered_multimap/allocator/minimal.cc: New.
527 * testsuite/23_containers/unordered_multimap/allocator/move_assign.cc:
528 New.
529 * testsuite/23_containers/unordered_multimap/allocator/noexcept.cc: New.
530 * testsuite/23_containers/unordered_multimap/allocator/swap.cc: New.
531
532 2013-04-22 Paolo Carlini <paolo.carlini@oracle.com>
533
534 * include/std/type_traits (is_signed): Simplify.
535 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
536 Adjust dg-error line numbers.
537 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
538 Likewise.
539 * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
540
541 2013-04-22 Paolo Carlini <paolo.carlini@oracle.com>
542
543 N3669
544 * include/std/complex (complex<float>::real, complex<float>::imag,
545 complex<double>::real, complex<double>::imag,
546 complex<long double>::real, complex<long double>::imag): Declare
547 as const member functions.
548 * include/std/type_traits (integral_constant<>::operator value_type):
549 Likewise.
550
551 2013-04-22 Paolo Carlini <paolo.carlini@oracle.com>
552
553 PR libstdc++/57010
554 * include/bits/stl_heap.h (pop_heap): Avoid self move-assignment.
555 * testsuite/25_algorithms/pop_heap/57010.cc: New.
556
557 2013-04-21 Evgeniy Stepanov <eugenis@google.com>
558
559 * src/c++11/system_error.cc (generic_category_instance): Add
560 initializer.
561 (system_category_instance): Likewise.
562 * src/c++11/future.cc (__fec): Likewise.
563
564 2013-04-20 Jonathan Wakely <jwakely.gcc@gmail.com>
565
566 * doc/xml/manual/extensions.xml: Fix anachronism.
567
568 2013-04-09 Tom Tromey <tromey@redhat.com>
569
570 * configure, config.h.in: Rebuild.
571 * configure.ac: Use GLIBCXX_CHECK_SDT_H. Don't check for
572 sys/sdt.h.
573 * acinclude.m4 (GLIBCXX_CHECK_SDT_H): New defun.
574
575 2013-04-09 Uros Bizjak <ubizjak@gmail.com>
576
577 * config/abi/post/alpha-linux-gnu/baseline_symbols.txt: Update.
578
579 2013-04-08 Paolo Carlini <paolo.carlini@oracle.com>
580
581 * testsuite/libstdc++-prettyprinters/cxx11.cc: Include <memory>.
582
583 2013-04-07 Jonathan Wakely <jwakely.gcc@gmail.com>
584
585 * include/Makefile.am: Add ext/aligned_buffer.h
586 * include/Makefile.in: Regenerate.
587 * include/ext/aligned_buffer.h: New.
588 * include/std/future (_Result): Use __aligned_buffer.
589 * include/bits/forward_list.h (_Fwd_list_node): Likewise.
590 * include/bits/shared_ptr_base.h (_Sp_counted_ptr_inplace): Likewise.
591 * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust dg-error line
592 number.
593
594 2013-04-07 Jonathan Wakely <jwakely.gcc@gmail.com>
595
596 * include/bits/forward_list.h: Only include required headers.
597 (forward_list::reference): Define directly, not using __alloc_traits.
598 (forward_list::const_reference): Likewise.
599
600 2013-04-07 François Dumont <fdumont@gcc.gnu.org>
601
602 * include/std/functional (_Derives_from_unary_function): Remove.
603 (_Derives_from_binary_function): Remove.
604 * include/std/type_traits (__sfinae_types): Remove.
605 (__is_assignable_helper): Adapt.
606 (__is_convertible_helper): Adapt.
607 (_GLIBCXX_HAS_NESTED_TYPE): Adapt.
608 Remove several explicit instantiations of integral_constant.
609 * testsuite/20_util/reference_wrapper/typedefs-3.cc: Adapt.
610 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
611 Adapt dg-error line number.
612 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
613 Likewise.
614 * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
615 * testsuite/20_util/bind/ref_neg.cc: Likewise.
616
617 2013-04-05 Jonathan Wakely <jwakely.gcc@gmail.com>
618
619 PR libstdc++/56841
620 * libsupc++/eh_ptr.cc (rethrow_exception): Use get_unexpected() and
621 get_terminate() accessors.
622 * libsupc++/eh_throw.cc (__cxa_throw): Likewise.
623 * libsupc++/eh_terminate.cc: Use mutex when atomic builtins not
624 available.
625 * libsupc++/new_handler.cc: Likewise.
626
627 2013-04-04 Jonathan Wakely <jwakely.gcc@gmail.com>
628
629 * testsuite/util/testsuite_abi.cc: Add GLIBCXX_3.4.19 version.
630
631 2013-04-03 Paolo Carlini <paolo.carlini@oracle.com>
632
633 PR libstdc++/56834
634 * include/debug/array (tuple_size, tuple_element): Do not declare.
635 * include/profile/array: Likewise.
636 * testsuite/23_containers/array/tuple_interface/
637 tuple_element_debug_neg.cc: Adjust dg-error line number.
638
639 2013-04-03 Jonathan Wakely <jwakely.gcc@gmail.com>
640
641 * libsupc++/exception (get_terminate(), get_unexpected()): Declare.
642 * libsupc++/eh_terminate.cc (get_terminate() , set_unexpected()):
643 Define.
644 (set_terminate(terminate_handler)): Set atomically.
645 (set_unexpected(terminate_handler)): Likewise.
646 * libsupc++/new (get_new_handler()): Declare.
647 * libsupc++/new_handler.cc (get_new_handler()): Define.
648 (set_new_handler(new_handler)): Set atomically.
649 (__new_handler): Use internal linkage.
650 * libsupc++/new_op.cc (operator new): Use get_new_handler().
651 * libsupc++/new_opnt.cc (operator new): Likewise.
652 * acinclude.m4: Bump libtool_VERSION to 6:19:0.
653 * configure: Regenerate.
654 * libsupc++/Makefile.am: Compile above files with -std=gnu++11.
655 * libsupc++/Makefile.in: Regenerate.
656 * config/abi/pre/gnu.ver: Add new exports.
657 * doc/xml/manual/status_cxx2011.xml: Update.
658 * testsuite/18_support/headers/exception/synopsis.cc: Check accessors
659 for handlers.
660 * testsuite/18_support/headers/new/synopsis.cc: Likewise.
661 * testsuite/18_support/new_handler.cc: New.
662 * testsuite/18_support/terminate_handler.cc: New.
663 * testsuite/18_support/unexpected_handler.cc: New.
664
665 2013-04-02 Jonathan Wakely <jwakely.gcc@gmail.com>
666
667 * doc/xml/manual/appendix_contributing.xml: Remove broken link and
668 defer to general documentation on contributing to GCC.
669 * doc/html/*: Regenerate.
670
671 2013-03-30 Gerald Pfeifer <gerald@pfeifer.com>
672
673 * doc/xml/manual/allocator.xml: Adjust link to Dr.Dobb's article.
674
675 * doc/xml/manual/appendix_contributing.xml: Adjust link to GNU
676 Coding Standards.
677
678 * doc/xml/manual/debug.xml: Adjust link for ThreadSanitizer.
679
680 * doc/xml/manual/debug_mode.xml: Adjust link for SafeSTL.
681
682 * doc/xml/manual/documentation_hacking.xml: Adjust Doxygen link.
683
684 * doc/xml/manual/messages.xml: Adjust link to Java API specs.
685
686 * doc/xml/manual/policy_data_structures: Remove direct link to
687 IBM Haifa Research Labs.
688
689 * doc/xml/manual/policy_data_structures_biblio.xml: Adjust links
690 for biblio.maverik_lowerbounds and biblio.nelson96stlpq.
691
692 * doc/xml/manual/profile_mode.xml: Adjust two links to acm.org
693 papers.
694
695 * doc/xml/manual/shared_ptr.xml: Use canonical address for
696 www.boost.org.
697
698 2013-03-27 Kai Tietz <ktietz@redhat.com>
699
700 * crossconfig.m4: Add support for cygwin x64 target.
701 * configure: Regenerated.
702
703 2013-03-25 Kai Tietz <ktietz@redhat.com>
704
705 * testsuite/18_support/50594.cc: For mingw-targets use only static
706 libstdc++-version.
707 * testsuite/19_diagnostics/error_category/operators/equal.cc
708 * testsuite/19_diagnostics/error_code/cons/1.cc
709 * testsuite/19_diagnostics/error_code/operators/bool.cc
710 * testsuite/19_diagnostics/error_code/operators/equal.cc
711 * testsuite/19_diagnostics/error_code/operators/not_equal.cc
712 * testsuite/19_diagnostics/error_condition/cons/1.cc
713 * testsuite/19_diagnostics/error_condition/operators/bool.cc
714 * testsuite/19_diagnostics/error_condition/operators/equal.cc
715 * testsuite/19_diagnostics/error_condition/operators/not_equal.cc
716 * testsuite/23_containers/set/requirements/exception/basic.cc
717 * testsuite/26_numerics/headers/cmath/c99_classification_macros_c.cc
718 * testsuite/lib/dg-options.exp (dg-additional-options): New option.
719
720 2013-03-24 Jonathan Wakely <jwakely.gcc@gmail.com>
721
722 PR libstdc++/56170
723 * include/ext/debug_allocator.h (debug_allocator): Add missing members
724 to meet allocator requirements.
725 * testsuite/ext/debug_allocator/56170.cc: New.
726
727 2013-03-22 Paolo Carlini <paolo.carlini@oracle.com>
728
729 PR libstdc++/56678
730 * include/std/chrono (__is_ratio): Uglify T.
731
732 2013-03-18 Paolo Carlini <paolo.carlini@oracle.com>
733
734 PR libstdc++/55977 (partial, std::vector and std::deque bits)
735 * include/bits/stl_vector.h (_M_range_initialize(_InputIterator,
736 _InputIterator, std::input_iterator_tag)): Use emplace_back.
737 * include/bits/deque.tcc (_M_range_initialize(_InputIterator,
738 _InputIterator, std::input_iterator_tag)): Likewise.
739 * testsuite/23_containers/vector/cons/55977.cc: New.
740 * testsuite/23_containers/deque/cons/55977.cc: Likewise.
741 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
742 Adjust dg-error line number.
743 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
744 Likewise.
745
746 2013-03-17 Paolo Carlini <paolo.carlini@oracle.com>
747
748 PR libstdc++/55979
749 * include/bits/stl_list.h (_M_initialize_dispatch(_InputIterator,
750 _InputIterator, __false_type)): Use emplace_back.
751 * testsuite/23_containers/list/cons/55979.cc: New.
752 * testsuite/23_containers/list/modifiers/1.h: Adjust.
753 * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
754 Adjust dg-error line number.
755
756 2013-03-16 Jason Merrill <jason@redhat.com>
757
758 PR c++/55017
759 * testsuite/20_util/pair/piecewise2.cc (test01): Use std::move.
760
761 2013-03-16 Jonathan Wakely <jwakely.gcc@gmail.com>
762
763 PR libstdc++/56468
764 * libsupc++/exception_ptr.h (type_info): Declare.
765
766 2013-03-16 Jonathan Wakely <jwakely.gcc@gmail.com>
767
768 PR libstdc++/56002
769 * include/std/mutex (lock_guard, unique_lock, lock): Define without
770 depending on _GLIBCXX_HAS_GTHREADS.
771 * testsuite/30_threads/lock_guard/cons/1.cc: Run on all targets.
772
773 2013-03-16 Jonathan Wakely <jwakely.gcc@gmail.com>
774
775 PR libstdc++/56492
776 * include/std/future (__future_base::_Result): Add result_type
777 typedef.
778 (__future_base::_S_allocate_result): Overload for std::allocator.
779 (__future_base::_Task_setter): Use _Result::result_type instead of
780 deducing the type from the task.
781 (__future_base::_Task_state): Store allocator to allow shared state
782 to be reset. Replace std::function with member of target object type
783 accessed via ...
784 (__future_base::_Task_state_base): New abstract base class.
785 (__future_base::_Task_state_base::_M_run): New virtual function to
786 invoke type-erased target object.
787 (__future_base::_Task_state_base::_M_reset): New virtual function to
788 create new shared_state using same target object and allocator.
789 (__future_base::__create_task_state): Allocate a new _Task_state.
790 (packaged_task::packaged_task): Use __create_task_state.
791 (packaged_task::reset): Use _Task_state_base::_M_reset.
792 * testsuite/30_threads/packaged_task/cons/56492.cc: New.
793
794 2013-03-15 Tom Tromey <tromey@redhat.com>
795
796 * libsupc++/unwind-cxx.h: Include sys/sdt.h if detected.
797 (PROBE2): New macro.
798 * libsupc++/eh_throw.cc (__cxa_throw, __cxa_rethrow): Add probe.
799 * libsupc++/eh_catch.cc (__cxa_begin_catch): Add probe.
800 * configure.ac: Check for sys/sdt.h.
801 * configure, config.h.in: Rebuild.
802
803 2013-03-14 Jonathan Wakely <jwakely.gcc@gmail.com>
804
805 PR libstdc++/56613
806 * include/bits/stl_tree.h (_Rb_tree::_M_create_node): Use
807 allocator_traits instead of calling construct directly.
808 * testsuite/23_containers/map/56613.cc: New.
809
810 2013-03-13 Benjamin Kosnik <bkoz@redhat.com>
811
812 * doc/html/*: Regenerate.
813
814 2013-03-13 Paolo Carlini <paolo.carlini@oracle.com>
815
816 PR libstdc++/56609
817 * include/std/type_traits (is_fundamental): Add std::nullptr_t.
818 * testsuite/20_util/is_fundamental/value.cc: Extend.
819 * testsuite/20_util/is_compound/value.cc: Likewise.
820
821 2013-03-09 Paolo Carlini <paolo.carlini@oracle.com>
822
823 * testsuite/20_util/function_objects/mem_fn/55463.cc: Avoid
824 -Wunused warnings.
825
826 2013-03-08 Benjamin Kosnik <bkoz@redhat.com>
827
828 * include/bits/memoryfwd.h: New. Centralize forward declarations.
829 * include/bits/algorithmfwd.h: Consistent comments.
830 * include/bits/localefwd.h: Same.
831 * include/ext/vstring_fwd.h: Same.
832 * include/parallel/algorithmfwd.h: Same.
833 * include/parallel/numericfwd.h: Same.
834 * include/std/iosfwd: Same.
835
836 * include/bits/alloc_traits.h: Include memoryfwd.h, remove allocator
837 forward decl.
838 * include/ext/alloc_traits.h: Remove allocator forward decl.
839 * include/bits/stl_construct.h: Same.
840 * include/bits/stringfwd.h: Include memoryfwd.h, remove allocator
841 forward decl. Consistent comments.
842
843 * doc/doxygen/user.cfg.in (TEMPLATE_RELATIONS): To NO.
844
845 * include/Makefile.am (bits_headers): Add memoryfwd.h.
846 * include/Makefile.in: Regenerate.
847 * configure: Same.
848
849 2013-03-08 François Dumont <fdumont@gcc.gnu.org>
850
851 * include/bits/vector.tcc (vector<>operator=(const vector<>&):
852 Reset pointers after deallocation when memory can be reused.
853 * testsuite/23_containers/vector/allocator/minimal.cc: Insert
854 elements to really challenge C++11 allocator integration.
855 * testsuite/23_containers/vector/allocator/copy.cc: Likewise.
856 * testsuite/23_containers/vector/allocator/copy_assign.cc:
857 Likewise.
858 * testsuite/23_containers/vector/allocator/move_assign.cc:
859 Likewise.
860 * testsuite/23_containers/vector/allocator/swap.cc: Likewise and
861 swap vector back before checks on memory/personality mapping are
862 performed.
863 * testsuite/23_containers/forward_list/allocator/minimal.cc:
864 Insert element to really challenge C++11 allocator integration.
865 * testsuite/23_containers/forward_list/allocator/copy.cc:
866 Likewise.
867 * testsuite/23_containers/forward_list/allocator/copy_assign.cc:
868 Likewise.
869 * testsuite/23_containers/forward_list/allocator/move_assign.cc:
870 Likewise.
871 * testsuite/23_containers/forward_list/allocator/swap.cc: Likewise
872 and swap forward_list back before checks on memory/personality
873 mapping are performed.
874
875 2013-03-07 Jakub Jelinek <jakub@redhat.com>
876
877 * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Update.
878 * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Likewise.
879 * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt:
880 Likewise.
881 * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Likewise.
882 * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Likewise.
883 * config/abi/post/s390-linux-gnu/baseline_symbols.txt: Likewise.
884 * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Likewise.
885 * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Likewise.
886 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
887
888 2013-03-06 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
889
890 * scripts/extract_symvers.pl: Omit symbols bound to base
891 versions.
892 * scripts/extract_symvers.in: Likewise.
893 * config/abi/post/solaris2.9/baseline_symbols.txt: Regenerate.
894 * config/abi/post/solaris2.9/sparcv9/baseline_symbols.txt: Likewise.
895 * config/abi/post/solaris2.10/baseline_symbols.txt: Likewise.
896 * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
897 * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.
898
899 2013-03-04 Ulrich Drepper <drepper@gmail.com>
900
901 * include/ext/random (__gnu_cxx::von_mises_distribution<>):
902 Optimize generation function by pulling computation of __r into the
903 constructor for param_type. Also compare _M_mu in operator==.
904 Fix comment.
905
906 2013-03-02 Ulrich Drepper <drepper@gmail.com>
907
908 Add triangular and von Mises distributions.
909 * include/ext/random: Include <ext/cmath>.
910 Add __gnu_cxx::triangular_distribution<> and
911 __gnu_cxx::von_mises_distribution<> classes.
912 * include/ext/random.tcc: Add out-of-line functions for
913 __gnu_cxx::triangular_distribution<> and
914 __gnu_cxx::von_mises_distribution<>.
915 * testsuite/ext/triangular_distribution/cons/default.cc: New file.
916 * testsuite/ext/triangular_distribution/cons/parms.cc: New file.
917 * testsuite/ext/triangular_distribution/operators/serialize.cc:
918 New file.
919 * testsuite/ext/triangular_distribution/operators/equal.cc:
920 New file.
921 * testsuite/ext/triangular_distribution/operators/inequal.cc:
922 New file.
923 * testsuite/ext/triangular_distribution/requirements/typedefs.cc:
924 New file.
925 * testsuite/ext/triangular_distribution/requirements/
926 explicit_instantiation/1.cc: New file.
927 * testsuite/ext/von_mises_distribution/cons/default.cc: New file.
928 * testsuite/ext/von_mises_distribution/cons/parms.cc: New file.
929 * testsuite/ext/von_mises_distribution/operators/serialize.cc:
930 New file.
931 * testsuite/ext/von_mises_distribution/operators/equal.cc: New file.
932 * testsuite/ext/von_mises_distribution/operators/inequal.cc:
933 New file.
934 * testsuite/ext/von_mises_distribution/requirements/typedefs.cc:
935 New file.
936 * testsuite/ext/von_mises_distribution/requirements/
937 explicit_instantiation/1.cc: New file.
938
939 Add math constants.
940 * include/Makefile.am (ext_headers): Add cmath.
941 * include/Makefile.in: Regenerated.
942 * include/ext/cmath: New file.
943
944 2013-03-01 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
945
946 * config/abi/post/solaris2.9/baseline_symbols.txt: Regenerate.
947 * config/abi/post/solaris2.9/sparcv9/baseline_symbols.txt: Likewise.
948 * config/abi/post/solaris2.10/baseline_symbols.txt: Likewise.
949 * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
950 * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.
951
952 2013-02-26 Jonathan Wakely <jwakely.gcc@gmail.com>
953
954 PR libstdc++/56012
955 * include/bits/atomic_base.h (atomic_flag): Fix narrowing conversion.
956 * testsuite/29_atomics/atomic/operators/56012.cc: New.
957
958 PR libstdc++/56011
959 * include/std/atomic (atomic<bool>::operator=(bool) volatile): Add
960 missing overload.
961 * testsuite/29_atomics/atomic/operators/56011.cc: New.
962
963 2013-02-25 Jason Merrill <jason@redhat.com>
964
965 * configure.ac: Check for __cxa_thread_atexit_impl.
966 * libsupc++/atexit_thread.cc (__cxa_thread_atexit): Just forward
967 to it if available.
968 * config.h.in, configure: Regenerate.
969
970 2013-02-20 Jonathan Wakely <jwakely.gcc@gmail.com>
971
972 * include/std/streambuf (basic_streambuf): Use injected class name
973 instead of non-standard __streambuf_type typedef. Fix unclosed Doxygen
974 group.
975
976 2013-02-20 Jonathan Wakely <jwakely.gcc@gmail.com>
977
978 * doc/html/faq.html: Fix spelling.
979 * doc/xml/faq.xml: Likewise.
980 * include/bits/basic_ios.h: Likewise.
981 * include/bits/regex.h: Likewise.
982 * include/std/istream: Likewise.
983 * include/std/streambuf: Likewise.
984
985 2013-02-20 Jonathan Wakely <jwakely.gcc@gmail.com>
986
987 * testsuite/23_containers/unordered_set/55043.cc: Add missing
988 namespace qualification.
989 * testsuite/23_containers/unordered_multiset/55043.cc: Likewise.
990
991 2013-02-19 Benjamin Kosnik <bkoz@redhat.com>
992
993 * doc/doxygen/user.cfg.in: Set __cplusplus to 201103L. Change to
994 _GLIBCXX_INCLUDE_AS_CXX11. DIRECTORY_GRAPH, MARKDOWN_SUPPORT,
995 AUTOLINK_SUPPORT to NO. Update to doxygen 1.8.3.1.
996 * include/bits/stl_pair.h: Add to utilities group.
997 * include/std/tuple: Same.
998 * include/std/typeindex: Same.
999
1000 * include/bits/stringfwd.h: Fix markup.
1001 * include/std/limits: Same.
1002 * include/std/type_traits: Same.
1003 * include/tr1/memory: Same.
1004 * include/tr1/regex: Same.
1005 * scripts/run_doxygen: Comment.
1006 * testsuite/20_util/uses_allocator/cons_neg.cc: Fixup line numbers.
1007
1008 2013-02-14 Jason Merrill <jason@redhat.com>
1009
1010 * testsuite/18_support/quick_exit/quick_exit.cc: #if out the whole
1011 test if unsupported.
1012
1013 2013-02-13 Marc Glisse <marc.glisse@inria.fr>
1014
1015 PR libstdc++/56111
1016 * include/std/complex (complex): Undefine.
1017 * include/c_compatibility/complex.h (complex): Only undefine if
1018 <complex> has been included.
1019 * testsuite/26_numerics/complex/56111.cc: New testcase.
1020
1021 2013-02-13 François Dumont <fdumont@gcc.gnu.org>
1022
1023 * include/bits/hashtable_policy.h (_Hash_code_base): Restore
1024 default constructor protected.
1025 * include/bits/hashtable.h: static assert that _Hash_code_base has
1026 a default constructor available through inheritance.
1027
1028 2013-02-12 Paolo Carlini <paolo.carlini@oracle.com>
1029
1030 * include/c_std/cstdlib (at_quick_exit, quick_exit): Provide in
1031 C++11 mode.
1032
1033 2013-02-12 Julian Brown <julian@codesourcery.com>
1034
1035 * testsuite/22_locale/time_get/get_weekday/char/38081-1.cc (test01):
1036 Don't expect dots after abbreviated weekday names for ru_RU for
1037 glibc versions >= 2.17.
1038 * testsuite/22_locale/time_get/get_weekday/char/38081-2.cc (test01):
1039 Likewise.
1040
1041 2013-02-12 Paolo Carlini <paolo.carlini@oracle.com>
1042
1043 * include/bits/random.tcc (__transform): Remove.
1044 (__normalize): Add.
1045 (discrete_distribution<>::param_type::_M_initialize): Adjust.
1046 (piecewise_constant_distribution<>::param_type::_M_initialize):
1047 Likewise.
1048 (piecewise_linear_distribution<>::param_type::_M_initialize):
1049 Likewise.
1050
1051 2013-02-11 Benjamin Kosnik <bkoz@redhat.com>
1052
1053 * src/c++11/Makefile.am (hashtable_c++0x.lo, hashtable_c++0x.o):
1054 Use -fimplicit-templates.
1055 * src/c++11/Makefile.in: Regenerate.
1056 * src/c++11/hashtable_c++0x.cc: Remove instantiation for
1057 std::lower_bound template.
1058
1059 2013-02-11 Paolo Carlini <paolo.carlini@oracle.com>
1060
1061 * include/c_std/cstdlib (at_quick_exit, quick_exit): Do not declare.
1062 * include/c_global/cstdlib (at_quick_exit, quick_exit): Declare only
1063 in C++11 mode and if available in the underlying C library.
1064 * testsuite/18_support/quick_exit/quick_exit.cc: Compile with
1065 -std=gnu++11; check _GLIBCXX_HAVE_AT_QUICK_EXIT and
1066 _GLIBCXX_HAVE_QUICK_EXIT.
1067
1068 2013-02-11 Benjamin Kosnik <bkoz@redhat.com>
1069
1070 * doc/html/*: Regenerate.
1071
1072 2013-02-11 Jason Merrill <jason@redhat.com>
1073
1074 * linkage.m4 (GLIBCXX_CHECK_STDLIB_DECL_AND_LINKAGE): New.
1075 (GLIBCXX_CHECK_STDLIB_SUPPORT): Check for atexit and at_quick_exit.
1076 * config.h.in, configure: Regenerate.
1077 * include/c_std/cstdlib: Add atexit and at_quick_exit.
1078 * include/c_global/cstdlib: Add atexit and at_quick_exit.
1079 * testsuite/18_support/quick_exit/quick_exit.cc: New.
1080
1081 2013-02-11 Paolo Carlini <paolo.carlini@oracle.com>
1082
1083 PR libstdc++/56282
1084 Revert:
1085 2013-02-06 Edward Smith-Rowland <3dw4rd@verizon.net>
1086
1087 PR libstdc++/56193
1088 * include/bits/basic_ios.h: Replace operator void*() const
1089 with explicit operator bool() const in C++11 and greater.
1090 * testsuite/27_io/basic_ios/pr56193.cc: New file.
1091
1092 2013-02-10 François Dumont <fdumont@gcc.gnu.org>
1093 Jonathan Wakely <jwakely.gcc@gmail.com>
1094
1095 * doc/xml/manual/containers.xml: Add section on unordered containers.
1096 * doc/xml/manual/using.xml: Fix incomplete sentence.
1097
1098 2013-02-10 Jonathan Wakely <jwakely.gcc@gmail.com>
1099
1100 PR libstdc++/56267
1101 * include/bits/hashtable.h (__cache_default): Check if hash function
1102 is copy assignable.
1103 * testsuite/23_containers/unordered_set/56267.cc: New.
1104 * testsuite/23_containers/unordered_set/instantiation_neg.cc: Adjust
1105 dg-error line number.
1106 * testsuite/23_containers/unordered_set/
1107 not_default_constructible_hash_neg.cc: Likewise.
1108
1109 PR libstdc++/56278
1110 * include/bits/hashtable_policy.h (_Hash_code_base): Make default
1111 constructor public.
1112 * testsuite/23_containers/unordered_set/56278.cc: New.
1113
1114 2013-02-09 François Dumont <fdumont@gcc.gnu.org>
1115
1116 * include/tr1/bessel_function.tcc (__cyl_bessel_ij_series): Code
1117 simplification.
1118
1119 2013-02-08 Edward Smith-Rowland <3dw4rd@verizon.net>
1120
1121 PR libstdc++/56216
1122 * include/tr1/special_function_util.h: Remove spurious const
1123 from numeric arguments.
1124 * include/tr1/riemann_zeta.tcc: Likewise.
1125 * include/tr1/exp_integral.tcc: Likewise.
1126 * include/tr1/bessel_function.tcc: Likewise.
1127 * include/tr1/hypergeometric.tcc: Likewise.
1128 * include/tr1/modified_bessel_func.tcc: Likewise.
1129 * include/tr1/poly_laguerre.tcc: Likewise.
1130 * include/tr1/gamma.tcc: Likewise.
1131 * include/tr1/legendre_function.tcc: Likewise.
1132 * include/tr1/poly_hermite.tcc: Likewise.
1133 * include/tr1/ell_integral.tcc: Likewise.
1134 * include/tr1/bessel_function.tcc (__cyl_bessel_ij_series):
1135 If argument is zero return function value.
1136 * testsuite/tr1/5_numerical_facilities/special_functions/
1137 08_cyl_bessel_i/pr56216.cc: New.
1138
1139 2013-02-07 Paolo Carlini <paolo.carlini@oracle.com>
1140
1141 * testsuite/27_io/basic_ios/pr56193.cc: Tweak.
1142
1143 2013-02-06 Edward Smith-Rowland <3dw4rd@verizon.net>
1144
1145 PR libstdc++/56193
1146 * include/bits/basic_ios.h: Replace operator void*() const
1147 with explicit operator bool() const in C++11 and greater.
1148 * testsuite/27_io/basic_ios/pr56193.cc: New file.
1149
1150 2013-02-04 Dodji Seketeli <dodji@redhat.com>
1151
1152 Add missing explicit instantiation for std::lower_bound template
1153 * libstdc++-v3/src/c++11/hashtable_c++0x.cc (namespace std): Add
1154 missing instantiation for std::lower_bound template.
1155
1156 2013-02-04 François Dumont <fdumont@gcc.gnu.org>
1157
1158 * include/bits/functional_hash.h (std::__is_fast_hash<>): New.
1159 * include/bits/basic_string.h: Specialize previous to mark
1160 std::hash for string types as slow.
1161 * include/bits/hashtable.h (__cache_default): Replace is_integral
1162 with __is_fast_hash.
1163 * src/c++11/hash_c++0x.cc: Add type_traits include.
1164 * testsuite/23_containers/unordered_set/instantiation_neg.cc:
1165 Adapt dg-error line number.
1166 * testsuite/23_containers/unordered_set/
1167 not_default_constructible_hash_neg.cc: Likewise.
1168
1169 2013-02-04 Manuel López-Ibáñez <manu@gcc.gnu.org>
1170 Paolo Carlini <paolo.carlini@oracle.com>
1171
1172 PR libstdc++/56202 (again)
1173 * include/bits/random.tcc (binomial_distribution<>::
1174 _M_waiting(_UniformRandomNumberGenerator&, _IntType)): Fix thinko
1175 in previous commit.
1176
1177 * include/bits/random.h: Fix comment typo.
1178
1179 2013-02-04 Manuel López-Ibáñez <manu@gcc.gnu.org>
1180 Paolo Carlini <paolo.carlini@oracle.com>
1181
1182 PR libstdc++/56202
1183 * include/bits/random.tcc (binomial_distribution<>::
1184 _M_waiting(_UniformRandomNumberGenerator&, _IntType)): Avoid
1185 division by zero.
1186
1187 2013-02-03 Richard Sandiford <rdsandiford@googlemail.com>
1188
1189 Update copyright years.
1190 * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc,
1191 testsuite/23_containers/deque/requirements/dr438/constructor_1_neg.cc,
1192 testsuite/23_containers/deque/requirements/dr438/constructor_2_neg.cc,
1193 testsuite/23_containers/deque/requirements/dr438/insert_neg.cc,
1194 testsuite/23_containers/list/requirements/dr438/assign_neg.cc,
1195 testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc,
1196 testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc,
1197 testsuite/23_containers/list/requirements/dr438/insert_neg.cc,
1198 testsuite/23_containers/vector/requirements/dr438/assign_neg.cc,
1199 testsuite/23_containers/vector/requirements/dr438/constructor_1_neg.cc,
1200 testsuite/23_containers/vector/requirements/dr438/constructor_2_neg.cc,
1201 testsuite/23_containers/vector/requirements/dr438/insert_neg.cc,
1202 testsuite/29_atomics/atomic/cons/assign_neg.cc,
1203 testsuite/29_atomics/atomic/cons/copy_neg.cc,
1204 testsuite/29_atomics/atomic_integral/cons/assign_neg.cc,
1205 testsuite/29_atomics/atomic_integral/cons/copy_neg.cc,
1206 testsuite/29_atomics/atomic_integral/operators/bitwise_neg.cc,
1207 testsuite/29_atomics/atomic_integral/operators/decrement_neg.cc,
1208 testsuite/29_atomics/atomic_integral/operators/increment_neg.cc:
1209 Update lines in dg error matches.
1210
1211 2013-02-03 Richard Sandiford <rdsandiford@googlemail.com>
1212
1213 * config/os/mingw32/ctype_inline.h: Fix copyright typo.
1214
1215 2013-02-01 François Dumont <fdumont@gcc.gnu.org>
1216
1217 * include/bits/hashtable_policy.h
1218 (_Prime_rehash_policy::_M_next_bkt)
1219 (_Prime_rehash_policy::_M_need_rehash): Move definition...
1220 * src/c++11/hashtable_c++0x.cc: ... here.
1221 * src/shared/hashtable-aux.cc: Remove c++config.h include.
1222 * config/abi/gnu.ver (GLIBCXX_3.4.18): Export _Prime_rehash_policy
1223 symbols.
1224
1225 2013-01-29 Jason Merrill <jason@redhat.com>
1226
1227 PR libstdc++/54314
1228 * config/abi/pre/gnu.ver: Don't export construction vtables.
1229 * config/abi/pre/gnu-versioned-namespace.ver: Likewise.
1230
1231 2013-01-28 Jonathan Wakely <jwakely.gcc@gmail.com>
1232
1233 PR libstdc++/56112
1234 * include/bits/hashtable_policy.h (insert(_Pair&&)): Use _M_emplace
1235 to construct value_type explicitly before trying to extract the key.
1236 * testsuite/23_containers/unordered_map/cons/56112.cc: New.
1237
1238 2013-01-28 François Dumont <fdumont@gcc.gnu.org>
1239
1240 * include/bits/hashtable_policy.h (_Local_iterator_base): Use
1241 _Hashtable_ebo_helper to embed functors into the local_iterator
1242 when necessary. Pass information about functors involved in hash
1243 code by copy.
1244 * include/bits/hashtable.h (__cache_default): Do not cache for
1245 builtin integral types unless the hash functor is not noexcept
1246 qualified or is not default constructible. Adapt static assertions
1247 and local iterator instantiations.
1248 * include/debug/unordered_set
1249 (std::__debug::unordered_set<>::erase): Detect local iterators to
1250 invalidate using contained node rather than generating a dummy
1251 local_iterator instance.
1252 (std::__debug::unordered_multiset<>::erase): Likewise.
1253 * include/debug/unordered_map
1254 (std::__debug::unordered_map<>::erase): Likewise.
1255 (std::__debug::unordered_multimap<>::erase): Likewise.
1256 * testsuite/performance/23_containers/insert_erase/41975.cc: Test
1257 std::tr1 and std versions of unordered_set regardless of any
1258 macro. Add test on default cache behavior.
1259 * testsuite/performance/23_containers/insert/54075.cc: Likewise.
1260 * testsuite/23_containers/unordered_set/instantiation_neg.cc:
1261 Adapt line number.
1262 * testsuite/23_containers/unordered_set/
1263 not_default_constructible_hash_neg.cc: New.
1264 * testsuite/23_containers/unordered_set/buckets/swap.cc: New.
1265
1266 2013-01-24 Paolo Carlini <paolo.carlini@oracle.com>
1267
1268 PR libstdc++/56085
1269 * include/std/complex (pow(const complex<>&, int)): Avoid __n
1270 signed overflow.
1271
1272 2013-01-22 Jakub Jelinek <jakub@redhat.com>
1273
1274 * testsuite/29_atomics/atomic_flag/test_and_set/explicit-hle.cc:
1275 Tightten scan-assembler-times regexps, add dg-additional-options for
1276 ia32, add -g0 -fno-exceptions -fno-asynchronous-unwind-tables to
1277 dg-options.
1278
1279 2013-01-12 Andi Kleen <ak@linux.intel.com>
1280 Jonathan Wakely <jwakely.gcc@gmail.com>
1281
1282 PR libstdc++/55233
1283 * include/bits/atomic_base.h (__memory_order_modifier): Add
1284 __memory_order_mask, __memory_order_modifier_mask,
1285 __memory_order_hle_acquire, __memory_order_hle_release.
1286 (operator|,operator&): Add.
1287 (__cmpexch_failure_order): Rename to __cmpexch_failure_order2.
1288 (__cmpexch_failure_order): Add.
1289 (clear, store, load, compare_exchange_weak, compare_exchange_strong):
1290 Handle flags.
1291 * testsuite/29_atomics/atomic_flag/test_and_set/explicit-hle.cc:
1292 Add.
1293
1294 2013-01-19 Jonathan Wakely <jwakely.gcc@gmail.com>
1295
1296 PR libstdc++/55861
1297 * include/std/future (_State_base::_S_check(const shared_ptr<T>&)):
1298 Fix return type.
1299 (__basic_future::_M_get_result()): Const qualify.
1300 (shared_future::get()): Likewise.
1301 * testsuite/30_threads/shared_future/members/get.cc: Use const
1302 objects.
1303
1304 2013-01-16 Jonathan Wakely <jwakely.gcc@gmail.com>
1305
1306 PR libstdc++/55043 (again)
1307 * include/bits/alloc_traits.h (allocator_traits::construct): Disable
1308 unless construction would be well-formed.
1309 (__allow_copy_cons, __check_copy_constructible): Define.
1310 * include/bits/unordered_map.h (__check_copy_constructible): Use as
1311 base class so copy constructor will be deleted if appropriate.
1312 (is_copy_constructible): Remove specialization.
1313 * include/bits/unordered_set.h: Likewise.
1314 * include/debug/unordered_map.h: Undo previous commit. Default copy
1315 and move constructors.
1316 * include/debug/unordered_set.h: Likewise.
1317 * include/profile/unordered_map.h: Undo previous commit.
1318 * include/profile/unordered_set.h: Likewise.
1319 * testsuite/23_containers/unordered_map/55043.cc: Fix test.
1320 * testsuite/23_containers/unordered_multimap/55043.cc: Likewise.
1321 * testsuite/23_containers/unordered_multiset/55043.cc: Likewise.
1322 * testsuite/23_containers/unordered_set/55043.cc: Likewise.
1323 * testsuite/23_containers/unordered_map/requirements/53339.cc: XFAIL,
1324 cannot support incomplete types.
1325 * testsuite/23_containers/unordered_multimap/requirements/53339.cc:
1326 Likewise.
1327
1328 2013-01-16 Jonathan Wakely <jwakely.gcc@gmail.com>
1329
1330 PR libstdc++/55043
1331 * include/std/unordered_map: Include alloc_traits.h
1332 * include/std/unordered_set: Likewise.
1333 * include/bits/alloc_traits.h: Define __is_copy_insertable.
1334 * include/bits/unordered_map.h: Use it.
1335 * include/bits/unordered_set.h: Likewise.
1336 * include/debug/unordered_map.h: Likewise.
1337 * include/debug/unordered_set.h: Likewise.
1338 * include/profile/unordered_map.h: Likewise.
1339 * include/profile/unordered_set.h: Likewise.
1340 * include/bits/hashtable.h: Fix comment typos.
1341 * testsuite/23_containers/unordered_map/55043.cc: New.
1342 * testsuite/23_containers/unordered_multimap/55043.cc: New.
1343 * testsuite/23_containers/unordered_multiset/55043.cc: New.
1344 * testsuite/23_containers/unordered_set/55043.cc: New.
1345
1346 2013-01-03 Janis Johnson <janisjo@codesourcery.com>
1347
1348 * testsuite/lib/gdb-test.exp (gdb_batch_check): Catch error running
1349 gdb command.
1350
1351 2013-01-08 Jonathan Wakely <jwakely.gcc@gmail.com>
1352
1353 * doc/xml/manual/status_cxx2011.xml: Document that N3189 is missing.
1354
1355 2013-01-08 Jonathan Wakely <jwakely.gcc@gmail.com>
1356
1357 PR libstdc++/55908
1358 * include/std/functional (_Mem_fn::operator()): Fix constraints to
1359 avoid ambiguity.
1360 * testsuite/20_util/function_objects/mem_fn/55908.cc: New.
1361 * testsuite/20_util/bind/ref_neg.cc: Adjust dg-error line numbers.
1362
1363 2013-01-08 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1364
1365 PR libstdc++/55594
1366 * acinclude.m4 (GLIBCXX_CHECK_ASSEMBLER_HWCAP): Restrict test to
1367 Solaris targets.
1368 * configure: Regenerate.
1369
1370 2013-01-07 Jonathan Wakely <jwakely.gcc@gmail.com>
1371
1372 PR libstdc++/55847
1373 * src/c++11/shared_ptr.cc (bad_weak_ptr::what()): Correct string.
1374 * testsuite/20_util/shared_ptr/cons/weak_ptr_expired.cc: Verify
1375 string.
1376
1377 PR libstdc++/55728
1378 * include/std/functional (bad_function_call::what()): Declare.
1379 * src/c++11/functional.cc (bad_function_call::what()): Define.
1380 * config/abi/pre/gnu.ver (bad_function_call::what()): Export.
1381 * testsuite/20_util/bad_function_call/what.cc: New.
1382
1383 2013-01-06 Jonathan Wakely <jwakely.gcc@gmail.com>
1384
1385 * include/bits/unordered_map.h: Fix typo in comments.
1386 * doc/xml/manual/status_cxx2011.xml: Add implementation-defined bucket
1387 counts for unordered associative containers.
1388
1389 2013-01-06 Jonathan Wakely <jwakely.gcc@gmail.com>
1390
1391 * doc/xml/manual/abi.xml: Update library and symbol versions.
1392
1393 2013-01-06 Richard Sandiford <rdsandiford@googlemail.com>
1394
1395 * include/ext/pb_ds/detail/splay_tree_/insert_fn_imps.hpp: Fix typo
1396 in copyright years.
1397 * testsuite/22_locale/time_get/get_weekday/wchar_t/3.cc: Likewise.
1398
1399 \f
1400 Copyright (C) 2013 Free Software Foundation, Inc.
1401
1402 Copying and distribution of this file, with or without modification,
1403 are permitted in any medium without royalty provided the copyright
1404 notice and this notice are preserved.