1 2013-06-08 Ed Smith-Rowland <3dw4rd@verizon.net>
3 Simplify and clean up library literals.
4 * include/std/chrono: Simplify namespace and versioning management.
5 * include/bits/basic_string.h: Ditto.
6 * testsuite/20_util/duration/literals/types.cc: Remove bogus comment.
7 * testsuite/20_util/duration/literals/values.cc: Ditto.
8 * testsuite/21_strings/basic_string/literals/types.cc: Ditto.
9 * testsuite/21_strings/basic_string/literals/values.cc: Ditto.
11 2013-06-08 Ed Smith-Rowland <3dw4rd@verizon.net>
13 Implement N3654 - Quoted Strings Library Proposal
14 * include/std/iomanip: Add quoted(String, Char delim, Char escape)
15 manipulators and supporting machinery in c++1y mode.
16 * testsuite/27_io/manipulators/standard/char/quoted.cc: New.
17 * testsuite/27_io/manipulators/standard/wchar_t/quoted.cc: New.
19 2013-06-08 Jonathan Wakely <jwakely.gcc@gmail.com>
21 * include/bits/alloc_traits.h (allocator_traits::max_size()): LWG
24 2013-06-08 Jonathan Wakely <jwakely.gcc@gmail.com>
26 * include/bits/stl_algo.h (is_permutation): Add overloads from N3671.
27 * include/bits/stl_algobase.h (equal, mismatch): Likewise.
28 * testsuite/25_algorithms/equal/1.cc: Remove duplicate test case.
29 * testsuite/25_algorithms/equal/2.cc: New.
30 * testsuite/25_algorithms/equal/check_type2.cc: New.
31 * testsuite/25_algorithms/is_permutationqual/2.cc: New.
32 * testsuite/25_algorithms/is_permutationqual/check_type2.cc: New.
33 * testsuite/25_algorithms/mismatch/2.cc: New.
34 * testsuite/25_algorithms/mismatch/check_type2.cc: New.
35 * testsuite/util/testsuite_iterators.h: Fix spelling.
37 2013-06-08 Jonathan Wakely <jwakely.gcc@gmail.com>
39 * include/std/type-traits (integral_constant::operator()): Implement
41 * testsuite/20_util/integral_constant/call_operator.cc: New.
42 * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
44 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
46 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
49 2013-06-07 Uros Bizjak <ubizjak@gmail.com>
51 * config/abi/post/alpha-linux-gnu/baseline_symbols.txt: Update.
53 2013-06-05 Tom Tromey <tromey@redhat.com>
55 * testsuite/libstdc++-prettyprinters/shared_ptr.cc: Use -O0.
57 2013-06-03 Paolo Carlini <paolo.carlini@oracle.com>
60 * testsuite/20_util/default_delete/48631_neg.cc: Adjust.
62 2013-06-01 Ed Smith-Rowland <3dw4rd@verizon.net>
64 * include/std/chrono: Collapse redundant 'inline' from 'inline
66 * include/std/tuple: Ditto.
67 * include/bits/move.h: Ditto.
69 2013-05-30 Ed Smith-Rowland <3dw4rd@verizon.net>
71 Implement N3642 - User-defined Literals for Standard Library Types
72 * include/bits/parse_numbers.h: New.
73 * include/std/chrono: Add duration literal operators.
74 * include/bits/basic_string.h: Add string literal operators.
75 * include/Makefile.in: Add parse_numbers.h.
76 * include/Makefile.am: Ditto.
77 * testsuite/20_util/duration/literals/values.cc: New.
78 * testsuite/20_util/duration/literals/types.cc: New.
79 * testsuite/20_util/duration/requirements/typedefs_neg1.cc: Adjust.
80 * testsuite/20_util/duration/requirements/typedefs_neg2.cc: Adjust.
81 * testsuite/20_util/duration/requirements/typedefs_neg3.cc: Adjust.
82 * testsuite/21_strings/basic_string/literals/values.cc: New.
83 * testsuite/21_strings/basic_string/literals/types.cc: New.
85 2013-05-28 Jonathan Wakely <jwakely.gcc@gmail.com>
87 * src/c++11/compatibility-chrono.cc (steady_clock::now()): If
88 !_GLIBCXX_USE_GETTIMEOFDAY perform conversion inline instead of
89 calling non-existent from_time_t.
91 2013-05-28 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
93 * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt:
96 2013-05-24 Benjamin Kosnik <bkoz@redhat.com>
98 * include/std/chrono: Wrap clocks in inline namespace _V2.
99 * src/c++11/chrono.cc: Same.
100 * src/c++11/compatibility-chrono.cc: Revert to previous chrono.cc
101 file, with default configure macros selected.
103 * config/abi/pre/gnu.ver (GLIBCXX_3.4.19): Use symbols from inline
105 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Fix up.
107 * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Regenerated.
108 * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Regenerated.
109 * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt:
111 * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt:
113 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Regenerated.
114 * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt:
116 * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Regenerated.
117 * config/abi/post/s390-linux-gnu/baseline_symbols.txt: Regenerated.
118 * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Regenerated.
119 * config/abi/post/solaris2.10/baseline_symbols.txt: Regenerated.
120 * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Regenerated.
121 * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt:
123 * config/abi/post/solaris2.9/baseline_symbols.txt: Regenerated.
124 * config/abi/post/solaris2.9/sparcv9/baseline_symbols.txt: Regenerated.
126 2013-05-24 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
128 * config/os/solaris/solaris2.9/os_defines.h [!CLOCK_MONOTONIC]
129 (CLOCK_MONOTONIC): Define.
131 2013-05-24 Paolo Carlini <paolo.carlini@oracle.com>
133 * include/ext/type_traits.h (__is_null_pointer): Add std::nullptr_t
136 * include/bits/cpp_type_traits.h (__is_fundamental): Remove, unused.
138 2013-05-24 Jakub Jelinek <jakub@redhat.com>
140 * src/c++11/chrono.cc: If _GLIBCXX_USE_CLOCK_GETTIME_SYSCALL,
141 include unistd.h and sys/syscall.h. If _GLIBCXX_COMPATIBILITY_CXX0X,
142 don't define system_clock::is_steady, system_clock::now() and
143 steady_clock::is_steady.
144 (std::chrono::system_clock::now()): If
145 _GLIBCXX_USE_CLOCK_GETTIME_SYSCALL, call
146 syscall (SYS_clock_gettime, ...) instead of clock_gettime (...).
147 (std::chrono::system_clock::now()): Likewise. Add weak attribute
148 if _GLIBCXX_COMPATIBILITY_CXX0X and compatibility-chrono.cc will
150 * src/Makefile.am (cxx11_sources): Add compatibility-chrono.cc.
151 (compatibility-chrono.lo, compatibility-chrono.o): New goals.
152 * src/c++11/compatibility-chrono.cc: New file.
153 * acinclude.m4 (GLIBCXX_ENABLE_LIBSTDCXX_TIME): On linux*, check for
154 syscall (SYS_clock_gettime, CLOCK_MONOTONIC, &tp).
155 * testsuite/util/testsuite_abi.cc (check_version): Add
156 GLIBCXX_3.4.20 version and make it the latest.
157 * config/abi/pre/gnu.ver (_ZNSt6chrono12steady_clock3nowEv): Export
158 also @@GLIBCXX_3.4.19. Move all symbols so far added for GCC 4.9 to
159 @@GLIBCXX_3.4.20 instead.
160 * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Regenerated.
161 * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Regenerated.
162 * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt:
164 * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt:
166 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Regenerated.
167 * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt:
169 * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Regenerated.
170 * config/abi/post/s390-linux-gnu/baseline_symbols.txt: Regenerated.
171 * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Regenerated.
172 * config/abi/post/solaris2.10/baseline_symbols.txt: Regenerated.
173 * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Regenerated.
174 * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt:
176 * config/abi/post/solaris2.9/baseline_symbols.txt: Regenerated.
177 * config/abi/post/solaris2.9/sparcv9/baseline_symbols.txt: Regenerated.
178 * config.h.in: Regenerated.
179 * src/Makefile.in: Regenerated.
180 * configure: Regenerated.
182 2013-05-23 Matthias Klose <doko@ubuntu.com>
184 * include/Makefile.am (bits_headers): Remove ${bits_host_headers}.
185 (ext_headers): Remove ${ext_host_headers}.
186 (stamp-${host_alias}): Create ${host_builddir}/../ext.
187 (stamp-host): Link ${bits_host_headers} and ${ext_host_headers}.
188 (install-headers): Install ${bits_host_headers} and ${ext_host_headers}.
189 * include/Makefile.in: Regenerate.
190 * include/ext/random: Include ext/opt_random.h.
192 2013-05-22 Jonathan Wakely <jwakely.gcc@gmail.com>
194 * acinclude.m4 (GLIBCXX_ENABLE_LIBSTDCXX_TIME): Add KIND=auto to
195 enable features if target OS is known to support them.
196 * configure.ac (GLIBCXX_ENABLE_LIBSTDCXX_TIME): Default to 'auto'.
197 * configure: Regenerate.
199 2013-05-21 Jonathan Wakely <jwakely.gcc@gmail.com>
202 * include/std/functional (__invoke): Do not form function types with
203 abstract return type.
204 * testsuite/20_util/reference_wrapper/invoke-3.cc: New.
206 2013-05-19 Jonathan Wakely <jwakely.gcc@gmail.com>
208 * include/std/tuple (get): Implement N3670.
209 * include/std/utility (get): Likewise.
210 * testsuite/20_util/pair/get.cc: Move to ...
211 * testsuite/20_util/pair/astuple/get.cc: Here.
212 * testsuite/20_util/pair/astuple/astuple.cc: New.
213 * testsuite/20_util/pair/astuple/constexpr_get.cc: New.
214 * testsuite/20_util/pair/astuple/constexpr_get_by_type.cc: New.
215 * testsuite/20_util/pair/astuple/get_by_type.cc: New.
216 * testsuite/20_util/pair/astuple/get_by_type_neg.cc: New.
217 * testsuite/20_util/pair/astuple/get_neg.cc: New.
218 * testsuite/20_util/tuple/element_access/constexpr_get_by_type.cc: New.
219 * testsuite/20_util/tuple/element_access/get2_by_type.cc: New.
220 * testsuite/20_util/tuple/element_access/get_by_type.cc: New.
222 2013-05-19 Paolo Carlini <paolo.carlini@oracle.com>
224 * Revert last commit.
226 2013-05-19 Matthias Klose <doko@ubuntu.com>
228 * include/Makefile.am (bits_headers): Remove ${bits_host_headers}.
229 (ext_headers): Remove ${ext_host_headers}.
230 (stamp-${host_alias}): Create ${host_builddir}/../ext.
231 (stamp-host): Link ${bits_host_headers} and ${ext_host_headers}.
232 (install-headers): Install ${bits_host_headers} and ${ext_host_headers}.
233 * include/Makefile.in: Regenerate.
235 2013-05-18 Jonathan Wakely <jwakely.gcc@gmail.com>
237 * include/std/system_error (error_category::error_category()): LWG
238 2145: Declare public and constexpr.
239 * src/c++11/system_error.cc (error_category::error_category()): Move
241 * src/c++11/compatibility-c++0x.cc: Here.
243 2013-05-18 Jonathan Wakely <jwakely.gcc@gmail.com>
245 * include/std/typeindex (type_index::name()): LWG 2144: Add noexcept.
247 2013-05-18 Jonathan Wakely <jwakely.gcc@gmail.com>
249 * include/bits/unique_ptr.h (make_unique): Declare inline.
250 (unique_ptr<T[],D>::reset()): Combine two overloads into one.
251 (default_delete, unique_ptr): Add doxygen comments.
252 * include/bits/shared_ptr_base.h: Improve doxygen comments.
253 * include/bits/shared_ptr.h: Likewise.
254 * testsuite/20_util/default_delete/48631_neg.cc: Adjust dg-error line
256 * testsuite/20_util/unique_ptr/assign/48635_neg.cc: Likewise.
258 2013-05-18 Jonathan Wakely <jwakely.gcc@gmail.com>
260 * doc/xml/manual/status_cxx2011.xml: Fix markup error.
262 2013-05-18 Jonathan Wakely <jwakely.gcc@gmail.com>
264 * doc/xml/manual/status_cxx2011.xml: Fix markup error.
266 2013-05-18 Jonathan Wakely <jwakely.gcc@gmail.com>
268 * include/std/utility (exchange): Define.
269 * testsuite/20_util/exchange/1.cc: New.
271 2013-05-18 Jonathan Wakely <jwakely.gcc@gmail.com>
273 * include/bits/unique_ptr.h (make_unique): Define.
274 * testsuite/20_util/unique_ptr/creation/single.cc: New.
275 * testsuite/20_util/unique_ptr/creation/array.cc: New.
276 * testsuite/20_util/unique_ptr/creation/array_neg.cc: New.
278 2013-05-15 François Dumont <fdumont@gcc.gnu.org>
280 * python/libstdcxx/v6/printers.py (Tr1HashtableIterator): Fix
281 rendering of std::tr1 unordered containers iterator.
282 (StdHashtableIterator): New, render std unordered containers iterator.
283 * testsuite/libstdc++-prettyprinters/tr1.cc: New.
285 2013-05-15 Jonathan Wakely <jwakely.gcc@gmail.com>
287 * include/bits/basic_string.h (getline): Fix doxygen comments.
289 2013-05-14 Paolo Carlini <paolo.carlini@oracle.com>
291 * include/bits/stl_iterator.h (__normal_iterator<>::_M_const_cast):
292 Use std::pointer_traits.
294 2013-05-13 Benjamin Kosnik <bkoz@redhat.com>
296 * libsupc++/Makefile.am (sources): Add bad_array_length.cc,
298 * libsupc++/Makefile.in: Regenerate.
299 * libsupc++/bad_array_length.cc: Tweak.
300 * libsupc++/bad_array_new.cc: Tweak.
302 2013-05-10 Paolo Carlini <paolo.carlini@oracle.com>
305 * include/bits/stl_deque.h (erase): Fix signatures in C++11 mode.
306 (_Deque_iterator<>::_M_const_cast): Add.
307 (deque<>::_M_erase): Declare.
308 * include/bits/deque.tcc: ... and define.
309 * include/bits/stl_list.h (erase): Fix signatures in C++11 mode.
310 (_List_const_iterator<>::_M_const_cast): Add.
311 * include/bits/list.tcc (erase (iterator)): Fix.
312 * include/bits/stl_iterator.h (__normal_iterator<>::_M_const_cast):
313 Add; include <ext/cast.h>.
314 * include/bits/stl_vector.h (erase): Fix signatures in C++11 mode.
315 (vector<>::_M_erase): Declare.
316 * include/bits/stl_bvector.h: Likewise.
317 * include/bits/vector.tcc (vector<>::_M_erase): Define.
318 * include/ext/vstring.h (erase): Fix signatures in C++11 mode.
319 * include/debug/deque: Adjust.
320 * include/debug/list: Likewise.
321 * include/debug/vector: Likewise.
322 * include/profile/deque: Likewise.
323 * include/profile/list: Likewise.
324 * include/profile/vector: Likewise.
325 * testsuite/util/exception/safety.h (erase_base<deque>,
326 erase_base<deque>, erase_base<vector>): Remove.
327 (erase_base<__versa_string>): Update.
328 * testsuite/ext/vstring/modifiers/char/54577.cc: New.
329 * testsuite/ext/vstring/modifiers/wchar_t/54577.cc: Likewise.
330 * testsuite/23_containers/deque/modifiers/erase/54577.cc: Likewise.
331 * testsuite/23_containers/list/modifiers/erase/54577.cc: Likewise.
332 * testsuite/23_containers/vector/bool/modifiers/erase/54577.cc:
334 * testsuite/23_containers/vector/modifiers/erase/54577.cc: Likewise.
335 * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
336 Adjust dg-error line numbers.
337 * testsuite/23_containers/deque/requirements/dr438/
338 constructor_1_neg.cc: Likewise.
339 * testsuite/23_containers/deque/requirements/dr438/
340 constructor_2_neg.cc: Likewise.
341 * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
343 * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
345 * testsuite/23_containers/list/requirements/dr438/
346 constructor_1_neg.cc: Likewise.
347 * testsuite/23_containers/list/requirements/dr438/
348 constructor_2_neg.cc: Likewise.
349 * testsuite/23_containers/list/requirements/dr438/
350 insert_neg.cc: Likewise.
351 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
353 * testsuite/23_containers/vector/requirements/dr438/
354 constructor_1_neg.cc: Likewise.
355 * testsuite/23_containers/vector/requirements/dr438/
356 constructor_2_neg.cc: Likewise.
357 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
360 2013-05-09 Uros Bizjak <ubizjak@gmail.com>
362 * testsuite/util/testsuite_abi.cc (check_version): Add CXXABI_1.3.8.
364 2013-05-08 Jason Merrill <jason@redhat.com>
366 Add std::bad_array_length (N3639)
367 * libsupc++/new: Add std::bad_array_length.
368 * libsupc++/bad_array_length.cc: New.
369 * libsupc++/eh_aux_runtime.cc: Add __cxa_bad_array_length.
370 * libsupc++/Makefile.in: Build them.
371 * config/abi/pre/gnu.ver: Add new symbols.
372 * config/abi/pre/gnu-versioned-namespace.ver: Add new symbols.
374 2013-05-08 Andi Kleen <ak@linux.intel.com>
377 * libstdc++-v3/include/bits/atomic_base.h
378 (_GLIBCXX_ALWAYS_INLINE): Add new macro.
379 (atomic_thread_fence, atomic_signal_fence, test_and_set,
380 clear, store, load, exchange, compare_exchange_weak)
381 compare_exchange_strong, fetch_add, fetch_sub, fetch_and,
382 fetch_or, fetch_xor): Mark _GLIBCXX_ALWAYS_INLINE.
384 2013-05-08 Jason Merrill <jason@redhat.com>
386 Add std::bad_array_new_length (N2932)
387 * libsupc++/new: Add std::bad_array_new_length.
388 * libsupc++/bad_array_new.cc: New.
389 * libsupc++/eh_aux_runtime.cc: Add __cxa_throw_bad_array_new_length.
390 * libsupc++/Makefile.in: Build them.
391 * config/abi/pre/gnu.ver: Add new symbols.
392 * config/abi/pre/gnu-versioned-namespace.ver: Add new symbols.
394 2013-05-08 Andoni Morales Alastruey <ylatuya@gmail.com>
397 * include/Makefile.am (_GLIBCXX___MINGW32_GLIBCXX___): Modify
399 * include/Makefile.in: Regenerated.
401 2013-05-07 François Dumont <fdumont@gcc.gnu.org>
403 * include/profile/unordered_base.h: New.
404 * include/Makefile.am: Add new profile header.
405 * include/Makefile.in: Regenerate.
406 * include/profile/impl/profiler.h
407 (__profcxx_inefficient_hash_is_on): New macro.
408 * include/profile/unordered_map (std::profile::unordered_map<>):
409 Use new _Unordered_profile base class. Use default implementations
410 for special functions.
411 (std::profile::unordered_multimap<>): Likewise.
412 * include/profile/unordered_set (std::profile::unordered_set<>):
414 (std::profile::unordered_multiset<>): Likewise.
415 * testsuite/23_containers/unordered_multiset/55043.cc: Fix
416 MoveOnly equality operator signature.
418 2013-05-02 Paolo Carlini <paolo.carlini@oracle.com>
420 * testsuite/tr1/4_metaprogramming/integral_constant/requirements/
421 constexpr_data.cc: Move...
422 * testsuite/20_util/integral_constant/requirements/constexpr_data.cc:
424 * testsuite/20_util/integral_constant/requirements/
425 explicit_instantiation.cc: New.
426 * testsuite/20_util/integral_constant/requirements/typedefs.cc:
428 * testsuite/20_util/integral_constant/static_definition.cc: Likewise.
429 * testsuite/20_util/integral_constant/true_false_type_typedefs.cc:
431 * testsuite/20_util/integral_constant/true_false_value.cc: Likewise.
432 * testsuite/20_util/integral_constant/operator_value_type.cc: Likewise.
434 2013-05-02 Paolo Carlini <paolo.carlini@oracle.com>
436 * include/std/type_traits (is_null_pointer): Add.
437 (__is_nullptr_t): Implement in terms of the latter.
438 (is_fundamental, is_scalar): Adjust.
439 * testsuite/20_util/is_null_pointer/requirements/
440 explicit_instantiation.cc: New.
441 * testsuite/20_util/is_null_pointer/requirements/typedefs.cc:
443 * testsuite/20_util/is_null_pointer/value.cc: Likewise.
444 * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
446 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
448 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
451 2013-05-02 Paolo Carlini <paolo.carlini@oracle.com>
453 * include/c_global/cstdio: Add comment about LWG 2249.
454 * include/c_std/cstdio: Likewise.
456 2013-04-28 Jonathan Wakely <jwakely.gcc@gmail.com>
458 * include/bits/hashtable_policy.h (_Hashtable_ebo_helper): Fix
460 * include/std/mutex (__recursive_mutex_base): Likewise.
462 2013-04-28 Jonathan Wakely <jwakely.gcc@gmail.com>
465 * include/bits/shared_ptr_base (_Sp_ebo_helper): Helper class to
466 implement EBO safely.
467 (_Sp_counted_base::_M_get_deleter): Add noexcept.
468 (_Sp_counter_ptr): Use noexcept instead of comments.
469 (_Sp_counted_deleter): Likewise. Use _Sp_ebo_helper.
470 (_Sp_counted_ptr_inplace): Likewise.
471 * testsuite/20_util/shared_ptr/cons/51365.cc: New.
472 * testsuite/20_util/shared_ptr/cons/52924.cc: Add rebind member to
473 custom allocator and test construction with custom allocator.
474 * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust dg-error
477 2013-04-26 Paolo Carlini <paolo.carlini@oracle.com>
479 * testsuite/23_containers/unordered_set/insert/move_range.cc: Adjust
480 dialect to -std=gnu++11.
482 2013-04-26 François Dumont <fdumont@gcc.gnu.org>
484 * include/bits/hashtable_policy.h
485 (_Insert_base<>::insert<_It>(_It, _It)): Enable move semantics.
486 * testsuite/23_containers/unordered_set/insert/move_range.cc: New.
488 2013-04-26 Paolo Carlini <paolo.carlini@oracle.com>
490 * include/c_global/cstdio (gets): Provide only in C++98 and C++11.
491 * include/c_std/cstdio (gets): Likewise.
492 * testsuite/27_io/headers/cstdio/functions_std.cc: Adjust.
494 2013-04-25 Paolo Carlini <paolo.carlini@oracle.com>
497 * include/debug/unordered_map (unordered_map, unordered_multimap):
498 Fix default allocator type.
499 * include/profile/unordered_map (unordered_map, unordered_multimap):
501 * include/bits/unordered_map.h: Fix comments.
503 2013-04-24 Jonathan Wakely <jwakely.gcc@gmail.com>
506 * libsupc++/exception_ptr.h (copy_exception): Deprecate and
507 move implementation to make_exception_ptr.
508 * include/std/future (_State_base::_M_break_promise): Replace
509 copy_exception with make_exception_ptr.
510 * testsuite/18_support/exception_ptr/move.cc: Likewise.
511 * testsuite/18_support/exception_ptr/rethrow_exception.cc: Likewise.
512 * testsuite/30_threads/future/members/get2.cc: Likewise.
513 * testsuite/30_threads/promise/members/set_exception.cc: Likewise.
514 * testsuite/30_threads/promise/members/set_exception2.cc: Likewise.
515 * testsuite/30_threads/promise/members/set_value2.cc: Likewise.
516 * testsuite/30_threads/shared_future/members/get2.cc: Likewise.
518 2013-04-22 Jason Merrill <jason@redhat.com>
520 * src/c++11/hashtable_c++0x.cc: Include ext/aligned_buffer.h.
522 * testsuite/lib/prune.exp (libstdc++-dg-prune): Also ignore "In
525 * testsuite/20_util/is_assignable/value.cc: Comment out tests involving
527 * testsuite/20_util/is_constructible/value-2.cc: Likewise.
528 * testsuite/20_util/reference_wrapper/result_type.cc: Likewise.
529 * testsuite/20_util/reference_wrapper/typedefs-2.cc: Likewise.
531 2013-04-22 François Dumont <fdumont@gcc.gnu.org>
533 * include/bits/hashtable_policy.h: Add C++11 allocator support.
534 * include/bits/hashtable.h: Likewise.
535 * include/bits/unordered_set.h: Likewise.
536 * include/bits/unordered_map.h: Likewise.
537 * include/debug/unordered_set: Likewise.
538 * include/debug/unordered_map: Likewise.
539 * include/std/unordered_set: Remove bits/algobase.h
540 include. Replace bits/alloc_traits.h by ext/alloc_traits.h.
541 * include/std/unordered_map: Likewise.
542 * include/ext/throw_allocator.h: Add checks on calls to allocator
544 (std::hash<__gnu_cxx::throw_value_limit>): Add conditional throw.
545 (std::hash<__gnu_cxx::throw_value_random>): Likewise.
546 * testsuite/util/regression/rand/priority_queue
547 /container_rand_regression_test.tcc: Adapt.
548 * testsuite/util/regression/rand/assoc
549 /container_rand_regression_test.tcc: Likewise.
550 * testsuite/util/testsuite_counter_type.h: Add count of destructors.
551 * testsuite/23_containers/unordered_set
552 /not_default_constructible_hash_neg.cc: Adjust dg-error line number.
553 * testsuite/23_containers/unordered_set/instantiation_neg.cc: Likewise.
554 * testsuite/23_containers/unordered_set/allocator/copy.cc: New.
555 * testsuite/23_containers/unordered_set/allocator/copy_assign.cc: New.
556 * testsuite/23_containers/unordered_set/allocator/minimal.cc: New.
557 * testsuite/23_containers/unordered_set/allocator/move_assign.cc: New.
558 * testsuite/23_containers/unordered_set/allocator/noexcept.cc: New.
559 * testsuite/23_containers/unordered_set/allocator/swap.cc: New.
560 * testsuite/23_containers/unordered_multiset/allocator/copy.cc: New.
561 * testsuite/23_containers/unordered_multiset/allocator/copy_assign.cc:
563 * testsuite/23_containers/unordered_multiset/allocator/minimal.cc: New.
564 * testsuite/23_containers/unordered_multiset/allocator/move_assign.cc:
566 * testsuite/23_containers/unordered_multiset/allocator/noexcept.cc: New.
567 * testsuite/23_containers/unordered_multiset/allocator/swap.cc: New.
568 * testsuite/23_containers/unordered_map/allocator/copy.cc: New.
569 * testsuite/23_containers/unordered_map/allocator/copy_assign.cc: New.
570 * testsuite/23_containers/unordered_map/allocator/minimal.cc: New.
571 * testsuite/23_containers/unordered_map/allocator/move_assign.cc: New.
572 * testsuite/23_containers/unordered_map/allocator/noexcept.cc:
574 * testsuite/23_containers/unordered_map/allocator/swap.cc: New.
575 * testsuite/23_containers/unordered_multimap/allocator/copy.cc: New.
576 * testsuite/23_containers/unordered_multimap/allocator/copy_assign.cc:
578 * testsuite/23_containers/unordered_multimap/allocator/minimal.cc: New.
579 * testsuite/23_containers/unordered_multimap/allocator/move_assign.cc:
581 * testsuite/23_containers/unordered_multimap/allocator/noexcept.cc: New.
582 * testsuite/23_containers/unordered_multimap/allocator/swap.cc: New.
584 2013-04-22 Paolo Carlini <paolo.carlini@oracle.com>
586 * include/std/type_traits (is_signed): Simplify.
587 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
588 Adjust dg-error line numbers.
589 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
591 * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
593 2013-04-22 Paolo Carlini <paolo.carlini@oracle.com>
596 * include/std/complex (complex<float>::real, complex<float>::imag,
597 complex<double>::real, complex<double>::imag,
598 complex<long double>::real, complex<long double>::imag): Declare
599 as const member functions.
600 * include/std/type_traits (integral_constant<>::operator value_type):
603 2013-04-22 Paolo Carlini <paolo.carlini@oracle.com>
606 * include/bits/stl_heap.h (pop_heap): Avoid self move-assignment.
607 * testsuite/25_algorithms/pop_heap/57010.cc: New.
609 2013-04-21 Evgeniy Stepanov <eugenis@google.com>
611 * src/c++11/system_error.cc (generic_category_instance): Add
613 (system_category_instance): Likewise.
614 * src/c++11/future.cc (__fec): Likewise.
616 2013-04-20 Jonathan Wakely <jwakely.gcc@gmail.com>
618 * doc/xml/manual/extensions.xml: Fix anachronism.
620 2013-04-09 Tom Tromey <tromey@redhat.com>
622 * configure, config.h.in: Rebuild.
623 * configure.ac: Use GLIBCXX_CHECK_SDT_H. Don't check for
625 * acinclude.m4 (GLIBCXX_CHECK_SDT_H): New defun.
627 2013-04-09 Uros Bizjak <ubizjak@gmail.com>
629 * config/abi/post/alpha-linux-gnu/baseline_symbols.txt: Update.
631 2013-04-08 Paolo Carlini <paolo.carlini@oracle.com>
633 * testsuite/libstdc++-prettyprinters/cxx11.cc: Include <memory>.
635 2013-04-07 Jonathan Wakely <jwakely.gcc@gmail.com>
637 * include/Makefile.am: Add ext/aligned_buffer.h
638 * include/Makefile.in: Regenerate.
639 * include/ext/aligned_buffer.h: New.
640 * include/std/future (_Result): Use __aligned_buffer.
641 * include/bits/forward_list.h (_Fwd_list_node): Likewise.
642 * include/bits/shared_ptr_base.h (_Sp_counted_ptr_inplace): Likewise.
643 * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust dg-error line
646 2013-04-07 Jonathan Wakely <jwakely.gcc@gmail.com>
648 * include/bits/forward_list.h: Only include required headers.
649 (forward_list::reference): Define directly, not using __alloc_traits.
650 (forward_list::const_reference): Likewise.
652 2013-04-07 François Dumont <fdumont@gcc.gnu.org>
654 * include/std/functional (_Derives_from_unary_function): Remove.
655 (_Derives_from_binary_function): Remove.
656 * include/std/type_traits (__sfinae_types): Remove.
657 (__is_assignable_helper): Adapt.
658 (__is_convertible_helper): Adapt.
659 (_GLIBCXX_HAS_NESTED_TYPE): Adapt.
660 Remove several explicit instantiations of integral_constant.
661 * testsuite/20_util/reference_wrapper/typedefs-3.cc: Adapt.
662 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
663 Adapt dg-error line number.
664 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
666 * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
667 * testsuite/20_util/bind/ref_neg.cc: Likewise.
669 2013-04-05 Jonathan Wakely <jwakely.gcc@gmail.com>
672 * libsupc++/eh_ptr.cc (rethrow_exception): Use get_unexpected() and
673 get_terminate() accessors.
674 * libsupc++/eh_throw.cc (__cxa_throw): Likewise.
675 * libsupc++/eh_terminate.cc: Use mutex when atomic builtins not
677 * libsupc++/new_handler.cc: Likewise.
679 2013-04-04 Jonathan Wakely <jwakely.gcc@gmail.com>
681 * testsuite/util/testsuite_abi.cc: Add GLIBCXX_3.4.19 version.
683 2013-04-03 Paolo Carlini <paolo.carlini@oracle.com>
686 * include/debug/array (tuple_size, tuple_element): Do not declare.
687 * include/profile/array: Likewise.
688 * testsuite/23_containers/array/tuple_interface/
689 tuple_element_debug_neg.cc: Adjust dg-error line number.
691 2013-04-03 Jonathan Wakely <jwakely.gcc@gmail.com>
693 * libsupc++/exception (get_terminate(), get_unexpected()): Declare.
694 * libsupc++/eh_terminate.cc (get_terminate() , set_unexpected()):
696 (set_terminate(terminate_handler)): Set atomically.
697 (set_unexpected(terminate_handler)): Likewise.
698 * libsupc++/new (get_new_handler()): Declare.
699 * libsupc++/new_handler.cc (get_new_handler()): Define.
700 (set_new_handler(new_handler)): Set atomically.
701 (__new_handler): Use internal linkage.
702 * libsupc++/new_op.cc (operator new): Use get_new_handler().
703 * libsupc++/new_opnt.cc (operator new): Likewise.
704 * acinclude.m4: Bump libtool_VERSION to 6:19:0.
705 * configure: Regenerate.
706 * libsupc++/Makefile.am: Compile above files with -std=gnu++11.
707 * libsupc++/Makefile.in: Regenerate.
708 * config/abi/pre/gnu.ver: Add new exports.
709 * doc/xml/manual/status_cxx2011.xml: Update.
710 * testsuite/18_support/headers/exception/synopsis.cc: Check accessors
712 * testsuite/18_support/headers/new/synopsis.cc: Likewise.
713 * testsuite/18_support/new_handler.cc: New.
714 * testsuite/18_support/terminate_handler.cc: New.
715 * testsuite/18_support/unexpected_handler.cc: New.
717 2013-04-02 Jonathan Wakely <jwakely.gcc@gmail.com>
719 * doc/xml/manual/appendix_contributing.xml: Remove broken link and
720 defer to general documentation on contributing to GCC.
721 * doc/html/*: Regenerate.
723 2013-03-30 Gerald Pfeifer <gerald@pfeifer.com>
725 * doc/xml/manual/allocator.xml: Adjust link to Dr.Dobb's article.
727 * doc/xml/manual/appendix_contributing.xml: Adjust link to GNU
730 * doc/xml/manual/debug.xml: Adjust link for ThreadSanitizer.
732 * doc/xml/manual/debug_mode.xml: Adjust link for SafeSTL.
734 * doc/xml/manual/documentation_hacking.xml: Adjust Doxygen link.
736 * doc/xml/manual/messages.xml: Adjust link to Java API specs.
738 * doc/xml/manual/policy_data_structures: Remove direct link to
739 IBM Haifa Research Labs.
741 * doc/xml/manual/policy_data_structures_biblio.xml: Adjust links
742 for biblio.maverik_lowerbounds and biblio.nelson96stlpq.
744 * doc/xml/manual/profile_mode.xml: Adjust two links to acm.org
747 * doc/xml/manual/shared_ptr.xml: Use canonical address for
750 2013-03-27 Kai Tietz <ktietz@redhat.com>
752 * crossconfig.m4: Add support for cygwin x64 target.
753 * configure: Regenerated.
755 2013-03-25 Kai Tietz <ktietz@redhat.com>
757 * testsuite/18_support/50594.cc: For mingw-targets use only static
759 * testsuite/19_diagnostics/error_category/operators/equal.cc
760 * testsuite/19_diagnostics/error_code/cons/1.cc
761 * testsuite/19_diagnostics/error_code/operators/bool.cc
762 * testsuite/19_diagnostics/error_code/operators/equal.cc
763 * testsuite/19_diagnostics/error_code/operators/not_equal.cc
764 * testsuite/19_diagnostics/error_condition/cons/1.cc
765 * testsuite/19_diagnostics/error_condition/operators/bool.cc
766 * testsuite/19_diagnostics/error_condition/operators/equal.cc
767 * testsuite/19_diagnostics/error_condition/operators/not_equal.cc
768 * testsuite/23_containers/set/requirements/exception/basic.cc
769 * testsuite/26_numerics/headers/cmath/c99_classification_macros_c.cc
770 * testsuite/lib/dg-options.exp (dg-additional-options): New option.
772 2013-03-24 Jonathan Wakely <jwakely.gcc@gmail.com>
775 * include/ext/debug_allocator.h (debug_allocator): Add missing members
776 to meet allocator requirements.
777 * testsuite/ext/debug_allocator/56170.cc: New.
779 2013-03-22 Paolo Carlini <paolo.carlini@oracle.com>
782 * include/std/chrono (__is_ratio): Uglify T.
784 2013-03-18 Paolo Carlini <paolo.carlini@oracle.com>
786 PR libstdc++/55977 (partial, std::vector and std::deque bits)
787 * include/bits/stl_vector.h (_M_range_initialize(_InputIterator,
788 _InputIterator, std::input_iterator_tag)): Use emplace_back.
789 * include/bits/deque.tcc (_M_range_initialize(_InputIterator,
790 _InputIterator, std::input_iterator_tag)): Likewise.
791 * testsuite/23_containers/vector/cons/55977.cc: New.
792 * testsuite/23_containers/deque/cons/55977.cc: Likewise.
793 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
794 Adjust dg-error line number.
795 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
798 2013-03-17 Paolo Carlini <paolo.carlini@oracle.com>
801 * include/bits/stl_list.h (_M_initialize_dispatch(_InputIterator,
802 _InputIterator, __false_type)): Use emplace_back.
803 * testsuite/23_containers/list/cons/55979.cc: New.
804 * testsuite/23_containers/list/modifiers/1.h: Adjust.
805 * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
806 Adjust dg-error line number.
808 2013-03-16 Jason Merrill <jason@redhat.com>
811 * testsuite/20_util/pair/piecewise2.cc (test01): Use std::move.
813 2013-03-16 Jonathan Wakely <jwakely.gcc@gmail.com>
816 * libsupc++/exception_ptr.h (type_info): Declare.
818 2013-03-16 Jonathan Wakely <jwakely.gcc@gmail.com>
821 * include/std/mutex (lock_guard, unique_lock, lock): Define without
822 depending on _GLIBCXX_HAS_GTHREADS.
823 * testsuite/30_threads/lock_guard/cons/1.cc: Run on all targets.
825 2013-03-16 Jonathan Wakely <jwakely.gcc@gmail.com>
828 * include/std/future (__future_base::_Result): Add result_type
830 (__future_base::_S_allocate_result): Overload for std::allocator.
831 (__future_base::_Task_setter): Use _Result::result_type instead of
832 deducing the type from the task.
833 (__future_base::_Task_state): Store allocator to allow shared state
834 to be reset. Replace std::function with member of target object type
836 (__future_base::_Task_state_base): New abstract base class.
837 (__future_base::_Task_state_base::_M_run): New virtual function to
838 invoke type-erased target object.
839 (__future_base::_Task_state_base::_M_reset): New virtual function to
840 create new shared_state using same target object and allocator.
841 (__future_base::__create_task_state): Allocate a new _Task_state.
842 (packaged_task::packaged_task): Use __create_task_state.
843 (packaged_task::reset): Use _Task_state_base::_M_reset.
844 * testsuite/30_threads/packaged_task/cons/56492.cc: New.
846 2013-03-15 Tom Tromey <tromey@redhat.com>
848 * libsupc++/unwind-cxx.h: Include sys/sdt.h if detected.
850 * libsupc++/eh_throw.cc (__cxa_throw, __cxa_rethrow): Add probe.
851 * libsupc++/eh_catch.cc (__cxa_begin_catch): Add probe.
852 * configure.ac: Check for sys/sdt.h.
853 * configure, config.h.in: Rebuild.
855 2013-03-14 Jonathan Wakely <jwakely.gcc@gmail.com>
858 * include/bits/stl_tree.h (_Rb_tree::_M_create_node): Use
859 allocator_traits instead of calling construct directly.
860 * testsuite/23_containers/map/56613.cc: New.
862 2013-03-13 Benjamin Kosnik <bkoz@redhat.com>
864 * doc/html/*: Regenerate.
866 2013-03-13 Paolo Carlini <paolo.carlini@oracle.com>
869 * include/std/type_traits (is_fundamental): Add std::nullptr_t.
870 * testsuite/20_util/is_fundamental/value.cc: Extend.
871 * testsuite/20_util/is_compound/value.cc: Likewise.
873 2013-03-09 Paolo Carlini <paolo.carlini@oracle.com>
875 * testsuite/20_util/function_objects/mem_fn/55463.cc: Avoid
878 2013-03-08 Benjamin Kosnik <bkoz@redhat.com>
880 * include/bits/memoryfwd.h: New. Centralize forward declarations.
881 * include/bits/algorithmfwd.h: Consistent comments.
882 * include/bits/localefwd.h: Same.
883 * include/ext/vstring_fwd.h: Same.
884 * include/parallel/algorithmfwd.h: Same.
885 * include/parallel/numericfwd.h: Same.
886 * include/std/iosfwd: Same.
888 * include/bits/alloc_traits.h: Include memoryfwd.h, remove allocator
890 * include/ext/alloc_traits.h: Remove allocator forward decl.
891 * include/bits/stl_construct.h: Same.
892 * include/bits/stringfwd.h: Include memoryfwd.h, remove allocator
893 forward decl. Consistent comments.
895 * doc/doxygen/user.cfg.in (TEMPLATE_RELATIONS): To NO.
897 * include/Makefile.am (bits_headers): Add memoryfwd.h.
898 * include/Makefile.in: Regenerate.
901 2013-03-08 François Dumont <fdumont@gcc.gnu.org>
903 * include/bits/vector.tcc (vector<>operator=(const vector<>&):
904 Reset pointers after deallocation when memory can be reused.
905 * testsuite/23_containers/vector/allocator/minimal.cc: Insert
906 elements to really challenge C++11 allocator integration.
907 * testsuite/23_containers/vector/allocator/copy.cc: Likewise.
908 * testsuite/23_containers/vector/allocator/copy_assign.cc:
910 * testsuite/23_containers/vector/allocator/move_assign.cc:
912 * testsuite/23_containers/vector/allocator/swap.cc: Likewise and
913 swap vector back before checks on memory/personality mapping are
915 * testsuite/23_containers/forward_list/allocator/minimal.cc:
916 Insert element to really challenge C++11 allocator integration.
917 * testsuite/23_containers/forward_list/allocator/copy.cc:
919 * testsuite/23_containers/forward_list/allocator/copy_assign.cc:
921 * testsuite/23_containers/forward_list/allocator/move_assign.cc:
923 * testsuite/23_containers/forward_list/allocator/swap.cc: Likewise
924 and swap forward_list back before checks on memory/personality
925 mapping are performed.
927 2013-03-07 Jakub Jelinek <jakub@redhat.com>
929 * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Update.
930 * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Likewise.
931 * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt:
933 * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Likewise.
934 * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Likewise.
935 * config/abi/post/s390-linux-gnu/baseline_symbols.txt: Likewise.
936 * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Likewise.
937 * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Likewise.
938 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
940 2013-03-06 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
942 * scripts/extract_symvers.pl: Omit symbols bound to base
944 * scripts/extract_symvers.in: Likewise.
945 * config/abi/post/solaris2.9/baseline_symbols.txt: Regenerate.
946 * config/abi/post/solaris2.9/sparcv9/baseline_symbols.txt: Likewise.
947 * config/abi/post/solaris2.10/baseline_symbols.txt: Likewise.
948 * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
949 * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.
951 2013-03-04 Ulrich Drepper <drepper@gmail.com>
953 * include/ext/random (__gnu_cxx::von_mises_distribution<>):
954 Optimize generation function by pulling computation of __r into the
955 constructor for param_type. Also compare _M_mu in operator==.
958 2013-03-02 Ulrich Drepper <drepper@gmail.com>
960 Add triangular and von Mises distributions.
961 * include/ext/random: Include <ext/cmath>.
962 Add __gnu_cxx::triangular_distribution<> and
963 __gnu_cxx::von_mises_distribution<> classes.
964 * include/ext/random.tcc: Add out-of-line functions for
965 __gnu_cxx::triangular_distribution<> and
966 __gnu_cxx::von_mises_distribution<>.
967 * testsuite/ext/triangular_distribution/cons/default.cc: New file.
968 * testsuite/ext/triangular_distribution/cons/parms.cc: New file.
969 * testsuite/ext/triangular_distribution/operators/serialize.cc:
971 * testsuite/ext/triangular_distribution/operators/equal.cc:
973 * testsuite/ext/triangular_distribution/operators/inequal.cc:
975 * testsuite/ext/triangular_distribution/requirements/typedefs.cc:
977 * testsuite/ext/triangular_distribution/requirements/
978 explicit_instantiation/1.cc: New file.
979 * testsuite/ext/von_mises_distribution/cons/default.cc: New file.
980 * testsuite/ext/von_mises_distribution/cons/parms.cc: New file.
981 * testsuite/ext/von_mises_distribution/operators/serialize.cc:
983 * testsuite/ext/von_mises_distribution/operators/equal.cc: New file.
984 * testsuite/ext/von_mises_distribution/operators/inequal.cc:
986 * testsuite/ext/von_mises_distribution/requirements/typedefs.cc:
988 * testsuite/ext/von_mises_distribution/requirements/
989 explicit_instantiation/1.cc: New file.
992 * include/Makefile.am (ext_headers): Add cmath.
993 * include/Makefile.in: Regenerated.
994 * include/ext/cmath: New file.
996 2013-03-01 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
998 * config/abi/post/solaris2.9/baseline_symbols.txt: Regenerate.
999 * config/abi/post/solaris2.9/sparcv9/baseline_symbols.txt: Likewise.
1000 * config/abi/post/solaris2.10/baseline_symbols.txt: Likewise.
1001 * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
1002 * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.
1004 2013-02-26 Jonathan Wakely <jwakely.gcc@gmail.com>
1007 * include/bits/atomic_base.h (atomic_flag): Fix narrowing conversion.
1008 * testsuite/29_atomics/atomic/operators/56012.cc: New.
1011 * include/std/atomic (atomic<bool>::operator=(bool) volatile): Add
1013 * testsuite/29_atomics/atomic/operators/56011.cc: New.
1015 2013-02-25 Jason Merrill <jason@redhat.com>
1017 * configure.ac: Check for __cxa_thread_atexit_impl.
1018 * libsupc++/atexit_thread.cc (__cxa_thread_atexit): Just forward
1020 * config.h.in, configure: Regenerate.
1022 2013-02-20 Jonathan Wakely <jwakely.gcc@gmail.com>
1024 * include/std/streambuf (basic_streambuf): Use injected class name
1025 instead of non-standard __streambuf_type typedef. Fix unclosed Doxygen
1028 2013-02-20 Jonathan Wakely <jwakely.gcc@gmail.com>
1030 * doc/html/faq.html: Fix spelling.
1031 * doc/xml/faq.xml: Likewise.
1032 * include/bits/basic_ios.h: Likewise.
1033 * include/bits/regex.h: Likewise.
1034 * include/std/istream: Likewise.
1035 * include/std/streambuf: Likewise.
1037 2013-02-20 Jonathan Wakely <jwakely.gcc@gmail.com>
1039 * testsuite/23_containers/unordered_set/55043.cc: Add missing
1040 namespace qualification.
1041 * testsuite/23_containers/unordered_multiset/55043.cc: Likewise.
1043 2013-02-19 Benjamin Kosnik <bkoz@redhat.com>
1045 * doc/doxygen/user.cfg.in: Set __cplusplus to 201103L. Change to
1046 _GLIBCXX_INCLUDE_AS_CXX11. DIRECTORY_GRAPH, MARKDOWN_SUPPORT,
1047 AUTOLINK_SUPPORT to NO. Update to doxygen 1.8.3.1.
1048 * include/bits/stl_pair.h: Add to utilities group.
1049 * include/std/tuple: Same.
1050 * include/std/typeindex: Same.
1052 * include/bits/stringfwd.h: Fix markup.
1053 * include/std/limits: Same.
1054 * include/std/type_traits: Same.
1055 * include/tr1/memory: Same.
1056 * include/tr1/regex: Same.
1057 * scripts/run_doxygen: Comment.
1058 * testsuite/20_util/uses_allocator/cons_neg.cc: Fixup line numbers.
1060 2013-02-14 Jason Merrill <jason@redhat.com>
1062 * testsuite/18_support/quick_exit/quick_exit.cc: #if out the whole
1063 test if unsupported.
1065 2013-02-13 Marc Glisse <marc.glisse@inria.fr>
1068 * include/std/complex (complex): Undefine.
1069 * include/c_compatibility/complex.h (complex): Only undefine if
1070 <complex> has been included.
1071 * testsuite/26_numerics/complex/56111.cc: New testcase.
1073 2013-02-13 François Dumont <fdumont@gcc.gnu.org>
1075 * include/bits/hashtable_policy.h (_Hash_code_base): Restore
1076 default constructor protected.
1077 * include/bits/hashtable.h: static assert that _Hash_code_base has
1078 a default constructor available through inheritance.
1080 2013-02-12 Paolo Carlini <paolo.carlini@oracle.com>
1082 * include/c_std/cstdlib (at_quick_exit, quick_exit): Provide in
1085 2013-02-12 Julian Brown <julian@codesourcery.com>
1087 * testsuite/22_locale/time_get/get_weekday/char/38081-1.cc (test01):
1088 Don't expect dots after abbreviated weekday names for ru_RU for
1089 glibc versions >= 2.17.
1090 * testsuite/22_locale/time_get/get_weekday/char/38081-2.cc (test01):
1093 2013-02-12 Paolo Carlini <paolo.carlini@oracle.com>
1095 * include/bits/random.tcc (__transform): Remove.
1097 (discrete_distribution<>::param_type::_M_initialize): Adjust.
1098 (piecewise_constant_distribution<>::param_type::_M_initialize):
1100 (piecewise_linear_distribution<>::param_type::_M_initialize):
1103 2013-02-11 Benjamin Kosnik <bkoz@redhat.com>
1105 * src/c++11/Makefile.am (hashtable_c++0x.lo, hashtable_c++0x.o):
1106 Use -fimplicit-templates.
1107 * src/c++11/Makefile.in: Regenerate.
1108 * src/c++11/hashtable_c++0x.cc: Remove instantiation for
1109 std::lower_bound template.
1111 2013-02-11 Paolo Carlini <paolo.carlini@oracle.com>
1113 * include/c_std/cstdlib (at_quick_exit, quick_exit): Do not declare.
1114 * include/c_global/cstdlib (at_quick_exit, quick_exit): Declare only
1115 in C++11 mode and if available in the underlying C library.
1116 * testsuite/18_support/quick_exit/quick_exit.cc: Compile with
1117 -std=gnu++11; check _GLIBCXX_HAVE_AT_QUICK_EXIT and
1118 _GLIBCXX_HAVE_QUICK_EXIT.
1120 2013-02-11 Benjamin Kosnik <bkoz@redhat.com>
1122 * doc/html/*: Regenerate.
1124 2013-02-11 Jason Merrill <jason@redhat.com>
1126 * linkage.m4 (GLIBCXX_CHECK_STDLIB_DECL_AND_LINKAGE): New.
1127 (GLIBCXX_CHECK_STDLIB_SUPPORT): Check for atexit and at_quick_exit.
1128 * config.h.in, configure: Regenerate.
1129 * include/c_std/cstdlib: Add atexit and at_quick_exit.
1130 * include/c_global/cstdlib: Add atexit and at_quick_exit.
1131 * testsuite/18_support/quick_exit/quick_exit.cc: New.
1133 2013-02-11 Paolo Carlini <paolo.carlini@oracle.com>
1137 2013-02-06 Edward Smith-Rowland <3dw4rd@verizon.net>
1140 * include/bits/basic_ios.h: Replace operator void*() const
1141 with explicit operator bool() const in C++11 and greater.
1142 * testsuite/27_io/basic_ios/pr56193.cc: New file.
1144 2013-02-10 François Dumont <fdumont@gcc.gnu.org>
1145 Jonathan Wakely <jwakely.gcc@gmail.com>
1147 * doc/xml/manual/containers.xml: Add section on unordered containers.
1148 * doc/xml/manual/using.xml: Fix incomplete sentence.
1150 2013-02-10 Jonathan Wakely <jwakely.gcc@gmail.com>
1153 * include/bits/hashtable.h (__cache_default): Check if hash function
1155 * testsuite/23_containers/unordered_set/56267.cc: New.
1156 * testsuite/23_containers/unordered_set/instantiation_neg.cc: Adjust
1157 dg-error line number.
1158 * testsuite/23_containers/unordered_set/
1159 not_default_constructible_hash_neg.cc: Likewise.
1162 * include/bits/hashtable_policy.h (_Hash_code_base): Make default
1164 * testsuite/23_containers/unordered_set/56278.cc: New.
1166 2013-02-09 François Dumont <fdumont@gcc.gnu.org>
1168 * include/tr1/bessel_function.tcc (__cyl_bessel_ij_series): Code
1171 2013-02-08 Edward Smith-Rowland <3dw4rd@verizon.net>
1174 * include/tr1/special_function_util.h: Remove spurious const
1175 from numeric arguments.
1176 * include/tr1/riemann_zeta.tcc: Likewise.
1177 * include/tr1/exp_integral.tcc: Likewise.
1178 * include/tr1/bessel_function.tcc: Likewise.
1179 * include/tr1/hypergeometric.tcc: Likewise.
1180 * include/tr1/modified_bessel_func.tcc: Likewise.
1181 * include/tr1/poly_laguerre.tcc: Likewise.
1182 * include/tr1/gamma.tcc: Likewise.
1183 * include/tr1/legendre_function.tcc: Likewise.
1184 * include/tr1/poly_hermite.tcc: Likewise.
1185 * include/tr1/ell_integral.tcc: Likewise.
1186 * include/tr1/bessel_function.tcc (__cyl_bessel_ij_series):
1187 If argument is zero return function value.
1188 * testsuite/tr1/5_numerical_facilities/special_functions/
1189 08_cyl_bessel_i/pr56216.cc: New.
1191 2013-02-07 Paolo Carlini <paolo.carlini@oracle.com>
1193 * testsuite/27_io/basic_ios/pr56193.cc: Tweak.
1195 2013-02-06 Edward Smith-Rowland <3dw4rd@verizon.net>
1198 * include/bits/basic_ios.h: Replace operator void*() const
1199 with explicit operator bool() const in C++11 and greater.
1200 * testsuite/27_io/basic_ios/pr56193.cc: New file.
1202 2013-02-04 Dodji Seketeli <dodji@redhat.com>
1204 Add missing explicit instantiation for std::lower_bound template
1205 * libstdc++-v3/src/c++11/hashtable_c++0x.cc (namespace std): Add
1206 missing instantiation for std::lower_bound template.
1208 2013-02-04 François Dumont <fdumont@gcc.gnu.org>
1210 * include/bits/functional_hash.h (std::__is_fast_hash<>): New.
1211 * include/bits/basic_string.h: Specialize previous to mark
1212 std::hash for string types as slow.
1213 * include/bits/hashtable.h (__cache_default): Replace is_integral
1214 with __is_fast_hash.
1215 * src/c++11/hash_c++0x.cc: Add type_traits include.
1216 * testsuite/23_containers/unordered_set/instantiation_neg.cc:
1217 Adapt dg-error line number.
1218 * testsuite/23_containers/unordered_set/
1219 not_default_constructible_hash_neg.cc: Likewise.
1221 2013-02-04 Manuel López-Ibáñez <manu@gcc.gnu.org>
1222 Paolo Carlini <paolo.carlini@oracle.com>
1224 PR libstdc++/56202 (again)
1225 * include/bits/random.tcc (binomial_distribution<>::
1226 _M_waiting(_UniformRandomNumberGenerator&, _IntType)): Fix thinko
1229 * include/bits/random.h: Fix comment typo.
1231 2013-02-04 Manuel López-Ibáñez <manu@gcc.gnu.org>
1232 Paolo Carlini <paolo.carlini@oracle.com>
1235 * include/bits/random.tcc (binomial_distribution<>::
1236 _M_waiting(_UniformRandomNumberGenerator&, _IntType)): Avoid
1239 2013-02-03 Richard Sandiford <rdsandiford@googlemail.com>
1241 Update copyright years.
1242 * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc,
1243 testsuite/23_containers/deque/requirements/dr438/constructor_1_neg.cc,
1244 testsuite/23_containers/deque/requirements/dr438/constructor_2_neg.cc,
1245 testsuite/23_containers/deque/requirements/dr438/insert_neg.cc,
1246 testsuite/23_containers/list/requirements/dr438/assign_neg.cc,
1247 testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc,
1248 testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc,
1249 testsuite/23_containers/list/requirements/dr438/insert_neg.cc,
1250 testsuite/23_containers/vector/requirements/dr438/assign_neg.cc,
1251 testsuite/23_containers/vector/requirements/dr438/constructor_1_neg.cc,
1252 testsuite/23_containers/vector/requirements/dr438/constructor_2_neg.cc,
1253 testsuite/23_containers/vector/requirements/dr438/insert_neg.cc,
1254 testsuite/29_atomics/atomic/cons/assign_neg.cc,
1255 testsuite/29_atomics/atomic/cons/copy_neg.cc,
1256 testsuite/29_atomics/atomic_integral/cons/assign_neg.cc,
1257 testsuite/29_atomics/atomic_integral/cons/copy_neg.cc,
1258 testsuite/29_atomics/atomic_integral/operators/bitwise_neg.cc,
1259 testsuite/29_atomics/atomic_integral/operators/decrement_neg.cc,
1260 testsuite/29_atomics/atomic_integral/operators/increment_neg.cc:
1261 Update lines in dg error matches.
1263 2013-02-03 Richard Sandiford <rdsandiford@googlemail.com>
1265 * config/os/mingw32/ctype_inline.h: Fix copyright typo.
1267 2013-02-01 François Dumont <fdumont@gcc.gnu.org>
1269 * include/bits/hashtable_policy.h
1270 (_Prime_rehash_policy::_M_next_bkt)
1271 (_Prime_rehash_policy::_M_need_rehash): Move definition...
1272 * src/c++11/hashtable_c++0x.cc: ... here.
1273 * src/shared/hashtable-aux.cc: Remove c++config.h include.
1274 * config/abi/gnu.ver (GLIBCXX_3.4.18): Export _Prime_rehash_policy
1277 2013-01-29 Jason Merrill <jason@redhat.com>
1280 * config/abi/pre/gnu.ver: Don't export construction vtables.
1281 * config/abi/pre/gnu-versioned-namespace.ver: Likewise.
1283 2013-01-28 Jonathan Wakely <jwakely.gcc@gmail.com>
1286 * include/bits/hashtable_policy.h (insert(_Pair&&)): Use _M_emplace
1287 to construct value_type explicitly before trying to extract the key.
1288 * testsuite/23_containers/unordered_map/cons/56112.cc: New.
1290 2013-01-28 François Dumont <fdumont@gcc.gnu.org>
1292 * include/bits/hashtable_policy.h (_Local_iterator_base): Use
1293 _Hashtable_ebo_helper to embed functors into the local_iterator
1294 when necessary. Pass information about functors involved in hash
1296 * include/bits/hashtable.h (__cache_default): Do not cache for
1297 builtin integral types unless the hash functor is not noexcept
1298 qualified or is not default constructible. Adapt static assertions
1299 and local iterator instantiations.
1300 * include/debug/unordered_set
1301 (std::__debug::unordered_set<>::erase): Detect local iterators to
1302 invalidate using contained node rather than generating a dummy
1303 local_iterator instance.
1304 (std::__debug::unordered_multiset<>::erase): Likewise.
1305 * include/debug/unordered_map
1306 (std::__debug::unordered_map<>::erase): Likewise.
1307 (std::__debug::unordered_multimap<>::erase): Likewise.
1308 * testsuite/performance/23_containers/insert_erase/41975.cc: Test
1309 std::tr1 and std versions of unordered_set regardless of any
1310 macro. Add test on default cache behavior.
1311 * testsuite/performance/23_containers/insert/54075.cc: Likewise.
1312 * testsuite/23_containers/unordered_set/instantiation_neg.cc:
1314 * testsuite/23_containers/unordered_set/
1315 not_default_constructible_hash_neg.cc: New.
1316 * testsuite/23_containers/unordered_set/buckets/swap.cc: New.
1318 2013-01-24 Paolo Carlini <paolo.carlini@oracle.com>
1321 * include/std/complex (pow(const complex<>&, int)): Avoid __n
1324 2013-01-22 Jakub Jelinek <jakub@redhat.com>
1326 * testsuite/29_atomics/atomic_flag/test_and_set/explicit-hle.cc:
1327 Tightten scan-assembler-times regexps, add dg-additional-options for
1328 ia32, add -g0 -fno-exceptions -fno-asynchronous-unwind-tables to
1331 2013-01-12 Andi Kleen <ak@linux.intel.com>
1332 Jonathan Wakely <jwakely.gcc@gmail.com>
1335 * include/bits/atomic_base.h (__memory_order_modifier): Add
1336 __memory_order_mask, __memory_order_modifier_mask,
1337 __memory_order_hle_acquire, __memory_order_hle_release.
1338 (operator|,operator&): Add.
1339 (__cmpexch_failure_order): Rename to __cmpexch_failure_order2.
1340 (__cmpexch_failure_order): Add.
1341 (clear, store, load, compare_exchange_weak, compare_exchange_strong):
1343 * testsuite/29_atomics/atomic_flag/test_and_set/explicit-hle.cc:
1346 2013-01-19 Jonathan Wakely <jwakely.gcc@gmail.com>
1349 * include/std/future (_State_base::_S_check(const shared_ptr<T>&)):
1351 (__basic_future::_M_get_result()): Const qualify.
1352 (shared_future::get()): Likewise.
1353 * testsuite/30_threads/shared_future/members/get.cc: Use const
1356 2013-01-16 Jonathan Wakely <jwakely.gcc@gmail.com>
1358 PR libstdc++/55043 (again)
1359 * include/bits/alloc_traits.h (allocator_traits::construct): Disable
1360 unless construction would be well-formed.
1361 (__allow_copy_cons, __check_copy_constructible): Define.
1362 * include/bits/unordered_map.h (__check_copy_constructible): Use as
1363 base class so copy constructor will be deleted if appropriate.
1364 (is_copy_constructible): Remove specialization.
1365 * include/bits/unordered_set.h: Likewise.
1366 * include/debug/unordered_map.h: Undo previous commit. Default copy
1367 and move constructors.
1368 * include/debug/unordered_set.h: Likewise.
1369 * include/profile/unordered_map.h: Undo previous commit.
1370 * include/profile/unordered_set.h: Likewise.
1371 * testsuite/23_containers/unordered_map/55043.cc: Fix test.
1372 * testsuite/23_containers/unordered_multimap/55043.cc: Likewise.
1373 * testsuite/23_containers/unordered_multiset/55043.cc: Likewise.
1374 * testsuite/23_containers/unordered_set/55043.cc: Likewise.
1375 * testsuite/23_containers/unordered_map/requirements/53339.cc: XFAIL,
1376 cannot support incomplete types.
1377 * testsuite/23_containers/unordered_multimap/requirements/53339.cc:
1380 2013-01-16 Jonathan Wakely <jwakely.gcc@gmail.com>
1383 * include/std/unordered_map: Include alloc_traits.h
1384 * include/std/unordered_set: Likewise.
1385 * include/bits/alloc_traits.h: Define __is_copy_insertable.
1386 * include/bits/unordered_map.h: Use it.
1387 * include/bits/unordered_set.h: Likewise.
1388 * include/debug/unordered_map.h: Likewise.
1389 * include/debug/unordered_set.h: Likewise.
1390 * include/profile/unordered_map.h: Likewise.
1391 * include/profile/unordered_set.h: Likewise.
1392 * include/bits/hashtable.h: Fix comment typos.
1393 * testsuite/23_containers/unordered_map/55043.cc: New.
1394 * testsuite/23_containers/unordered_multimap/55043.cc: New.
1395 * testsuite/23_containers/unordered_multiset/55043.cc: New.
1396 * testsuite/23_containers/unordered_set/55043.cc: New.
1398 2013-01-03 Janis Johnson <janisjo@codesourcery.com>
1400 * testsuite/lib/gdb-test.exp (gdb_batch_check): Catch error running
1403 2013-01-08 Jonathan Wakely <jwakely.gcc@gmail.com>
1405 * doc/xml/manual/status_cxx2011.xml: Document that N3189 is missing.
1407 2013-01-08 Jonathan Wakely <jwakely.gcc@gmail.com>
1410 * include/std/functional (_Mem_fn::operator()): Fix constraints to
1412 * testsuite/20_util/function_objects/mem_fn/55908.cc: New.
1413 * testsuite/20_util/bind/ref_neg.cc: Adjust dg-error line numbers.
1415 2013-01-08 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1418 * acinclude.m4 (GLIBCXX_CHECK_ASSEMBLER_HWCAP): Restrict test to
1420 * configure: Regenerate.
1422 2013-01-07 Jonathan Wakely <jwakely.gcc@gmail.com>
1425 * src/c++11/shared_ptr.cc (bad_weak_ptr::what()): Correct string.
1426 * testsuite/20_util/shared_ptr/cons/weak_ptr_expired.cc: Verify
1430 * include/std/functional (bad_function_call::what()): Declare.
1431 * src/c++11/functional.cc (bad_function_call::what()): Define.
1432 * config/abi/pre/gnu.ver (bad_function_call::what()): Export.
1433 * testsuite/20_util/bad_function_call/what.cc: New.
1435 2013-01-06 Jonathan Wakely <jwakely.gcc@gmail.com>
1437 * include/bits/unordered_map.h: Fix typo in comments.
1438 * doc/xml/manual/status_cxx2011.xml: Add implementation-defined bucket
1439 counts for unordered associative containers.
1441 2013-01-06 Jonathan Wakely <jwakely.gcc@gmail.com>
1443 * doc/xml/manual/abi.xml: Update library and symbol versions.
1445 2013-01-06 Richard Sandiford <rdsandiford@googlemail.com>
1447 * include/ext/pb_ds/detail/splay_tree_/insert_fn_imps.hpp: Fix typo
1449 * testsuite/22_locale/time_get/get_weekday/wchar_t/3.cc: Likewise.
1452 Copyright (C) 2013 Free Software Foundation, Inc.
1454 Copying and distribution of this file, with or without modification,
1455 are permitted in any medium without royalty provided the copyright
1456 notice and this notice are preserved.