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