]>
Commit | Line | Data |
---|---|---|
af0e0fa0 JW |
1 | 2014-01-22 Jonathan Wakely <jwakely@redhat.com> |
2 | ||
3 | * include/bits/stl_deque.h (_Deque_impl): Move comment. | |
4 | ||
c3cdd71f JW |
5 | PR libstdc++/58764 |
6 | * include/bits/stl_deque.h (deque::deque(const allocator_type&): | |
7 | Split into separate default constructor and constructor taking | |
8 | allocator. | |
9 | * include/bits/stl_list.h (list::list(const allocator_type&): Likewise. | |
10 | * include/bits/stl_vector.h (vector::vector(const allocator_type&): | |
11 | Likewise. | |
12 | * include/debug/deque (deque::deque(const allocator_type&)): Likewise. | |
13 | * include/debug/list (list::list(const _Allocator&)): Likewise. | |
14 | * include/debug/map.h (map::map(const _Compare&, const _Allocator&)): | |
15 | Likewise. | |
16 | * include/debug/multimap.h | |
17 | (multimap::multimap(const _Compare&, const _Allocator&)): Likewise. | |
18 | * include/debug/set.h (set::set(const _Compare&, const _Allocator&)): | |
19 | Likewise. | |
20 | * include/debug/multiset.h | |
21 | (multiset::multiset(const _Compare&, const _Allocator&)): Likewise. | |
22 | * include/debug/vector (vector::vector(const allocator_type&)): | |
23 | Likewise. | |
24 | * include/profile/deque (deque::deque(const _Allocator&)): Likewise. | |
25 | * include/profile/list (list::list(const _Allocator&)): Likewise. | |
26 | * include/profile/map.h | |
27 | (map::map(const _Compare&, const _Allocator&)): Likewise. | |
28 | * include/profile/multimap.h | |
29 | (multimap::multimap(const _Compare&, const _Allocator&)): Likewise. | |
30 | * include/profile/set.h | |
31 | (set::set(const _Compare&, const _Allocator&)): Likewise. | |
32 | * include/profile/multiset.h | |
33 | (multiset::multiset(const _Compare&, const _Allocator&)): Likewise. | |
34 | * include/profile/vector (vector::vector(const _Allocator&)): | |
35 | Likewise. | |
36 | * testsuite/23_containers/deque/58764.cc: New. | |
37 | * testsuite/23_containers/list/58764.cc: New. | |
38 | * testsuite/23_containers/map/58764.cc: New. | |
39 | * testsuite/23_containers/multimap/58764.cc: New. | |
40 | * testsuite/23_containers/set/58764.cc: New. | |
41 | * testsuite/23_containers/multiset/58764.cc: New. | |
42 | * testsuite/23_containers/vector/58764.cc: New. | |
43 | * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc: | |
44 | Adjust dg-error line number. | |
45 | * testsuite/23_containers/deque/requirements/dr438/ | |
46 | constructor_1_neg.cc: Likewise. | |
47 | * testsuite/23_containers/deque/requirements/dr438/ | |
48 | constructor_2_neg.cc: Likewise. | |
49 | * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc: | |
50 | Likewise. | |
51 | * testsuite/23_containers/list/requirements/dr438/assign_neg.cc: | |
52 | Likewise. | |
53 | * testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc: | |
54 | Likewise. | |
55 | * testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc: | |
56 | Likewise. | |
57 | * testsuite/23_containers/list/requirements/dr438/insert_neg.cc: | |
58 | Likewise. | |
59 | * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc: | |
60 | Likewise. | |
61 | * testsuite/23_containers/vector/requirements/dr438/ | |
62 | constructor_1_neg.cc: Likewise. | |
63 | * testsuite/23_containers/vector/requirements/dr438/ | |
64 | constructor_2_neg.cc: Likewise. | |
65 | * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc: | |
66 | Likewise. | |
67 | ||
8f7082f5 TS |
68 | 2014-01-21 Tim Shen <timshen91@gmail.com> |
69 | ||
70 | * include/bits/regex.tcc: Remove incorrect `nosubs` handling. | |
71 | * include/bits/regex_scanner.tcc: Handle `nosubs` correctly. | |
72 | * testsuite/28_regex/constants/syntax_option_type.cc: Add a test case. | |
73 | ||
6ff956e3 JW |
74 | 2014-01-21 Jonathan Wakely <jwakely@redhat.com> |
75 | ||
76 | PR libstdc++/56267 | |
77 | * include/bits/hashtable.h (__cache_default): Do not depend on | |
78 | whether the hash function is DefaultConstructible or CopyAssignable. | |
79 | (_Hashtable): Adjust static assertions. | |
80 | * doc/xml/manual/containers.xml (containers.unordered.cache): Update. | |
81 | * testsuite/23_containers/unordered_set/instantiation_neg.cc: Adjust | |
82 | dg-error line number. | |
83 | * testsuite/23_containers/unordered_set/ | |
84 | not_default_constructible_hash_neg.cc: Remove. | |
85 | ||
9d0bb2ea FD |
86 | 2014-01-20 François Dumont <fdumont@gcc.gnu.org> |
87 | ||
88 | * scripts/create_testsuite_files: Add testsuite/experimental in | |
89 | the list of folders to search for tests. | |
90 | * include/experimental/string_view | |
91 | (basic_string_view<>::operator[]): Comment _GLIBCXX_DEBUG_ASSERT, | |
92 | incompatible with constexpr qualifier. | |
93 | (basic_string_view<>::front()): Likewise. | |
94 | (basic_string_view<>::back()): Likewise. | |
95 | * testsuite/experimental/string_view/element_access/wchar_t/2.cc: | |
96 | Merge dg-options directives into one. | |
97 | * testsuite/experimental/string_view/element_access/char/2.cc: | |
98 | Likewise. Remove invalid experimental namespace scope on | |
99 | string_view_type. | |
100 | ||
92e16228 JW |
101 | 2014-01-20 Jonathan Wakely <jwakely@redhat.com> |
102 | ||
103 | PR libstdc++/56267 | |
104 | * include/bits/hashtable_policy.h (_Hash_code_base<... false>): Grant | |
105 | friendship to _Local_iterator_base<..., false>. | |
106 | (_Local_iterator_base): Give protected access to all existing members. | |
107 | (_Local_iterator_base::_M_curr()): New public accessor. | |
108 | (_Local_iterator_base::_M_get_bucket()): New public accessor. | |
109 | (_Local_iterator_base<..., false>::_M_init()): New function to manage | |
110 | the lifetime of the _Hash_code_base explicitly. | |
111 | (_Local_iterator_base<..., false>::_M_destroy()): Likewise. | |
112 | (_Local_iterator_base<..., false>): Define copy constructor and copy | |
113 | assignment operator that use new functions to manage _Hash_code_base. | |
114 | (operator==(const _Local_iterator_base&, const _Local_iterator_base&), | |
115 | operator==(const _Local_iterator_base&, const _Local_iterator_base&)): | |
116 | Use public API for _Local_iterator_base. | |
117 | * include/debug/safe_local_iterator.h (_Safe_local_iterator): Likewise. | |
118 | * include/debug/unordered_map (__debug::unordered_map::erase(), | |
119 | __debug::unordered_multimap::erase()): Likewise. | |
120 | * include/debug/unordered_set (__debug::unordered_set::erase(), | |
121 | __debug::unordered_multiset::erase()): Likewise. | |
122 | * testsuite/23_containers/unordered_set/56267-2.cc: New test. | |
123 | ||
053eb1f3 TS |
124 | 2014-01-19 Tim Shen <timshen91@gmail.com> |
125 | ||
126 | * include/bits/regex_compiler.h (_Comipler<>::_M_quantifier()): | |
127 | Fix parse error of multiple consecutive quantifiers like "a**". | |
128 | * include/bits/regex_compiler.tcc (_Comipler<>::_M_quantifier()): | |
129 | Likewise. | |
130 | * testsuite/28_regex/basic_regex/multiple_quantifiers.cc: New. | |
131 | ||
1217ee06 FD |
132 | 2014-01-17 François Dumont <fdumont@gcc.gnu.org> |
133 | ||
134 | * include/profile/set.h (set): Implement C++11 allocator-aware | |
135 | container requirements. | |
136 | * include/profile/map.h (map): Likewise. | |
137 | * include/profile/multiset.h (multiset): Likewise. | |
138 | * include/profile/multimap.h (multimap): Likewise. | |
139 | * include/profile/set.h | |
140 | (set::operator=(const set&)): Define as default in C++11 mode. | |
141 | (set::operator=(set&&)): Likewise. | |
142 | * include/profile/map.h | |
143 | (map::operator=(const map&)): Likewise. | |
144 | (map::operator=(map&&)): Likewise. | |
145 | * include/profile/multiset.h | |
146 | (multiset::operator=(const multiset&)): Likewise. | |
147 | (multiset::operator=(multiset&&)): Likewise. | |
148 | * include/profile/multimap.h | |
149 | (multimap::operator=(const multimap&)): Likewise. | |
150 | (multimap::operator=(multimap&&)): Likewise. | |
151 | * include/profile/set.h (set::operator=(std::initializer_list<>)): | |
152 | Rely on the same operator from normal mode. | |
153 | * include/profile/map.h (map::operator=(std::initializer_list<>)): | |
154 | Likewise. | |
155 | * include/profile/multiset.h | |
156 | (multiset::operator=(std::initializer_list<>)): Likewise. | |
157 | * include/profile/multimap.h | |
158 | (multimap::operator=(std::initializer_list<>)): Likewise. | |
159 | * include/profile/set.h (set::swap(set&)): Add noexcept | |
160 | specification. | |
161 | * include/profile/map.h (map::swap(map&)): Likewise. | |
162 | * include/profile/multiset.h (multiset::swap(multiset&)): Likewise. | |
163 | * include/profile/multimap.h (multimap::swap(multimap&)): Likewise. | |
164 | ||
ddf41e9d TS |
165 | 2014-01-17 Tim Shen <timshen91@gmail.com> |
166 | ||
167 | * include/bits/regex_automaton.tcc (_StateSeq<>::_M_clone()): Do not | |
168 | use std::map. | |
169 | * include/bits/regex_automaton.h: Do not use std::set. | |
170 | * include/bits/regex_compiler.h (_BracketMatcher<>::_M_add_char(), | |
171 | _BracketMatcher<>::_M_add_collating_element(), | |
172 | _BracketMatcher<>::_M_add_equivalence_class(), | |
173 | _BracketMatcher<>::_M_make_range()): Likewise. | |
174 | * include/bits/regex_compiler.tcc (_BracketMatcher<>::_M_apply()): | |
175 | Likewise. | |
176 | * include/bits/regex_executor.h: Do not use std::queue. | |
177 | * include/bits/regex_executor.tcc (_Executor<>::_M_main(), | |
178 | _Executor<>::_M_dfs()): Likewise. | |
179 | * include/std/regex: Remove <map>, <set> and <queue>. | |
180 | ||
181 | 2014-01-17 Tim Shen <timshen91@gmail.com> | |
182 | ||
183 | * include/bits/regex.h (__compile_nfa<>(), basic_regex<>::basic_regex(), | |
184 | basic_regex<>::assign()): Change __compile_nfa to accept | |
185 | const _CharT* only. | |
186 | * include/bits/regex_compiler.h: Change _Compiler's template | |
187 | argument from <_FwdIter, _TraitsT> to <_TraitsT>. | |
188 | * include/bits/regex_compiler.tcc: Likewise. | |
189 | ||
190 | 2014-01-17 Tim Shen <timshen91@gmail.com> | |
191 | ||
192 | * include/bits/regex_compiler.h: Change _ScannerT into char-type | |
193 | templated. | |
194 | * include/bits/regex_scanner.h (_Scanner<>::_Scanner()): Separate | |
195 | _ScannerBase from _Scanner; Change _Scanner's template argument from | |
196 | _FwdIter to _CharT. Avoid use of std::map and std::set by using arrays | |
197 | instead. | |
198 | * include/bits/regex_scanner.tcc (_Scanner<>::_Scanner(), | |
199 | _Scanner<>::_M_scan_normal(), _Scanner<>::_M_eat_escape_ecma(), | |
200 | _Scanner<>::_M_eat_escape_posix(), _Scanner<>::_M_eat_escape_awk()): | |
201 | Likewise. | |
202 | * include/std/regex: Add <cstring> for using strchr. | |
203 | ||
204 | 2014-01-17 Tim Shen <timshen91@gmail.com> | |
205 | ||
206 | * bits/regex_automaton.tcc: Indentation fix. | |
207 | * bits/regex_compiler.h (__compile_nfa<>(), _Compiler<>, | |
208 | _RegexTranslator<> _AnyMatcher<>, _CharMatcher<>, | |
209 | _BracketMatcher<>): Add bool option template parameters and | |
210 | specializations to make matching more efficient and space saving. | |
211 | * bits/regex_compiler.tcc: Likewise. | |
212 | ||
1bb59e05 FD |
213 | 2014-01-15 François Dumont <fdumont@gcc.gnu.org> |
214 | ||
9b7dc56e | 215 | PR libstdc++/59712 |
1bb59e05 FD |
216 | * include/bits/hashtable_policy.h: Fix some long lines. |
217 | * include/bits/hashtable.h (__hash_code_base_access): Define and | |
218 | use it to check its _M_bucket_index noexcept qualification. Use | |
219 | also in place of... | |
220 | (__access_protected_ctor): ...this. | |
221 | * testsuite/23_containers/unordered_set/instantiation_neg.cc: | |
222 | Adapt line number. | |
223 | * testsuite/23_containers/unordered_set/ | |
224 | not_default_constructible_hash_neg.cc: Likewise. | |
225 | ||
51835a80 FD |
226 | 2014-01-13 François Dumont <fdumont@gcc.gnu.org> |
227 | ||
228 | * include/debug/set.h (set): Implement C++11 allocator-aware | |
229 | container requirements. | |
230 | * include/debug/map.h (map): Likewise. | |
231 | * include/debug/multiset.h (multiset): Likewise. | |
232 | * include/debug/multimap.h (multimap): Likewise. | |
233 | * include/debug/set.h (set::operator=(set&&)): Add noexcept and | |
234 | fix implementation regarding management of safe iterators. | |
235 | * include/debug/map.h (map::operator=(map&&)): Likewise. | |
236 | * include/debug/multiset.h (multiset::operator=(multiset&&)): Likewise. | |
237 | * include/debug/multimap.h (multimap::operator=(multimap&&)): | |
238 | Likewise. | |
239 | * include/debug/set.h (set::operator=(std::initializer_list<>)): | |
240 | Rely on the same operator from normal mode. | |
241 | * include/debug/map.h (map::operator=(std::initializer_list<>)): | |
242 | Likewise. | |
243 | * include/debug/multiset.h | |
244 | (multiset::operator=(std::initializer_list<>)): Likewise. | |
245 | * include/debug/multimap.h | |
246 | (multimap::operator=(std::initializer_list<>)): Likewise. | |
247 | * include/debug/set.h (set::swap(set&)): Add noexcept | |
248 | specification, add allocator equality check. | |
249 | * include/debug/map.h (map::swap(map&)): Likewise. | |
250 | * include/debug/multiset.h (multiset::swap(multiset&)): Likewise. | |
251 | * include/debug/multimap.h (multimap::swap(multimap&)): Likewise. | |
252 | ||
92bf1382 JW |
253 | 2014-01-10 Jonathan Wakely <jwakely@redhat.com> |
254 | ||
255 | PR libstdc++/59698 | |
256 | * doc/xml/manual/status_cxx1998.xml (iso.1998.specific): Markup | |
257 | and stylistic improvements. | |
258 | * doc/xml/manual/codecvt.xml (std.localization.facet.codecvt): Likewise | |
259 | and update for C++11. | |
260 | * doc/xml/manual/ctype.xml (std.localization.facet.ctype): Likewise. | |
261 | ||
b1fb52ca JW |
262 | PR libstdc++/59687 |
263 | * doc/xml/manual/backwards_compatibility.xml | |
264 | (backwards.third.nocreate_noreplace): Correct and expand. | |
265 | ||
48c7451e JW |
266 | PR libstdc++/59699 |
267 | * doc/xml/manual/support.xml (std.support.types.null): Update links. | |
268 | ||
f0bc4aea JW |
269 | 2014-01-09 Jonathan Wakely <jwakely@redhat.com> |
270 | ||
271 | PR libstdc++/59738 | |
272 | * include/bits/stl_vector.h (vector<>::_M_move_assign): Restore | |
273 | support for non-Movable types. | |
274 | ||
4bc0ec32 JW |
275 | PR libstdc++/59680 |
276 | * src/c++11/thread.cc (__sleep_for): Fix call to ::sleep. | |
277 | ||
ace295af FD |
278 | 2014-01-08 François Dumont <fdumont@gcc.gnu.org> |
279 | ||
280 | * include/bits/stl_vector.h (std::vector<>::_M_move_assign): Pass | |
281 | *this allocator instance when building temporary vector instance | |
282 | so that *this allocator does not get moved. | |
283 | * include/debug/safe_base.h | |
284 | (_Safe_sequence_base(_Safe_sequence_base&&)): New. | |
285 | * include/debug/vector (__gnu_debug::vector<>(vector&&)): Use new | |
286 | move constructor from _Safe_sequence_base. | |
287 | (__gnu_debug::vector<>(vector&&, const allocator_type&)): Swap | |
288 | safe iterators if the instance is moved. | |
289 | (__gnu_debug::vector<>::operator=(vector&&)): Likewise. | |
290 | * testsuite/23_containers/vector/allocator/move.cc (test01): Add | |
291 | check on a vector iterator. | |
292 | * testsuite/23_containers/vector/allocator/move_assign.cc | |
293 | (test02): Likewise. | |
294 | (test03): New, test with a non-propagating allocator. | |
295 | * testsuite/23_containers/vector/debug/move_assign_neg.cc: New. | |
296 | ||
f43cc2a6 TS |
297 | 2014-01-07 Tim Shen <timshen91@gmail.com> |
298 | ||
299 | * include/bits/regex_compiler.h (_AnyMatcher<>::_AnyMatcher(), | |
300 | _AnyMatcher<>::operator(), _AnyMatcher<>::_M_apply(), | |
301 | _CharMatcher<>::_CharMatcher(), _CharMatcher<>::_M_translate(), | |
302 | _BracketMatcher<>::_BracketMatcher(), _BracketMatcher<>::operator(), | |
303 | _BracketMatcher<>::_M_add_char(), | |
304 | _BracketMatcher<>::_M_add_collating_element(), | |
305 | _BracketMatcher<>::_M_add_equivalence_class(), | |
306 | _BracketMatcher<>::_M_add_character_class(), | |
307 | _BracketMatcher<>::_M_make_range(), _BracketMatcher<>::_M_ready(), | |
308 | _BracketMatcher<>::_M_apply(), _BracketMatcher<>::_M_make_cache()): | |
309 | Fix _AnyMatcher behavior of POSIX style and move _M_flags | |
310 | to template parameter; Add cache for _BracketMatcher. Adjust | |
311 | declarations from here... | |
312 | * include/bits/regex.h (basic_regex<>::imbue()): ...to here. Also, | |
313 | imbuing a regex will trigger a recompilation to rebuild the cache. | |
314 | * include/bits/regex_compiler.tcc (_Compiler<>::_M_atom(), | |
315 | _Compiler<>::_M_bracket_expression()): Adjust matchers' caller for | |
316 | different template bool parameters. | |
317 | * include/bits/regex_executor.h: Remove unnecessary declarations. | |
318 | * include/std/regex: Adjust including orders. | |
319 | * testsuite/28_regex/traits/char/user_defined.cc: New. | |
320 | * testsuite/28_regex/traits/wchar_t/user_defined.cc: New. | |
321 | ||
14c12d0d RO |
322 | 2014-01-07 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> |
323 | ||
324 | * config/abi/post/solaris2.9/baseline_symbols.txt: Regenerate. | |
325 | * config/abi/post/solaris2.9/sparcv9/baseline_symbols.txt: Likewise. | |
326 | * config/abi/post/solaris2.10/baseline_symbols.txt: Likewise. | |
327 | * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise. | |
328 | * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise. | |
329 | ||
aa118a03 RS |
330 | 2014-01-02 Richard Sandiford <rdsandiford@googlemail.com> |
331 | ||
332 | Update copyright years | |
333 | ||
f9030485 RS |
334 | 2014-01-02 Richard Sandiford <rdsandiford@googlemail.com> |
335 | ||
336 | * testsuite/18_support/new_handler.cc, | |
337 | testsuite/18_support/terminate_handler.cc, | |
338 | testsuite/18_support/unexpected_handler.cc: Use the standard form for | |
339 | the copyright notice. | |
86a2db33 | 340 | \f |
94c13a09 | 341 | Copyright (C) 2014 Free Software Foundation, Inc. |
3cc6dd4d | 342 | |
86a2db33 JJ |
343 | Copying and distribution of this file, with or without modification, |
344 | are permitted in any medium without royalty provided the copyright | |
345 | notice and this notice are preserved. |