1 2010-01-11 Paolo Carlini <paolo.carlini@oracle.com>
3 * include/parallel/base.h (decode2): Rename to __decode2.
4 (binder2nd): Likewise to __binder2nd.
5 * include/parallel/quicksort.h: Adjust callers.
6 * include/parallel/balanced_quicksort.h: Likewise.
7 * include/parallel/partition.h: Likewise.
8 * include/parallel/queue.h: Likewise.
10 * include/parallel/algo.h: Qualify with std:: binder2nd use.
12 2010-01-10 Paolo Carlini <paolo.carlini@oracle.com>
14 * include/debug/string (basic_string<>::basic_string(basic_string&&),
15 operator=(basic_string&&), assign(basic_string&&)): Add.
17 * include/debug/string: Fully qualify initializer_list with std; fix
18 _Allocator misspellings as _Alloc.
20 2010-01-10 Paolo Carlini <paolo.carlini@oracle.com>
22 * include/bits/basic_string.h (basic_string<>::
23 basic_string(basic_string&&), operator=(basic_string&&),
24 assign(basic_string&&)): Add.
25 * config/abi/pre/gnu.ver: Export new symbols.
26 * include/ext/vstring.h (__versa_string<>::assign(__versa_string&&)):
28 (operator=(__versa_string&&)): Don't call clear unnecessarily.
29 * include/ext/rc_string_base.h (__rc_string_base<>::
30 __rc_string_base(__rc_string_base&&)): Simplify a tad.
31 * testsuite/21_strings/basic_string/cons/char/moveable.cc: New.
32 * testsuite/21_strings/basic_string/cons/wchar_t/moveable.cc: Likewise.
33 * testsuite/ext/vstring/assign/move_assign.cc: Likewise.
34 * testsuite/21_strings/basic_string/assign/char/move_assign.cc:
36 * testsuite/21_strings/basic_string/assign/wchar_t/move_assign.cc:
39 * testsuite/ext/vstring/cons/moveable.cc: Fix comment nit.
41 2010-01-10 Silvius Rus <rus@google.com>
43 * configure.ac: Add detection of execinfo.h.
44 * configure: Regenerate.
45 * config.h.in: Likewise.
46 * doc/xml/manual/profile_mode.xml: Add list_to_slist manual.
47 Also, correct user interface mistakes.
48 * include/Makefile.am: Add references to new include files.
49 * include/Makefile.in: Regenerate.
50 * include/backward/hash_map: Remove profile include.
51 * include/backward/hash_set: Likewise.
52 * include/profile/hashtable.h: Delete file.
53 * include/profile/iterator_tracker.h: New file.
54 * include/profile/vector: Add instrumentation for tracked iterator.
55 * include/profile/list: Same.
56 * include/profile/impl/profiler_list_to_slist.h: New file.
57 * include/profile/impl/profiler_list_to_vector.h: Same.
58 * include/profile/impl/profiler.h: Add list_to_slist and
59 list_to_vector instrumentation hook interfaces. Fixed broken
60 diagnostic disabling mechanism.
61 (_GLIBCXX_PROFILE_DEFINE_DATA,_GLIBCXX_PROFILE_DATA) New macros.
62 (__reentrance_guard) Fix bug.
63 * include/profile/impl/profiler_trace.h: Replace dummy templates
64 with _GLIBCXX_PROFILE_DEFINE_DATA.
65 * include/profile/impl/profiler_container_size.h: Same.
66 * include/profile/impl/profiler_vector_size.h: Same.
67 * include/profile/impl/profiler_hash_func.h: Same.
68 * include/profile/impl/profiler_vector_to_list.h: Same.
69 * include/profile/impl/profiler_map_to_unordered_map.h: Same.
70 * include/profile/impl/profiler_hashtable_size.h: Same.
71 * include/profile/impl/profiler_node.h: Same.
72 * include/profile/impl/profiler_state.h: Same. Also, remove
73 class __state. Also, use __sync_val_compare_and_swap to set state.
75 2010-01-09 H.J. Lu <hongjiu.lu@intel.com>
78 * testsuite/abi/pr42230.cc: New.
80 2010-01-09 Paolo Carlini <paolo.carlini@oracle.com>
82 * include/debug/set.h: Revert last change, per DR 1204 [Ready];
83 mention the latter in comment.
84 * include/debug/unordered_map: Likewise.
85 * include/debug/multiset.h: Likewise.
86 * include/debug/vector: Likewise.
87 * include/debug/unordered_set: Likewise.
88 * include/debug/deque: Likewise.
89 * include/debug/map.h: Likewise.
90 * include/debug/list: Likewise.
91 * include/debug/multimap.h: Likewise.
92 * include/tr1_impl/unordered_map: Likewise.
93 * include/tr1_impl/unordered_set: Likewise.
94 * include/profile/set.h: Likewise.
95 * include/profile/unordered_map: Likewise.
96 * include/profile/multiset.h: Likewise.
97 * include/profile/unordered_set: Likewise.
98 * include/profile/vector: Likewise.
99 * include/profile/deque: Likewise.
100 * include/profile/map.h: Likewise.
101 * include/profile/list: Likewise.
102 * include/profile/multimap.h: Likewise.
103 * include/ext/vstring.h: Likewise.
104 * include/bits/stl_list.h: Likewise.
105 * include/bits/stl_map.h: Likewise.
106 * include/bits/stl_set.h: Likewise.
107 * include/bits/stl_multimap.h: Likewise.
108 * include/bits/stl_vector.h: Likewise.
109 * include/bits/stl_deque.h: Likewise.
110 * include/bits/stl_multiset.h: Likewise.
112 * include/bits/forward_list.h: Remove pre-existing check.
113 * include/ext/vstring.h: Likewise.
115 * testsuite/ext/vstring/cons/self_move_assign.cc: Remove.
116 * testsuite/23_containers/unordered_map/cons/self_move_assign.cc:
118 * testsuite/23_containers/multimap/cons/self_move_assign.cc: Likewise.
119 * testsuite/23_containers/set/cons/self_move_assign.cc: Likewise.
120 * testsuite/23_containers/unordered_multimap/cons/
121 self_move_assign.cc: Likewise.
122 * testsuite/23_containers/forward_list/cons/self_move_assign.cc:
124 * testsuite/23_containers/unordered_set/cons/self_move_assign.cc:
126 * testsuite/23_containers/vector/cons/self_move_assign.cc: Likewise.
127 * testsuite/23_containers/deque/cons/self_move_assign.cc: Likewise.
128 * testsuite/23_containers/multiset/cons/self_move_assign.cc: Likewise.
129 * testsuite/23_containers/list/cons/self_move_assign.cc: Likewise.
130 * testsuite/23_containers/unordered_multiset/cons/
131 self_move_assign.cc: Likewise.
132 * testsuite/23_containers/map/cons/self_move_assign.cc: Likewise.
134 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
135 Adjust dg-error line numbers.
136 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
138 * testsuite/23_containers/vector/requirements/dr438/
139 constructor_1_neg.cc: Likewise.
140 * testsuite/23_containers/vector/requirements/dr438/
141 constructor_2_neg.cc: Likewise.
142 * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
144 * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
146 * testsuite/23_containers/deque/requirements/dr438/
147 constructor_1_neg.cc: Likewise.
148 * testsuite/23_containers/forward_list/requirements/dr438/
149 assign_neg.cc: Likewise.
150 * testsuite/23_containers/forward_list/requirements/dr438/
151 insert_neg.cc: Likewise.
152 * testsuite/23_containers/forward_list/requirements/dr438/
153 constructor_1_neg.cc: Likewise.
154 * testsuite/23_containers/forward_list/requirements/dr438/
155 constructor_2_neg.cc: Likewise.
156 * testsuite/23_containers/deque/requirements/dr438/
157 constructor_2_neg.cc: Likewise.
158 * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
160 * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
162 * testsuite/23_containers/list/requirements/dr438/
163 constructor_1_neg.cc: Likewise.
164 * testsuite/23_containers/list/requirements/dr438/
165 constructor_2_neg.cc: Likewise.
167 2010-01-08 Paolo Carlini <paolo.carlini@oracle.com>
169 * include/debug/set.h: Protect move assignment operator vs self
171 * include/debug/unordered_map: Likewise.
172 * include/debug/multiset.h: Likewise.
173 * include/debug/vector: Likewise.
174 * include/debug/unordered_set: Likewise.
175 * include/debug/deque: Likewise.
176 * include/debug/map.h: Likewise.
177 * include/debug/list: Likewise.
178 * include/debug/multimap.h: Likewise.
179 * include/tr1_impl/unordered_map: Likewise.
180 * include/tr1_impl/unordered_set: Likewise.
181 * include/profile/set.h: Likewise.
182 * include/profile/unordered_map: Likewise.
183 * include/profile/multiset.h: Likewise.
184 * include/profile/unordered_set: Likewise.
185 * include/profile/vector: Likewise.
186 * include/profile/deque: Likewise.
187 * include/profile/map.h: Likewise.
188 * include/profile/list: Likewise.
189 * include/profile/multimap.h: Likewise.
190 * include/ext/vstring.h: Likewise.
191 * include/bits/stl_list.h: Likewise.
192 * include/bits/stl_map.h: Likewise.
193 * include/bits/stl_set.h: Likewise.
194 * include/bits/stl_multimap.h: Likewise.
195 * include/bits/stl_vector.h: Likewise.
196 * include/bits/stl_deque.h: Likewise.
197 * include/bits/stl_multiset.h: Likewise.
198 * include/ext/vstring.h: Use clear().
199 * testsuite/ext/vstring/cons/self_move_assign.cc: New.
200 * testsuite/23_containers/unordered_map/cons/self_move_assign.cc:
202 * testsuite/23_containers/multimap/cons/self_move_assign.cc: Likewise.
203 * testsuite/23_containers/set/cons/self_move_assign.cc: Likewise.
204 * testsuite/23_containers/unordered_multimap/cons/
205 self_move_assign.cc: Likewise.
206 * testsuite/23_containers/forward_list/cons/self_move_assign.cc:
208 * testsuite/23_containers/unordered_set/cons/self_move_assign.cc:
210 * testsuite/23_containers/vector/cons/self_move_assign.cc: Likewise.
211 * testsuite/23_containers/deque/cons/self_move_assign.cc: Likewise.
212 * testsuite/23_containers/multiset/cons/self_move_assign.cc: Likewise.
213 * testsuite/23_containers/list/cons/self_move_assign.cc: Likewise.
214 * testsuite/23_containers/unordered_multiset/cons/
215 self_move_assign.cc: Likewise.
216 * testsuite/23_containers/map/cons/self_move_assign.cc: Likewise.
218 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
219 Adjust dg-error line numbers.
220 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
222 * testsuite/23_containers/vector/requirements/dr438/
223 constructor_1_neg.cc: Likewise.
224 * testsuite/23_containers/vector/requirements/dr438/
225 constructor_2_neg.cc: Likewise.
226 * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
228 * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
230 * testsuite/23_containers/deque/requirements/dr438/
231 constructor_1_neg.cc: Likewise.
232 * testsuite/23_containers/deque/requirements/dr438/
233 constructor_2_neg.cc: Likewise.
234 * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
236 * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
238 * testsuite/23_containers/list/requirements/dr438/
239 constructor_1_neg.cc: Likewise.
240 * testsuite/23_containers/list/requirements/dr438/
241 constructor_2_neg.cc: Likewise.
243 * testsuite/ext/vstring/moveable.cc: Move to...
244 * testsuite/ext/vstring/cons/moveable.cc: ... here.
245 * testsuite/23_containers/unordered_map/moveable.cc: Move to...
246 * testsuite/23_containers/unordered_map/cons/moveable.cc ... here.
247 * testsuite/23_containers/multimap/moveable.cc: Move to...
248 * testsuite/23_containers/multimap/cons/moveable.cc: ... here.
249 * testsuite/23_containers/set/moveable.cc: Move to...
250 * testsuite/23_containers/set/cons/moveable.cc: ... here.
251 * testsuite/23_containers/unordered_multimap/moveable.cc: Move to...
252 * testsuite/23_containers/unordered_multimap/cons/moveable.cc:
254 * testsuite/23_containers/forward_list/moveable.cc: Move to...
255 * testsuite/23_containers/forward_list/cons/moveable.cc: ... here.
256 * testsuite/23_containers/unordered_set/moveable.cc Move to...
257 * testsuite/23_containers/unordered_set/moveable.cc: ... here.
258 * testsuite/23_containers/vector/cons/moveable.cc Move to...
259 * testsuite/23_containers/vector/cons/moveable2.cc: ... this.
260 * testsuite/23_containers/deque/cons/moveable.cc Move to...
261 * testsuite/23_containers/deque/cons/moveable2.cc: ... this.
262 * testsuite/23_containers/multiset/moveable.cc Move to...
263 * testsuite/23_containers/multiset/cons/moveable.cc: ... here.
264 * testsuite/23_containers/list/moveable.h Move to...
265 * testsuite/23_containers/list/cons/moveable.h: ... here.
266 * testsuite/23_containers/list/moveable.cc Move to...
267 * testsuite/23_containers/list/cons/moveable.cc: ... here.
268 * testsuite/23_containers/unordered_multiset/moveable.cc Move to...
269 * testsuite/23_containers/unordered_multiset/cons/moveable.cc:
271 * testsuite/23_containers/map/moveable.cc Move to...
272 * testsuite/23_containers/map/cons/moveable.cc: ... here.
273 * testsuite/23_containers/vector/moveable.cc: Move to...
274 * testsuite/23_containers/vector/cons/moveable.cc: ... here.
275 * testsuite/23_containers/deque/moveable.cc: Move to...
276 * testsuite/23_containers/deque/cons/moveable.cc: ... here.
278 2010-01-08 Paolo Carlini <paolo.carlini@oracle.com>
281 * include/bits/allocator.h (struct __shrink_to_fit): Add.
282 * include/bits/stl_deque.h (deque<>::shrink_to_fit): Add.
283 * include/bits/stl_vector.h (vector<>::shrink_to_fit): Likewise.
284 * include/bits/stl_bvector.h (vector<bool>::shrink_to_fit): Likewise.
285 * include/bits/basic_string.h (basic_string<>::shrink_to_fit):
287 * include/ext/vstring.h (__versa_string<>::shrink_to_fit): Likewise.
288 * include/debug/deque: Add corresponding using declaration.
289 * include/debug/vector: Likewise.
290 * include/debug/string: Likewise.
291 * include/profile/deque: Likewise.
292 * include/profile/vector: Likewise.
293 * config/abi/pre/gnu.ver: Export new symbols.
294 * testsuite/23_containers/deque/capacity/shrink_to_fit.cc: New.
295 * testsuite/23_containers/vector/capacity/shrink_to_fit.cc: Likewise.
296 * testsuite/21_strings/basic_string/capacity/char/shrink_to_fit.cc:
298 * testsuite/21_strings/basic_string/capacity/wchar_t/shrink_to_fit.cc:
300 * testsuite/ext/vstring/capacity/shrink_to_fit.cc: Likewise.
301 * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
302 Adjust dg-error line number.
303 * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
305 * testsuite/23_containers/deque/requirements/dr438/
306 constructor_1_neg.cc: Likewise.
307 * testsuite/23_containers/deque/requirements/dr438/
308 constructor_2_neg.cc: Likewise.
309 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
310 Adjust dg-error line number.
311 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
313 * testsuite/23_containers/vector/requirements/dr438/
314 constructor_1_neg.cc: Likewise.
315 * testsuite/23_containers/vector/requirements/dr438/
316 constructor_2_neg.cc: Likewise.
318 2010-01-07 Benjamin Kosnik <bkoz@redhat.com>
320 * doc/xml/manual/evolution.xml: Fix typos, update.
322 2010-01-07 Paolo Carlini <paolo.carlini@oracle.com>
324 * include/bits/locale_facets_nonio.tcc (time_put<>::do_put): Avoid
325 pointless __builtin_alloca use.
327 2010-01-06 Paolo Carlini <paolo.carlini@oracle.com>
330 * include/bits/locale_facets_nonio.tcc (time_get<>::_M_extract_num):
331 Encode short two digits over four parsings to negative numbers.
332 (time_get<>::_M_extract_via_format): Adjust, accept both two digits
333 and four digits for both 'y' and 'Y'.
334 (time_get<>::do_get_year): Call time_get<>::_M_extract_num.
335 * doc/xml/manual/prerequisites.xml: Add en_GB.
336 * testsuite/lib/libstdc++.exp: Adjust
337 * testsuite/22_locale/time_get/get_date/char/26701.cc: New.
338 * testsuite/22_locale/time_get/get_date/wchar_t/26701.cc: Likewise.
340 2010-01-06 Benjamin Kosnik <bkoz@redhat.com>
343 * scripts/check_performance (CXX): Add -std=gnu++0x.
344 * testsuite/performance/30_threads/future/polling.cc: Mark up as
347 2010-01-06 Paolo Carlini <paolo.carlini@oracle.com>
349 * testsuite/22_locale/time_get/get_weekday/char/38081-2.cc:
350 Add dg-require-namedlocale.
352 2010-01-05 Benjamin Kosnik <bkoz@redhat.com>
354 * doc/xml/manual/evolution.xml: Update for 4.4 and 4.5 releases.
355 * doc/html: Regenerate.
357 2010-01-05 Paolo Carlini <paolo.carlini@oracle.com>
360 * include/bits/locale_facets_nonio.h (time_get<>::
361 _M_extract_wday_or_month): New, declare.
362 * include/bits/locale_facets_nonio.tcc (time_get<>::
363 _M_extract_wday_or_month): Define.
364 (time_get<>::do_get_weekday, time_get<>::do_get_monthname): Use it.
365 * config/abi/pre/gnu.ver: Export new symbols.
366 * doc/xml/manual/prerequisites.xml: Add ru_RU.UTF-8 and
368 * testsuite/lib/libstdc++.exp: Adjust.
369 * testsuite/22_locale/time_get/get_weekday/char/38081-1.cc: New.
370 * testsuite/22_locale/time_get/get_weekday/char/38081-2.cc: Likewise.
372 2010-01-05 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
374 * configure: Regenerate.
376 2010-01-05 Paolo Carlini <paolo.carlini@oracle.com>
378 * testsuite/22_locale/time_get/get_monthname/char/6.cc: New.
379 * testsuite/22_locale/time_get/get_monthname/wchar_t/6.cc: Likewise.
380 * testsuite/22_locale/time_get/get_weekday/char/6.cc: Likewise.
381 * testsuite/22_locale/time_get/get_weekday/wchar_t/6.cc: Likewise.
383 2010-01-03 Paolo Carlini <paolo.carlini@oracle.com>
385 * include/profile/list: Implement DR 1133 here too.
387 * testsuite/25_algorithms/set_intersection/34730.cc: Do not force
388 debug-mode, leads to spurious failures in profile-mode.
389 * testsuite/25_algorithms/upper_bound/33613.cc: Likewise.
390 * testsuite/25_algorithms/lower_bound/33613.cc: Likewise.
391 * testsuite/25_algorithms/set_difference/35541.cc: Likewise.
392 * testsuite/21_strings/basic_string/40160.cc: Likewise.
393 * testsuite/26_numerics/random/uniform_real_distribution/
394 cons/parms_neg.cc: Likewise.
395 * testsuite/26_numerics/random/uniform_int_distribution/
396 cons/parms_neg.cc: Likewise.
397 * testsuite/23_containers/unordered_map/requirements/debug_mode.cc:
399 * testsuite/23_containers/multimap/14340.cc: Likewise.
400 * testsuite/23_containers/bitset/18604.cc: Likewise.
401 * testsuite/23_containers/set/14340.cc: Likewise.
402 * testsuite/23_containers/set/18604.cc: Likewise.
403 * testsuite/23_containers/unordered_set/requirements/
404 debug_mode.cc: Likewise.
405 * testsuite/23_containers/vector/
406 debug_mode_requires_reallocation-1.cc: Likewise.
407 * testsuite/23_containers/vector/
408 debug_mode_requires_reallocation-2.cc: Likewise.
409 * testsuite/23_containers/vector/14340.cc: Likewise.
410 * testsuite/23_containers/vector/15523.cc: Likewise.
411 * testsuite/23_containers/vector/18604.cc: Likewise.
412 * testsuite/23_containers/deque/14340.cc: Likewise.
413 * testsuite/23_containers/deque/18604.cc: Likewise.
414 * testsuite/23_containers/multiset/14340.cc: Likewise.
415 * testsuite/23_containers/list/operations/35969.cc: Likewise.
416 * testsuite/23_containers/list/14340.cc: Likewise.
417 * testsuite/23_containers/list/18604.cc: Likewise.
418 * testsuite/23_containers/map/14340.cc: Likewise.
419 * testsuite/23_containers/map/18604.cc: Likewise.
420 * testsuite/tr1/5_numerical_facilities/random/uniform_int/
421 cons/range_neg.cc: Likewise.
423 * testsuite/23_containers/unordered_map/requirements/
424 explicit_instantiation/2.cc: Do not instantiate for
425 non-defaultconstructible mapped_type.
427 2010-01-03 Paolo Carlini <paolo.carlini@oracle.com>
429 * include/debug/set.h: Implement DR 130 here too.
430 * include/debug/multiset.h: Likewise.
431 * include/debug/map.h: Likewise.
432 * include/debug/multimap.h: Likewise.
433 * include/profile/set.h: Implement DR 130 fully.
434 * include/profile/multiset.h: Likewise.
435 * include/profile/map.h: Likewise.
436 * include/profile/multimap.h: Likewise.
437 * include/debug/list: Implement DR 1133 here too.
438 * include/ext/pb_ds/detail/debug_map_base.hpp: Comment out for
439 now uses of __gnu_cxx::throw_allocator.
440 * testsuite/21_strings/basic_string/40160.cc: Don't pass
441 explicitly -D_GLIBCXX_DEBUG, doesn't play well with profile-mode
444 2010-01-03 Paolo Carlini <paolo.carlini@oracle.com>
446 * include/profile/bitset (bitset<>::bitset(unsigned long long)): Add
448 * include/debug/bitset (bitset<>::bitset(unsigned long long)):
451 2010-01-03 Paolo Carlini <paolo.carlini@oracle.com>
453 * include/tr1_impl/hashtable (_Hashtable<>): Remove insert_return_type
455 * include/profile/unordered_map (unordered_map<>::insert(const
456 value_type&), unordered_multimap<>::insert(const value_type&)): Adjust.
457 * include/profile/unordered_set (unordered_set<>::insert(const
458 value_type&), unordered_multimap<>::insert(const value_type&)):
461 2010-01-03 Paolo Carlini <paolo.carlini@oracle.com>
463 * include/bits/stl_pair.h (pair<>::pair(_U1&&, const _T2&),
464 pair<>::pair(const _T1&, _U2&&), pair<>::pair(_U1&&, _U2&&)):
465 Use std::is_constructible instead of std::is_convertible.
467 2010-01-01 Paolo Carlini <paolo.carlini@oracle.com>
469 Revert last change, reinstantiate basic_string and vstring tests.
471 2010-01-01 Paolo Carlini <paolo.carlini@oracle.com>
473 * testsuite/21_strings/basic_string/requirements/exception/
474 propagation_consistent.cc: Remove, cannot instantiate basic_string
476 * testsuite/21_strings/basic_string/requirements/exception/
478 * testsuite/21_strings/basic_string/requirements/exception/
479 generation_prohibited.cc: Likewise.
480 * testsuite/ext/vstring/requirements/exception/
481 propagation_consistent.cc: Likewise.
482 * testsuite/ext/vstring/requirements/exception/basic.cc:
484 * testsuite/ext/vstring/requirements/exception/
485 generation_prohibited.cc: Likewise.