re PR libstdc++/64649 (regex_traits::lookup_classname() only works with random access...
[gcc.git] / libstdc++-v3 / ChangeLog
1 2015-01-22 Tim Shen <timshen@google.com>
2
3 PR libstdc++/64649
4 * include/bits/regex.tcc (regex_traits<>::lookup_collatename,
5 regex_traits<>::lookup_classname): Correctly narrow input chars.
6 * testsuite/28_regex/traits/wchar_t/user_defined.cc: New testcase.
7
8 2015-01-21 Jonathan Wakely <jwakely@redhat.com>
9
10 * config/abi/pre/gnu.ver: Use [jmy] for size_t parameters.
11
12 2015-01-21 Jonathan Wakely <jwakely@redhat.com>
13
14 * testsuite/29_atomics/atomic/64658.cc: Test stored value.
15
16 2015-01-20 Jonathan Wakely <jwakely@redhat.com>
17
18 * doc/xml/manual/status_cxx2011.xml: Remove stray dbhtml tags.
19 * doc/xml/manual/status_cxx2014.xml: Update status.
20 * doc/html/manual/status.html: Regenerate.
21
22 2015-01-20 Jonathan Wakely <jwakely@redhat.com>
23
24 PR libstdc++/64650
25 * include/experimental/optional (bad_optional_access): Add default
26 constructor.
27 * testsuite/experimental/optional/requirements.cc: Test for default
28 constructor.
29
30 2015-01-20 Jonathan Wakely <jwakely@redhat.com>
31
32 * include/bits/stl_map.h (map::find<>, map::count<>,
33 map::lower_bound<>, map::upper_bound<>, map::equal_range<>): New
34 member function templates to perform heterogeneous lookup.
35 * include/bits/stl_multimap.h (multimap::find<>, multimap::count<>,
36 multimap::lower_bound<>, multimap::upper_bound<>,
37 multimap::equal_range<>): Likewise.
38 * include/bits/stl_multiset.h (multiset::find<>, multiset::count<>,
39 multiset::lower_bound<>, multiset::upper_bound<>,
40 multiset::equal_range<>): Likewise.
41 * include/bits/stl_set.h (set::find<>, set::count<>,
42 set::lower_bound<>, set::upper_bound<>, set::equal_range<>): Likewise.
43 * include/bits/stl_tree.h (_Rb_tree::_S_lower_bound_tr,
44 _Rb_tree::_S_upper_bound_tr, _Rb_tree::_M_find_tr,
45 _Rb_tree::_M_count_tr, _Rb_tree::_M_lower_bound_tr,
46 _Rb_tree::_M_upper_bound_tr, _Rb_tree::_M_equal_range_tr): Likewise.
47 * testsuite/23_containers/map/operations/2.cc: New.
48 * testsuite/23_containers/multimap/operations/2.cc: New.
49 * testsuite/23_containers/multiset/operations/2.cc: New.
50 * testsuite/23_containers/set/operations/2.cc: New.
51
52 2015-01-20 Jonathan Wakely <jwakely@redhat.com>
53
54 * config/abi/pre/gnu.ver: Export new constructors.
55 * include/bits/codecvt.h (codecvt_byname): Add string constructor.
56 (codecvt_byname<char16_t>, codecvt_byname<char32_t>): Define explicit
57 specializations and declare explicit instantiations.
58 * include/bits/locale_classes.h (locale, collate_byname): Add string
59 constructors.
60 * include/bits/locale_facets.h (ctype_byname, numpunct_byname):
61 Likewise.
62 * include/bits/locale_facets_nonio.h (time_get_byname,
63 time_put_byname, moneypunct_byname, messages_byname): Likewise.
64 * src/c++11/codecvt.cc (codecvt_byname<char16_t>,
65 codecvt_byname<char32_t>): Define explicit instantiations.
66 * src/c++11/locale-inst.cc (time_put_byname, codecvt_byname):
67 Instantiate string constructors.
68 (ctype_byname): Define string constructor.
69 * testsuite/22_locale/codecvt_byname/1.cc: New.
70 * testsuite/22_locale/collate_byname/1.cc: New.
71 * testsuite/22_locale/ctype_byname/2.cc: New.
72 * testsuite/22_locale/messages_byname/1.cc: New.
73 * testsuite/22_locale/moneypunct_byname/1.cc: New.
74 * testsuite/22_locale/numpunct_byname/1.cc: New.
75
76 2015-01-20 Jonathan Wakely <jwakely@redhat.com>
77
78 PR libstdc++/64658
79 * include/std/atomic (atomic_init): Define.
80 * testsuite/29_atomics/atomic/64658.cc: New.
81
82 2015-01-19 Tim Shen <timshen@google.com>
83
84 PR libstdc++/64649
85 * include/bits/regex.tcc (regex_traits<>::lookup_collatename,
86 regex_traits<>::lookup_classname): Support forward iterators.
87 * testsuite/28_regex/traits/char/lookup_classname.cc: New testcases.
88 * testsuite/28_regex/traits/char/lookup_collatename.cc: New testcase.
89
90 2015-01-19 Tim Shen <timshen@google.com>
91
92 PR libstdc++/64584
93 PR libstdc++/64585
94 * include/bits/regex.h (basic_regex<>::basic_regex,
95 basic_regex<>::assign, basic_regex<>::imbue,
96 basic_regex<>::swap, basic_regex<>::mark_count): Drop NFA after
97 imbuing basic_regex; Make assign() transactional against exception.
98 * include/bits/regex_compiler.h (__compile_nfa<>): Add back
99 __compile_nfa SFINAE.
100 * include/std/regex: Adjust include order to avoid __compile_nfa
101 forward declaration.
102 * testsuite/28_regex/basic_regex/assign/char/string.cc: New testcase.
103 * testsuite/28_regex/basic_regex/imbue/string.cc: New testcase.
104
105 2015-01-19 Ville Voutilainen <ville.voutilainen@gmail.com>
106 Jonathan Wakely <jwakely@redhat.com>
107
108 * include/bits/range_access.h (begin, end): Use _GLIBCXX14_CONSTEXPR
109 on overloads for arrays.
110 (cbegin, cend, rbegin, rend, crbegin, crend): New.
111 * testsuite/24_iterators/range_access_cpp14.cc: New.
112
113 2015-01-18 Jonathan Wakely <jwakely@redhat.com>
114
115 PR libstdc++/64646
116 * include/bits/stl_algo.h (__is_permutation): Also test for reaching
117 end of the second range.
118 * testsuite/25_algorithms/is_permutation/64646.cc: New.
119
120 2015-01-18 Jonathan Wakely <jwakely@redhat.com>
121
122 * doc/xml/manual/status_cxx2011.xml: Remove note about offsetof.
123 * doc/html/manual/status.html: Regenerate.
124
125 2015-01-18 Jonathan Wakely <jwakely@redhat.com>
126
127 * include/bits/atomic_futex.h: Use mutex and condition_variable when
128 atomic int is not lock-free. Make member variables private.
129 * src/c++11/futex.cc: Likewise.
130
131 * src/c++11/futex.cc: Fix order of includes and preprocessor condition.
132
133 2015-01-17 Jonathan Wakely <jwakely@redhat.com>
134
135 PR libstdc++/64638
136 * include/bits/atomic_futex.h: Use appropriate config macros for
137 availability of std::mutex, std::condition and std::chrono.
138
139 2015-01-17 Ville Voutilainen <ville.voutilainen@gmail.com>
140 Jonathan Wakely <jwakely@redhat.com>
141
142 * doc/xml/manual/status_cxx2011.xml: Update C++11 status.
143 * doc/html/*: Regenerate.
144
145 2015-01-17 Jonathan Wakely <jwakely@redhat.com>
146
147 DR 488
148 PR libstdc++/58357
149 * include/bits/algorithmfwd.h (rotate): Return an iterator.
150 * include/bits/stl_algo.h (rotate, __rotate): Likewise.
151 * testsuite/25_algorithms/rotate/dr488.cc: New.
152 * testsuite/25_algorithms/rotate/check_type.cc: Adjust function type.
153 * testsuite/25_algorithms/rotate/requirements/explicit_instantiation/
154 2.cc: Likewise.
155 * testsuite/25_algorithms/rotate/requirements/explicit_instantiation/
156 pod.cc: Likewise.
157
158 2015-01-17 Jonathan Wakely <jwakely@redhat.com>
159
160 PR libstdc++/60940
161 * include/bits/atomic_base.h: Remove atomic integral typedefs as
162 synonyms for __atomic_base<int> etc.
163 * include/std/atomic: Make atomic_int a synonym for atomic<int> and
164 likewise for all atomic integral types.
165 * testsuite/29_atomics/atomic_integral/cons/copy_list.cc: New.
166 * testsuite/29_atomics/atomic/60695.cc: Adjust dg-error line number.
167
168 2015-01-17 Jonathan Wakely <jwakely@redhat.com>
169
170 PR libstdc++/56785
171 * include/std/tuple (_Tuple_impl): Remove zero-element specialization
172 and define one-element specialization.
173 * testsuite/20_util/tuple/56785.cc: New.
174
175 2015-01-17 Jonathan Wakely <jwakely@redhat.com>
176
177 * testsuite/22_locale/codecvt/codecvt_utf8/requirements/1.cc:
178 Remove unused header.
179 * testsuite/22_locale/codecvt/codecvt_utf16/requirements/1.cc:
180 Likewise.
181 * testsuite/22_locale/codecvt/codecvt_utf8_utf16/requirements/1.cc:
182 Likewise.
183
184 2015-01-16 Jonathan Wakely <jwakely@redhat.com>
185
186 * include/bits/locale_conv.h (wstring_convert, wbuffer_convert): New.
187 * include/std/locale: Include new header.
188 * include/Makefile.am: Add it.
189 * include/Makefile.in: Regenerate.
190 * testsuite/22_locale/conversions/buffer/requirements/typedefs.cc: New.
191 * testsuite/22_locale/conversions/string/1.cc: New.
192 * testsuite/22_locale/conversions/string/2.cc: New.
193 * testsuite/22_locale/conversions/string/requirements/typedefs.cc: New.
194 * testsuite/22_locale/conversions/string/requirements/typedefs-2.cc:
195 New.
196
197 2015-01-16 Jonathan Wakely <jwakely@redhat.com>
198
199 * config/abi/pre/gnu.ver: Export new symbols.
200 * include/Makefile.am: Add codecvt.
201 * include/Makefile.in: Regenerate.
202 * include/std/codecvt: New header.
203 * src/c++11/codecvt.cc (__codecvt_utf8_base, __codecvt_utf16_base,
204 __codecvt_utf8_utf16_base): Define specializations.
205 * testsuite/22_locale/codecvt/codecvt_utf8/requirements/1.cc: New.
206 * testsuite/22_locale/codecvt/codecvt_utf16/requirements/1.cc: New.
207 * testsuite/22_locale/codecvt/codecvt_utf8_utf16/requirements/1.cc:
208 New.
209
210 2015-01-16 Torvald Riegel <triegel@redhat.com>
211
212 * src/c++11/futex.cc: New file.
213 * include/bits/atomic_futex.h: New file.
214 * include/std/future (__future_base::_State_baseV2): Use
215 atomic_futex_unsigned instead of mutex+condvar.
216 * src/c++11/futex.cc: Likewise.
217 * include/Makefile.am: Add atomic_futex.h.
218 * include/Makefile.in: Likewise.
219 * src/c++11/Makefile.am: Add futex.cc.
220 * src/c++11/Makefile.in: Likewise.
221
222 2015-01-16 Jonathan Wakely <jwakely@redhat.com>
223
224 * acinclude.m4: Fix typo in comment.
225 * configure: Regenerate.
226 * include/bits/codecvt.h (codecvt<char16_t, char, mbstate_t>,
227 codecvt<char16_t, char, mbstate_t>): Declare specializations.
228 * include/bits/locale_facets.h: Reserve space for new specializations.
229 * src/c++11/Makefile.am: Add codecvt.cc.
230 * src/c++11/Makefile.in: Regenerate.
231 * src/c++11/codecvt.cc: New.
232 * src/c++98/Makefile.am: Compile locale_init.cc and localename.cc
233 with -std=gnu++11.
234 * src/c++98/Makefile.in: Regenerate.
235 * src/c++98/locale_init.cc: Initialize new codecvt specializations.
236 * src/c++98/localename.cc: Likewise.
237 * config/abi/pre/gnu.ver: Exports for new codecvt specializations.
238 * testsuite/22_locale/codecvt/utf8.cc: New.
239 * testsuite/22_locale/locale/cons/unicode.cc: Check that new
240 specializations are installed in locale objects.
241
242 2015-01-16 Torvald Riegel <triegel@redhat.com>
243
244 * include/std/shared_mutex (shared_timed_mutex): Add POSIX-based
245 implementation.
246
247 2015-01-13 Jonathan Wakely <jwakely@redhat.com>
248
249 PR libstdc++/64571
250 * config/abi/pre/gnu.ver: Export fstream functions using new string.
251
252 2015-01-12 Jonathan Wakely <jwakely@redhat.com>
253
254 PR libstdc++/64560
255 * src/c++11/cxx11-shim_facets.cc (locale::facet::_M_sso_shim): Check
256 for RTTI support.
257
258 PR libstdc++/64553
259 * src/c++11/cxx11-shim_facets.cc: Check for wchar_t support.
260
261 2015-01-10 Thomas Schwinge <thomas@codesourcery.com>
262
263 * doc/xml/manual/parallel_mode.xml: Update for libgomp being
264 renamed from "GNU OpenMP Runtime Library" to "GNU Offloading and
265 Multi Processing Runtime Library".
266
267 2015-01-09 Jonathan Wakely <jwakely@redhat.com>
268
269 PR libstdc++/64476
270 * include/bits/stl_uninitialized.h (uninitialized_copy): Fix
271 is_assignable arguments.
272 * testsuite/20_util/specialized_algorithms/uninitialized_copy/64476.cc:
273 New.
274
275 2015-01-09 Andreas Tobler <andreast@gcc.gnu.org>
276
277 * libsupc++/unwind-cxx.h: Revert previous commit.
278
279 2015-01-09 Andreas Tobler <andreast@gcc.gnu.org>
280
281 * configure.host: Add arm*-*-freebsd* port_specific_symbol_files.
282
283 2015-01-09 Tim Shen <timshen@google.com>
284
285 PR libstdc++/64239
286 * include/bits/regex.h (match_results<>::swap): Use std::swap
287 instead of swap.
288 * include/bits/regex_compiler.tcc (_Compiler<>::_M_quantifier):
289 Likewise.
290 * testsuite/28_regex/match_results/swap.cc: New testcase.
291
292 2015-01-08 Jonathan Wakely <jwakely@redhat.com>
293
294 PR libstdc++/60132
295 * include/std/type_traits (has_trivial_default_constructor,
296 has_trivial_copy_constructor, has_trivial_copy_assign): Add deprecated
297 attribute.
298 * testsuite/20_util/has_trivial_copy_assign/requirements/
299 explicit_instantiation.cc: Use -Wno-deprecated.
300 * testsuite/20_util/has_trivial_copy_assign/requirements/typedefs.cc:
301 Likewise.
302 * testsuite/20_util/has_trivial_copy_assign/value.cc: Likewise.
303 * testsuite/20_util/has_trivial_copy_constructor/requirements/
304 explicit_instantiation.cc: Likewise.
305 * testsuite/20_util/has_trivial_copy_constructor/requirements/
306 typedefs.cc: Likewise.
307 * testsuite/20_util/has_trivial_copy_constructor/value.cc: Likewise.
308 * testsuite/20_util/has_trivial_default_constructor/requirements/
309 explicit_instantiation.c: Likewise.
310 * testsuite/20_util/has_trivial_default_constructor/requirements/
311 typedefs.cc: Likewise.
312 * testsuite/20_util/has_trivial_default_constructor/value.cc:
313 Likewise.
314 * testsuite/20_util/pair/requirements/dr801.cc: Replace deprecated
315 trait.
316 * testsuite/20_util/tuple/requirements/dr801.cc: Likewise.
317 * testsuite/util/testsuite_common_types.h: Likewise.
318
319 2015-01-08 Jonathan Wakely <jwakely@redhat.com>
320
321 * include/bits/hashtable_policy.h: Use __bool_constant.
322
323 2015-01-07 Jonathan Wakely <jwakely@redhat.com>
324
325 * libsupc++/Makefile.am: Compile del_ops.cc as C++14.
326 * libsupc++/Makefile.in: Regenerate.
327
328 2015-01-06 Jonathan Wakely <jwakely@redhat.com>
329
330 * config/abi/pre/gnu.ver: Fix version conflict for std::locale::name().
331
332 2015-01-05 Jakub Jelinek <jakub@redhat.com>
333
334 Update copyright years.
335
336 2015-01-04 Jonathan Wakely <jwakely@redhat.com>
337
338 PR libstdc++/64483
339 * testsuite/18_support/exception_ptr/64241.cc: Use
340 dg-require-atomic-builtins.
341
342 2015-01-02 Jonathan Wakely <jwakely@redhat.com>
343
344 * testsuite/21_strings/basic_string/modifiers/64422.cc: Fix copyright
345 date.
346
347 2015-01-02 Tim Shen <timshen@google.com>
348
349 PR libstdc++/64475
350 * include/bits/regex_executor.tcc (_Executor<>::_M_dfs): Copy the
351 iterator, since the original one shouldn't be mutated.
352
353 2015-01-02 Bernd Edlinger <bernd.edlinger@hotmail.de>
354
355 PR libstdc++/64422
356 * src/c++98/misc-inst.cc (string::erase): Add missing overloads.
357 (string::insert): Likewise.
358 (string::replace): Likewise.
359 (wstring::erase): Likewise.
360 (wstring::insert): Likewise.
361 (wstring::replace): Likewise.
362 * testsuite/21_strings/basic_string/modifiers/64422.cc: New testcase.
363
364 2015-01-02 Jonathan Wakely <jwakely@redhat.com>
365
366 PR libstdc++/64468
367 * doc/doxygen/user.cfg.in: Set correct TAB_SIZE.
368
369 2015-01-02 Jonathan Wakely <jwakely@redhat.com>
370
371 PR libstdc++/64438
372 * testsuite/21_strings/basic_string/numeric_conversions/char/dr1261.cc:
373 Revert removal of dg-require-string-conversions.
374 * testsuite/21_strings/basic_string/numeric_conversions/char/stod.cc:
375 Likewise.
376 * testsuite/21_strings/basic_string/numeric_conversions/char/stof.cc:
377 Likewise.
378 * testsuite/21_strings/basic_string/numeric_conversions/char/stoi.cc:
379 Likewise.
380 * testsuite/21_strings/basic_string/numeric_conversions/char/stol.cc:
381 Likewise.
382 * testsuite/21_strings/basic_string/numeric_conversions/char/stold.cc:
383 Likewise.
384 * testsuite/21_strings/basic_string/numeric_conversions/char/stoll.cc:
385 Likewise.
386 * testsuite/21_strings/basic_string/numeric_conversions/char/stoul.cc:
387 Likewise.
388 * testsuite/21_strings/basic_string/numeric_conversions/char/
389 stoull.cc: Likewise.
390 * testsuite/21_strings/basic_string/numeric_conversions/char/
391 to_string.cc: Likewise.
392 \f
393 Copyright (C) 2015 Free Software Foundation, Inc.
394
395 Copying and distribution of this file, with or without modification,
396 are permitted in any medium without royalty provided the copyright
397 notice and this notice are preserved.