]> git.ipfire.org Git - thirdparty/gcc.git/blob - libstdc++-v3/ChangeLog
re PR libstdc++/49204 ([C++0x] remaining issues in <future>)
[thirdparty/gcc.git] / libstdc++-v3 / ChangeLog
1 2012-02-01 Jonathan Wakely <jwakely.gcc@gmail.com>
2
3 PR libstdc++/49204
4 * include/std/future (__future_base::_State_base::wait()): Use lambda
5 expression for predicate and remove redundant test.
6 (__future_base::_State_base::wait_for()): Return future_status and
7 use lambda expression for predicate.
8 (__future_base::_State_base::wait_until()): Likewise.
9 (__basic_future::wait_for(), __basic_future::wait_until()): Likewise.
10 (__future_base::_Async_state): Replace with _Async_state_common
11 class for non-dependent functionality and _Async_state_impl class
12 template for dependent functionality.
13 (__future_base::_Async_state_common::_M_join): Serialize attempts to
14 join thread.
15 (__future_base::_Async_state_common::_M_run_deferred): Join.
16 (__future_base::_Async_state::_M_do_run): Replace with lambda.
17 * src/c++11/future.cc (__future_base::_Async_state_common): Define
18 destructor, so key function is in the library.
19 * config/abi/pre/gnu.ver: Add exports for ~_Async_state_common.
20 * testsuite/30_threads/packaged_task/members/get_future.cc: Expect
21 future_status return instead of bool.
22 * testsuite/30_threads/shared_future/members/wait_until.cc: Likewise.
23 * testsuite/30_threads/shared_future/members/wait_for.cc: Likewise.
24 * testsuite/30_threads/future/members/wait_until.cc: Likewise.
25 * testsuite/30_threads/future/members/wait_for.cc: Likewise.
26 * testsuite/30_threads/promise/members/set_value2.cc: Likewise.
27 * testsuite/30_threads/promise/members/set_value3.cc: Likewise.
28 * testsuite/30_threads/promise/members/swap.cc: Likewise.
29
30 2012-01-30 Tom Tromey <tromey@redhat.com>
31
32 PR libstdc++/51649:
33 * testsuite/libstdc++-prettyprinters/debug.cc: New file.
34 * testsuite/lib/gdb-test.exp (regexp-test): New proc.
35 (note-test): Update.
36 (gdb-test): Handle regexp tests. Add some logging.
37 * testsuite/libstdc++-prettyprinters/simple.cc: Compile with -O0.
38 (placeholder, use): Remove.
39 (main): Add tests for deque, list, map, and set iterators. Add
40 tests for slist and slist iterator.
41 * testsuite/libstdc++-prettyprinters/48362.cc (main): Handle __7
42 namespace.
43 * python/libstdcxx/v6/printers.py (StdListPrinter.children): Use
44 the type's _Node typedef.
45 (StdListIteratorPrinter.to_string): Change how node type is
46 computed.
47 (StdSlistPrinter.children): Use the type's _Node typedef.
48 (StdSlistIteratorPrinter.to_string): Likewise.
49 (StdRbtreeIteratorPrinter.to_string): Use the type's _Link_type
50 typedef.
51 (StdMapPrinter.children): Change how the node's type is computed.
52 (StdSetPrinter.children): Likewise.
53 (StdForwardListPrinter.children): Use the type's _Node typedef.
54 (Printer.add_version): New method.
55 (Printer.add_container): New method.
56 (build_libstdcxx_dictionary): Handle __7 and __cxx1998
57 namespaces.
58 (find_type): New function.
59
60 2012-01-27 Paolo Carlini <paolo.carlini@oracle.com>
61
62 PR libstdc++/51795
63 * include/bits/random.h (linear_congruential_generator): Add
64 static_assert preventing instantiation for values of 'a' and 'm'
65 currently handled incorrectly but _Mod::__calc.
66 * include/bits/random.tcc (seed_seq::generate): Avoid unsafe
67 uses of _Mod::__calc.
68
69 2012-01-27 Jakub Jelinek <jakub@redhat.com>
70
71 PR libstdc++/51798
72 * config/cpu/generic/atomicity_builtins/atomicity.h
73 (__exchange_and_add, __atomic_add): Use __atomic_fetch_add
74 with __ATOMIC_ACQ_REL semantics instead of __sync_fetch_and_add.
75 * include/ext/atomicity.h (__exchange_and_add, __atomic_add):
76 Likewise.
77
78 2011-01-27 Rafael Avila de Espindola <rafael.espindola@gmail.com>
79
80 * libsupc++/typeinfo: Correctly match #pragma GCC visibility
81 pop with #pragma GCC visibility push.
82
83 2012-01-27 Benjamin Kosnik <bkoz@redhat.com>
84 Matthias Klose <doko@ubuntu.com>
85
86 * configure.ac (GLIBCXX_ENABLE_DEBUG_FLAGS): Use -gdwarf-4 -g3 -O0.
87 * configure.in: Regenerated.
88 * src/Makefile.am (all-once, install-data-once): New rules.
89 (all-local, install-data-local): Use them.
90 (build-debug, install-debug): Tweak.
91 * src/Makefile.in: Regenerate.
92
93 2012-01-27 Richard Henderson <rth@redhat.com>
94
95 * include/bits/atomic_base.h (__atomic_flag_base): Define _M_i
96 based on the value of __GCC_ATOMIC_TEST_AND_SET_TRUEVAL.
97 (ATOMIC_FLAG_INIT): Initialize with 0, not false.
98 (atomic_flag::atomic_flag): Use __GCC_ATOMIC_TEST_AND_SET_TRUEVAL.
99
100 2012-01-26 Jakub Jelinek <jakub@redhat.com>
101
102 PR bootstrap/51985
103 * src/c++98/Makefile.am (libc__98_la_SOURCES,
104 libc__98convenience_la_SOURCES): Remove $(inst_sources).
105 * src/c++98/Makefile.in: Regenerated.
106
107 2012-01-25 Richard Sandiford <rdsandiford@googlemail.com>
108
109 * testsuite/20_util/system_clock/1.cc: Add dg-require-time.
110 * testsuite/22_locale/time_put/put/wchar_t/12439_1.cc: Likewise.
111 * testsuite/22_locale/time_put/put/wchar_t/12439_2.cc: Likewise.
112 * testsuite/22_locale/time_put/put/wchar_t/12439_3.cc: Likewise.
113 * testsuite/27_io/basic_istream/readsome/wchar_t/6746-2.cc: Add
114 dg-require-fileio.
115 * testsuite/27_io/basic_istream/seekg/wchar_t/fstream.cc: Likewise.
116 * testsuite/27_io/basic_istream/tellg/wchar_t/1.cc: Likewise.
117 * testsuite/27_io/basic_istream/tellg/wchar_t/fstream.cc: Likewise.
118 * testsuite/27_io/basic_ostream/seekp/wchar_t/2346-fstream.cc:
119 Likewise.
120 * testsuite/27_io/basic_ostream/tellp/wchar_t/1.cc: Likewise.
121
122 2012-01-25 Matthias Klose <doko@ubuntu.com>
123
124 * testsuite/30_threads/condition_variable_any/requirements: Remove
125 empty directory.
126
127 2012-01-23 Benjamin Kosnik <bkoz@redhat.com>
128
129 * src/Makefile.am (libstdc++convenience.la): Correct stamp rule, copy.
130 * src/Makefile.in: Regenerate.
131
132 2012-01-23 Benjamin Kosnik <bkoz@redhat.com>
133
134 PR libstdc++/49829
135 Add libc++98convenience.la, libc++11convenience.la.
136 * src/c++98: New directory.
137 * src/c++11: New directory.
138 * acinclude.m4: (GLIBCXX_CONFIGURE): Add src-c++98, src-c++11.
139 * configure: Regenerated.
140 * Makefile.am (hosted_source): Add src-c++98, src-c++11 to SUBDIRS.
141 * Makefile.in: Regenerate.
142 * libsupc++/Makefile.am (AM_CXXFLAGS): USe XTEMPLATE_FLAGS for
143 -fno-implicit-templates.
144 * libsupc++/Makefile.in: Regenerate.
145 * src/Makefile.am (inst_sources): Move... C++11 files into
146 separate directory for libstdc++11convenience.la. Files are:
147 fstream-inst.cc, string-inst.cc, wlocale-inst.cc, wstring-inst.cc).
148 (sources): Move C++11 files. Files are: compatibility-c++0x.cc,
149 compatibility-atomic-c++0x.cc, debug.cc, functexcept.cc,
150 functional.cc, hash_c++0x.cc, hashtable_c++0x.cc, limits.cc,
151 system_error.cc, placeholders.cc, regex.cc, shared_ptr.cc,
152 mutex.cc, condition_variable.cc, chrono.cc, thread.cc, future.cc.
153 (libstdc++convenience.la): Add new target.
154 (SUBDIRS): Add c++11, c++98.
155 * src/Makefile.in: Regenerate.
156 * src/c++11/Makefile.am: New.
157 * src/c++11/Makefile.in: Generate.
158 * src/c++98/Makefile.am: New, C++98 files.
159 * src/c++98/Makefile.in: Generate.
160
161 2012-01-23 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
162
163 libstdc++-v3:
164 * testsuite/22_locale/num_put/put/char/14220.cc: Don't xfail on
165 32-bit Solaris 10/x86.
166 * testsuite/22_locale/num_put/put/wchar_t/14220.cc: Likewise.
167
168 2012-01-21 Jonathan Wakely <jwakely.gcc@gmail.com>
169
170 PR libstdc++/50982
171 * testsuite/30_threads/*: Add powerpc-ibm-aix* to target selectors.
172
173 2012-01-19 Jakub Jelinek <jakub@redhat.com>
174
175 PR libstdc++/51845
176 * include/bits/hashtable.h
177 (_Hashtable<>::erase(const_iterator, const_iterator)): Also update
178 _M_buckets[__n_bkt] if __is_bucket_begin.
179 * testsuite/23_containers/unordered_multimap/erase/51845-multimap.cc:
180 New test.
181
182 2012-01-18 Benjamin Kosnik <bkoz@redhat.com>
183
184 * acinclude (GLIBCXX_CONFIGURE_DOCBOOK): Fix quoting.
185
186 2012-01-18 Benjamin Kosnik <bkoz@redhat.com>
187
188 * configure.ac: Move epub checks...
189 * acinclude (GLIBCXX_CONFIGURE_DOCBOOK): ...here, use
190 test -f instead of AC_CHECK_FILES.
191
192 2012-01-18 François Dumont <fdumont@gcc.gnu.org>
193 Roman Kononov <roman@binarylife.net>
194
195 PR libstdc++/51866
196 * include/bits/hashtable.h (_Hashtable<>::_M_insert(_Arg, false_type)):
197 Do not keep a reference to a potentially moved instance.
198 * testsuite/23_containers/unordered_multiset/insert/51866.cc: New.
199 * testsuite/23_containers/unordered_multimap/insert/51866.cc: New.
200
201 2012-01-17 Benjamin Kosnik <bkoz@redhat.com>
202
203 * doc/html/*: Regenerate.
204
205 2012-01-17 Benjamin Kosnik <bkoz@redhat.com>
206
207 * configure.ac (BUILD_EPUB): Adjust for epub3.
208 * configure: Regenerate.
209 * Makefile.in: Same.
210 * doc/Makefile.am (stamp-epub-docbook): Update for epub3.
211 * doc/Makefile.in: Regenerate.
212 * include/Makefile.in: Same.
213 * libsupc++/Makefile.in: Same.
214 * po/Makefile.in: Same.
215 * python/Makefile.in: Same.
216 * src/Makefile.in: Same.
217 * testsuite/Makefile.in: Same.
218
219 * doc/xml/manual/documentation_hacking.xml: Update.
220
221 2012-01-17 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
222
223 PR target/47852
224 * configure.host (irix6.5*): Add -lpthread to OPT_LDFLAGS.
225
226 2012-01-14 Jonathan Wakely <jwakely.gcc@gmail.com>
227
228 * include/bits/stl_iterator.h (reverse_iterator): Doxygen comments.
229
230 2012-01-13 François Dumont <fdumont@gcc.gnu.org>
231
232 * include/bits/hashtable_policy.h (_Hash_node_base): New, use it as
233 base class of ...
234 (_Hash_node<Value, true>, _Hash_node<Value, false>): ... those.
235 * include/bits/hashtable.h (_Hashtable): Replace _M_begin_bucket_index
236 by _M_before_begin. Review implementation so that we do not need to
237 look for previous non-empty bucket when inserting nodes.
238
239 2012-01-09 Kai Tietz <ktietz@redhat.com>
240
241 PR libstc++/51673 part 2
242 * config/abi/pre/gnu-versioned-namespace.ver: Adjusted new/delete
243 operators signature for LLP64 size_t, and adjusted signatures for
244 mt-allocator using size_t.
245
246 2012-01-09 Benjamin Kosnik <bkoz@redhat.com>
247
248 PR libstc++/51673 part 1
249 * config/abi/pre/gnu-versioned-namespace.ver: Sync cxxabi symbols
250 with gnu.ver.
251
252 2012-01-09 Benjamin Kosnik <bkoz@redhat.com>
253
254 * fragment.am (WARN_CXXFLAGS): Add -Wabi.
255 * Makefile.in: Regenerate.
256 * doc/Makefile.in: Same.
257 * include/Makefile.in: Same.
258 * libsupc++/Makefile.in: Same.
259 * src/Makefile.in: Same.
260 * testsuite/Makefile.in: Same.
261 * po/Makefile.in: Same.
262 * python/Makefile.in: Same.
263
264 2012-01-08 Jonathan Wakely <jwakely.gcc@gmail.com>
265
266 * python/libstdcxx/v6/printers.py (StdForwardListPrinter): Add.
267 * testsuite/libstdc++-prettyprinters/cxx11.cc: New.
268
269 2012-01-06 Jason Merrill <jason@redhat.com>
270
271 * testsuite/abi/demangle/regression/cw-16.cc (main): Adjust
272 expected demangling.
273
274 2012-01-06 Jonathan Wakely <jwakely.gcc@gmail.com>
275
276 PR libstdc++/51504
277 * doc/xml/manual/debug.xml: Suggest using symbol interposition
278 to override symbols using annotation macros.
279
280 2012-01-05 François Dumont <fdumont@gcc.gnu.org>
281
282 * include/bits/hashtable_policy.h (_Hashtable_base<>::_M_eq()):
283 protected rather than private, use it...
284 * include/bits/hashtable.h (_Hashtable<>::key_eq()): ... here.
285 * testsuite/23_containers/unordered_set/observers.cc: New.
286 * testsuite/23_containers/unordered_multiset/observers.cc: New.
287 * testsuite/23_containers/unordered_map/observers.cc: New.
288 * testsuite/23_containers/unordered_multimap/observers.cc: New.
289
290 2012-01-03 François Dumont <fdumont@gcc.gnu.org>
291
292 * include/bits/hashtable_policy.h (_Ebo_helper<>): Rename to the more
293 specific _Hashtable_ebo_helper. Hide this implementation detail thanks
294 to private inheritance.
295
296 2012-01-03 Paolo Carlini <paolo.carlini@oracle.com>
297
298 PR c++/51738
299 * testsuite/23_containers/map/element_access/39901.cc: New.