Use temporary int objects to access struct tm members
[gcc.git] / libstdc++-v3 / ChangeLog
1 2017-01-10 Felipe Magno de Almeida <felipe@expertisesolutions.com.br>
2
3 * include/bits/locale_facets_nonio.tcc
4 (time_get::_M_extract_via_format): Avoid compilation errors with
5 non-standard struct tm.
6
7 2017-01-10 François Dumont <fdumont@gcc.gnu.org>
8 Jonathan Wakely <jwakely@redhat.com>
9
10 * python/libstdcxx/v6/printers.py (_versioned_namespace): Define.
11 (is_specialization, strip_versioned_namespace): New helpers functions
12 to work with symbols in the versioned namespace.
13 (Printer.add_version): Add second name using versioned namespace.
14 (add_one_template_type_printer, add_one_type_printer): Add second
15 type printers using versioned namespace.
16 (register_type_printers): Add template type printer for basic_string.
17 (build_libstdcxx_dictionary): Remove dead code.
18 * python/libstdcxx/v6/xmethods.py: Make all matchers look for
19 versioned namespace.
20 * testsuite/libstdc++-prettyprinters/48362.cc: Adjust expected
21 results.
22 * testsuite/libstdc++-prettyprinters/whatis.cc: Likewise.
23
24 2017-01-09 Jonathan Wakely <jwakely@redhat.com>
25
26 PR libstdc++/79017
27 * acinclude.m4 (GLIBCXX_CHECK_C99_TR1): Check for llrint and llround
28 functions separately on darwin and if they're missing define
29 _GLIBCXX_NO_C99_ROUNDING_FUNCS.
30 * config.h.in: Regenerate.
31 * configure: Regenerate.
32 * include/c_global/cmath [_GLIBCXX_NO_C99_ROUNDING_FUNCS] (llrint)
33 (llrintf, llrintl, llround, llroundf, llroundl): Do not define.
34
35 * testsuite/30_threads/condition_variable/members/3.cc: Use new macro
36 to detect correct thread_local destructors.
37 * testsuite/util/testsuite_hooks.h (CORRECT_THREAD_LOCAL_DTORS):
38 Define.
39
40 2017-01-09 Jonathan Wakely <jwakely@redhat.com>
41 Aditya Kumar <hiraditya@msn.com>
42
43 PR libstdc++/66414
44 * include/bits/basic_string.tcc
45 (basic_string::find(const CharT*, size_type, size_type)): Optimize.
46
47 2017-01-06 Jonathan Wakely <jwakely@redhat.com>
48
49 * testsuite/21_strings/basic_string/operations/find/char/6.cc: New.
50 * testsuite/21_strings/basic_string/operations/find/wchar_t/6.cc: New.
51
52 * testsuite/util/performance/priority_queue/mem_usage/pop_test.hpp:
53 Include <cassert> header.
54
55 PR libstdc++/78968
56 * crossconfig.m4: Check for __cxa_thread_atexit on *-*-freebsd*.
57 * configure: Regenerate.
58
59 2017-01-06 Barrett Adair <barrettellisadair@gmail.com>
60 Jonathan Wakely <jwakely@redhat.com>
61
62 * include/std/variant (variant, swap): Replace __and_ usage with fold
63 expressions.
64
65 2017-01-06 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
66
67 PR go/78978
68 * acinclude.m4 (GLIBCXX_CHECK_ASSEMBLER_HWCAP): Remove.
69 * configure.ac: Call GCC_CHECK_ASSEMBLER_HWCAP instead of
70 GLIBCXX_CHECK_ASSEMBLER_HWCAP.
71 * fragment.am (CONFIG_CXXFLAGS): Use HWCAP_CFLAGS instead of
72 HWCAP_FLAGS.
73 * aclocal.m4: Regenerate.
74 * configure: Regenerate.
75 * Makefile.in, doc/Makefile.in, include/Makefile.in,
76 libsupc++/Makefile.in, po/Makefile.in, python/Makefile.in,
77 src/Makefile.in, src/c++11/Makefile.in, src/c++98/Makefile.in,
78 src/filesystem/Makefile.in, testsuite/Makefile.in: Regenerate.
79
80 2017-01-06 Jonathan Wakely <jwakely@redhat.com>
81
82 * include/bits/c++config (_GLIBCXX_ASSERTIONS): Avoid redefinition.
83
84 PR libstdc++/78991
85 * include/bits/predefined_ops.h (_Iter_comp_iter, _Iter_comp_val)
86 (_Val_comp_iter, _Iter_equals_val, _Iter_pred, _Iter_comp_to_val)
87 (_Iter_comp_to_iter, _Iter_negate): Make constructors explicit and
88 move function objects.
89 (__iter_comp_iter, __iter_comp_val, __val_comp_iter, __pred_iter)
90 (__iter_comp_val, __iter_comp_iter, __negate): Move function objects.
91 * testsuite/25_algorithms/sort/78991.cc: New test.
92
93 2017-01-05 Jonathan Wakely <jwakely@redhat.com>
94
95 * include/bits/std_function.h (function::_Signature_type): Remove.
96 (function::function(_Functor)): Adjust.
97
98 2017-01-05 Tim Shen <timshen@google.com>
99
100 PR libstdc++/78996
101 * include/std/variant (__gen_vtable_impl): rename __unused to
102 __dimensions to avoid naming conflict.
103
104 2017-01-04 Jonathan Wakely <jwakely@redhat.com>
105
106 PR libstdc++/78968
107 * config.h.in: Regenerate.
108 * configure: Likewise.
109 * configure.ac: Check for __cxa_thread_atexit.
110 * libsupc++/atexit_thread.cc [_GLIBCXX_HAVE___CXA_THREAD_ATEXIT]:
111 Don't define __cxa_thread_atexit if libc provides it.
112
113 2017-01-04 Ville Voutilainen <ville.voutilainen@gmail.com>
114
115 Implement 2801, Default-constructibility of unique_ptr.
116 * include/bits/unique_ptr.h (__uniq_ptr_impl::_DeleterConstraint): New.
117 (unique_ptr::_DeleterConstraint): Likewise.
118 (unique_ptr()): Constrain.
119 (unique_ptr(pointer)): Likewise.
120 (unique_ptr(nullptr_t)): Likewise.
121 (unique_ptr<_Tp[], _Dp>::_DeleterConstraint): New.
122 (unique_ptr<_Tp[], _Dp>::unique_ptr()): Constrain.
123 (unique_ptr<_Tp[], _Dp>::unique_ptr(_Up)): Likewise.
124 (unique_ptr<_Tp[], _Dp>::unique_ptr(nullptr_t)): Likewise.
125 * testsuite/20_util/unique_ptr/assign/48635_neg.cc: Adjust.
126 * testsuite/20_util/unique_ptr/cons/cv_qual_neg.cc: Likewise.
127 * testsuite/20_util/unique_ptr/cons/default.cc: New.
128 * testsuite/20_util/unique_ptr/cons/ptr_deleter_neg.cc: Adjust.
129
130 2017-01-04 Pauli Nieminen <suokkos@gmail.com>
131 Jonathan Wakely <jwakely@redhat.com>
132
133 PR libstdc++/64735
134 * acinclude.m4 (GLIBCXX_CHECK_EXCEPTION_PTR_SYMVER): Define.
135 * config.h.in: Regenerate.
136 * config/abi/pre/gnu.ver [HAVE_EXCEPTION_PTR_SINCE_GCC46]
137 (GLIBCXX_3.4.15, GLIBCXX_3.4.21, CXXABI_1.3.3, CXXABI_1.3.5): Make
138 exports for exception_ptr, nested_exception, and future conditional.
139 [HAVE_EXCEPTION_PTR_SINCE_GCC46] (GLIBCXX_3.4.23, CXXABI_1.3.11): Add
140 exports for exception_ptr, nested_exception, and future conditional.
141 * configure: Regenerate.
142 * configure.ac: Use GLIBCXX_CHECK_EXCEPTION_PTR_SYMVER.
143 * include/std/future: Remove check for ATOMIC_INT_LOCK_FREE
144 * libsupc++/eh_atomics.h: New file for internal use only.
145 (__eh_atomic_inc, __eh_atomic_dec): New.
146 * libsupc++/eh_ptr.cc (exception_ptr::_M_addref)
147 (exception_ptr::_M_release) (__gxx_dependent_exception_cleanup)
148 (rethrow_exception): Use eh_atomics.h reference counting helpers.
149 * libsupc++/eh_throw.cc (__gxx_exception_cleanup): Likewise.
150 * libsupc++/eh_tm.cc (free_any_cxa_exception): Likewise.
151 * libsupc++/exception: Remove check for ATOMIC_INT_LOCK_FREE.
152 * libsupc++/exception_ptr.h: Likewise.
153 * libsupc++/guard.cc: Include header for ATOMIC_INT_LOCK_FREE macro.
154 * libsupc++/nested_exception.cc: Remove check for
155 ATOMIC_INT_LOCK_FREE.
156 * libsupc++/nested_exception.h: Likewise.
157 * src/c++11/future.cc: Likewise.
158 * testsuite/18_support/exception_ptr/*: Remove atomic builtins checks.
159 * testsuite/18_support/nested_exception/*: Likewise.
160 * testsuite/30_threads/async/*: Likewise.
161 * testsuite/30_threads/future/*: Likewise.
162 * testsuite/30_threads/headers/future/types_std_c++0x.cc: Likewise.
163 * testsuite/30_threads/packaged_task/*: Likewise.
164 * testsuite/30_threads/promise/*: Likewise.
165 * testsuite/30_threads/shared_future/*: Likewise.
166
167 2017-01-03 Gerald Pfeifer <gerald@pfeifer.com>
168
169 * doc/xml/manual/documentation_hacking.xml: sourceforge.net now
170 defaults to https; adjust reference.
171
172 2017-01-03 Jonathan Wakely <jwakely@redhat.com>
173
174 PR libstdc++/78956
175 * include/std/thread (thread(const thread&&)): Add deleted
176 constructor.
177 * testsuite/30_threads/thread/cons/lwg2097.cc: New test.
178
179 * doc/xml/manual/spine.xml: Update copyright years.
180 * doc/xml/manual/build_hacking.xml: Fix spelling of libbuilddir.
181 * doc/xml/manual/test.xml: Likewise.
182 * doc/html/*: Regenerate.
183
184 2017-01-01 Gerald Pfeifer <gerald@pfeifer.com>
185
186 * doc/xml/faq.xml: Update address of C++ ABI link.
187 * doc/xml/manual/abi.xml: Ditto.
188
189 2017-01-01 Jakub Jelinek <jakub@redhat.com>
190
191 Update copyright years.
192 \f
193 Copyright (C) 2017 Free Software Foundation, Inc.
194
195 Copying and distribution of this file, with or without modification,
196 are permitted in any medium without royalty provided the copyright
197 notice and this notice are preserved.