]> git.ipfire.org Git - thirdparty/gcc.git/blob - libstdc++-v3/ChangeLog-2002
jit: fix __builtin_unreachable [PR 95426]
[thirdparty/gcc.git] / libstdc++-v3 / ChangeLog-2002
1 2002-12-30 Loren J. Rittle <ljrittle@acm.org>
2
3 * src/Makefile.am: Resolve non-portable use of $<.
4 * src/Makefile.in: Rebuilt.
5
6 2002-12-30 Phil Edwards <pme@gcc.gnu.org>
7
8 * configure.in (GLIBCPP_ENABLE_CXX_FLAGS): Do not pass arguments,
9 let the defaults work.
10 * configure: Regenerate.
11
12 2002-12-30 Phil Edwards <pme@gcc.gnu.org>
13
14 * acinclude.m4: Remove trailing whitespace.
15 (GLIBCPP_ENABLE_CXX_FLAGS): Fix.
16 * aclocal.m4, configure: Regenerate.
17
18 2002-12-29 Phil Edwards <pme@gcc.gnu.org>
19
20 * include/std/std_bitset.h: Better comments.
21
22 2002-12-28 Joseph S. Myers <jsm@polyomino.org.uk>
23
24 * docs/html/17_intro/porting.texi: Use @copying.
25 * docs/html/17_intro/porting.html: Regenerate.
26
27 2002-12-27 Mark Mitchell <mark@codesourcery.com>
28
29 * config/locale/gnu/ctype_members.cc
30 (ctype<wchar_t>::_M_convert_to_wmask): Remove stray semicolon.
31 * config/locale/gnu/monetary_members.cc
32 (moneypunct<wchar_t, true>::_M_initialize_moneypunct): Avoid
33 defining classes in static_cast.
34 (moneypunct<wchar_t, false>::_M_initialize_moneypunct): Likewise.
35 * config/locale/gnu/numeric_members.cc
36 (numpunct<wchar_t, false>::_M_initialize_numpunct): Likewise.
37 * include/bits/stl_deque.h (operator-): Insert typename where
38 required.
39 * include/bits/stl_multiset.h (multiset): Remove stray semicolon.
40 * include/bits/stl_set.h (set): Likewise.
41 * include/bits/valarray_meta.h (bits/slice_array.h): Include it.
42 * include/std/std_fstream.h (basic_fstream::open): Use this-> to
43 avoid Koenig lookup.
44 (basic_fstream::close): Likewise.
45 * libsupc++/new (operator delete): Remove stray semicolon.
46 * libsupc++/new (operator delete[]): Likewise.
47 * libsupc++/tinfo.cc: Likewise.
48 * src/stdexcept.c (logic_error::~logic_error): Likewise.
49 (runtime_error::~runtime_error): Likewise.
50
51 2002-12-26 Phil Edwards <pme@gcc.gnu.org>
52
53 * libsupc++/exception: Add comment (mistakenly skipped).
54
55 2002-12-26 Phil Edwards <pme@gcc.gnu.org>
56
57 * include/std/std_bitset.h (_Base_bitset::_M_do_left_shift,
58 _Base_bitset::_M_do_right_shift): Expect a non-zero shift.
59 (bitset::operator<<=, bitset::operator>>=): When shifting more bits
60 than are in the bitset, zero memory rather than segfault.
61 (operator>>(basic_istream,bitset): Only call setstate once, after
62 all work has been done.
63
64 * testsuite/23_containers/bitset_members.cc (test03): New test.
65 * testsuite/23_containers/bitset_shift.cc (test02): New test.
66
67 2002-12-26 Phil Edwards <pme@gcc.gnu.org>
68
69 * libsupc++/vterminate.cc (writestr): Use __builtin_strlen.
70
71 2002-12-26 Phil Edwards <pme@gcc.gnu.org>
72
73 * libsupc++/eh_term_handler.cc: Add comment about embedded systems.
74 * docs/html/debug.html: Cosmetic and HTML changes. Point to
75 verb-term notes.
76 * docs/html/documentation.html: Link to the FAQ.
77 * docs/html/17_intro/howto.html: Mention use of isatty(3).
78 * docs/html/19_diagnostics/howto.html: Update verb-term description.
79
80 2002-12-25 Phil Edwards <pme@gcc.gnu.org>
81
82 * src/vterminate.cc: Move to...
83 * libsupc++/vterminate.cc: ...here. New file. Replace fprintf with
84 writestr macro. Slight reword to explanatory text.
85 * libsupc++/eh_terminate.cc (__cxxabiv1::__terminate_handler,
86 __cxxabiv1::__unexpected_handler): Break definitions out to...
87 * libsupc++/eh_unex_handler.cc: ...here (new file), and...
88 * libsupc++/eh_term_handler.cc: ...here (new file). Initialize
89 __terminate_handler with __gnu_cxx::__verbose_terminate_handler
90 instead of std::abort.
91
92 * libsupc++/Makefile.am (sources), src/Makefile.am (sources): Update.
93 * libsupc++/Makefile.in, src/Makefile.in: Regenerate.
94
95 2002-12-23 Danny Smith <dannysmith@users.sourceforge.net>
96
97 * config/io/basic_file_stdio.cc (__basic_file::_M_open_mode):
98 Don't use O_NONBLOCK if it is not defined.
99 (__basic_file::open): Don't use fcntl either.
100
101 2002-12-20 Sylvain Pion <Sylvain.Pion@mpi-sb.mpg.de>
102
103 * include/bits/stl_deque.h: Fix typo.
104 * include/bits/stl_list.h: Same.
105 * include/bits/stl_map.h: Same.
106 * include/bits/stl_multimap.h: Same.
107 * include/bits/stl_queue.h: Same.
108 * include/bits/stl_stack.h: Same.
109 * include/bits/stl_vector.h: Same.
110
111 2002-12-18 Benjamin Kosnik <bkoz@redhat.com>
112
113 * docs/html/documentation.html: Add link for debug.html.
114 * docs/html/debug.html: New.
115
116 2002-12-18 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
117
118 * testsuite/23_containers/vector_capacity.cc (test03): Move ...
119 * testsuite/23_containers/vector_resize.cc: ...here as a new file.
120 Pass in -lmalloc for irix6.
121 * testsuite/27_io/ios_base_storage.cc: Pass in -lmalloc for irix6.
122
123 2002-12-18 Jason Merrill <jason@redhat.com>
124
125 * src/vterminate.cc (__verbose_terminate_handler): Send
126 diagnostics to stderr.
127
128 2002-12-18 Ulrich Weigand <uweigand@de.ibm.com>
129
130 * configure.in: Define with_target_subdir and with_build_subdir
131 variables in config-ml.in AC_OUTPUT call.
132 * configure: Regenerate.
133
134 2002-12-16 Paolo Carlini <pcarlini@unitus.it>
135
136 PR libstdc++/8949
137 * include/std/std_limits.h
138 (struct numeric_limits<short>,
139 struct numeric_limits<unsigned short>,
140 struct numeric_limits<int>,
141 struct numeric_limits<unsigned int>,
142 struct numeric_limits<long>,
143 struct numeric_limits<unsigned long>,
144 struct numeric_limits<long long>,
145 struct numeric_limits<unsigned long long>): According
146 to 18.2.1.2,53 and 18.2.1.5,1 is_iec559 shall be false.
147 * testsuite/18_support/numeric_limits.cc: Add test04.
148
149 2002-12-16 Benjamin Kosnik <bkoz@redhat.com>
150
151 * configure.in (GLIBCPP_ENABLE_DEBUG): Default to none.
152 Call GLIBCPP_ENABLE_DEBUG_FLAGS.
153 * acinclude.m4 (GLIBCPP_ENABLE_DEBUG): GLIBCPP_BUILD_DEBUG, new
154 conditional if --enable-debug is yes. Rework.
155 (GLIBCPP_ENABLE_DEBUG_FLAGS): New.
156 * aclocal.m4: Regenerate.
157 * libio/Makefile.am: Remove DEBUG_FLAGS.
158 * libio/Makefile.in: Regenerate.
159 * libsupc++/Makefile.am: Remove DEBUG_FLAGS.
160 * libsupc++/Makefile.in: Regenerate.
161 * docs/html/configopts.html: Add docs for --enable-debug,
162 --enable-debug-flags.
163
164 2002-12-16 Benjamin Kosnik <bkoz@redhat.com>
165
166 Correct dependency tracking, build warts.
167 * configure.in: Correct repeated AC_OUTPUT thrashing by
168 config-ml.in
169 * configure: Regenerate.
170 * include/Makefile.am (stamp-target): Stamp in top_builddir.
171 * include/Makefile.in: Regenerate.
172 * src/Makefile.am (codecvt_members.cc): New rule.
173 (collate_members.cc): Same.
174 (ctype_members.cc): Same.
175 (messages_members.cc): Same.
176 (monetary_members.cc): Same.
177 (numeric_members.cc): Same.
178 (time_members.cc): Same.
179 (c++locale.cc): Same.
180 (basic_file.cc): Same.
181 * src/Makefile.in: Regenerate.
182 * acinclude.m4 (CCTYPE_CHAR_CC): Remove.
183 (CCCODECVT_CC): Don't link, AC_SUBST.
184 (CCOLLATE_CC): Same.
185 (CCTYPE_CC): Same.
186 (CMESSAGES_CC): Same.
187 (CMONEY_CC): Same.
188 (CNUMERIC_CC): Same.
189 (CTIME_CC): Same.
190 (CLOCALE_CC): Same.
191 * aclocal.m4: Regenerate.
192
193 * src/Makefile.am (libstdc___la_LIBADD): Use top_builddir
194 for convenience libraries.
195 (version_arg): Rename linker.map to libstdc++.ver.
196 (libstdc___la_DEPENDENCIES): Remove linker.map, add
197 libstdc++-symbol.ver as a dependency.
198 (libstdc++-symbol.ver): Add rule.
199 * acinclude.m4 (GLIBCPP_ENABLE_SYMVERS): Change LINKER_MAP to
200 SYMVER_MAP. Don't link, AC_SUBST.
201
202 * include/Makefile.am (target_headers_noinst): New.
203 (stamp-target): Add CLOCALE_INTERNAL_H.
204 * acinclude.m4 (GLIBCPP_ENABLE_CLOCALE): Don't link
205 CLOCALE_INTERNAL_H, AC_SUBST.
206 * config/locale/gnu/c_locale.cc: Modify c++locale_internal.h
207 include.
208 * config/locale/gnu/time_members.cc: Same.
209 * config/locale/gnu/numeric_members.cc: Same.
210 * config/locale/gnu/monetary_members.cc: Same.
211 * config/locale/gnu/messages_members.cc: Same.
212 * config/locale/gnu/ctype_members.cc: Same.
213 * config/locale/gnu/collate_members.cc: Same.
214 * config/locale/gnu/codecvt_members.cc: Same.
215 * config/locale/generic/codecvt_members.cc: Remove.
216
217 2002-12-11 Paolo Carlini <pcarlini@unitus.it>
218
219 PR libstdc++/8887
220 * config/locale/generic/time_members.cc
221 (__timepunct<char>::_M_initialize_timepunct): Fix typos
222 in _M_date_format and _M_date_era_format string literals.
223
224 2002-12-10 Mark Mitchell <mark@codesourcery.com>
225
226 * libsupc++/cxxabi.h (__cxa_bad_cast): Declare it.
227 (__cxa_bad_typeid): Likewise.
228 (__cxa_atexit): Likewise.
229 (__cxa_finalize): Likewise.
230
231 2002-12-09 Gabriel Dos Reis <gdr@integrable-solutions.net>
232
233 * include/bits/slice_array.h (slice_array<>::operator=): Fix typo.
234
235 2002-12-09 Mark Mitchell <mark@codesourcery.com>
236
237 * libsupc++/cxxabi.h (__cxa_pure_virtual): Declare it.
238
239 2002-12-05 Benjamin Kosnik <bkoz@redhat.com>
240
241 * testsuite/abi_check.cc: Add GLIBCPP_3.2.2.
242
243 2002-12-04 Paolo Carlini <pcarlini@unitus.it>
244
245 * config/locale/generic/codecvt_members.cc (codecvt::do_out
246 (state_type&, const intern_type*, const intern_type*,
247 const intern_type*&, extern_type*, extern_type*, extern_type*&),
248 codecvt::do_in(state_type&, const extern_type*, const extern_type*,
249 const extern_type*&, intern_type*, intern_type*, intern_type*&)):
250 Fully qualify min() with std::.
251 * config/locale/gnu/codecvt_members.cc: Ditto.
252 * locale/ieee_1003.1-2001/codecvt_specializations.h
253 (codecvt::do_length(const state_type&, const extern_type*,
254 const extern_type*, size_t): Ditto.
255 * include/bits/deque.tcc
256 (_M_range_initialize(_ForwardIterator, _ForwardIterator,
257 forward_iterator_tag), deque::_M_range_insert_aux(iterator,
258 _ForwardIterator, _ForwardIterator, forward_iterator_tag),
259 deque::_M_reallocate_map(size_type, bool)): Fully qualify
260 distance() and max() with std::.
261 * include/bits/fstream.tcc (basic_filebuf::seekoff(off_type,
262 ios_base::seekdir, ios_base::openmode)): Fully qualify max()
263 with std::.
264 * include/bits/istream.tcc (basic_istream::ignore(streamsize,
265 int_type), basic_istream::readsome(char_type*, streamsize)):
266 Fully qualify min() with std::.
267 * include/bits/locale_facets.tcc (time_get::_M_extract_name
268 (iter_type&, iter_type&, int&, const _CharT**, size_t,
269 ios_base::iostate&)): Ditto.
270 * include/bits/sstream.tcc (basic_stringbuf::overflow(int_type)):
271 Fully qualify max() with std::.
272 * include/bits/stl_algo.h (__inplace_stable_partition(_ForwardIter
273 __first, _ForwardIter, _Predicate, _Distance),
274 __stable_partition_adaptive(_ForwardIter, _ForwardIter, _Predicate,
275 _Distance, _Pointer, _Distance), __merge_sort_loop(_RandomAccessIter1,
276 _RandomAccessIter1, _RandomAccessIter2, _Distance),
277 __merge_sort_loop(_RandomAccessIter1, _RandomAccessIter1,
278 _RandomAccessIter2, _Distance, _Compare), lower_bound(_ForwardIter,
279 _ForwardIter, const _Tp&), lower_bound(_ForwardIter, _ForwardIter,
280 const _Tp&, _Compare), upper_bound(_ForwardIter, _ForwardIter,
281 const _Tp&), upper_bound(_ForwardIter, _ForwardIter, const _Tp&,
282 _Compare), equal_range(_ForwardIter, _ForwardIter, const _Tp&),
283 equal_range(_ForwardIter, _ForwardIter, const _Tp&, _Compare),
284 __merge_without_buffer(_BidirectionalIter, _BidirectionalIter,
285 _BidirectionalIter, _Distance, _Distance), __merge_without_buffer
286 (_BidirectionalIter, _BidirectionalIter, _BidirectionalIter,
287 _Distance, _Distance, _Compare), __rotate_adaptive(_BidirectionalIter1,
288 _BidirectionalIter1, _BidirectionalIter1, _Distance, _Distance,
289 _BidirectionalIter2, _Distance), __merge_adaptive(_BidirectionalIter,
290 _BidirectionalIter, _BidirectionalIter, _Distance, _Distance,
291 _Pointer, _Distance), __merge_adaptive(_BidirectionalIter,
292 _BidirectionalIter, _BidirectionalIter, _Distance, _Distance,
293 _Pointer, _Distance, _Compare), inplace_merge(_BidirectionalIter,
294 _BidirectionalIter, _BidirectionalIter), inplace_merge
295 (_BidirectionalIter, _BidirectionalIter, _BidirectionalIter,
296 _Compare), __find_end(_BidirectionalIter1, _BidirectionalIter1,
297 _BidirectionalIter2, _BidirectionalIter2, bidirectional_iterator_tag,
298 bidirectional_iterator_tag), __find_end(_BidirectionalIter1,
299 _BidirectionalIter1, _BidirectionalIter2, _BidirectionalIter2,
300 bidirectional_iterator_tag, bidirectional_iterator_tag,
301 _BinaryPredicate)): Fully qualify distance() and min() with std::.
302 * include/bits/stl_algobase.h (lexicographical_compare
303 (const unsigned char*, const unsigned char*, const unsigned char*,
304 const unsigned char*)): Fully qualify min() with std::.
305 * include/bits/stl_bvector.h (_M_insert_range(iterator,
306 _ForwardIterator, _ForwardIterator, forward_iterator_tag),
307 _M_assign_aux(_ForwardIterator, _ForwardIterator,
308 forward_iterator_tag),
309 _M_initialize_range(_ForwardIterator, _ForwardIterator,
310 forward_iterator_tag), _M_fill_insert(iterator, size_type, bool)):
311 Fully qualify distance() and max() with std::.
312 * include/bits/stl_deque.h
313 (_Deque_base::_M_initialize_map(size_t),
314 _M_assign_aux(_ForwardIterator, _ForwardIterator,
315 forward_iterator_tag)):
316 Ditto. * include/bits/stl_list.h (size()): Fully qualify
317 distance() with std::.
318 * include/bits/stl_tempbuf.h (_Temporary_buffer::_Temporary_buffer
319 (_ForwardIterator, _ForwardIterator)): Ditto.
320 * include/bits/stl_tree.h (_Rb_tree::erase(const _Key&),
321 _Rb_tree::count(const _Key&)): Ditto.
322 * include/bits/stl_vector.h (_M_range_initialize(_ForwardIterator,
323 _ForwardIterator, forward_iterator_tag)): Ditto.
324 * include/bits/streambuf.tcc (basic_streambuf::xsgetn(char_type*,
325 streamsize), basic_streambuf::xsputn(const char_type*, streamsize)):
326 Fully qualify min() with std::.
327 * include/bits/vector.tcc (_M_assign_aux(_ForwardIter, _ForwardIter,
328 forward_iterator_tag), _M_fill_insert(iterator, size_type,
329 const value_type&), _M_range_insert(iterator, _ForwardIterator,
330 _ForwardIterator, forward_iterator_tag)): Fully qualify max() and
331 distance() with std::.
332 * include/std/std_bitset.h (bitset::_M_copy_from_string
333 (const basic_string&, size_t, size_t)): Fully qualify min() with std::.
334 * include/std/std_streambuf.h (_M_pback_create()): Ditto.
335 * include/std/std_complex.h (abs(const complex<_Tp>&)):
336 Fully qualify max() with std::.
337 * include/std/std_sstream.h (str()): Ditto.
338 * src/codecvt.cc (codecvt::do_out(state_type&, const intern_type*,
339 const intern_type*, const intern_type*&, extern_type*, extern_type*,
340 extern_type*&), codecvt::do_in(state_type&, const extern_type*,
341 const extern_type*, const extern_type*&, intern_type*, intern_type*,
342 intern_type*&), codecvt::do_length(const state_type&,
343 const extern_type*, const extern_type*, size_t), do_length
344 (const state_type&, const extern_type*, const extern_type*,
345 size_t)): Fully qualify min() with std::.
346 * src/strstream.cc (strstreambuf::strstreambuf(streamsize),
347 strstreambuf::overflow(int_type)): Fully qualify max() with std::.
348
349 2002-12-02 Paolo Carlini <pcarlini@unitus.it>
350
351 * include/bits/basic_string.h (compare(const basic_string&)):
352 Fully qualify min() with std::.
353
354 2002-12-02 Benjamin Kosnik <bkoz@redhat.com>
355
356 * configure.in (libtool_VERSION): Update to 5:2:0.
357 * configure: Regenerate.
358
359 2002-12-02 Paolo Carlini <pcarlini@unitus.it>
360
361 * include/bits/basic_string.tcc
362 (basic_string::append(const basic_string&, size_type,
363 size_type), basic_string::compare(size_type, size_type,
364 const basic_string&), basic_string::compare(size_type,
365 size_type, const basic_string&, size_type, size_type),
366 basic_string::compare(const _CharT*), basic_string::
367 compare(size_type, size_type, const _CharT*),
368 basic_string::compare(size_type, size_type, const _CharT*,
369 size_type), _S_string_copy(const basic_string&, _CharT*,
370 typename _Alloc::size_type)): Fully qualify min() with std::.
371
372 2002-12-02 Paolo Carlini <pcarlini@unitus.it>
373
374 * include/bits/basic_string.tcc
375 (basic_string::_S_construct(_InIter, _InIter, const _Alloc&,
376 forward_iterator_tag)): Delay the declaration of __dnew,
377 fully qualify distance() with std::.
378 (basic_string::_M_replace_safe): Fully qualify distance()
379 with std::.
380
381 2002-11-28 Phil Edwards <pme@gcc.gnu.org>
382
383 PR libstdc++/8716
384 * testsuite/21_strings/ctor_copy_dtor.cc (test05): Also test
385 the NULL-pointer, zero-size case.
386
387 2002-11-28 Jonathan Wakely <redi@gcc.gnu.org>
388
389 * docs/html/faq/index.html: Add tip about a namespace for extensions.
390
391 2002-11-28 Paolo Carlini <pcarlini@unitus.it>
392 Nathan Myers <ncm@cantrip.org>
393
394 * src/localename.cc
395 (locale::_Impl::_Impl(const char*, size_t)):
396 Improve previous fix for the strtok vs MT issue.
397
398 2002-11-28 Paolo Carlini <pcarlini@unitus.it>
399
400 * config/locale/gnu/c_locale.cc (locale::_S_categories):
401 Reorder the categories to match that of glibc's setlocale(LC_ALL, ""))
402 * config/locale/generic/c_locale.cc (locale::_S_categories): Ditto.
403 * testsuite/22_locale/ctor_copy_dtor.cc (test04): Tweak.
404
405 2002-11-25 Benjamin Kosnik <bkoz@redhat.com>
406
407 * testsuite/abi_check.cc: Add CXXABI_1.2.1 as compatible.
408 * config/linker-map.gnu: Version __cxa_guard_acquire,
409 __cxa_guard_release, __cxa_guard_abort in CXXABI_1.2.1.
410
411 2002-11-25 Paolo Carlini <pcarlini@unitus.it>
412 Nathan Myers <ncm@cantrip.org>
413
414 * src/localename.cc
415 (locale::_Impl::_Impl(const char*, size_t)):
416 Avoid strtok for thread safety.
417
418 2002-11-25 Stephen M. Webb <stephen@bregmasoft.com>
419
420 * testsuite/testsuite_allocator.h: New file.
421 * testsuite/testsuite_allocator.cc: New file.
422 * testsuite/Makefile.am: Added testsuite_allocator to test library.
423 * testsuite/testsuite_hooks.h: Added more detailed tracker objects
424 gnu_copy_constructor, gnu_assignment_operator, and gnu_destructor.
425 * testsuite/testsuite_hooks.cc: Added new static objects definitions.
426 * testsuite/23_containers/vector_capacity.cc: Added reserve() tests.
427 * testsuite/23_containers/vector_ctor.cc: Added a plethora of tests.
428 * testsuite/23_containers/deque_ctor.cc: Added a slew of new tests.
429
430 2002-11-25 Mark Mitchell <mark@codesourcery.com>
431
432 * libsupc++/Makefile.am (sources): Add guard.cc.
433 * libsupc++/Makefile.in: Regenerated.
434 * libsupc++/cxxabi.h (__cxa_guard_acquire): New function.
435 (__cxa_guard_release): Likewise.
436 (__cxa_guard_abort): Likewise.
437 * libsupc++/guard.cc: New file.
438
439 2002-11-25 Wolfgang Bangerth <bangerth@ticam.utexas.edu>
440
441 * include/std/std_complex.h
442 (operator<<(basic_ostream&, const complex&)): Prefer 'x'
443 to "x" for efficiency sake.
444 * src/locale.cc (locale::locale(const char*)): Ditto.
445
446 2002-11-24 Paolo Carlini <pcarlini@unitus.it>
447
448 * src/locale.cc (locale::locale(const char*)):
449 Trivial cosmetic tweaks.
450
451 2002-11-22 Laszlo Ersek <erseklaszlo@chello.hu>
452 Paolo Carlini <pcarlini@unitus.it>
453
454 PR libstdc++/8645
455 * include/bits/stl_tree.h (_Rb_tree_rebalance_for_erase):
456 Don't check that __w->_M_left != 0 and __w->_M_right != 0
457 when they can't be otherwise.
458
459 2002-11-21 Phil Edwards <pme@gcc.gnu.org>
460
461 * docs/html/documentation.html: Fix broken/thinko'd URL.
462
463 2002-11-21 Phil Edwards <pme@gcc.gnu.org>
464
465 * docs/doxygen/run_doxygen: Tighter search expression for sed.
466 * docs/doxygen/stdheader.cc: Handle the case of good headers.
467
468 2002-11-21 Phil Edwards <pme@gcc.gnu.org>
469
470 * acinclude.m4: Uniform formatting.
471 * configure.in: Warn when generic atomicity.h is used.
472 * configure.target: Fix comment.
473 * aclocal.m4, configure: Regenerate.
474
475 2002-11-21 Phil Edwards <pme@gcc.gnu.org>
476
477 * include/bits/streambuf.tcc (basic_streambuf::sputbackc): Prefix
478 "this->" to call to pbackfail.
479
480 2002-11-21 Phil Edwards <pme@gcc.gnu.org>
481
482 * docs/doxygen/style.css: Update.
483 * docs/doxygen/user.cfg.in: Update.
484 * docs/html/documentation.html: Regenerate.
485 * docs/html/17_intro/howto.html: Tweak I/O sentry entry.
486 * docs/html/27_io/howto.html: New section on headers.
487 * docs/html/faq/index.html: Add i386 threading entry.
488 * docs/html/faq/index.txt: Regenerate.
489
490 * docs/html/ext/lwg-active.html, docs/html/ext/lwg-defects.html:
491 Import R23.
492
493 2002-11-21 Phil Edwards <pme@gcc.gnu.org>
494
495 * docs/doxygen/TODO: Note change in clause 27 docs.
496 * include/bits/basic_ios.h, include/bits/fpos.h,
497 include/bits/ios_base.h, include/bits/stl_deque.h,
498 include/bits/stl_iterator_base_types.h, include/std/std_fstream.h,
499 include/std/std_iomanip.h, include/std/std_iosfwd.h,
500 include/std/std_iostream.h, include/std/std_istream.h,
501 include/std/std_ostream.h, include/std/std_sstream.h,
502 include/std/std_streambuf.h: Doxygenate all I/O entities.
503
504 2002-11-20 Benjamin Kosnik <bkoz@redhat.com>
505 Jonathan Lennox <lennox@cs.columbia.edu>
506
507 * include/bits/streambuf.tcc (__copy_streambufs):
508 Revert previous fix for the interactive half of
509 libstdc++/6745, use _M_buf_size_opt to set dynamically
510 the correct buffer size.
511
512 2002-11-20 Jonathan Wakely <redi@gcc.gnu.org>
513
514 * docs/html/21_strings/howto.html: Fix example code, cite Gaby's
515 explanation of "<unknown type>" error with toupper/tolower.
516 * docs/html/22_locale/howto.html: Be more consistent with
517 example in 21_strings.
518
519 2002-11-19 John Gustafsson <forgoil@rsn.bth.se>
520
521 * docs/html/20_util/howto.html: Fix typo.
522
523 2002-11-18 Jonathan Lennox <lennox@cs.columbia.edu>
524
525 * include/bits/streambuf.tcc (__copy_streambufs): verify
526 __sbin->gptr() + __bufsize < __sbin->egptr() before using.
527 * testsuite/27_io/ostream_inserter_other.cc (test_buffer_4): Add.
528 (test05): Use test_buffer_4. Delete unused ostringstream
529 variables.
530
531 2002-11-18 Paolo Carlini <pcarlini@unitus.it>
532
533 PR libstdc++/6745 (continued)
534 * include/bits/streambuf.tcc (__copy_streambufs):
535 Deal with interactive input by using isatty as in the
536 fix for libstdc++/8399.
537
538 2002-11-17 Jakub Jelinek <jakub@redhat.com>
539
540 * config/linker-map.gnu: Export _S_construct even if size_t is
541 unsigned long. Collapse std::codecvt<char>::codecvt(size_t)
542 and std::codecvt<wchar_t>::codecvt(size_t) into one export pattern.
543
544 2002-11-15 Benjamin Kosnik <bkoz@redhat.com>
545 Gabriel Dos Reis <gdr@integrable-solutions.net>
546
547 PR libstdc++/8230
548 * include/bits/stl_alloc.h: Use builtin_expect for the most
549 obvious limit checks.
550 (__default_alloc_template::allocate): Check for null, throw
551 bad_alloc.
552 * include/bits/vector.tcc: Formatting tweaks.
553 * include/bits/stl_vector.h: Same.
554 * testsuite/20_util/allocator_members.cc (test02): Add.
555 * testsuite/23_containers/vector_capacity.cc (test03): Add.
556
557 2002-11-15 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
558
559 * src/ios.cc [_GLIBCPP_HAVE_UNISTD_H]: Include unistd.h.
560
561 2002-11-15 Paolo Carlini <pcarlini@unitus.it>
562 Loren J. Rittle <ljrittle@acm.org>
563
564 PR libstdc++/8399
565 * acinclude.m4
566 (GLIBCPP_CHECK_UNISTD_DECL_AND_LINKAGE_1): New macro to
567 check for unistd.h functions.
568 (GLIBCPP_CHECK_UNISTD_SUPPORT): New macro, check for isatty
569 in unistd.h.
570 * configure.in: Call here.
571 * src/ios.cc (ios_base::Init::_S_ios_create(bool)):
572 Use _GLIBCPP_HAVE_ISATTY: ifdef, in case of interactive
573 input __in_size = 1 even when sync_with_stdio is false;
574 otherwise fall back to __in_size = 1.
575 * aclocal.m4: Regenerate.
576 * config.h.in: Regenerate.
577 * configure: Regenerate.
578
579 2002-11-13 Benjamin Kosnik <bkoz@redhat.com>
580
581 * acconfig.h (HAVE_DRAND48): Add.
582 (HAVE_GETPAGESIZE): Add.
583 (HAVE_SETENV): Add.
584 (HAVE_SIGSETJMP): Add.
585 * config.h.in: Regenerate.
586 * configure: Regenerate.
587
588 2002-11-13 John David Anglin <dave@hiauly1.hia.nrc.ca>
589
590 * config/os/hpux/os_defines.h (_GLIBCPP_INST_ATOMICITY_LOCK): Define
591 on hppa when there is no weak support.
592
593 2002-11-13 Benjamin Kosnik <bkoz@redhat.com>
594
595 PR libstdc++/8230
596 * include/bits/vector.tcc (vector::reserve): Throw length_error if
597 requested size is bigger than max_size().
598 * include/bits/stl_bvector.h (vector<bool>::reserve): Same.
599 * testsuite/23_containers/vector_capacity.cc (test02): Add.
600
601 2002-11-13 Benjamin Kosnik <bkoz@redhat.com>
602
603 * config/linker-map.gnu: Export all _S_construct.
604
605 2002-11-13 Loren J. Rittle <ljrittle@acm.org>
606
607 PR libstdc++/7445
608 * src/locale.cc (std::locale::classic()): Weaken locking protocol.
609
610 2002-11-13 Jonathan Wakely <redi@gcc.gnu.org>
611
612 * docs/html/install.html, docs/html/22_locale/locale.html: HTML fix.
613
614 2002-11-11 Benjamin Kosnik <bkoz@redhat.com>
615
616 PR libstdc++/6746
617 * include/bits/fstream.tcc (filebuf::open): Set input pointers.
618 * config/io/basic_file_stdio.cc (__basic_file::_M_open_mode): Set
619 __p_mode as well.
620 (__basic_file::open): Set to non-block for input.
621 * testsuite/27_io/istream_unformatted.cc (test12): Add.
622 (test13): Same.
623
624 2002-11-11 Jonathan Wakely <redi@gcc.gnu.org>
625
626 * docs/html/17_intro/howto.html: Make "chapter 22 notes" a link.
627 * docs/html/faq/index.html: Mention that GCC ships with a newer
628 version of the library than the last snapshot. Make "see below" a
629 link. Add missing <html> tag.
630 * docs/html/faq/index.txt: Regenerate.
631 * docs/html/22_locale/locale.html, docs/html/22_locale/messages.html,
632 docs/html/23_containers/howto.html, docs/html/24_iterators/howto.html,
633 docs/html/25_algorithms/howto.html, docs/html/26_numerics/howto.html,
634 docs/html/27_io/howto.html, docs/html/ext/howto.html,
635 docs/html/ext/sgiexts.html: Add missing <html> tag.
636
637 2002-11-07 Phil Edwards <pme@gcc.gnu.org>
638 Richard Earnshaw <rearnsha@arm.com>
639
640 * config/cpu/generic/atomicity.h: Provide atomic __exchange_and_add
641 and __atomic_add.
642
643 2002-11-08 Paolo Carlini <pcarlini@unitus.it>
644
645 * config/locale/gnu/monetary_members.cc
646 (moneypunct<wchar_t, true>::_M_initialize_moneypunct(__c_locale,
647 const char*),
648 moneypunct<wchar_t, false>::_M_initialize_moneypunct(__c_locale,
649 const char*)): Tweak parameters for glibc2.3 systems, thus
650 avoiding unused parameter warnings.
651
652 2002-11-05 Jonathan Wakely <cow@compsoc.man.ac.uk>
653
654 * include/std/std_sstream.h
655 (basic_stringbuf::str(const __string_type&)):
656 Prefer data() to c_str(), thus avoiding assigning the
657 unnecessary NULL-terminator.
658
659 2002-11-05 Benjamin Kosnik <bkoz@redhat.com>
660
661 PR libstdc++/8258
662 * include/bits/istream.tcc (istream::readsome): Don't set eofbit
663 for null buffer.
664 (istream::operator>>(_CharT*)): Use traits_type.
665 (istream::ws): Same.
666 (istream::operator>>(string)): Same.
667 * testsuite/27_io/istream_unformatted.cc (test11): Add.
668
669 2002-11-05 Paolo Carlini <pcarlini@unitus.it>
670
671 PR libstdc++/8466
672 * include/std/std_sstream.h
673 (basic_stringbuf::str(const __string_type&)):
674 Cannot use simple assignment since the COW-nature of v3
675 basic_string is not taken into account in basic_stringbuf.
676 * testsuite/27_io/stringstream_members.cc: Add test04 from PR.
677
678 2002-11-05 John David Anglin <dave@hiauly1.hia.nrc.ca>
679
680 * configure.target (hppa*): Define cpu_include_dir.
681 * config/os/hpux/os_defines.h (_GLIBCPP_INST_ATOMICITY_LOCK): Define.
682 * src/misc-inst.cc: Instantiate atomicity lock when
683 _GLIBCPP_INST_ATOMICITY_LOCK is defined.
684 * config/cpu/hppa/atomicity.h: New file.
685
686 2002-11-05 Benjamin Kosnik <bkoz@redhat.com>
687
688 PR libstdc++/8463
689 * include/bits/ios_base.h (~ios_base): Make virtual.
690
691 2002-11-04 Benjamin Kosnik <bkoz@redhat.com>
692
693 * config/linker-map.gnu: Export string operator+.
694 Export __default_alloc_template::_S_force_new.
695 * testsuite/abi_check.cc: Output tweaks.
696
697 2002-11-01 Benjamin Kosnik <bkoz@redhat.com>
698
699 PR libstdc++/8172
700 * src/string-inst.cc: Add instantiation.
701
702 2002-11-01 Benjamin Kosnik <bkoz@redhat.com>
703
704 PR libstdc++/7926
705 * configure.target: Simplify.
706 * config/cpu/i386/atomicity.h: Remove.
707 * config/cpu/i386: Remove.
708 * config/cpu/arm/atomicity.h: Remove.
709 * config/cpu/arm: Remove.
710 * config/cpu/x86-64/atomicity.h: Remove.
711 * config/cpu/x86-64: Remove.
712
713 2002-11-01 Christian Ehrhardt <ehrhardt@mathematik.uni-ulm.de>
714
715 PR libstdc++/8197
716 * config/link-map.gnu: Export math stubbs.
717
718 2002-11-01 Benjamin Kosnik <bkoz@redhat.com>
719
720 PR libstdc++/8318
721 * include/std/std_iostream.h: Tweak.
722 * include/std/std_iosfwd.h: Add _GLIBCPP_USE_WCHAR_T.
723 * include/std/std_iomanip.h: Same.
724 * include/bits/stringfwd.h: Same.
725 * include/bits/basic_string.tcc: Same.
726 * include/bits/sstream.tcc: Same.
727 * include/bits/fstream.tcc: Same.
728 * include/bits/basic_ios.tcc: Same.
729 * include/bits/streambuf.tcc: Same.
730 * include/bits/locale_facets.tcc: Same.
731
732 2002-11-01 John Carter <john.carter@tait.co.nz>
733
734 PR libstdc++/7961
735 * include/bits/basic_string.tcc
736 (compare(const _CharT* __s)): Don't access __s past its length.
737
738 2002-10-31 Zack Weinberg <zack@codesourcery.com>
739
740 * libsupc++/eh_globals.cc: Don't call __gthread_key_dtor.
741
742 2002-10-31 Benjamin Kosnik <bkoz@redhat.com>
743
744 PR libstdc++/8348
745 * include/bits/istream.tcc (istream::tellg): Remove sentry bits.
746 (istream::seekg): Same.
747 * testsuite/27_io/istream_seeks.cc (test06): New.
748
749 2002-10-28 Jason Thorpe <thorpej@wasabisystems.com>
750
751 * testsuite/thread/pthread5.cc: Include <unistd.h>
752 if _GLIBCPP_HAVE_UNISTD_H is defined.
753 (main): Only use pthread_attr_setscope if
754 _POSIX_THREAD_PRIORITY_SCHEDULING is defined.
755
756 2002-10-28 Jason Thorpe <thorpej@wasabisystems.com>
757
758 * testsuite/thread/pthread1.cc: Enable on *-*-netbsd*.
759 * testsuite/thread/pthread2.cc: Likewise.
760 * testsuite/thread/pthread3.cc: Likewise.
761 * testsuite/thread/pthread4.cc: Likewise.
762 * testsuite/thread/pthread5.cc: Likewise.
763 * testsuite/thread/pthread6.cc: Likewise.
764
765 2002-10-27 Paolo Carlini <pcarlini@unitus.it>
766
767 PR libstdc++/8347
768 * include/bits/basic_string.tcc
769 (string::_S_construct(_InIter, _InIter, const _Alloc&,
770 forward_iterator_tag)): Do not throw logic error if
771 __beg == NULL && __end == __beg.
772 (string::string(const _CharT*, const _Alloc&)): Tweak.
773 * testsuite/21_strings/ctor_copy_dtor.cc: Add test05 from PR.
774
775 2002-10-24 Hans-Peter Nilsson <hp@bitrange.com>
776
777 PR other/3337
778 PR bootstrap/6763
779 PR bootstrap/8122
780 * testsuite/testsuite_hooks.cc (__set_testsuite_memlimit): Use
781 __typeof__ (r.rlim_cur), not rlim_t in declaration of limit.
782
783 2002-10-23 Jakub Jelinek <jakub@redhat.com>
784
785 * testsuite/22_locale/num_put_members_char.cc (test01): Swap size
786 and decimal_point arguments of find.
787 * testsuite/22_locale/num_put_members_wchar_t.cc (test01): Likewise.
788
789 2002-10-22 Jakub Jelinek <jakub@redhat.com>
790
791 * Makefile.am (check-abi, new-abi-baseline): Use @glibcpp_srcdir@
792 instead of ${top_srcdir}.
793 * Makefile.in: Rebuilt.
794
795 2002-10-22 Loren J. Rittle <ljrittle@acm.org>
796
797 * testsuite/18_support/numeric_limits.cc (test_extrema<long double>):
798 Remove specialization for FreeBSD systems.
799
800 2002-10-18 Loren J. Rittle <ljrittle@acm.org>
801
802 * configure.target (freebsd*): Use abi_baseline_triplet.
803 * config/abi/i386-unknown-freebsd4/baseline_symbols.txt: New file.
804 * config/abi/i386-unknown-freebsd4.7/baseline_symbols.txt: Remove.
805
806 * testsuite/thread/pthread1.cc: Remove needless workaround
807 for FreeBSD 5.
808
809 2002-10-18 Loren J. Rittle <ljrittle@acm.org>
810 Brad Spencer <spencer@infointeractive.com>
811 (provided alternate patch and improvements)
812
813 * docs/html/23_containers/howto.html (GLIBCPP_FORCE_NEW): Document
814 new environment variable which replaces all uses of __USE_MALLOC
815 macro.
816 * docs/html/ext/howto.html (GLIBCPP_FORCE_NEW): Likewise.
817 (__mem_interface): Remove all references to old internal typedef.
818 * include/backward/alloc.h (__USE_MALLOC): Remove it and all
819 guarded code.
820 * include/bits/c++config (__USE_MALLOC): Update related error
821 message and comment.
822 * include/bits/stl_alloc.h (__USE_MALLOC): Remove it and all
823 guarded code. Update all related comments.
824 (__mem_interface): Unconditionally replace it with __new_alloc.
825 However, leave the typedef around in case anyone used it.
826 (__default_alloc_template<>::_S_force_new): New class static.
827 (__default_alloc_template<>::allocate, deallocate): Add
828 run-time controlled feature similar to what __USE_MALLOC code
829 path had provided.
830 * src/stl-inst.cc (__USE_MALLOC): Remove it and all
831 guarded code.
832 * testsuite/21_strings/capacity.cc: Remove reference to __USE_MALLOC.
833 Add documentation on GLIBCPP_FORCE_NEW environment variable.
834 * testsuite/ext/allocators.cc: Likewise.
835
836 2002-10-18 Phil Edwards <pme@gcc.gnu.org>
837
838 * configure.in: Use target, not target_alias, when matching triplet
839 patterns.
840 * configure: Regenerate.
841
842 2002-10-17 Momchil Velikov <velco@fadata.bg>
843 Loren J. Rittle <ljrittle@acm.org>
844
845 * configure.in: Add *-freebsd* to cross list.
846 * configure: Rebuilt.
847
848 2002-10-16 Benjamin Kosnik <bkoz@redhat.com>
849
850 * include/bits/locale_facets.h (__timepunct::__timepunct): Allocate
851 _M_name_timepunct.
852 (__timepunct::~__timepunct): Deallocate, remove specialization
853 declarations.
854 (messages::messages): Allocate _M_name_messages.
855 (messages::~messages): Deallocate.
856 (messages_byname): Same.
857 * config/locale/gnu/time_members.cc (__timepunct::~__timepunct):
858 Remove.
859 * config/locale/generic/time_members.cc (__timepunct::~__timepunct):
860 Remove.
861
862 * docs/html/install.html: Add es_MX, en_PH to required locales list.
863
864 2002-10-16 Benjamin Kosnik <bkoz@redhat.com>
865
866 * config/linker-map.gnu: Add exports for codecvt constructors
867 where size_t == unsigned long.
868
869 2002-10-14 Benjamin Kosnik <bkoz@redhat.com>
870
871 * src/globals.cc (__gnu_cxx::c_locale_impl_compat): Add, alias to
872 c_locale_impl.
873 * testsuite/abi_check.cc (line_to_symbol_info): Collect size info.
874 * docs/html/abi.txt: Update.
875
876 2002-10-14 Benjamin Kosnik <bkoz@redhat.com>
877
878 * testsuite/22_locale/static_members.cc (test02): Less provincial.
879
880 2002-10-14 Benjamin Kosnik <bkoz@redhat.com>
881
882 * testsuite/22_locale/static_members.cc (test02): Disable for
883 systems without named locale support.
884 * testsuite/22_locale/ctor_copy_dtor.cc (test04): Don't assume
885 running the testsuites in "C" environment.
886 Add new tests.
887 * docs/html/22_locale/locale.html: Update.
888
889 2002-10-13 Danny Smith <dannysmith@users.sourceforge.net>
890
891 * include/bits/stl_threads.h (_GLIBCPP_mutex,
892 _GLIBCPP_mutex_init,_GLIBCPP_mutex_address,
893 _GLIBCPP_mutex_address_init, _GLIBCPP_once):
894 Declare in namespace __gnu_cxx.
895 (_STL_mutex_lock::_M_initialize): Qualify __gnu_cxx
896 names.
897 Adjust copyright.
898
899 2002-10-12 Benjamin Kosnik <bkoz@redhat.com>
900
901 * testsuite/abi_check.cc (hash<string>): Specialize.
902 Simplify. Check compatible symbol versions.
903 * config/linker-map.gnu: Clarify, explicitly export
904 std::codecvt::c* symbols.
905
906 * testsuite/22_locale/static_members.cc (test02): Avoid null strings.
907
908 2002-10-12 Jonathan Wakely <jw@kayari.org>
909 Gabriel Dos Reis <gdr@integrable-solutions.net>
910
911 * docs/html/21_strings/howto.html#5: Correct nasting of XHTML
912 elements. Correct allocator-related text.
913
914 2002-10-11 Benjamin Kosnik <bkoz@redhat.com>
915
916 * testsuite/22_locale/static_members.cc (test02): Fix.
917
918 2002-10-11 Benjamin Kosnik <bkoz@redhat.com>
919
920 * acconfig.h (_GLIBCPP_SYMVER): Add.
921 (_GLIBCPP_ASM_SYMVER): Add.
922 * acinclude.m4 (GLIBCPP_ENABLE_SYMVERS): Define _GLIBCPP_SYMVER.
923 * aclocal.m4: Regenerate.
924 * config.h.in: Regenerate.
925 * configure: Regenerate.
926 * include/bits/c++config (_GLIBCPP_AT_AT): Define, as an expedient
927 hack around m4 issues with quoting '@'.
928 * src/locale.cc: Use _GLIBCPP_ASM_SYMVER.
929 * src/globals.cc: Same.
930
931 * testsuite/22_locale/ctor_copy_dtor.cc (test04): Fix for
932 non-glibc systems.
933
934 2002-10-10 Benjamin Kosnik <bkoz@redhat.com>
935
936 * config/linker-map.gnu (GLIBCPP_3.2.1): Add.
937 (GLIBCPP_3.2): Don't export locale::_S_*.
938 * src/ios.cc: Move globals into __gnu_cxx. Make old exported
939 symbols match.
940 * src/locale.cc: Same.
941 * src/localename.cc: Same.
942 * src/globals.cc: Same.
943
944 2002-10-10 Phil Edwards <pme@gcc.gnu.org>
945
946 * docs/html/21_strings/howto.html: Write #5, char_traits.
947 * docs/html/17_intro/porting.texi: Expand on os_include_dir.
948 * docs/html/17_intro/porting.html: Regenerate.
949
950 2002-10-09 Benjamin Kosnik <bkoz@redhat.com>
951
952 * src/locale.cc: Fix comments, move ctors together.
953 * testsuite/22_locale/static_members.cc (test03): Add.
954
955 2002-10-08 Jonathan Lennox <lennox@cs.columbia.edu>
956
957 PR libstdc++/8071, libstdc++/8127, libstdc++/6745
958 * streambuf.tcc (__copy_streambufs): Handle cases where
959 __sbin->in_avail() returns 0, or where __sbin doesn't set gptr().
960 * testsuite/27_io/ostream_inserter_other.cc (test05): Add.
961
962 2002-10-08 Paolo Carlini <pcarlini@unitus.it>
963 Benjamin Kosnik <bkoz@redhat.com>
964
965 * include/bits/localefwd.h (class locale): Add static member
966 _S_num_extra_categories, encoding the number of additional
967 categories.
968 Change _S_num_categories to _S_categories_size.
969 (class locale::_Impl): Add _M_c_cats.
970 (class locale::_Impl::_M_names): Change to array of chars.
971 (class locale::_Impl::_M_check_same_name): Use
972 _S_extra_categories_size, tweak.
973 (locale::locale(const locale&, _Facet*)): Ditto.
974 * src/locale.cc (locale::locale(const char* )): Rewrite to deal
975 with the environment in a POSIX-compliant way while being thread
976 safe.
977 (locale::name()): Update to output POSIX environment strings.
978 * src/localename.cc
979 (locale::_Impl::_Impl(const _Impl&, size_t): Use
980 _S_categories_size_*, tweak.
981 (locale::_Impl::_Impl(facet**, size_t, bool)): Ditto.
982 (locale::_Impl::_Impl(const char*, size_t)): Name each category
983 individually.
984 (locale::_Impl::_M_replace_categories): Use strcpy.
985
986 * include/bits/locale_facets.h (numpunct::_M_initialize_numpunct):
987 Change default argument to NULL from _S_c_locale.
988 (timepunct::_M_initialize_timepunct): Same.
989 _S_c_locale cleanups.
990 * src/codecvt.c: _S_c_locale simplification.
991 * src/ctype.c: Same.
992 * src/globals.cc: Add fake_name.
993 * src/locale-inst.cc: Remove extra includes.
994 * src/locale.cc: Remove extra includes.
995 Add _S_extra_categories_size definition.
996 Correct "C" initialization.
997 (locale::facet::facet): Don't initialize _S_c_locale.
998 (locale::facet::_M_remove_reference): Adjust.
999 * src/localename: Use facet_vec, facet_name.
1000 (locale::_Impl::_Impl(facet** __f, size_t __refs, bool)): Set
1001 facet ref counts to one. Initialize _S_c_locale.
1002 (locale::_Impl::_M_install_facet(id*, facet*)): Adjust facet ref
1003 counts when installing unilaterally.
1004
1005 * config/locale/generic/c_locale.cc: Add _S_categories definition.
1006 * config/locale/generic/c_locale.h: Add _GLIBCPP_NUM_CATEGORIES macro.
1007 * config/locale/generic/time_members.cc: _S_c_locale cleanup.
1008
1009 * config/locale/gnu/c_locale.cc: Add _S_categories definition.
1010 (_S_destroy_c_locale): Move checks against _S_c_locale here.
1011 * config/locale/gnu/c_locale.h: Add _GLIBCPP_NUM_CATEGORIES macro.
1012 * config/locale/gnu/ctype_members.cc: Simplify _S_destroy_c_locale
1013 calls, _S_c_locale usage.
1014 * config/locale/gnu/monetary_members.cc: Same, tweaks.
1015 * config/locale/gnu/monetary_members.cc: Same.
1016 * config/locale/gnu/time_members.cc: Same.
1017 * config/os/gnu-linux/ctype_noninline.h: Use locale::classic().
1018
1019 * docs/html/22_locale/locale.html: Add bits about global locales
1020 and "C" setlocale.
1021
1022 * testsuite/22_locale/facet.cc (test02): Add.
1023 * testsuite/22_locale/static_members.cc (test02): Add.
1024 * testsuite/22_locale/ctor_copy_dtor.cc (test04): Add.
1025
1026 2002-10-07 Jonathan Wakely <jw@kayari.org>
1027
1028 * docs/html/configopts.html, docs/html/documentation.html,
1029 docs/html/explanations.html, docs/html/install.html,
1030 docs/html/17_intro/contribute.html, docs/html/17_intro/howto.html,
1031 docs/html/17_intro/license.html, docs/html/18_support/howto.html,
1032 docs/html/19_diagnostics/howto.html, docs/html/20_util/howto.html,
1033 docs/html/21_strings/howto.html, docs/html/22_locale/codecvt.html,
1034 docs/html/22_locale/ctype.html, docs/html/22_locale/howto.html,
1035 docs/html/22_locale/locale.html, docs/html/22_locale/messages.html,
1036 docs/html/23_containers/howto.html, docs/html/24_iterators/howto.html,
1037 docs/html/25_algorithms/howto.html, docs/html/26_numerics/howto.html,
1038 docs/html/27_io/howto.html, docs/html/ext/howto.html,
1039 docs/html/ext/sgiexts.html, docs/html/faq/index.html: Add DOCTYPEs.
1040
1041 2002-10-03 Richard Earnshaw <rearnsha@arm.com>
1042
1043 PR libstdc++/3584
1044 * config/cpu/arm/atomicity.h (__exchange_and_add): Don't try to use
1045 ASM sequences that don't give us atomic addition operations. Instead
1046 just add a comment explaining why it doesn't work.
1047 (__atomic_add): Just use __exchange_and_add.
1048 (__test_and_set, __always_swap): Delete.
1049
1050 2002-10-02 Andreas Jaeger <aj@suse.de>
1051
1052 * config/abi/x86_64-unknown-linux-gnu/baseline_symbols.txt:
1053 New file.
1054
1055 2002-10-01 Phil Edwards <pme@gcc.gnu.org>
1056
1057 * Makefile.am (check-abi): Add @ to rule.
1058 * Makefile.in: Regenerated.
1059
1060 2002-09-27 Paolo Carlini <pcarlini@unitus.it>
1061
1062 * include/bits/locale_facets.tcc (num_put::_M_widen_int):
1063 Deal correctly with grouped, showbased (oct or hex) zero.
1064 * testsuite/22_locale/num_put_members_char.cc: Add test05.
1065 * testsuite/22_locale/num_put_members_wchar_t.cc: Ditto.
1066
1067 2002-09-27 Richard Henderson <rth@redhat.com>
1068
1069 * config/os/hpux/cpu_limits.h: Remove.
1070
1071 * include/std/std_limits.h (numeric_limits<T>::is_iec559): False
1072 if denormals are not supported.
1073
1074 2002-09-25 Benjamin Kosnik <bkoz@redhat.com>
1075
1076 * include/Makefile.am (target_headers): Remove cpu_limits.h.
1077 * include/Makefile.in: Regenerate.
1078 * configure.in (CPU_LIMITS_INC_SRCDIR): Remove
1079 * configure: Regenerate.
1080 * configure.target (CPULIMITS): Remove.
1081
1082 * include/std/std_limits.h: Remove cpu_limits.h include.
1083
1084 * config/os/solaris/solaris2.7/os_defines.h (__glibcpp_long_bits):
1085 Remove.
1086 * config/os/irix/irix6.5/os_defines.h
1087 (__glibcpp_long_double_bits): Remove.
1088 (__glibcpp_wchar_t_bits): Remove.
1089 (__glibcpp_long_bits): Remove.
1090 * config/os/irix/irix5.2/os_defines.h
1091 (__glibcpp_long_double_bits): Remove.
1092 (__glibcpp_long_bits): Remove.
1093 * config/os/hpux/os_defines.h (__glibcpp_wchar_t_is_signed): Remove.
1094 * config/os/bsd/freebsd/os_defines.h:
1095 (__glibcpp_long_double_bits): Remove.
1096 * config/os/aix/os_defines.h (__glibcpp_wchar_t_bits): Remove.
1097 (__glibcpp_wchar_t_is_signed): Remove.
1098 (__glibcpp_long_bits): Remove.
1099 * config/os/gnu-linux/os_defines.h (__glibcpp_long_bits): Remove.
1100 (__glibcpp_long_double_bits): Remove.
1101
1102 * config/os/osf/osf5.0/cpu_limits.h: Remove.
1103 * config/cpu/alpha/cpu_limits.h: Remove.
1104 * config/cpu/arm/cpu_limits.h: Remove.
1105 * config/cpu/cris/cpu_limits.h: Remove.
1106 * config/cpu/generic/cpu_limits.h: Remove.
1107 * config/cpu/generic/limits.h: Remove.
1108 * config/cpu/ia64/cpu_limits.h: Remove.
1109 * config/cpu/m68k/cpu_limits.h: Remove.
1110 * config/cpu/mmix/cpu_limits.h: Remove.
1111 * config/cpu/powerpc/cpu_limits.h: Remove.
1112 * config/cpu/S390/cpu_limits.h: Remove.
1113
1114 2002-09-25 Peter Schmid <schmid@snake.iap.physik.tu-darmstadt.de>
1115
1116 * testsuite/18_support/numeric_limits.cc: Check the maximum and
1117 minimum values of the wchar_t type.
1118
1119 2002-09-25 Mark Mitchell <mark@codesourcery.com>
1120
1121 * include/std/std_limits.h (numeric_limits<unsigned char>::digits):
1122 Fix typo.
1123
1124 2002-09-23 Richard Henderson <rth@redhat.com>
1125
1126 * include/std/std_limits.h (__glibcpp_plain_char_is_signed,
1127 __glibcpp_wchar_t_is_signed, __glibcpp_s8_max, __glibcpp_s8_min,
1128 __glibcpp_s8_digits, __glibcpp_s8_digits10, __glibcpp_u8_min,
1129 __glibcpp_u8_max, __glibcpp_u8_digits, __glibcpp_u8_digits10,
1130 __glibcpp_s16_max, __glibcpp_s16_min, __glibcpp_s16_digits,
1131 __glibcpp_s16_digits10, __glibcpp_u16_min, __glibcpp_u16_max,
1132 __glibcpp_u16_digits, __glibcpp_u16_digits10, __glibcpp_s32_max,
1133 __glibcpp_s32_min, __glibcpp_s32_digits, __glibcpp_s32_digits10,
1134 __glibcpp_u32_min, __glibcpp_u32_max, __glibcpp_u32_digits,
1135 __glibcpp_u32_digits10, __glibcpp_s64_max, __glibcpp_s64_min,
1136 __glibcpp_s64_digits, __glibcpp_s64_digits10, __glibcpp_u64_min,
1137 __glibcpp_u64_max, __glibcpp_u64_digits, __glibcpp_u64_digits10,
1138 __glibcpp_bool_digits, __glibcpp_signed_char_min,
1139 __glibcpp_signed_char_max, __glibcpp_signed_char_digits,
1140 __glibcpp_signed_char_digits10, __glibcpp_unsigned_char_min,
1141 __glibcpp_unsigned_char_max, __glibcpp_unsigned_char_digits,
1142 __glibcpp_unsigned_char_digits10, __glibcpp_char_min,
1143 __glibcpp_char_max, __glibcpp_char_digits, __glibcpp_char_digits10,
1144 __glibcpp_signed_short_min, __glibcpp_signed_short_max,
1145 __glibcpp_signed_short_digits, __glibcpp_signed_short_digits10,
1146 __glibcpp_unsigned_short_min, __glibcpp_unsigned_short_max,
1147 __glibcpp_unsigned_short_digits, __glibcpp_unsigned_short_digits10,
1148 __glibcpp_signed_int_min, __glibcpp_signed_int_max,
1149 __glibcpp_signed_int_digits, __glibcpp_signed_int_digits10,
1150 __glibcpp_unsigned_int_min, __glibcpp_unsigned_int_max,
1151 __glibcpp_unsigned_int_digits, __glibcpp_unsigned_int_digits10,
1152 __glibcpp_signed_long_min, __glibcpp_signed_long_max,
1153 __glibcpp_unsigned_long_digits, __glibcpp_unsigned_long_digits10,
1154 __glibcpp_signed_long_long_min, __glibcpp_signed_long_long_max,
1155 __glibcpp_signed_long_long_digits, __glibcpp_signed_long_long_digits10,
1156 __glibcpp_wchar_t_min, __glibcpp_wchar_t_max, __glibcpp_wchar_t_digits,
1157 __glibcpp_wchar_t_digits10): Remove.
1158 (__glibcpp_byte, __glibcpp_word_bits, __glibcpp_word): Remove.
1159 (__float_storage, __double_storage, __long_double_storage): Remove.
1160 (__glibcpp_signed, __glibcpp_min, __glibcpp_max): New.
1161 (__glibcpp_digits, __glibcpp_digits10): New.
1162 (numeric_limits<T>::min): Use __glibcpp_min or limits.h builtins.
1163 (numeric_limits<T>::max): Use __glibcpp_max or limits.h builtins.
1164 (numeric_limits<T>::is_signed, T=char,wchar_t): Use __glibcpp_signed.
1165 (numeric_limits<T>::digits): Use __glibcpp_digits.
1166 (numeric_limits<T>::digits10): Use __glibcpp_digits10.
1167 * testsuite/18_support/numeric_limits.cc (test03): Don't use
1168 __glibcpp_s8_digits10 et al; check vs the installed versions
1169 of digits10 for particular sizes.
1170
1171 * include/std/std_limits.h (__glibcpp_float_is_modulo,
1172 __glibcpp_double_is_modulo, __glibcpp_long_double_is_modulo): Kill.
1173 (numeric_limits<T>::is_modulo, T floating): Use false.
1174
1175 2002-09-22 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
1176
1177 * Makefile.am (all-multi): Fix multilib parallel build.
1178
1179 2002-09-22 Richard Henderson <rth@redhat.com>
1180
1181 * include/std/std_limits.h (__glibcpp_f32_round_error,
1182 __glibcpp_f64_round_error, __glibcpp_f80_round_error,
1183 __glibcpp_f96_round_error, __glibcpp_f128_round_error,
1184 __glibcpp_float_round_error, __glibcpp_double_round_error,
1185 __glibcpp_long_double_round_error, __glibcpp_float_round_style,
1186 __glibcpp_double_round_style, __glibcpp_long_double_round_style): Kill.
1187 (numeric_limits<char>::epsilon, round_error): Use constant 0.
1188 (numeric_limits<float>::round_error): Use constant 0.5.
1189 (numeric_limits<float>::round_style): Use round_to_nearest.
1190 (numeric_limits<double>, numeric_limits<long double>): Similarly.
1191
1192 * include/std/std_limits.h (__glibcpp_f32_is_iec559,
1193 __glibcpp_f64_is_iec559, __glibcpp_f80_is_iec559,
1194 __glibcpp_f96_is_iec559, __glibcpp_f128_is_iec559,
1195 __glibcpp_float_is_iec559, __glibcpp_double_is_iec559,
1196 __glibcpp_long_double_is_iec559): Remove.
1197 (numeric_limits<float>::is_iec559): Use has_infinity & has_quiet_NaN.
1198 (numeric_limits<double>, numeric_limits<long double>): Similarly.
1199
1200 * include/std/std_limits.h (__glibcpp_integral_traps): New.
1201 (__glibcpp_char_traps, __glibcpp_short_traps, __glibcpp_int_traps,
1202 __glibcpp_long_traps, __glibcpp_wchar_t_traps,
1203 __glibcpp_long_long_traps, __glibcpp_plain_char_traps,
1204 __glibcpp_signed_char_traps, __glibcpp_unsigned_char_traps,
1205 __glibcpp_signed_short_traps, __glibcpp_unsigned_short_traps,
1206 __glibcpp_signed_int_traps, __glibcpp_unsigned_int_traps,
1207 __glibcpp_signed_long_traps, __glibcpp_unsigned_long_traps,
1208 __glibcpp_signed_long_long_traps, __glibcpp_unsigned_long_long_traps,
1209 __glibcpp_char_is_modulo, __glibcpp_signed_char_is_modulo,
1210 __glibcpp_signed_short_is_modulo, __glibcpp_signed_int_is_modulo,
1211 __glibcpp_signed_long_is_modulo, __glibcpp_signed_long_long_is_modulo,
1212 __glibcpp_wchar_t_is_modulo, __glibcpp_float_is_bounded,
1213 __glibcpp_double_is_bounded, __glibcpp_long_double_is_bounded): Kill.
1214 (numeric_limits<T>::traps, T integral): Use __glibcpp_integral_traps.
1215 (numeric_limits<T>::is_modulo, T integral): Use true.
1216 (numeric_limits<T>::is_bounded, T floating): Use true.
1217
1218 2002-09-18 Loren J. Rittle <ljrittle@acm.org>
1219
1220 * testsuite/18_support/numeric_limits.cc (test_epsilon): New.
1221
1222 2002-09-18 Richard Henderson <rth@redhat.com>
1223
1224 * testsuite/18_support/numeric_limits.cc: Add -mieee for alpha.
1225
1226 2002-09-16 Benjamin Kosnik <bkoz@redhat.com>
1227
1228 * include/c_shadow: Remove.
1229 * include/bits/generic_shadow.h: Remove.
1230 * include/Makefile.am: Remove generic_shadow.h.
1231 * acinclude.m4: Remove c_shadow references.
1232 * aclocal.m4: Regenerate.
1233 * configure: Regenerate.
1234 * mkcshadow: Remove.
1235 * mkinclosure: Remove.
1236
1237 2002-09-16 Loren J. Rittle <ljrittle@acm.org>
1238
1239 libstdc++/7922
1240 * include/ext/stl_rope.h (rope<>): Qualify dependent names
1241 with `typename'.
1242
1243 2002-09-16 Richard Henderson <rth@redhat.com>
1244
1245 * include/std/std_limits.h (__glibcpp_f32_QNaN_bytes,
1246 __glibcpp_f32_has_QNaN, __glibcpp_f32_SNaN_bytes,
1247 __glibcpp_f32_has_SNaN, __glibcpp_f64_QNaN_bytes,
1248 __glibcpp_f64_has_QNaN, __glibcpp_f64_SNaN_bytes,
1249 __glibcpp_f64_has_SNaN, __glibcpp_f80_QNaN_bytes,
1250 __glibcpp_f80_has_QNaN, __glibcpp_f80_SNaN_bytes,
1251 __glibcpp_f80_has_SNaN, __glibcpp_f96_QNaN_bytes,
1252 __glibcpp_f96_has_QNaN, __glibcpp_f96_SNaN_bytes,
1253 __glibcpp_f96_has_SNaN, __glibcpp_f128_QNaN_bytes,
1254 __glibcpp_f128_has_QNaN, __glibcpp_f128_SNaN_bytes,
1255 __glibcpp_f128_has_SNaN, __glibcpp_float_QNaN_bytes,
1256 __glibcpp_float_has_QNaN, __glibcpp_float_SNaN_bytes,
1257 __glibcpp_float_has_SNaN, __glibcpp_double_QNaN_bytes,
1258 __glibcpp_double_has_QNaN, __glibcpp_double_SNaN_bytes,
1259 __glibcpp_double_has_SNaN, __glibcpp_long_double_QNaN_bytes,
1260 __glibcpp_long_double_has_QNaN, __glibcpp_long_double_SNaN_bytes,
1261 __glibcpp_long_double_has_SNaN): Remove.
1262 (__glibcpp_f128_is_iec559): True if IEEE.
1263 (__glibcpp_float_QNaN, __glibcpp_float_SNaN): Remove.
1264 (__glibcpp_double_QNaN, __glibcpp_double_SNaN): Remove.
1265 (__glibcpp_long_double_QNaN, __glibcpp_long_double_SNaN): Remove.
1266 (std::numeric_limits<float>::has_quiet_NaN): Use __builtin_nanf.
1267 (std::numeric_limits<float>::has_signaling_NaN): Mirror has_quiet_NaN.
1268 (std::numeric_limits<float>::quiet_NaN): Use __builtin_nanf.
1269 (std::numeric_limits<float>::signaling_NaN): Use __builtin_nansf.
1270 (std::numeric_limits<double>): Similarly.
1271 (std::numeric_limits<long double>): Similarly.
1272 * src/limits.cc (__glibcpp_float_QNaN, __glibcpp_float_SNaN): Remove.
1273 (__glibcpp_double_QNaN, __glibcpp_double_SNaN): Remove.
1274 (__glibcpp_long_double_QNaN, __glibcpp_long_double_SNaN): Remove.
1275
1276 * testsuite/18_support/numeric_limits.cc (test_infinity): New.
1277 (test_denorm_min, test_qnan, test_is_iec559): New.
1278
1279 2002-09-16 Phil Edwards <pme@gcc.gnu.org>
1280
1281 * testsuite/abi_check.cc: Pull shell fragments out into...
1282 * config/abi/extract_symvers: ...here. New file.
1283 * Makefile.am (check_abi): Change to match.
1284 (new-abi-baseline): New target.
1285 * Makefile.in: Regenerated.
1286
1287 2002-09-16 Richard Henderson <rth@redhat.com>
1288
1289 * include/std/std_limits.h (__glibcpp_f32_denorm_min_bytes,
1290 __glibcpp_f32_has_denorm, __glibcpp_f64_denorm_min_bytes,
1291 __glibcpp_f64_has_denorm, __glibcpp_f80_denorm_min_bytes,
1292 __glibcpp_f80_has_denorm, __glibcpp_f96_denorm_min_bytes,
1293 __glibcpp_f96_has_denorm, __glibcpp_f128_denorm_min_bytes,
1294 __glibcpp_f128_has_denorm, __glibcpp_float_denorm_min_bytes,
1295 __glibcpp_float_has_denorm, __glibcpp_double_denorm_min_bytes,
1296 __glibcpp_double_has_denorm, __glibcpp_long_double_denorm_min_bytes,
1297 __glibcpp_long_double_has_denorm): Remove.
1298 (__glibcpp_float_denorm_min, __glibcpp_double_denorm_min,
1299 __glibcpp_long_double_denorm_min): Remove.
1300 (std::numeric_limits<float>::has_denorm): Use __FLT_DENORM_MIN__.
1301 (std::numeric_limits<float>::denorm_min): Likewise.
1302 (std::numeric_limits<double>): Similarly.
1303 (std::numeric_limits<long double>): Similarly.
1304 * src/limits.cc (__glibcpp_float_denorm_min,
1305 __glibcpp_double_denorm_min, __glibcpp_long_double_denorm_min): Remove.
1306
1307 2002-09-13 Andy Felt <afelt@uwsp.edu>
1308
1309 * docs/html/17_intro/howto.html: Update link.
1310
1311 2002-09-13 Phil Edwards <pme@gcc.gnu.org>
1312
1313 * docs/doxygen/run_doxygen: Massage man page for Iterator_types.3.
1314 * docs/html/faq/index.html: Whitespace fixes.
1315
1316 2002-09-12 Benjamin Kosnik <bkoz@redhat.com>
1317
1318 * libmath/Makefile.am (LIBTOOL): Use --tag CC always for this
1319 directory.
1320 * libmath/Makefile.in: Regenerate.
1321 * src/Makefile.am: Tweak comment.
1322 * src/Makefile.in: Regenerate.
1323
1324 * config/locale/gnu/c_locale.h: Remove warnings.
1325 Inject __uselocale into __gnu_cxx.
1326 * config/locale/generic/c_locale.h: Match.
1327
1328 2002-09-11 Benjamin Kosnik <bkoz@redhat.com>
1329
1330 * include/bits/locale_facets.tcc (__convert_from_v): Remove.
1331 * config/locale/gnu/c_locale.h (__convert_from_v): Add.
1332 * config/locale/generic/c_locale.h (__convert_from_v): Add.
1333
1334 2002-09-11 Paolo Carlini <pcarlini@unitus.it>
1335
1336 * include/bits/locale_facets.tcc (__convert_from_v):
1337 Use __uselocale instead of setlocale for glibc 2.3+.
1338
1339 2002-09-10 Benjamin Kosnik <bkoz@redhat.com>
1340
1341 * src/Makefile.am (sources): Edit.
1342 (target_sources): New.
1343 (target_sources_extra): New.
1344 * src/Makefile.in: Regenerate.
1345 * acinclude.m4: Set CCODECVT_CC.
1346 * aclocal.m4: Regenerate.
1347 * configure: Regenerate.
1348 * src/locale.cc: Move ctype definitions...
1349 * src/ctype.cc: ...here. New file.
1350 * src/locale.cc: Move codecvt definitions...
1351 * src/codecvt.cc: ...here.
1352 * config/generic/codecvt_members.cc: ...and here.
1353 * config/gnu/codecvt_members.cc: ...and here.
1354 * include/bits/codecvt.h: Tweak.
1355 * include/bits/locale_facets: Tweak.
1356
1357 * src/bitset.cc: Correct license text.
1358 * src/concept-inst.cc: Same.
1359 * src/strstream.cc: Same.
1360 * src/vterminate.cc: Same.
1361
1362 2002-09-10 Gabriel Dos Reis <gdr@soliton.integrable-solutions.net>
1363
1364 * include/bits/stl_vector.h (vector<>): Don't use a name with
1365 different meanings before and after re-evaluation in the completed
1366 scope.
1367 * include/bits/basic_string.h (basic_string<>): Likewise.
1368 * include/bits/stl_bvector.h (vector<bool>): Likewise.
1369 * include/bits/stl_deque.h (std): Likewise.
1370 * include/bits/stl_list.h (list<>): Likewise.
1371 * include/bits/stl_tree.h (_Rb_tree<>): Likewise.
1372
1373 2002-09-10 Paolo Carlini <pcarlini@unitus.it>
1374
1375 * include/bits/codecvt.h (class __codecvt_abstract_base):
1376 Add __c_locale type _M_c_locale_codecvt member.
1377 (class codecvt<char, char, mbstate_t>,
1378 class codecvt<wchar_t, char, mbstate_t>): Add new
1379 codecvt(__c_locale, size_t) constructor.
1380 (codecvt_byname::codecvt_byname): Update.
1381 * src/codecvt.cc (class codecvt<char, char, mbstate_t>,
1382 class codecvt<wchar_t, char, mbstate_t>): Update codecvt(size_t)
1383 constructor and ~codecvt() destructor; define
1384 codecvt(__c_locale, size_t) constructor.
1385 (codecvt::do_out): Switch to _M_c_locale_codecvt around wcsrtombs call.
1386 (codecvt::do_in): Ditto for mbsrtowcs call.
1387 * src/localename.cc (locale::_Impl::_Impl(const char*, size_t)):
1388 Tweak construction of codecvt facets.
1389
1390 2002-09-10 Danny Smith <dannysmith@users.sourceforge.net>
1391
1392 * include/bits/locale_facets.tcc (__convert_from_v):
1393 Replace strdup with ISO malloc and strcpy.
1394
1395 2002-09-09 Benjamin Kosnik <bkoz@redhat.com>
1396
1397 * docs/html/configopts.html: Change grouping. Note ABI impacts.
1398 Update information for locale model defaults.
1399 * docs/html/install.html: Update include directory
1400 information.
1401 Update testing information.
1402 Update linux issues for named locales.
1403 * docs/html/abi.txt: Fix typos.
1404 Add more info.
1405
1406 * src/misc-inst.cc: Add missing instantiations.
1407
1408 * testsuite/abi_check.cc: Make output results more verbose.
1409
1410 * config/os/gnu-linux/ctype_base.h: Remove shadow headers injections.
1411
1412 2002-09-07 Jakub Jelinek <jakub@redhat.com>
1413
1414 * config/locale/generic/messages_members.cc: Add specialization for
1415 messages<wchar_t>.
1416 * config/locale/ieee_1003.1-20021/messages_members.cc: Likewise.
1417
1418 2002-09-06 Benjamin Kosnik <bkoz@redhat.com>
1419
1420 * include/bits/localefwd.h: Tweak formatting.
1421 * docs/html/abi.txt: Add.
1422
1423 2002-09-06 Jakub Jelinek <jakub@redhat.com>
1424
1425 * configure.target: Use cpu_include_dir="config/cpu/sparc" for all
1426 sparc targets.
1427 * config/cpu/sparc/atomicity.h: New file.
1428 * config/cpu/sparc/sparc32/atomicity.h: Removed.
1429 * config/cpu/sparc/sparc64/atomicity.h: Removed.
1430
1431 2002-09-06 Jakub Jelinek <jakub@redhat.com>
1432
1433 * config/os/gnu-linux/ctype_noninline.h
1434 [_GLIBCPP_USE_SHADOW_HEADERS]: Remove using _C_legacy::__ctype_*.
1435 (ctype<char>::classic_table): If _GLIBCPP_C_LOCALE_GNU, return
1436 _S_c_locale->__ctype_b, otherwise temporarily switch to "C" locale
1437 and return __ctype_b.
1438 (ctype<char>::ctype(__c_locale, const mask*, bool, size_t)): If not
1439 _GLIBCPP_C_LOCALE_GNU, temporarily switch to "C" locale and
1440 initialize using __ctype_{b,tolower,toupper}.
1441 (ctype<char>::ctype(const mask*, bool, size_t)): If
1442 _GLIBCPP_C_LOCALE_GNU, initialize using
1443 _S_c_locale->__ctype_{b,tolower,toupper}, otherwise temporarily
1444 switch to "C" locale and initialize using __ctype_{b,tolower,toupper}.
1445
1446 2002-09-05 Paolo Carlini <pcarlini@unitus.it>
1447 Roland McGrath <roland@redhat.com>
1448
1449 PR libstdc++/7811
1450 * src/locale.cc (locale::locale(__s)): Use getenv instead
1451 of setenv for the environment locale.
1452 * testsuite/22_locale/ctor_copy_dtor.cc (test03): New.
1453
1454 2002-09-05 Jakub Jelinek <jakub@redhat.com>
1455
1456 * config/abi/ia64-unknown-linux-gnu: Add.
1457 * config/abi/ia64-unknown-linux-gnu/baseline_symbols.txt: New file.
1458 * config/abi/alphaev67-unknown-linux-gnu: Add.
1459 * config/abi/alphaev67-unknown-linux-gnu/baseline_symbols.txt: New file.
1460
1461 2002-09-05 Jonathan Wakely <jw@kayari.org>
1462
1463 * docs/html/Makefile: Use more portable shell wildcard.
1464 * docs/html/makedoc.awk: Nest elements correctly for XHTML conversion.
1465 * docs/html/configopts.html, docs/html/documentation.html,
1466 docs/html/explanations.html, docs/html/install.html,
1467 docs/html/17_intro/contribute.html, docs/html/17_intro/howto.html,
1468 docs/html/17_intro/license.html, docs/html/18_support/howto.html,
1469 docs/html/19_diagnostics/howto.html, docs/html/20_util/howto.html,
1470 docs/html/21_strings/howto.html, docs/html/22_locale/codecvt.html,
1471 docs/html/22_locale/ctype.html, docs/html/22_locale/howto.html,
1472 docs/html/22_locale/locale.html, docs/html/22_locale/messages.html,
1473 docs/html/23_containers/howto.html, docs/html/24_iterators/howto.html,
1474 docs/html/25_algorithms/howto.html, docs/html/26_numerics/howto.html,
1475 docs/html/27_io/howto.html, docs/html/ext/howto.html,
1476 docs/html/ext/sgiexts.html, docs/html/faq/index.html: Convert
1477 to XHTML.
1478 * docs/html/faq/index.txt: Regenerate.
1479
1480 2002-09-05 Jakub Jelinek <jakub@redhat.com>
1481
1482 * config/locale/gnu/ctype_members.cc (ctype<wchar_t>::do_widen(char)):
1483 Switch to _M_c_locale_ctype around btowc call.
1484 (ctype<wchar_t>::do_widen(const char*, const char *, wchar_t*)):
1485 Switch to _M_c_locale_ctype around mbsrtowcs call.
1486 (ctype<wchar_t>::do_narrow(char)): Switch to _M_c_locale_ctype around
1487 wctob call.
1488 (ctype<wchar_t>::do_narrow(const char*, const char *, wchar_t*)):
1489 Switch to _M_c_locale_ctype around wcsrtombs call.
1490
1491 2002-09-05 Jakub Jelinek <jakub@redhat.com>
1492
1493 * config/locale/gnu/monetary_members.cc
1494 (moneypunct<wchar_t, true>::_M_initialize_moneypunct,
1495 moneypunct<wchar_t, false>::_M_initialize_moneypunct): Use
1496 __uselocale instead of setlocale for glibc 2.3.
1497
1498 2002-09-05 Jakub Jelinek <jakub@redhat.com>
1499
1500 * config/locale/generic/c++locale_internal.h: New header.
1501 * config/locale/gnu/c++locale_internal.h: New header.
1502 * config/locale/gnu/c_locale.cc: Include it.
1503 * config/locale/gnu/collate_members.cc: Include it.
1504 * config/locale/gnu/ctype_members.cc: Include it.
1505 * config/locale/gnu/messages_members.cc: Include it.
1506 * config/locale/gnu/monetary_members.cc: Include it.
1507 * config/locale/gnu/numeric_members.cc: Include it.
1508 * config/locale/gnu/time_members.cc: Include it.
1509 (_M_put): Reorder __strftime_l and __wcsftime_l arguments to match
1510 glibc.
1511 (_M_initialize_timepunct): Initialize _M_c_locale_timepunct for
1512 C locale.
1513 * acinclude.m4: Include string.h when testing strcoll_l.
1514 For glibc 2.3 provide __-prefixed prototypes.
1515 (CLOCALE_INTERNAL_H): Set, add AC_LINK_FILES line.
1516 * aclocal.m4, configure: Rebuilt.
1517
1518 2002-09-05 Benjamin Kosnik <bkoz@redhat.com>
1519
1520 * include/bits/locale_facets.h: Add declaration of specialization
1521 here.
1522 * config/locale/gnu/messages_members.cc: Add specialization for
1523 messages<wchar_t>.
1524 * config/locale/gnu/messages_members.h: Remove generic definition
1525 of do_get.
1526
1527 2002-09-04 Richard Henderson <rth@redhat.com>
1528
1529 * include/std/std_limits.h (__glibcpp_f32_infinity_bytes,
1530 __glibcpp_f32_has_infinity, __glibcpp_f64_infinity_bytes,
1531 __glibcpp_f64_has_infinity, __glibcpp_f80_infinity_bytes,
1532 __glibcpp_f80_has_infinity, __glibcpp_f96_infinity_bytes,
1533 __glibcpp_f96_has_infinity, __glibcpp_f128_infinity_bytes,
1534 __glibcpp_f128_has_infinity, __glibcpp_float_infinity_bytes,
1535 __glibcpp_float_has_infinity, __glibcpp_double_infinity_bytes,
1536 __glibcpp_double_has_infinity, __glibcpp_long_double_infinity_bytes,
1537 __glibcpp_long_double_has_infinity): Remove.
1538 (std::numeric_limits<float>, std::numeric_limits<double>,
1539 std::numeric_limits<long double>): Use __builtin_huge_val
1540 to implement has_infinity and infinity().
1541 * src/limits.cc (__glibcpp_float_infinity, __glibcpp_double_infinity,
1542 __glibcpp_long_double_infinity): Remove.
1543
1544 2002-09-03 Richard Henderson <rth@redhat.com>
1545
1546 * include/std/std_limits.h (__glibcpp_f32_min, __glibcpp_f32_max,
1547 __glibcpp_f32_digits, __glibcpp_f32_digits10, __glibcpp_f32_radix,
1548 __glibcpp_f32_epsilon, __glibcpp_f32_min_exponent,
1549 __glibcpp_f32_min_exponent10, __glibcpp_f32_max_exponent,
1550 __glibcpp_f32_max_exponent10, __glibcpp_f64_min, __glibcpp_f64_max,
1551 __glibcpp_f64_digits, __glibcpp_f64_digits10, __glibcpp_f64_radix,
1552 __glibcpp_f64_min_exponent, __glibcpp_f64_min_exponent10,
1553 __glibcpp_f64_max_exponent, __glibcpp_f64_max_exponent10,
1554 __glibcpp_f80_min, __glibcpp_f80_max, __glibcpp_f80_digits,
1555 __glibcpp_f80_digits10, __glibcpp_f80_radix, __glibcpp_f80_epsilon,
1556 __glibcpp_f80_min_exponent, __glibcpp_f80_min_exponent10,
1557 __glibcpp_f80_max_exponent, __glibcpp_f80_max_exponent10,
1558 __glibcpp_f96_min, __glibcpp_f96_max, __glibcpp_f96_digits,
1559 __glibcpp_f96_digits10, __glibcpp_f96_radix, __glibcpp_f96_epsilon,
1560 __glibcpp_f96_min_exponent, __glibcpp_f96_min_exponent10,
1561 __glibcpp_f96_max_exponent, __glibcpp_f96_max_exponent10,
1562 __glibcpp_f128_min, __glibcpp_f128_max, __glibcpp_f128_digits,
1563 __glibcpp_f128_digits10, __glibcpp_f128_radix, __glibcpp_f128_epsilon,
1564 __glibcpp_f128_min_exponent, __glibcpp_f128_min_exponent10,
1565 __glibcpp_f128_max_exponent, __glibcpp_f128_max_exponent10,
1566 __glibcpp_float_min, __glibcpp_float_max, __glibcpp_float_digits,
1567 __glibcpp_float_digits10, __glibcpp_float_radix,
1568 __glibcpp_float_epsilon, __glibcpp_float_min_exponent,
1569 __glibcpp_float_min_exponent10, __glibcpp_float_max_exponent,
1570 __glibcpp_float_max_exponent10, __glibcpp_double_min,
1571 __glibcpp_double_max, __glibcpp_double_digits,
1572 __glibcpp_double_digits10, __glibcpp_double_radix,
1573 __glibcpp_double_epsilon, __glibcpp_double_min_exponent,
1574 __glibcpp_double_min_exponent10, __glibcpp_double_max_exponent,
1575 __glibcpp_double_max_exponent10, __glibcpp_long_double_min,
1576 __glibcpp_long_double_max, __glibcpp_long_double_digits,
1577 __glibcpp_long_double_digits10, __glibcpp_long_double_radix,
1578 __glibcpp_long_double_epsilon, __glibcpp_long_double_min_exponent,
1579 __glibcpp_long_double_min_exponent10,
1580 __glibcpp_long_double_max_exponent,
1581 __glibcpp_long_double_max_exponent10): Remove macros.
1582 (std::numeric_limits<float>, std::numeric_limits<double>,
1583 std::numeric_limits<long double>): Use protected float.h macros.
1584
1585 2002-09-01 Phil Edwards <pme@gcc.gnu.org>
1586
1587 * testsuite/Makefile.am: Use LD_RUN_PATH when linking abi_check.
1588 Fix spelling in comment.
1589 * testsuite/Makefile.in: Regenerate.
1590 * testsuite/abi_check.cc: Use string literals to build 'cmd' rather
1591 than 'quote' and 'bslash'.
1592
1593 2002-08-31 Phil Edwards <pme@gcc.gnu.org>
1594
1595 * acinclude.m4: Minor comment tweaks.
1596
1597 * docs/html/makedoc.awk: New file...
1598 * docs/html/Makefile: ...called from here...
1599 * docs/html/documentation.html: ...to help generate this.
1600
1601 * docs/html/21_strings/howto.html: Prepare for new entry.
1602 * include/bits/basic_string.h: Initial basic_stirng hook for
1603 doxygen. Remove trailing whitespace.
1604 * include/bits/char_traits.h: Point to onlinedocs for new entry.
1605 * include/bits/stringfwd.h: Add doxygen hooks for string and
1606 wstring typedefs.
1607
1608 2002-08-29 Richard Earnshaw <rearnshaw@arm.com>
1609
1610 * config/cpu/arm/cpu_limits.h: New file.
1611 * configure.target: Use config/cpu/arm for XScale and StrongARM
1612 configurations.
1613
1614 2002-08-28 Gabriel Dos Reis <gdr@integrable-solutions.net>
1615
1616 * include/std/std_limits.h (__glibcpp_char_bits,
1617 __glibcpp_short_bits, __glibcpp_int_bits, __glibcpp_long_bits,
1618 __glibcpp_long_long_bits, __glibcpp_float_bits,
1619 __glibcpp_double_bits, __glibcpp_long_double_bits): Remove. Use
1620 compiler predifined macros.
1621 (__glibcpp_wchar_t_is_signed): Define based on compiler predefined
1622 __WCHAR_UNSIGNED__.
1623
1624 2002-08-27 Gabriel Dos Reis <gdr@integrable-solutions.net>
1625
1626 * include/std/std_limits.h (__glibcpp_f32_infinity_bytes,
1627 __glibcpp_f32_has_infinity, __glibcpp_f32_QNaN_bytes,
1628 __glibcpp_f32_has_QNaN, __glibcpp_f32_SNaN_bytes,
1629 __glibcpp_f32_has_SNaN, __glibcpp_f32_denorm_min_bytes,
1630 __glibcpp_f32_has_denorm, __glibcpp_f32_is_iec559,
1631 __glibcpp_f64_infinity_bytes,
1632 __glibcpp_f64_has_infinity, __glibcpp_f64_QNaN_bytes,
1633 __glibcpp_f64_has_QNaN, __glibcpp_f64_SNaN_bytes,
1634 __glibcpp_f64_has_SNaN, __glibcpp_f64_denorm_min_bytes,
1635 __glibcpp_f64_has_denorm, __glibcpp_f64_is_iec559,
1636 __glibcpp_f80_infinity_bytes,
1637 __glibcpp_f80_has_infinity, __glibcpp_f80_QNaN_bytes,
1638 __glibcpp_f80_has_QNaN, __glibcpp_f80_SNaN_bytes,
1639 __glibcpp_f80_has_SNaN, __glibcpp_f80_denorm_min_bytes,
1640 __glibcpp_f80_has_denorm, __glibcpp_f80_is_iec559,
1641 __glibcpp_f96_infinity_bytes,
1642 __glibcpp_f96_has_infinity, __glibcpp_f96_QNaN_bytes,
1643 __glibcpp_f96_has_QNaN, __glibcpp_f96_SNaN_bytes,
1644 __glibcpp_f96_has_SNaN, __glibcpp_f96_denorm_min_bytes,
1645 __glibcpp_f96_has_denorm, __glibcpp_f96_is_iec559,
1646 __glibcpp_f128_infinity_bytes,
1647 __glibcpp_f128_has_infinity, __glibcpp_f128_QNaN_bytes,
1648 __glibcpp_f128_has_QNaN, __glibcpp_f128_SNaN_bytes,
1649 __glibcpp_f128_has_SNaN, __glibcpp_f128_denorm_min_bytes,
1650 __glibcpp_f128_has_denorm, __glibcpp_f128_is_iec559,
1651 __glibcpp_float_infinity_bytes,
1652 __glibcpp_float_has_infinity, __glibcpp_float_QNaN_bytes,
1653 __glibcpp_float_has_QNaN, __glibcpp_float_SNaN_bytes,
1654 __glibcpp_float_has_SNaN, __glibcpp_float_denorm_min_bytes,
1655 __glibcpp_float_has_denorm, __glibcpp_float_is_iec559,
1656 __glibcpp_double_infinity_bytes,
1657 __glibcpp_double_has_infinity, __glibcpp_double_QNaN_bytes,
1658 __glibcpp_double_has_QNaN, __glibcpp_double_SNaN_bytes,
1659 __glibcpp_double_has_SNaN, __glibcpp_double_denorm_min_bytes,
1660 __glibcpp_double_has_denorm, __glibcpp_double_is_iec559,
1661 __glibcpp_long_double_infinity_bytes,
1662 __glibcpp_long_double_has_infinity, __glibcpp_long_double_QNaN_bytes,
1663 __glibcpp_long_double_has_QNaN, __glibcpp_long_double_SNaN_bytes,
1664 __glibcpp_long_double_has_SNaN, __glibcpp_long_double_denorm_min_bytes,
1665 __glibcpp_long_double_has_denorm, __glibcpp_long_double_is_iec559:
1666 New macros.
1667 (__glibcpp_word_bits, __glibcpp_word): Likewise.
1668 (__glibcpp_byte): New typedef.
1669 (__float_storage, __double_storage, __long_double_storage): New types.
1670 (__glibcpp_float_infinity, __glibcpp_float_QNaN,
1671 __glibcpp_float_SNaN, __glibcpp_float_denorm_min): Now
1672 objects. Declare.
1673 (__glibcpp_double_infinity, __glibcpp_double_QNaN,
1674 __glibcpp_double_SNaN, __glibcpp_double_denorm_min): Likewise.
1675 (__glibcpp_long_double_infinity, __glibcpp_long_double_QNaN,
1676 __glibcpp_long_double_SNaN, __glibcpp_long_double_denorm_min):
1677 Likewise.
1678
1679 * src/limits.cc (__glibcpp_float_infinity, __glibcpp_float_QNaN,
1680 __glibcpp_float_SNaN, __glibcpp_float_denorm_min): Define.
1681 (__glibcpp_double_infinity, __glibcpp_double_QNaN,
1682 __glibcpp_double_SNaN, __glibcpp_double_denorm_min): Likewise.
1683 (__glibcpp_long_double_infinity, __glibcpp_long_double_QNaN,
1684 __glibcpp_long_double_SNaN, __glibcpp_long_double_denorm_min):
1685 Likewise.
1686
1687 2002-08-25 Gabriel Dos Reis <gdr@integrable-solutions.net>
1688
1689 * include/std/std_limits.h: Indent conditional macro definitions.
1690
1691 2002-08-23 Phil Edwards <pme@gcc.gnu.org>
1692
1693 * Makefile.am (check-abi): Specify current directory.
1694 * acinclude.m4 (GLIBCPP_CONFIGURE_TESTSUITE): Fix shell syntax, use
1695 abi_baseline_triplet in baseline_file.
1696 * Makefile.in, aclocal.m4, configure: Regenerate.
1697 * configure.target: Add abi_baseline_triplet with default.
1698 * testsuite/abi_check.cc: More error checking.
1699
1700 2002-08-23 Phil Edwards <pme@gcc.gnu.org>
1701
1702 * config/linker-map.gnu: Verbose comments, clean up spacing.
1703 * include/bits/stl_alloc.h: Fix indentation of 'if' bodies, return
1704 statements.
1705 __allocator: Change class declaration to struct.
1706 * docs/html/17_intro/C++STYLE: Fix typo.
1707 * include/bits/stl_deque.h, include/bits/stl_list.h,
1708 include/bits/stl_map.h, include/bits/stl_multimap.h,
1709 include/bits/stl_vector.h: Fix fallout from typo.
1710
1711 2002-08-22 Benjamin Kosnik <bkoz@redhat.com>
1712
1713 * acinclude.m4 (GLIBCPP_CONFIGURE_TESTSUITE): Set
1714 GLIBCPP_BUILD_ABI_CHECK based on cross compiling, build, host
1715 variables.
1716 * aclocal.m4: Regenerate.
1717 * testsuite/Makefile.am (noinst_PROGRAMS): Make conditional on
1718 native compiling.
1719 * testsuite/Makefile.in: Regenerate.
1720
1721 2002-08-22 Loren J. Rittle <ljrittle@acm.org>
1722
1723 * testsuite/abi_check.cc: Enhance shell portability.
1724 Support older binutils/readelf.
1725 * config/abi/i386-unknown-freebsd4.6: Add.
1726 * config/abi/i386-unknown-freebsd4.6/baseline_symbols.txt: New file.
1727
1728 2002-08-22 Paolo Carlini <pcarlini@unitus.it>
1729
1730 * docs/html/faq/index.html: Add Loren James Rittle and
1731 Paolo Carlini to the list of v3 maintainers.
1732 * docs/html/faq/index.txt: Ditto.
1733 * docs/html/17_intro/RELEASE-NOTES: Ditto.
1734
1735 2002-08-22 Benjamin Kosnik <bkoz@redhat.com>
1736 Phil Edwards <pme@gcc.gnu.org>
1737 Ulrich Drepper <drepper@redhat.com>
1738
1739 * Makefile.am (check-abi): New rule.
1740 * Makefile.in: Regenerate.
1741 * acinclude.m4 (GLIBCPP_CONFIGURE_TESTSUITE): Export baseline_file.
1742 * aclocal.m4: Regenerate.
1743 * configure: Regenerate.
1744 * testsuite/Makefile.am (noinst_PROGRAMS): Add abi_check.
1745 (abi_check_SOURCES): Add.
1746 * testsuite/Makefile.in: Regenerate.
1747 * testsuite/abi_check.cc: New file.
1748 * config/abi: Add.
1749 * config/abi/i686-pc-linux-gnu: Add.
1750 * config/abi/i686-pc-linux-gnu/baseline_symbols.txt: New file.
1751
1752 2002-08-19 Benjamin Kosnik <bkoz@redhat.com>
1753
1754 * configure.in (libtool_VERSION): Update to 5:1:0.
1755 * configure: Regenerate.
1756
1757 2002-08-19 Jonathan Wakely <jw@kayari.org>
1758
1759 * docs/html/configopts.html, docs/html/documentation.html,
1760 docs/html/install.html, docs/html/22_locale/codecvt.html,
1761 docs/html/22_locale/ctype.html, docs/html/22_locale/howto.html,
1762 docs/html/22_locale/locale.html,
1763 docs/html/22_locale/messages.html: Conform to HTML 4.01 standard.
1764
1765 2002-08-15 Benjamin Kosnik <bkoz@redhat.com>
1766
1767 * include/ext/stdio_filebuf.h (stdio_filebuf): Explicitly set
1768 _M_buf_size_opt to zero when unbuffering.
1769 * include/bits/fstream.tcc (filebuf::showmanyc): Simplify.
1770 Consistency checks for _M_buf_size_opt.
1771
1772 Revert PR libstdc++/7445
1773 * src/locale.cc (locale::classic): Revert.
1774
1775 * docs/html/17_intro/TODO: Add.
1776
1777 2002-08-15 Phil Edwards <pme@gcc.gnu.org>
1778
1779 * docs/html/documentation.html: Update doxygen links for 3.2.
1780
1781 2002-08-15 Steve Ellcey <sje@cup.hp.com>
1782
1783 * libsupc++/unwind-cxx.h (__cxa_exception): Change catchTemp
1784 type from void* to _Unwind_Ptr.
1785 * libsupc++/eh_personality.cc (PERSONALITY_FUNCTION):
1786 Do not cast landing_pad or base_of_encoded_value to (void *).
1787 * libsupc++/eh_throw.cc (__gxx_exception_cleanup):
1788 Accept _URC_NO_REASON as a valid reason code.
1789
1790 2002-08-14 Jonathan Wakely <jw@kayari.org>
1791
1792 * docs/html/22_locale/messages.html: Use HTML entities for
1793 punctuation.
1794
1795 2002-08-13 Jonathan Wakely <jw@kayari.org>
1796 Phil Edwards <pme@gcc.gnu.org>
1797
1798 * docs/html/documentation.html: Use HTML entities for punctuation.
1799
1800 2002-08-09 Phil Edwards <pme@gcc.gnu.org>
1801
1802 * include/bits/deque.tcc, include/bits/list.tcc,
1803 include/bits/stl_deque.h, include/bits/stl_iterator_base_funcs.h,
1804 include/bits/stl_list.h, include/bits/stl_map.h,
1805 include/bits/stl_multimap.h, include/bits/stl_queue.h,
1806 include/bits/stl_stack.h, include/bits/stl_vector.h,
1807 include/bits/vector.tcc: Re-indent contents of namespace std,
1808 re-wrap comment lines as necessary.
1809
1810 2002-08-08 Danny Smith <dannysmith@users.sourceforge.net>
1811 Benjamin Kosnik <bkoz@redhat.com>
1812
1813 * include/bits/istream.tcc (basic_istream::ignore): Use sbumpc,
1814 not snextc.
1815 * testsuite/27_io/narrow_stream_objects.cc (test10): Add.
1816
1817 2002-08-07 John David Anglin <dave@hiauly1.hia.nrc.ca>
1818
1819 * libsupc++/Makefile.am (LTCOMPILE): Add LIBSUPCXX_PICFLAGS.
1820 * libsupc++/Makefile.in: Regenerate.
1821
1822 2002-08-05 Gabriel Dos Reis <gdr@nerim.net>
1823
1824 PR/7491
1825 * include/bits/slice_array.h(_DEFINE_VALARRAY_OPERATOR):
1826 Instantiate with new function objects.
1827 * include/bits/mask_array.h (_DEFINE_VALARRAY_OPERATOR): Likewise.
1828 Reformat. Uglify.
1829 * include/bits/gslice_array.h: Likewise.
1830 * include/bits/indirect_array.h: Likewise.
1831
1832 2002-08-03 Gabriel Dos Reis <gdr@nerim.net>
1833
1834 * testsuite/26_numerics/valarray_name_lookup.cc: Rename from
1835 testsuite/26_numerics/valarray_name_lookup.C
1836
1837 * include/bits/valarray_array.h (_DEFINE_ARRAY_FUNCTION): Use our
1838 object function surrogates.
1839 * include/bits/valarray_meta.h (__shift_left): Fix typo.
1840 (_BinFunClos<>): Remove.
1841 (_BinFunBase<>): Likewise.
1842 (_BinFunBase1<>):Likewise.
1843 (_BinFunBase2<>): Likewise.
1844 (_DEFINE_EXPR_RELATIONAL_OPERATOR): Likewise.
1845 (_DEFINE_EXPR_UNARY_OPERATOR): Adjust definition.
1846 (_DEFINE_EXPR_BINARY_OPERATOR): Likewise.
1847 (_DEFINE_EXPR_BINARY_FUNCTION): Likewise.
1848 * include/std/std_valarray.h: Dont #include <functional> anymore.
1849 (_Bitwise_or<>, _Bitwise_and<>, _Bitwise_xor<>, _Shift_left<>,
1850 _Shift_right<>): Remove.
1851 (_DEFINE_VALARRAY_AUGMENTED_ASSIGNMENT): Adjust instantiation.
1852 (_DEFINE_BINARY_OPERATOR): Tweak definition.
1853 (_DEFINE_LOGICAL_OPERATOR): Remove.
1854 * testsuite/26_numerics/valarray_name_lookup.C (main): Add more tests.
1855
1856 2002-08-02 Gabriel Dos Reis <gdr@nerim.net>
1857
1858 * include/bits/valarray_meta.h (_UnFunBase<>): Remove.
1859 (_UnFunClos<>): Same.
1860 (_UnBase<>): Reformat. Make first template-parameter non
1861 template.
1862 (_UnClos<>): Likewise.
1863 (_Expr<>): Reformate. Adjust unary member operator return types.
1864 (_DEFINE_EXPR_UNARY_OPERATOR): Adjust definition.
1865 (_DEFINE_EXPR_UNARY_FUNCTION): Likewise.
1866 * include/std/std_valarray.h (_UnClos<>): Adjust declaration.
1867 (valarray<>::_UnaryOp<>): New nested traits. Adjust unary member
1868 operator return types. Reformat.
1869 (_Bitwise_not): Remove.
1870 (_DEFINE_VALARRAY_UNARY_OPERATOR): Adjust definition.
1871 * testsuite/26_numerics/valarray_name_lookup.C: New test.
1872
1873 2002-08-02 Danny Smith <dannysmith@users.sourceforge.net>
1874
1875 * config/os/newlib/ctype_inline.h (is): Don't offset _M_table.
1876 (scan_is): Use this->is.
1877 (scan_not): Likewise.
1878
1879 2002-08-02 Benjamin Kosnik <bkoz@redhat.com>
1880
1881 Revert PR libstdc++/6594
1882 * src/strstream.cc (strstreambuf): Revert.
1883 (strstreambuf::overflow): Same.
1884 (strstreambuf::~strstreambuf): Same.
1885 * testsuite/backward/strstream_members.cc (test02): Add.
1886
1887 * docs/html/abi.txt: Update. Spell check.
1888
1889 * testsuite/19_diagnostics/stdexceptions.cc (test04): Add bool test.
1890
1891 * testsuite/Makefile.am (INCLUDES): Add LIBSUPCXX_INCLUDES.
1892 * testsuite/Makefile.in: Regenerate.
1893 * testsuite/testsuite_hooks.h: Use __throw_exception_again,
1894 include functexcept.h so that -fno-exceptions will build.
1895
1896 2002-08-02 Gabriel Dos Reis <gdr@nerim.net>
1897
1898 * include/bits/valarray_meta.h (__unary_plus, __negate,
1899 __bitwise_not, __plus, __minus, __multiplies, __divides,
1900 __modulus, __bitwise_xor, __bitwise_or, __bitwise_and,
1901 __shift_left, __shift_right, __logical_and, __logical_or,
1902 __logical_not, __equal_to, __not_equal_to, __less, __less_equal,
1903 __greater_equal, __greater, __atan2, __pow): New function object
1904 classes.
1905 (__fun<>): New function traits class.
1906
1907 2002-08-01 Rick Danos <rdanos@hotmail.com>
1908
1909 PR libstdc++/7461
1910 * config/os/newlib/ctype_noninline.h (classic_table): Add offset.
1911 * config/os/newlib/ctype_inline.h (is): Use static_cast.
1912
1913 2002-08-01 Neil Booth <neil@daikokuya.co.uk>
1914
1915 * libsupc++/Makefile.am (LT_COMPILE): Remove C++ flags.
1916 * libsupc++/Makefile.in: Regenerate.
1917
1918 2002-08-01 Benjamin Kosnik <bkoz@redhat.com>
1919 Jakub Jelinek <jakub@redhat.com>
1920
1921 * config/linker-map.gnu: Change CXXABI_1 to CXXABI_1.2,
1922 GLIBCPP_3.1 to GLIBCPP_3.2.
1923
1924 2002-07-31 Benjamin Kosnik <bkoz@redhat.com>
1925 Mark Mitchell <mark@codesourcery.com>
1926
1927 PR libstdc++/7442
1928 * libsupc++/cxxabi.h (class __base_class_type_info::hwm_bit):
1929 Change to __hwm_bit.
1930 (__class_type_info): And here.
1931
1932 2002-07-31 Benjamin Kosnik <bkoz@redhat.com>
1933
1934 PR libstdc++/7442
1935 * libsupc++/cxxabi.h
1936 (__base_class_info): Change to __base_class_type_info. 2.9.5p6c
1937 (__base_class_info::__base): Change to __base_type. 2.9.5p6c
1938 (__base_class_info::offset_shift): Change to __offset_shift. 2.9.5p6c
1939 (__vmi_class_type_info::__base_info): Don't make const, of type
1940 __base_class_type_info, as per 2.9.5p6c
1941 (__pbase_type_info::__qualifier_flags): Change to __flags, as per
1942 2.9.5p7.
1943 (__pbase_type_info::__qualifier_masks): Change to __masks, as per
1944 2.9.5p7.
1945 (__pointer_to_member_type_info::__context_class): Change member to
1946 __context, as per 2.9.5p9.
1947 * libsupc++/tinfo2.cc (__pointer_catch): Change __context_class to
1948 __context.
1949 * libsupc++/tinfo2.cc (__do_catch): Change __qualifier_flags to
1950 __flags.
1951 * libsupc++/tinfo.cc (__do_find_public_src): Change __base to
1952 __base_type.
1953 * libsupc++/tinfo.cc (__do_dyncast): Same.
1954 * libsupc++/tinfo.cc (__do_upcast): Same.
1955
1956 2002-07-31 Benjamin Kosnik <bkoz@redhat.com>
1957
1958 * src/fstream.cc: Add _GLIBCPP_USE_WCHAR_T guards.
1959
1960 2002-07-31 Simon Whomsley <whomsley@avacadcam.com>
1961
1962 * docs/html/22_locale/howto.html: Fix.
1963
1964 2002-07-31 Alex Kompel <shurik@sequoiap.com>
1965
1966 PR libstdc++/7445
1967 * src/locale.cc (locale::classic): Move locks inside !_S_classic
1968 block.
1969
1970 2002-07-31 Benjamin Kosnik <bkoz@redhat.com>
1971
1972 * docs/html/abi.txt: Update.
1973
1974 2002-07-30 Benjamin Kosnik <bkoz@redhat.com>
1975 Gabriel Dos Reis <gdr@nerim.net>
1976
1977 * include/bits/char_traits.h: Remove generic definitions.
1978 * include/bits/streambuf_iterator.h (istreambuf_iterator): Use
1979 eof, not -2.
1980 * include/bits/istream.tcc (istream::readsome): Don't check
1981 against eof, instead use constants.
1982 (istream::sync): Same.
1983 (istream::sentry::sentry): Use eq_int_type.
1984 (istream::get): Same.
1985 * include/bits/ostream.tcc: Change __pad to
1986 __pad<_CharT, _Traits>::_S_pad.
1987 * include/bits/locale_facets.h: Add __pad_traits generic and
1988 ostreambuf_iterator specialization.
1989 * include/bits/locale_facets.tcc: Change __pad into struct __pad
1990 with a _CharT and _Traits template parameter and _S_pad static
1991 member function.
1992 * src/locale-inst.cc: Update __pad instantiations.
1993
1994 * include/std/std_fstream.h: Declare _M_underflow_common
1995 specializations.
1996 * src/fstream.cc: New. Add _M_underflow_common specializations.
1997 * include/bits/fstream.tcc (filebuf::close): Use traits_type.
1998 (filebuf::_M_underflow_common(bool)): Remove generic version, as
1999 sys_ungetc and custom int_types don't get along.
2000 * include/std/std_streambuf.h: Add _M_pos.
2001 * src/Makefile.am (sources): Add fstream.cc.
2002 * src/Makefile.in: Regenerate.
2003
2004 * testsuite/21_strings/capacity.cc: Add char_traits specializations.
2005 * testsuite/22_locale/codecvt_members_unicode_char.cc: Same.
2006 * testsuite/22_locale/codecvt_members_unicode_wchar_t.cc: Same.
2007 * testsuite/22_locale/ctor_copy_dtor.cc: Same.
2008 * testsuite/27_io/filebuf_virtuals.cc (test07): Move to...
2009 * testsuite/27_io/filebuf.cc: ...here.
2010 * testsuite/testsuite_hooks.h: Add gnu_char, gnu_int, char_traits
2011 specialization for both.
2012 * testsuite/27_io/streambuf.cc: Add instantiation test,
2013 testsuite_hooks include.
2014 * testsuite/27_io/istream.cc: Same.
2015 * testsuite/27_io/ostream.cc: Same.
2016 * testsuite/27_io/fstream.cc: Same.
2017 * testsuite/27_io/stringstream.cc: Same.
2018 * testsuite/27_io/filebuf.cc: Same.
2019 * testsuite/27_io/stringbuf.cc: Same.
2020
2021 2002-07-29 Alan Modra <amodra@bigpond.net.au>
2022
2023 * config/cpu/powerpc/cpu_limits.h (__glibcpp_long_bits): Define.
2024 * configure.target (cpu_include_dir): Use cpu/powerpc for powerpc64.
2025 * config/cpu/powerpc/atomicity.h (__always_swap): Remove.
2026 (__test_and_set): Remove.
2027 (_STWCX): Define and use.
2028
2029 2002-07-26 Phil Edwards <pme@gcc.gnu.org>
2030
2031 * libsupc++/new (placement delete): Remove unused parameter names.
2032
2033 2002-07-25 Benjamin Kosnik <bkoz@redhat.com>
2034
2035 PR libstdc++/7216
2036 * include/std/std_istream.h (basic_iostream): Add typedefs for
2037 char_type, int_type, pos_type, off_type, and traits_type.
2038 * testsuite/27_io/iostream.cc (test01): Add typedef tests.
2039 * testsuite/27_io/istream.cc: Same.
2040 * testsuite/27_io/ostream.cc: Same.
2041 * testsuite/27_io/filebuf.cc: Same.
2042 * testsuite/27_io/stringbuf.cc: Replace content, move to...
2043 * testsuite/27_io/stringbuf_members.cc: ...here.
2044 * testsuite/27_io/streambuf.cc: Replace content, move to...
2045 * testsuite/27_io/streambuf_members.cc: ...here.
2046 * testsuite/27_io/stringstream.cc: Replace content, move to...
2047 * testsuite/27_io/stringstream_members.cc: ...here.
2048 * testsuite/27_io/ios.cc: New file.
2049 * testsuite/27_io/fstream.cc: New file.
2050 * testsuite/27_io/ifstream.cc: New file.
2051 * testsuite/27_io/ofstream.cc: New file.
2052 * testsuite/27_io/istringstream.cc: New file.
2053 * testsuite/27_io/ostringstream.cc: New file.
2054
2055 2002-07-25 Benjamin Kosnik <bkoz@redhat.com>
2056
2057 PR libstdc++/7220
2058 * include/bits/istream.tcc (istream::ignore): Don't extract on
2059 zero.
2060 * testsuite/27_io/istream_unformatted.cc (test10): Add.
2061
2062 2002-07-25 Benjamin Kosnik <bkoz@redhat.com>
2063
2064 * testsuite/27_io/ios_base_type.cc: Move to...
2065 * testsuite/27_io/ios_base_types.cc: ...here.
2066
2067 2002-07-24 Benjamin Kosnik <bkoz@redhat.com>
2068
2069 PR libstdc++/7222
2070 * src/locale.cc (locale::locale(const char*)): Use setlocale NULL.
2071 * testsuite/22_locale/ctor_copy_dtor.cc (test02): New.
2072
2073 2002-07-24 Benjamin Kosnik <bkoz@redhat.com>
2074
2075 PR libstdc++/7230
2076 * config/linker-map.gnu: Revert strstream patch from 2002-07-01.
2077 * include/Makefile.am (backward_headers): Use strstream, not
2078 strstream.h.
2079 * include/Makefile.in: Regenerate.
2080 * include/backward/strstream: Revert.
2081 * include/backward/strstream.h: Remove.
2082 * src/strstream.cc: Revert.
2083 * testsuite/backward/strstream_members.cc: Change include.
2084
2085 2002-07-24 Benjamin Kosnik <bkoz@redhat.com>
2086
2087 PR libstdc++/7219
2088 * include/bits/ios_base.h (ios_base::streampos): Add.
2089 (ios_base::streamoff): Add.
2090 * testsuite/27_io/ios_base_type.cc: New.
2091
2092 2002-07-24 Benjamin Kosnik <bkoz@redhat.com>
2093
2094 PR libstdc++/7286
2095 * libsupc++/new: Add placement delete.
2096 * testsuite/18_support/new_delete_placement.cc: New.
2097
2098 * docs/html/abi.txt: Fix typos.
2099
2100 2002-07-23 Benjamin Kosnik <bkoz@redhat.com>
2101
2102 * docs/html/documentation.html: Remove libstdc++-v3.0.86 links,
2103 confusing usage of "latest."
2104 De-tangle contributor information from introductory notes.
2105 Move abi.txt link placement, activate.
2106 Re-organize.
2107 Move chapter info into old FAQ format.
2108 * docs/html/organization.html: Removed, obsoleted by doxygen work.
2109 * docs/html/abi.txt: Add notes on testing ABI changes.
2110
2111 2002-07-20 Phil Edwards <pme@gcc.gnu.org>
2112
2113 * docs/html/abi.txt: New file.
2114 * docs/html/23_containers/howto.html: Tweak vector-overhead text.
2115 * docs/html/ext/lwg-active.html, docs/html/ext/lwg-defects.html:
2116 Import from upstream, R22.
2117
2118 * include/bits/char_traits.h, include/bits/stl_iterator.h,
2119 include/bits/stl_iterator_base_types.h, libsupc++/exception,
2120 libsupc++/new, libsupc++/typeinfo: Use @brief markup.
2121
2122 * include/bits/deque.tcc, include/bits/stl_alloc.h,
2123 include/bits/stl_deque.h, include/bits/stl_list.h: Postpone removal
2124 of deprecated functions until 3.4. (Same timeframe, different text.)
2125 * include/bits/stl_vector.h: Ditto. Also do the same cleanups that
2126 the other sequence classes received.
2127
2128 2002-07-18 Brendan Kehoe <brendan@zen.org>
2129
2130 * bits/slice_array.h (_DEFINE_VALARRAY_OPERATOR): Fix typo of
2131 _Nname to _Name.
2132
2133 2002-07-19 Gabriel Dos Reis <gdr@nerim.net>
2134
2135 DR/123
2136 * include/bits/slice_array.h
2137 (slice_array<T>::operator=(const T&)): Constify.
2138 * include/bits/gslice_array.h
2139 (gslice_array<T>::operator=(const T&)): Likewise.
2140 * include/bits/mask_array.h
2141 (mask_array<T>::operator=(const T&)): Likewise.
2142 * include/bits/indirect_array.h
2143 (indirect_array<T>::operator=(const T&): Likewise.
2144
2145 2002-07-17 Phil Edwards <pme@gcc.gnu.org>
2146
2147 * docs/doxygen/run_doxygen: Remove template parameter names from
2148 "Compound List" summary page. Reformat.
2149 * docs/html/documentation.html: XHTML fixes.
2150
2151 2002-07-16 Andreas Schwab <schwab@suse.de>
2152
2153 * libsupc++/new (set_new_handler): Declare to not throw any
2154 exceptions.
2155 * libsupc++/new_handler.cc (set_new_handler): Likewise.
2156
2157 2002-07-16 Gabriel Dos Reis <gdr@nerim.net>
2158
2159 * include/Makefile.am (bits_headers): Remove slice.h
2160 * include/Makefile.in: Regenerate.
2161 * include/bits/slice.h (slice): move to include/bits/slice_array.h
2162 * include/bits/slice.h Remove.
2163 * include/std/std_valarray.h: Don't #include bits/slice.h anymore.
2164 * include/bits/slice_array.h: Comply to official coding styles.
2165 * testsuite/26_numerics/slice.cc: New test.
2166
2167 2002-07-15 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
2168
2169 * config/os/solaris/solaris2.5/ctype_base.h (ctype_base): Fix
2170 print to match vendor <ctype.h>.
2171
2172 2002-07-15 Phil Edwards <pme@gcc.gnu.org>
2173
2174 * docs/html/faq/index.html: Fix download links.
2175 * docs/html/faq/index.txt: Regenerate.
2176 * docs/html/17_intro/porting.html: Regenerate from earlier changes.
2177
2178 2002-07-11 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
2179
2180 * configure.target (target_os switch): Allow for irix6*o32
2181 configurations.
2182
2183 2002-07-10 Gabriel Dos Reis <gdr@nerim.net>
2184
2185 * include/bits/valarray_meta.h (_UnFunBase): Take a second
2186 template parameter. Remove _M_func data member.
2187 (_UnFunClos): Take a third template parameter.
2188 (__abs, __cos, __acos, __cosh, __sin, __asin, __sinh, __tan,
2189 __atan, __tanh, __exp, __log, __log10, __sqrt): New classes.
2190 (_DEFINE_EXPR_UNARY_OPERATOR): Adjust definition.
2191
2192 2002-07-08 Eric Christopher <echristo@redhat.com>
2193
2194 * configure.target: Fix comment for mips atomicity. Add
2195 mips*-*-linux* target, enable atomic operations there.
2196 * config/cpu/mips/atomicity.h: Fix comments, remove
2197 #ifndef/#endif. Add push/pop mips2.
2198
2199 2002-07-08 Peter Schmid <schmid@snake.iap.physik.tu-darmstadt.de>
2200
2201 * include/bits/stl_deque.h (_Deque_alloc_base): Change order of
2202 member declarations to avoid compiler warnings and restore 3.1 ABI.
2203
2204 2002-07-08 Phil Edwards <pme@gcc.gnu.org>
2205
2206 * docs/html/23_containers/howto.html: Link to dk_std::vector paper
2207 and homepage.
2208
2209 2002-07-07 Paolo Carlini <pcarlini@unitus.it>
2210
2211 PR libstdc++/7186
2212 * include/bits/stl_deque.h (_Deque_iterator::operator-):
2213 Make non-member, as already happens for the comparison
2214 operators in accord with DR179 (Ready).
2215 * testsuite/23_containers/deque_operators.cc: Add test02.
2216
2217 2002-07-04 Benjamin Kosnik <bkoz@redhat.com>
2218 Jack Reeves <jackw_reeves@hotmail.com>
2219
2220 * include/std/std_streambuf.h (basic_streambuf::_M_buf): Change to
2221 size_t, from int_type.
2222 (basic_streambuf::_M_buf_size_opt): Same.
2223 (basic_streambuf::_S_pback_sizex): Same.
2224 * include/bits/streambuf.tcc: Same.
2225 * include/std/std_streambuf.h (basic_streambuf::snextc): Use
2226 eq_int_type.
2227 (basic_streambuf::uflow): Same.
2228 * include/bits/sstream.tcc (basic_stringbuf::overflow): Use
2229 to_char_type.
2230 * include/bits/basic_ios.tcc (basic_ios::init): Use _CharT().
2231 * include/bits/streambuf.tcc (basic_streambuf::xsgetn): Use
2232 eq_int_type.
2233 (basic_streambuf::xsputn): Same.
2234 (__copy_streambufs): Same.
2235
2236 2002-07-03 Benjamin Kosnik <bkoz@redhat.com>
2237
2238 * include/std/std_memory.h: Fix formatting.
2239 * testsuite/20_util/auto_ptr_neg.cc: New.
2240 * testsuite/20_util/auto_ptr.cc: Tweaks.
2241 * testsuite/23_containers/map_operators.cc (test01): Split into..
2242 * testsuite/23_containers/map_operators_neg.cc (test01): ...this. New.
2243 * testsuite/23_containers/set_operators.cc: Move to...
2244 * testsuite/23_containers/set_operators_neg.cc: ...here.
2245 * testsuite/README: Add some more naming rules.
2246
2247 2002-07-03 Steev Wilcox <steev@paradigmds.com>
2248
2249 PR libstdc++/7057
2250 * include/ext/stl_hashtable.h: Fix.
2251 * testsuite/ext/hash_map.cc: New.
2252
2253 2002-07-03 Jack Reeves <jackw_reeves@hotmail.com>
2254 Kenny Simpson <theonetruekenny@yahoo.com>
2255 Phil Edwards <pme@gcc.gnu.org>
2256
2257 PR libstdc++/3946
2258 * testsuite/20_util/auto_ptr.cc (test08): New test.
2259 * include/std/std_memory.h (auto_ref_ptr): Make constructor explicit.
2260 (auto_ptr::operator auto_ptr_ref): Fix typo.
2261 General reformatting and doxygenating of the whole file.
2262
2263 2002-07-03 Benjamin Kosnik <bkoz@redhat.com>
2264
2265 PR libstdc++/7097
2266 * include/c/std_cwchar.h: Fix.
2267
2268 2002-07-02 Benjamin Kosnik <bkoz@redhat.com>
2269
2270 PR libstdc++/6410
2271 * include/bits/locale_facets.h (moneypunct::moneypunct): Add const
2272 char* name parameter.
2273 * config/locale/gnu/monetary_members.cc: Use it.
2274 * config/locale/generic/monetary_members.cc: Same.
2275 * src/localename.cc (_Impl::_Impl(const char*, size_t)): Use it.
2276
2277 * include/backward/strstream.h: Update date.
2278
2279 2002-07-02 Paolo Carlini <pcarlini@unitus.it>
2280
2281 PR libstdc++/6642
2282 * include/bits/stl_iterator.h
2283 (__normal_iterator::operator-(const __normal_iterator&)):
2284 Make non-member, as already happens for the comparison
2285 operators in accord with DR179 (Ready).
2286 * testsuite/24_iterators/iterator.cc: Add test from the PR.
2287
2288 2002-07-02 Phil Edwards <pme@gcc.gnu.org>
2289
2290 PR libstdc++/7173
2291 * acinclude.m4: Simplify determination of gcc_version, and move
2292 up to GLIBCPP_CONFIGURE.
2293 * configure.in (release_VERSION): Really remove.
2294 (AM_INIT_AUTOMAKE, AM_CONFIG_HEADER): Move after GLIBCPP_CONFIGURE.
2295 * aclocal.m4, configure: Regenerate.
2296
2297 2002-07-02 Phil Edwards <pme@gcc.gnu.org>
2298
2299 * docs/html/configopts.html, docs/html/install.html: Tweaks.
2300 * include/ext/algorithm, include/ext/hash_map, include/ext/hash_set,
2301 include/ext/iterator, include/ext/numeric, include/ext/rb_tree,
2302 include/ext/slist, include/ext/stl_rope.h: Add doxygen hooks.
2303
2304 2002-07-01 Benjamin Kosnik <bkoz@redhat.com>
2305
2306 * include/backward/strstream: Remove namespace std. Transfer to...
2307 * include/backward/strstream.h: ...here. Qualify std names.
2308 * src/strstream.cc: Remove namespace std.
2309 * include/Makefile.am (backward_headers): Remove strstream.h.
2310 * include/Makefile.in: Regenerate.
2311 * config/linker-map.gnu: Export strstream bits.
2312
2313 * src/fstream-inst.cc: Tweak.
2314 * src/io-inst.cc: Same.
2315 * src/istream-inst.cc: Same.
2316 * src/misc-inst.cc: Same.
2317 * src/ostream-inst.cc: Same.
2318 * src/sstream-inst.cc: Same.
2319 * src/valarray-inst.cc: Same.
2320 * src/misc-inst.cc: Remove unused instantiations.
2321
2322 2002-07-01 Benjamin Kosnik <bkoz@redhat.com>
2323
2324 * configure.in (libtool_VERSION): Bump to 5:0:0.
2325 * configure: Regenerate.
2326
2327 2002-06-28 Phil Edwards <pme@gcc.gnu.org>
2328
2329 PR libstdc++/7157, PR libstdc++/7158, PR libstdc++/7161
2330 * include/std/std_queue.h: Include deque.tcc, vector.tcc.
2331 * include/std/std_stack.h: Include deque.tcc.
2332 * testsuite/23_containers/adaptors.cc: New file.
2333
2334 2002-06-27 Phil Edwards <pme@gcc.gnu.org>
2335
2336 * include/bits/stl_alloc.h: Deprecate all 'reallocate' memfns.
2337 * docs/html/ext/howto.html: Update allocator notes.
2338
2339 2002-06-26 Benjamin Kosnik <bkoz@redhat.com>
2340
2341 * configure.in (INTERFACE): Remove.
2342 (release_VERSION): Remove.
2343 * acinclude.m4 (GLIBCPP_EXPORT_INSTALL_INFO): Change include placement.
2344 (libstdcxx_interface): Change. Use gcc methods to determine version.
2345 * configure: Regenerate.
2346 * aclocal.m4: Regenerate.
2347
2348 2002-06-25 DJ Delorie <dj@redhat.com>
2349
2350 * acinclude.m4 (GLIBCPP_CONFIGURE): Split out
2351 GLIBCPP_TOPREL_CONFIGURE.
2352 * aclocal.m4: Likewise.
2353 * configure.in: Call it before AC_CANONICAL_SYSTEM.
2354 * configure: Regenerate.
2355
2356 2002-06-25 Jessica Han <jessica@cup.hp.com>
2357
2358 * config/os/hpux/os_defines.h Define _GLIBCPP_VTABLE_PADDING
2359 * libsupc++/tinfo.cc Handle the 8 byte aligned vtable entries when
2360 _GLIBCPP_VTABLE_PADDING is defined.
2361
2362 2002-06-25 Benjamin Kosnik <bkoz@redhat.com>
2363
2364 * include/bits/stl_alloc.h: Additional formatting.
2365
2366 2002-06-24 Phil Edwards <pme@gcc.gnu.org>
2367
2368 * include/bits/stl_alloc.h: Reformat as per C++STYLE.
2369
2370 2002-06-24 Phil Edwards <pme@gcc.gnu.org>
2371
2372 * config/cpu/*/bits/*: Move header files up a level. Remove bits.
2373 * config/os/*/bits/*: Likewise.
2374 * configure.in: Update.
2375 * configure: Regenerate.
2376 * configure.target: Update.
2377 * docs/html/17_intro/porting.texi: Update.
2378
2379 2002-06-21 Phil Edwards <pme@gcc.gnu.org>
2380
2381 * include/bits/stl_map.h, include/bits/stl_multimap.h,
2382 include/bits/stl_queue.h, include/bits/stl_stack.h: Reformat and
2383 complete doxygenation.
2384 * include/bits/boost_concept_check.h: Minor comment.
2385
2386 2002-06-21 Benjamin Kosnik <bkoz@redhat.com>
2387
2388 * include/c_compatibility: New.
2389 * include/c_compatibility/assert.h: New.
2390 * include/c_compatibility/ctype.h: New.
2391 * include/c_compatibility/errno.h: New.
2392 * include/c_compatibility/float.h: New.
2393 * include/c_compatibility/iso646.h: New.
2394 * include/c_compatibility/limits.h: New.
2395 * include/c_compatibility/locale.h: New.
2396 * include/c_compatibility/math.h: New.
2397 * include/c_compatibility/setjmp.h: New.
2398 * include/c_compatibility/signal.h: New.
2399 * include/c_compatibility/stdarg.h: New.
2400 * include/c_compatibility/stddef.h: New.
2401 * include/c_compatibility/stdio.h: New.
2402 * include/c_compatibility/stdlib.h: New.
2403 * include/c_compatibility/string.h: New.
2404 * include/c_compatibility/time.h: New.
2405 * include/c_compatibility/wchar.h: New.
2406 * include/c_compatibility/wctype.h: New.
2407
2408 * include/c/std_cerrno.h: Get out of the way... define errno.
2409 * include/c/std_cmath.h: Add abs, modf overloads.
2410 Undefine C99 isms. Still not sure how to deal with this sanely.
2411 * include/c/std_csetjmp.h: Tweak.
2412 * include/c/std_cwchar.h: Include cstddef for size_t.
2413
2414 * include/c_std/std_cmath.h: Remove extra function.
2415
2416 Pendantic std usage in testsuites.
2417 * testsuite/17_intro/header_cstdlib.cc (test01): Qualify ldiv_t
2418 with std.
2419 * testsuite/17_intro/header_cwchar.cc: Tweak.
2420 * testsuite/22_locale/codecvt_members_char_char.cc (test03): Use
2421 std::setlocale.
2422 * testsuite/22_locale/ctype_to_wchar_t.cc (test05): Same.
2423 * testsuite/22_locale/ctype_to_char.cc (test05): Same.
2424 * testsuite/22_locale/ctype_is_wchar_t.cc (test05): Same.
2425 * testsuite/22_locale/ctype_is_char.cc (test05): Same.
2426 * testsuite/22_locale/codecvt_members_wchar_t_char.cc (test03): Same.
2427 * testsuite/22_locale/time_get_members_wchar_t.cc (test08): Same.
2428 * testsuite/22_locale/time_get_members_char.cc (test08): Same.
2429 * testsuite/22_locale/time_put_members_wchar_t.cc (test04): Same.
2430 * testsuite/22_locale/time_put_members_char.cc (test04): Same.
2431 * testsuite/22_locale/num_put_members_wchar_t.cc (test04): Same.
2432 * testsuite/22_locale/num_put_members_char.cc (test04): Same.
2433 * testsuite/22_locale/numpunct_members_wchar_t.cc (test03): Same.
2434 * testsuite/22_locale/numpunct_members_char.cc (test03): Same.
2435 * testsuite/22_locale/num_get_members_wchar_t.cc: Same.
2436 * testsuite/22_locale/num_get_members_char.cc: Same.
2437 * testsuite/22_locale/money_put_members_wchar_t.cc (test07): Same.
2438 * testsuite/22_locale/money_put_members_char.cc (test07): Same.
2439 * testsuite/22_locale/moneypunct_members_wchar_t.cc (test03): Same.
2440 * testsuite/22_locale/moneypunct_members_char.cc (test03): Same.
2441 * testsuite/22_locale/money_get_members_wchar_t.cc (test08): Same.
2442 * testsuite/22_locale/money_get_members_char.cc (test08): Same.
2443 * testsuite/22_locale/messages_members_char.cc (test03): Same.
2444 * testsuite/22_locale/collate_members_wchar_t.cc (test04): Same.
2445 * testsuite/22_locale/collate_members_char.cc (test04): Same.
2446 * testsuite/26_numerics/fabs_inline.cc: Use std::printf.
2447 * testsuite/27_io/istream_seeks.cc (test02): Qualify abort.
2448 * testsuite/27_io/istream_extractor_arith.cc (test11): Qualify strtol.
2449
2450 2002-06-20 Benjamin Kosnik <bkoz@redhat.com>
2451
2452 * libsupc++/Makefile.am (libsupc__convenience_la_SOURCES): Add
2453 c_sources.
2454
2455 2002-06-20 Benjamin Kosnik <bkoz@redhat.com>
2456
2457 * src/ext-inst.cc (__gnu_cxx): Use instead of std:: for extensions.
2458 Use size_type instead of unsigned long.
2459
2460 2002-06-20 Steve Ellcey <sje@cup.hp.com>
2461
2462 * src/ext-inst.cc (_S_fetch): Add explicit templates for char and
2463 wchar types.
2464 (_S_min_len): Ditto.
2465
2466 2002-06-20 Benjamin Kosnik <bkoz@redhat.com>
2467
2468 * include/Makefile.am: Add rules.
2469 * include/Makefile.in: Regenerate.
2470
2471 * acinclude.m4: Define GLIBCPP_C_HEADERS_COMPATIBILITY.
2472 * aclocal.m4: Regenerate.
2473 * configure: Regenerate.
2474 * configure.target (c_model, c_compatibility): Add.
2475
2476 * libsupc++/Makefile.am (c_sources): New.
2477 (libsupc___la_SOURCES): Add c_sources.
2478 (LTCOMPILE): Remove INCLUDES.
2479 (GCC_INCLUDES): New.
2480 (C_COMPILE): New, like COMPILE but without INCLUDES.
2481 (cxa_demangle.o): Use C_COMPILE.
2482 (dyn-string.o): Use C_COMPILE.
2483
2484 * include/c/std_cstdarg.h: Define __need___va_list.
2485 * include/c/std_cstddef.h: Define need_size_t, need_ptrdiff_t,
2486 need_NULL, need_offsetof.
2487
2488 2002-06-19 Steve Ellcey <sje@cup.hp.com>
2489
2490 * configure.in (HAVE_FINITE*, HAVE_ISINF*, HAVE_ISNAN*): Remove
2491 definitions in hpux11 cross-build because these functions do
2492 not exist on hpux11 (but some exist on hpux10); move defaults out
2493 into existing sections.
2494 * configure: Regenerate.
2495
2496 2002-06-18 Benjamin Kosnik <bkoz@redhat.com>
2497
2498 * include/c/std_cwchar.h: Guard. Add mbstate_t bits.
2499 * include/c/std_cwctype.h: Guard.
2500
2501 * libsupc++/eh_alloc.cc: Tweak include order.
2502 * libsupc++/pure.cc: Use cstdio.
2503 * libsupc++/new_op.cc: Remove malloc forward declaration, as
2504 cstdlib brings it in. Use std::malloc.
2505
2506 * src/Makefile.am (sources): Remove cmath.cc.
2507 * src/Makefile.in: Regenerate.
2508 * src/cmath.cc: Remove.
2509
2510 2002-06-18 Phil Edwards <pme@gcc.gnu.org>
2511
2512 * configure.target: Force mips to use the generic cpu routines.
2513
2514 2002-06-18 Phil Edwards <pme@gcc.gnu.org>
2515
2516 * configure.host: Delete file.
2517 * configure.target: More documentation. Factor out common parts of
2518 script into "intelligent" settings about defaults. Remove redundancy.
2519
2520 * acinclude.m4: Update comments. Do not call configure.host.
2521 (GLIBCPP_ENABLE_SYMVERS): If disabled, do not bother checking for
2522 libgcc_s.
2523 * configure.in: Slight reformatting, more comments. Factor out
2524 "config/" from all the directories.
2525 * docs/html/17_intro/porting.texi: Update and expand.
2526 * testsuite/Makefile.am (AM_RUNTESTFLAGS): Move empty setting
2527 from configure.host.
2528
2529 * aclocal.m4, configure, docs/html/17_intro/porting.html,
2530 testsuite/Makefile.in: Regenerate.
2531
2532 2002-06-16 Phil Edwards <pme@gcc.gnu.org>
2533
2534 * docs/doxygen/TODO: Update.
2535 * docs/doxygen/tables.html: Uncomment magical middle column.
2536 * docs/doxygen/user.cfg.in: Kludge to ignore function-like macros.
2537 * include/bits/stl_queue.h: Doxygenate and reformat.
2538 * include/bits/ios_base.h, include/std/std_streambuf.h: Add comment
2539 for deprecated names required by the standard.
2540
2541 2002-06-14 J.T. Conklin <jtc@acorntoolworks.com>
2542
2543 * configure.in (target_alias): Fix.
2544 * configure: Regenerate.
2545 * aclocal.m4: Regenerate.
2546
2547 2002-06-12 Phil Edwards <pme@gcc.gnu.org>
2548
2549 * include/Makefile.am: Add new files.
2550 * include/Makefile.in: Regenerate.
2551
2552 * include/bits/stl_deque.h, include/bits/stl_list.h,
2553 include/bits/stl_vector.h: Clean up, reformat. Move definitions...
2554 * include/bits/deque.tcc, include/bits/list.tcc,
2555 include/bits/vector.tcc: ...to here. New files.
2556
2557 * include/ext/stl_hashtable.h: Inclide correct full headers.
2558 * include/std/std_deque.h: Include .tcc files for now.
2559 * include/std/std_list.h: Likewise.
2560 * include/std/std_vector.h: Likewise.
2561
2562 2002-06-12 Daniel Jacobowitz <drow@mvista.com>
2563
2564 * Makefile.am: Add FLAGS_TO_PASS.
2565 * Makefile.in: Regenerated.
2566
2567 2002-06-11 J.T. Conklin <jtc@acorntoolworks.com>
2568 Benjamin Kosnik <bkoz@redhat.com>
2569
2570 * configure.target: Set os_include_dir to config/os/qnx/qnx6.1
2571 under *-qnx6.[12]*.
2572 * configure.in: Add support for *-qnx6.[12]*.
2573 * configure: Regenerate.
2574
2575 * config/os/qnx, config/os/qnx/qnx6.1, config/os/qnx/qnx6.1/bits:
2576 New directories.
2577 * config/os/qnx/qnx6.1/bits/ctype_base.h, ctype_inline.h,
2578 ctype_noninline.h, os_defines.h: New files.
2579
2580 2002-06-10 Loren J. Rittle <ljrittle@acm.org>
2581
2582 * acinclude.m4 (GLIBCPP_CHECK_SETRLIMIT_ancilliary): Reorder and
2583 include all required headers for test against older POSIX standard.
2584 (GLIBCPP_CHECK_SETRLIMIT): Likewise.
2585 (ac_setrlimit): Likewise.
2586 * aclocal.m4: Regenerate.
2587 * configure: Regenerate.
2588 * testsuite/testsuite_hooks.cc: Reorder and include all
2589 required headers for use against older POSIX standard.
2590
2591 2002-06-08 Paolo Carlini <pcarlini@unitus.it>
2592
2593 * testsuite/backwards/strstream_members.cc: New.
2594
2595 2002-06-08 Benjamin Kosnik <bkoz@redhat.com>
2596
2597 * include/backwards/strstream: Format.
2598 * src/strstream.cc: Format.
2599
2600 2002-06-08 Andreas Schwab <schwab@suse.de>
2601
2602 * src/strstream.cc (strstreambuf::overflow): Set _M_buf,
2603 _M_buf_size and _M_buf_size_opt to the new buffer and size.
2604
2605 2002-06-08 Benjamin Kosnik <bkoz@redhat.com>
2606
2607 * config/os/generic/bits/ctype_noninline.h: Tweak format.
2608
2609 2002-06-07 Steve Ellcey <sje@cup.hp.com>
2610
2611 * src/locale-inst.cc (__codecvt_abstract_base):
2612 Put inside _GLIBCPP_USE_WCHAR_T ifdef.
2613 * include/bits/istream.tcc (basic_istream): Ditto.
2614 (ws) Ditto.
2615 (operator>>) Ditto.
2616 * include/bits/ostream.tcc (basic_ostream): Ditto.
2617 (endl): Ditto.
2618 (ends): Ditto.
2619 (flush): Ditto.
2620 (operator<<): Ditto.
2621
2622 2002-06-07 Phil Edwards <pme@gcc.gnu.org>
2623
2624 * mkcheck.in: Link against local testsuite library.
2625 * testsuite/testsuite_hooks.h (__set_testsuite_memlimit): Move null
2626 implementation out...
2627 * testsuite/testsuite_hooks.cc: ...to here.
2628
2629 2002-06-06 Loren J. Rittle <ljrittle@acm.org>
2630
2631 * src/Makefile.am (AUTOMAKE_OPTIONS): Use cygnus-style generation.
2632 * include/Makefile.am (AUTOMAKE_OPTIONS): Likewise.
2633 * testsuite/Makefile.am (AUTOMAKE_OPTIONS): Likewise.
2634 * src/Makefile.in: Regenerate (explicitly with --cygnus option).
2635 * testsuite/Makefile.in: Likewise.
2636
2637 2002-06-05 David Edelsohn <edelsohn@gnu.org>
2638
2639 * config/os/aix/bits/ctype_noninline.h (do_toupper,do_tolower):
2640 Call external symbol.
2641
2642 2002-06-04 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
2643
2644 * testsuite/lib/libstdc++-v3-dg.exp (libstdc++-v3_target_compile):
2645 Search correct multilib testsuite dir for libv3test.
2646
2647 2002-06-04 Paolo Carlini <pcarlini@unitus.it>
2648 Gaby Dos Reis <gdr@codesourcery.com>
2649
2650 * include/bits/basic_string.tcc
2651 (basic_string::_S_construct(forward_iterator_tag):
2652 Fix typo in null pointer check.
2653 * testsuite/21_strings/ctor_copy_dtor.cc: Add test04.
2654
2655 2002-06-04 Paolo Carlini <pcarlini@unitus.it>
2656
2657 * testsuite/22_locale/money_get_members_char.cc
2658 (test02): Add decimal point to long double constants.
2659 * testsuite/22_locale/money_get_members_wchar_t.cc
2660 (test02): Likewise.
2661 * testsuite/22_locale/money_put_members_char.cc
2662 (test02, test03, test06): Likewise.
2663 * testsuite/22_locale/money_put_members_wchar_t.cc:
2664 (test02, test03, test06): Likewise.
2665 * testsuite/22_locale/num_get_members_char.cc:
2666 (test02, test01): Likewise; suffix long long constants with LL.
2667 * testsuite/22_locale/num_get_members_wchar_t.cc:
2668 (test02, test01): Likewise.
2669 * testsuite/22_locale/num_put_members_char.cc:
2670 (test02, test01): Likewise.
2671 * testsuite/22_locale/num_put_members_wchar_t.cc:
2672 (test02, test01): Likewise.
2673
2674 2002-06-03 Marc Espie <espie@openbsd.org>
2675
2676 * config/cpu/m68k/bits/atomicity.h(__exchange_and_add): Fix inline
2677 assembly for old assemblers.
2678
2679 2002-06-03 Phil Edwards <pme@gcc.gnu.org>
2680
2681 * include/bits/stl_bvector.h (swap(_Bit_reference,_Bit_reference)):
2682 Move/rename...
2683 (vector<bool>::swap(reference,reference)): ...to this.
2684
2685 2002-06-03 Phil Edwards <pme@gcc.gnu.org>
2686
2687 * docs/doxygen/TODO: Update.
2688 * docs/doxygen/user.cfg.in (SORT_MEMBER_DOCS): Set to off, now that
2689 some class members are in 14882 order.
2690 * docs/html/ext/howto.html: 3.1 is in the past now, not the future.
2691
2692 * include/std/std_bitset.h: Update comment.
2693 * src/bitset.cc: Update comments, clean up spacing.
2694
2695 * src/Makefile.am (sources): Alphabetize for convenience.
2696 * src/Makefile.in: Regenerate.
2697
2698 2002-06-03 Phil Edwards <pme@gcc.gnu.org>
2699
2700 * include/bits/stl_deque.h, include/bits/stl_list.h,
2701 include/bits/stl_vector.h: Reformat to (mostly) match C++STYLE.
2702 Reorder to match 14882. Doxygen blocks for all public members.
2703
2704 2002-05-31 Marcus Meissner <meissner@suse.de>
2705
2706 PR libstdc++/6886
2707 * include/bits/stl_bvector.h: Use UL suffix for unsigned longs.
2708 * testsuite/23_containers/vector_bool.cc (test02): New test.
2709
2710 2002-05-30 Marc Espie <espie@openbsd.org>
2711
2712 * configure.in: Always check for sys/types.h
2713 * configure: Regenerate.
2714
2715 2002-05-28 Nick Clifton <nickc@cambridge.redhat.com>
2716
2717 * testsuite/lib/libstdc++-v3-dg.exp (libstdc++-v3-init):
2718 Rebuild the wrapper file every time this proc is called.
2719
2720 2002-05-28 Phil Edwards <pme@gcc.gnu.org>
2721
2722 * testsuite/Makefile.am (noinst_LIBRARIES): New target. Pull in
2723 CXX/INCLUDES.
2724 * testsuite/Makefile.in: Regenerate.
2725 * testsuite/testsuite_hooks.h (gnu_copy_tracker): Move from
2726 list_modifiers.cc and rename from 'T'. Move code bodies...
2727 * testsuite/testsuite_hooks.cc: ...to here. New file.
2728 * testsuite/23_containers/list_modifiers.cc: Move 'T' class out.
2729 * testsuite/lib/libstdc++-v3-dg.exp (libstdc++-v3_target_compile):
2730 Add libv3test.a to link options.
2731
2732 2002-05-27 Benjamin Kosnik <bkoz@redhat.com>
2733
2734 * src/misc-inst.cc: Define unnecessary algorithm
2735 instantiations. Break apart instantiations into groupings below.
2736 * src/fstream-inst.cc: New.
2737 * src/io-inst.cc: New.
2738 * src/istream-inst.cc: New.
2739 * src/ostream-inst.cc: New.
2740 * src/streambuf-inst.cc: New.
2741 * src/sstream-inst.cc: New.
2742 * src/Makefile.am (sources): Add files.
2743 * src/Makefile.in: Regenerate.
2744
2745 * acinclude.m4: Work around automake 1.4-p5 bug, change
2746 AM_GNU_GETTEXT in comments to AM-GNU-GETTEXT.
2747
2748 2002-05-27 Benjamin Kosnik <bkoz@redhat.com>
2749
2750 PR libstdc++/6795.
2751 * config/os/solaris/solaris2.6/bits/ctype_noninline.h
2752 (classic_table): Fix.
2753 * config/os/solaris/solaris2.5/bits/ctype_noninline.h: Same.
2754
2755 2002-05-27 Benjamin Kosnik <bkoz@redhat.com>
2756
2757 * testsuite/22_locale/ctype_is_wchar_t.cc: Guard with
2758 _GLIBCPP_USE_WCHAR_T.
2759 * testsuite/22_locale/ctype_narrow_wchar_t.cc: Same.
2760 * testsuite/22_locale/ctype_to_wchar_t.cc: Same.
2761 * testsuite/22_locale/ctype_widen_wchar_t.cc: Same.
2762
2763 2002-05-26 Carlo Wood <carlo@alinoe.com>
2764 Paolo Carlini <pcarlini@unitus.it>
2765
2766 PR libstdc++/6811
2767 * config/locale/ieee_1003.1-2001/codecvt_specializations.h
2768 (__enc_traits::operator=): add missing return statement.
2769
2770 2002-05-24 Phil Edwards <pme@gcc.gnu.org>
2771
2772 PR libstdc++/6282
2773 * include/std/std_bitset.h (_Base_biteset<0>): New specialization.
2774 (operator>>): If nothing was extracted, don't fail in the
2775 zero-length case.
2776 * testsuite/23_containers/bitset_ctor.cc (test02): New test.
2777
2778 2002-05-24 Benjamin Kosnik <bkoz@redhat.com>
2779
2780 PR libstdc++/6701
2781 * testsuite/22_locale/ctype_narrow_char.cc: New.
2782 * testsuite/22_locale/ctype_narrow_wchar_t.cc: New.
2783 * testsuite/22_locale/ctype_widen_char.cc: New.
2784 * testsuite/22_locale/ctype_widen_wchar_t.cc: New.
2785 * testsuite/22_locale/ctype_members_char.cc: Move some bits into...
2786 * testsuite/22_locale/ctype_is_char.cc: ...this.
2787 * testsuite/22_locale/ctype_to_char.cc: ...and this.
2788 * testsuite/22_locale/ctype_members_wchar_t.cc: Move some bits into...
2789 * testsuite/22_locale/ctype_is_wchar_t.cc: ...this.
2790 * testsuite/22_locale/ctype_to_wchar_t.cc: ...and this.
2791
2792 * testsuite/22_locale/ctype_scan_wchar_t.cc: Should pass.
2793
2794 2002-05-24 Dale Peakall <dale@peakall.net>
2795
2796 PR libstdc++/6701
2797 * config/locale/gnu/ctype_members.cc (ctype<wchar_t>::do_narrow): Fix.
2798 * config/locale/generic/ctype_members.cc: Same.
2799
2800 2002-05-24 Benjamin Kosnik <bkoz@redhat.com>
2801
2802 PR libstdc++/6750
2803 * include/bits/ostream.tcc (ostream::operator<<(const char*)): Fix
2804 for empty string literal.
2805 (ostream::operator<<(const _CharT*)): Same.
2806 (ostream<char>::operator<<(const char*)): Same.
2807 (ostream<char>::operator<<(streambuf*)): Same.
2808 * testsuite/27_io/ostream_inserter_char.cc (test08): Add tests.
2809 * testsuite/27_io/ostream_inserter_other.cc (test02): Modify.
2810
2811 2002-05-23 Benjamin Kosnik <bkoz@redhat.com>
2812
2813 * configure.in (release_VERSION): Update to 3.1.1.
2814 (libtool_VERSION): Update to 4:1:0.
2815 * configure: Regenerate.
2816
2817 2002-05-21 Phil Edwards <pme@gcc.gnu.org>
2818
2819 * include/bits/stl_pair.h: Tweak comment markup.
2820
2821 2002-05-21 Phil Edwards <pme@gcc.gnu.org>
2822
2823 * include/ext/stdio_filebuf.h: Add header guards. Doxygenate.
2824
2825 2002-05-21 Phil Edwards <pme@gcc.gnu.org>
2826
2827 * docs/doxygen/user.cfg.in (EXCLUDE): Add 'CVS'.
2828
2829 2002-05-21 Phil Edwards <pme@gcc.gnu.org>
2830
2831 * include/bits/stl_vector.h: Reformat to follow C++STYLE.
2832 Doxygenate all public members. Reorder to follow 14882.
2833 (vector::push_back(void)): Remove previously-deprecated fn.
2834 (vector::insert(iterator), vector::_M_insert_aux(iterator)):
2835 Deprecate for removal in 3.3.
2836
2837 2002-05-20 Phil Edwards <pme@gcc.gnu.org>
2838
2839 * docs/html/faq/index.html (5.4): Recommend against -I options for
2840 finding the ext headers.
2841 * docs/html/faq/index.txt: Regenerate.
2842
2843 2002-05-19 Paolo Carlini <pcarlini@unitus.it>
2844
2845 * testsuite/23_containers/deque_operators.cc (test01):
2846 Fix minor typo in last commit.
2847
2848 2002-05-18 Paolo Carlini <pcarlini@unitus.it>
2849
2850 PR libstdc++/6503
2851 * include/bits/stl_deque.h (_Deque_iterator::operator==,
2852 operator!=, operator<, operator>, operator>=, operator<=):
2853 Make non-member functions, to allow comparing const and
2854 non-const iterators in any order.
2855 * testsuite/23_containers/deque_operators.cc: New testfile.
2856
2857 2002-05-16 Phil Edwards <pme@gcc.gnu.org>
2858
2859 * docs/html/faq/index.html: Update not-a-bug list with basic_file.h.
2860 * docs/html/faq/index.txt: Regenerate.
2861
2862 2002-05-16 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
2863
2864 * Makefile.am: Allow for PWDCMD to override hardcoded pwd.
2865 * acinclude.m4: Likewise.
2866 * docs/html/Makefile: Likewise.
2867 * aclocal.m4: Regenerate.
2868 * configure: Regenerate.
2869 * Makefile.in: Regenerate.
2870
2871 2002-05-15 Loren J. Rittle <ljrittle@acm.org>
2872
2873 libstdc++/6641
2874 * include/bits/c++config (__USE_MALLOC): Report case where
2875 the user improperly defined it on the command line.
2876
2877 2002-05-15 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
2878
2879 * testsuite/testsuite_hooks.h (__set_testsuite_memlimit):
2880 Retrieve current limits before setting.
2881
2882 2002-05-15 Benjamin Kosnik <bkoz@redhat.com>
2883
2884 PR libstdc++/6518
2885 * include/bits/ostream.tcc (ostream::operator<<(const char*)): Fix
2886 for null case.
2887 (ostream::operator<<(const _CharT*)): Same.
2888 (ostream<char>::operator<<(const char*)): Same.
2889 * testsuite/27_io/ostream_inserter_char.cc (test07): Add test.
2890
2891 2002-05-15 Benjamin Kosnik <bkoz@redhat.com>
2892
2893 PR libstdc++/6594
2894 * src/strstream.cc (strstreambuf): Fix leak.
2895
2896 2002-05-15 Paolo Carlini <pcarlini@unitus.it>
2897
2898 PR libstdc++/6648
2899 * include/bits/istream.tcc (istream::getline, ignore):
2900 Upon __idelim (__delim) call sbumpc() not snextc().
2901 * testsuite/27_io/narrow_stream_objects.cc:
2902 Add test08 and test09.
2903
2904 2002-05-13 Benjamin Kosnik <bkoz@redhat.com>
2905
2906 * testsuite/22_locale/ctype_scan_char.cc: Tweak.
2907 * testsuite/22_locale/ctype_scan_wchar_t.cc: New.
2908
2909 * docs/html/install.html: Fix.
2910
2911 2002-05-13 Benjamin Kosnik <bkoz@redhat.com>
2912
2913 * include/bits/fstream.tcc
2914 (basic_filebuf::_M_allocate_internal_buffer): Remove extraneous
2915 try/catch blocks.
2916 * src/localename.cc (locale::_Impl::_M_install_facet): Same.
2917
2918 * docs/html/install.html: Tweak, add bits about required locales
2919 for the 22_locale tests when using the gnu model.
2920
2921 * testsuite/27_io/istream_sentry.cc: Tweak.
2922
2923 2002-05-13 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
2924
2925 * config/os/irix/irix5.2/bits/ctype_inline.h (scan_is, scan_not):
2926 Fix typo, use this->is() rather than manually (and perhaps
2927 incorrectly) inlining it.
2928 * config/os/irix/irix6.5/bits/ctype_inline.h (scan_is, scan_not):
2929 Likewise.
2930 * testsuite/22_locale/ctype_scan_char.cc: New file.
2931
2932 2002-05-13 Paolo Carlini <pcarlini@unitus.it>
2933 Jakub Jelinek <jakub@redhat.com>
2934
2935 * testsuite/22_locale/money_get_members_char.cc
2936 (test01, test02, test04): Use the de_DE@euro named locale
2937 instead of de_DE to allow for an uniform behaviour with
2938 both old and Euro-era localedata; tweak some tests.
2939 * testsuite/22_locale/money_get_members_wchar_t.cc
2940 (test01, test02, test04): Likewise.
2941 * testsuite/22_locale/money_put_members_char.cc
2942 (test01, test02, test04): Likewise.
2943 * testsuite/22_locale/money_put_members_wchar_t.cc
2944 (test01, test02, test04): Likewise.
2945
2946 2002-05-13 Paolo Carlini <pcarlini@unitus.it>
2947
2948 * testsuite/22_locale/codecvt_members_char_char.cc
2949 (test03): Robustify wrt localedata.
2950 * testsuite/22_locale/codecvt_members_wchar_t_char.cc (test03): Likewise.
2951 * testsuite/22_locale/collate_members_char.cc (test04): Likewise.
2952 * testsuite/22_locale/collate_members_wchar_t.cc (test04): Likewise.
2953 * testsuite/22_locale/ctype_members_char.cc (test05): Likewise.
2954 * testsuite/22_locale/ctype_members_wchar_t.cc (test04): Likewise.
2955 * testsuite/22_locale/messages_members_char.cc (test03): Likewise.
2956 * testsuite/22_locale/money_get_members_char.cc (test08): Likewise.
2957 * testsuite/22_locale/money_get_members_wchar_t.cc (test08): Likewise.
2958 * testsuite/22_locale/money_put_members_char.cc (test07): Likewise.
2959 * testsuite/22_locale/money_put_members_wchar_t.cc (test07): Likewise.
2960 * testsuite/22_locale/moneypunct_members_char.cc (test03): Likewise.
2961 * testsuite/22_locale/moneypunct_members_wchar_t.cc (test03): Likewise.
2962 * testsuite/22_locale/num_get_members_char.cc (test06): Likewise.
2963 * testsuite/22_locale/num_get_members_wchar_t.cc (test06): Likewise.
2964 * testsuite/22_locale/num_put_members_char.cc (test04): Add comment.
2965 * testsuite/22_locale/num_put_members_wchar_t.cc (test04): Likewise.
2966 * testsuite/22_locale/numpunct_members_char.cc (test03): Likewise.
2967 * testsuite/22_locale/numpunct_members_wchar_t.cc (test03): Likewise.
2968 * testsuite/22_locale/time_get_members_char.cc (test08): Likewise.
2969 * testsuite/22_locale/time_get_members_wchar_t.cc (test08): Likewise.
2970 * testsuite/22_locale/time_put_members_char.cc (test04): Likewise.
2971 * testsuite/22_locale/time_put_members_wchar_t.cc (test04): Likewise.
2972
2973 2002-05-12 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
2974
2975 * config/os/irix/irix5.2/bits/os_defines.h: Revert 2002-05-06
2976 change.
2977
2978 2002-05-11 John David Anglin <dave@hiauly1.hia.nrc.ca>
2979
2980 * config/os/gnu-linux/bits/os_defines.h (__glibcpp_long_bits): Define
2981 to 64 for hppa 64-bit port.
2982 (__glibcpp_long_double_bits): Define to 64 for all hppa ports.
2983
2984 2002-05-10 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
2985
2986 * acinclude.m4 (enable_symvers): Quote $LD.
2987 * aclocal.m4: Regenerate.
2988 * configure: Likewise.
2989
2990 2002-05-09 Jakub Jelinek <jakub@redhat.com>
2991
2992 * testsuite/lib/libstdc++-v3-dg.exp (libstdc++-v3-init): Append all
2993 multilib dirs containing libgcc_s*.so.1 below gcc object dir to
2994 LD_LIBRARY_PATH.
2995
2996 2002-05-08 Alexandre Oliva <aoliva@redhat.com>
2997
2998 * configure.in (ORIGINAL_LD_FOR_MULTILIBS): Preserve LD at
2999 script entry, and set LD to it when configuring multilibs.
3000 * configure: Rebuilt.
3001
3002 2002-05-07 Mark Mitchell <mark@codesourcery.com>
3003
3004 * configure.in: Add support for WindISS.
3005 * configure: Regenerated.
3006 * configure.target: Add support for WindISS.
3007 * config/os/windiss/bits/ctype_base.h: New file.
3008 * config/os/windiss/bits/ctype_inline.h: Likewise.
3009 * config/os/windiss/bits/ctype_noninline.h: Likewise.
3010 * config/os/windiss/bits/os_defines.h: Likewise.
3011
3012 2002-05-06 Paolo Carlini <pcarlini@unitus.it>
3013
3014 Test all the facets for the temporary "C" locale switch issue.
3015 * testsuite/22_locale/codecvt_members_char_char.cc: Add test03.
3016 * testsuite/22_locale/codecvt_members_wchar_t_char.cc: Likewise.
3017 * testsuite/22_locale/collate_members_char.cc: Add test04.
3018 * testsuite/22_locale/collate_members_wchar_t.cc: Likewise.
3019 * testsuite/22_locale/ctype_members_char.cc: Add test05.
3020 * testsuite/22_locale/ctype_members_wchar_t.cc: Add test04.
3021 * testsuite/22_locale/messages_members_char.cc: Add test03.
3022 * testsuite/22_locale/money_get_members_char.cc: Add test08.
3023 * testsuite/22_locale/money_get_members_wchar_t.cc: Likewise.
3024 * testsuite/22_locale/money_put_members_char.cc: Add test07.
3025 * testsuite/22_locale/money_put_members_wchar_t.cc: Likewise.
3026 * testsuite/22_locale/moneypunct_members_char.cc: Add test03.
3027 * testsuite/22_locale/moneypunct_members_wchar_t.cc: Likewise.
3028 * testsuite/22_locale/num_get_members_char.cc: Add test06.
3029 * testsuite/22_locale/num_get_members_wchar_t.cc: Likewise.
3030 * testsuite/22_locale/numpunct_members_char.cc: Add test03.
3031 * testsuite/22_locale/numpunct_members_wchar_t.cc: Likewise.
3032 * testsuite/22_locale/time_get_members_char.cc: Add test08.
3033 * testsuite/22_locale/time_get_members_wchar_t.cc: Likewise.
3034 * testsuite/22_locale/time_put_members_char.cc: Add test04.
3035 * testsuite/22_locale/time_put_members_wchar_t.cc: Likewise.
3036
3037 * testsuite/22_locale/num_put_members_char.cc (test04): Add comment.
3038 * testsuite/22_locale/num_put_members_wchar_t.cc (test04): Likewise.
3039
3040 2002-05-06 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
3041
3042 * config/os/irix/irix5.2/bits/os_defines.h (_SGI_SOURCE,
3043 __EXTENSIONS__): Ensure they are always defined.
3044
3045 2002-05-06 Phil Edwards <pme@gcc.gnu.org>
3046
3047 * docs/html/documentation.html: Fix broken link.
3048
3049 2002-05-04 Benjamin Kosnik <bkoz@redhat.com>
3050 Paolo Carlini <pcarlini@unitus.it>
3051
3052 * testsuite/22_locale/num_put_members_char.cc: Add test04(),
3053 testing for the locale_facets.tcc entry of the previous commit.
3054 * testsuite/22_locale/num_put_members_wchar_t.cc: Likewise.
3055
3056 2002-05-04 Takeshi Kobayakawa <tskoba@mte.biglobe.ne.jp>
3057
3058 * config/locale/generic/c_locale.cc
3059 (__convert_to_v(float, double, long double)):
3060 Fix the temporary switch to the "C" locale, saving and
3061 restoring in the proper way the current locale.
3062 * config/locale/generic/time_members.cc
3063 (__timepunct<char, wchar_t>::_M_put): Likewise.
3064 * config/locale/gnu/messages_members.cc
3065 (messages<char>::do_get): Likewise.
3066 * config/locale/gnu/messages_members.h
3067 (messages<_CharT>::do_get): Likewise.
3068 * config/locale/gnu/time_members.cc
3069 (__timepunct<char, wchar_t>::_M_put): Likewise.
3070 * include/bits/locale_facets.tcc (__convert_from_v): Likewise.
3071
3072 2002-05-04 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
3073
3074 * configure.in (AC_CHECK_HEADERS): Check for string.h & stdlib.h.
3075 * libsupc++/Makefile.am (LTCOMPILE): Add $(DEFS).
3076
3077 * Makefile.in, config.h.in, configure: Regenerate.
3078
3079 2002-05-03 Benjamin Kosnik <bkoz@redhat.com>
3080
3081 PR libstdc++/6549.
3082 * include/bits/fstream.tcc (filebuf::_M_underflow_common): Revert.
3083 * testsuite/27_io/narrow_stream_objects.cc (test07): Add.
3084
3085 2002-05-03 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
3086
3087 * config/os/irix/irix5.2/bits/ctype_noninline.h (classic_table):
3088 Return __ctype + 1.
3089 (ctype:_M_table): Initialize to classic_table(), not __ctype.
3090
3091 2002-05-03 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
3092
3093 * configure.in: Update local install.html, configopts.html paths.
3094 * configure: Regenerate.
3095
3096 2002-05-02 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
3097
3098 * config/os/irix/irix5.2/bits/os_defines.h
3099 (__glibcpp_long_double_bits, __glibcpp_long_bits): Define.
3100
3101 * config/os/irix/irix5.2/bits/ctype_inline.h: Cast to unsigned
3102 char.
3103
3104 2002-05-02 Phil Edwards <pme@gcc.gnu.org>
3105
3106 * docs/html/faq/index.html: Update list in #4.1.
3107 * docs/html/faq/index.txt: Regenerated.
3108
3109 2002-05-02 Benjamin Kosnik <bkoz@redhat.com>
3110
3111 * docs/html/17_intro/RELEASE-NOTES (New): Update.
3112
3113 2002-05-01 Phil Edwards <pme@gcc.gnu.org>
3114
3115 * include/std/std_bitset.h: Fix doxygen comments.
3116 * docs/html/documentation.html: Minor tweaks for 3.1.
3117 * docs/html/27_io/howto.html: Likewise.
3118 * docs/html/ext/howto.html: Likewise, mention stdio_filebuf.
3119 * docs/html/faq/index.html: Likewise.
3120 * docs/html/faq/index.txt: Regenerated.
3121
3122 2002-05-01 Benjamin Kosnik <bkoz@redhat.com>
3123
3124 PR libstdc++/6533
3125 * include/bits/streambuf_iterator.h (istreambuf_iterator::_M_get): New.
3126 (istreambuf_iterator::equal): Use it.
3127 (istreambuf_iterator::operator*): Use it.
3128
3129 2002-05-01 Paolo Carlini <pcarlini@unitus.it>
3130
3131 PR libstdc++/6513
3132 * include/bits/stl_uninitialized.h
3133 (uninitialized_copy(_InputIter, _InputIter, _ForwardIter)):
3134 Fix typo in 2001-07-17 commit: typedef _ValueType to
3135 iterator_traits<_ForwardIter> not <_InputIter>.
3136 * testsuite/23_containers/vector_ctor.cc: Add test04.
3137
3138 2002-04-30 John David Anglin <dave@hiauly1.hia.nrc.ca>
3139
3140 PR libstdc++/6501
3141 * include/c_std/std_cctype.h: Include bits/c++config.h.
3142 * config/os/hpux/bits/os_defines.h (_SB_CTYPE_MACROS): Define.
3143
3144 2002-04-30 Benjamin Kosnik <bkoz@redhat.com>
3145
3146 * include/ext/stdio_filebuf.h: New file.
3147 * include/ext/enc_filebuf.h: New file.
3148 * config/io/basic_file_stdio.h (__basic_file::sys_open): Add fd ctor.
3149 * config/io/basic_file_stdio.cc: Same.
3150 * include/bits/fstream.tcc (filebuf::_M_allocate_internal_buffer):
3151 Remove _M_unbuf hacks.
3152 (filebuf::_M_destroy_internal_buffer): Same.
3153 (filebuf::filebuf(cfile, openmode, int_type): Remove definition.
3154 (filebuf::fd): Remove.
3155 * include/std/std_fstream.h (filebuf::_M_unbuf): Remove.
3156 (filebuf::filebuf(__c_file*, openmode, int_type)): Remove.
3157 (filebuf::fd): Remove.
3158 * src/ios.cc (ios_base::_S_ios_create): Change to use specialized
3159 filebufs.
3160 (ios_base::_S_ios_destroy): Same.
3161 * src/misc-inst.cc (file_filebuf<char>): Add instantiation.
3162 * include/Makefile.am (ext_headers): Add ext_filebuf.h,
3163 stdio_filebuf.h. * include/Makefile.in: Regenerate.
3164
3165 2002-04-30 Benjamin Kosnik <bkoz@redhat.com>
3166
3167 PR libstdc++/6511
3168 * config/os/solaris/solaris2.7/bits/ctype_noninline.h: Fix typo.
3169
3170 2002-04-29 Benjamin Kosnik <bkoz@redhat.com>
3171
3172 PR libstdc++/5820
3173 * include/bits/fstream.tcc (basic_filebuf::_M_underflow_common):
3174 Check for eof.
3175 * include/bits/streambuf_iterator.h: Match stream_iterator.h.
3176 (istreambuf_iterator::operator++): Invalidate on eof.
3177 (istreambuf_iterator::operator++(int)): Same.
3178 (istreambuf_iterator::operator*): Same.
3179
3180 2002-04-29 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
3181
3182 * testsuite/lib/libstdc++-v3-dg.exp (libstdc++-v3-init): Set all
3183 of LD_LIBRARY_PATH, SHLIB_PATH, LD_LIBRARYN32_PATH,
3184 LD_LIBRARY64_PATH.
3185
3186 2002-04-28 Benjamin Kosnik <bkoz@redhat.com>
3187
3188 PR libstdc++/5820
3189 * config/io/basic_file_stdio.h (__basic_file::sys_getc): Return int.
3190 (__basic_file::sys_ungetc): Take int.
3191 * config/io/basic_file_stdio.cc (__basic_file::sys_ungetc): Same.
3192 * include/bits/fstream.tcc (basic_filebuf::_M_underflow_common):
3193 Use sys_getc for unbuffered input.
3194 * testsuite/27_io/narrow_stream_objects.cc (test06): New.
3195
3196 * src/ios.cc (_M_grow_words): Adjust error checking.
3197 * testsuite/27_io/ios_base_storage.cc: Same.
3198
3199 2002-04-28 Peter Schmid <schmid@snake.iap.physik.tu-darmstadt.de>
3200
3201 * include/ext/stl_hashtable.h: Import __iterator_category
3202
3203 2002-04-28 Paolo Carlini <pcarlini@unitus.it>
3204 Peter Schmid <schmid@snake.iap.physik.tu-darmstadt.de>
3205
3206 * testsuite/ext/hash_set.cc: New testfile.
3207
3208 2002-04-27 Benjamin Kosnik <bkoz@redhat.com>
3209
3210 * config/os/solaris/solaris2.5/bits/os_defines.h: Remove
3211 _G_USING_THUNKS.
3212 * config/os/solaris/solaris2.6/bits/os_defines.h: Same.
3213 * config/os/solaris/solaris2.7/bits/os_defines.h: Same.
3214
3215 2002-04-26 Paolo Carlini <pcarlini@unitus.it>
3216
3217 * include/bits/basic_string.h (replace(__pos, __n1, __s, __n2):
3218 Fix and tighten __throw_length_error check.
3219 * testsuite/21_strings/replace.cc (test05): New.
3220 * testsuite/21_strings/replace.cc (test02, test03, test04): Tweak.
3221
3222 2002-04-23 Loren J. Rittle <ljrittle@acm.org>
3223
3224 * include/std/std_fstream.h (basic_filebuf::sync): Hoist
3225 unconditional flush on lower-layer handle to here...
3226 * include/bits/fstream.tcc (basic_filebuf::_M_really_overflow):
3227 ...from here. Optimize remaining _M_file.sync() call pattern.
3228 * testsuite/27_io/narrow_stream_objects.cc (test04): New test.
3229 (test05): Likewise.
3230
3231 2002-04-23 Jason Merrill <jason@redhat.com>
3232
3233 * include/bits/fstream.tcc (basic_filebuf::seekoff): Fix for
3234 output-only filebufs.
3235 * include/std/std_fstream.h (basic_filebuf::_M_set_indeterminate):
3236 Likewise.
3237 (basic_filebuf::_M_set_determinate): Likewise.
3238
3239 PR libstdc++/6414
3240 * include/bits/fstream.tcc (basic_filebuf::seekoff): Adjust return
3241 value properly in the trivial case.
3242 * testsuite/27_io/istream_seeks.cc (test04): Make sure that
3243 tellg() returns the right value after a read.
3244
3245 2002-04-23 Hans-Peter Nilsson <hp@bitrange.com>
3246
3247 * config/cpu/mmix/bits/cpu_limits.h: New file.
3248 * configure.target (CPULIMITSH): Use it.
3249
3250 2002-04-22 Loren J. Rittle <ljrittle@acm.org>
3251
3252 * docs/html/17_intro/porting.texi (_GLIBCPP_AVOID_FSEEK): Remove.
3253 * docs/html/17_intro/porting.html: Rebuilt.
3254
3255 2002-04-20 Jason Merrill <jason@redhat.com>
3256
3257 PR libstdc++/4150
3258 * include/std/std_streambuf.h (basic_streambuf::_M_set_indeterminate):
3259 Move to filebuf.
3260 (basic_streambuf::_M_set_determinate): Likewise.
3261 (basic_streambuf::_M_is_indeterminate): Likewise.
3262 * include/bits/std_fstream.h (basic_filebuf::_M_filepos): New
3263 non-static data member.
3264 (basic_filebuf::_M_underflow_common): New non-static member function.
3265 (basic_filebuf::_M_underflow, _M_uflow): Call it.
3266 (basic_filebuf::sync): Avoid useless seeking.
3267 (basic_filebuf::_M_set_indeterminate): Move here from streambuf.
3268 Set _M_filepos.
3269 (basic_filebuf::_M_set_determinate): Likewise.
3270 (basic_filebuf::_M_is_indeterminate): Likewise.
3271 * include/bits/fstream.tcc (basic_filebuf::_M_really_overflow): Seek
3272 back to _M_out_beg if necessary.
3273 (basic_filebuf::seekoff): Likewise.
3274 (basic_filebuf::_M_underflow_common): Generalization of old
3275 underflow(). Don't seek back to _M_in_beg.
3276 * src/ios.cc: Lose _GLIBCPP_AVOID_FSEEK stuff.
3277 * config/os/solaris/solaris2.?/bits/os_defines.h: Likewise.
3278 * config/os/bsd/freebsd/bits/os_defines.h: Likewise.
3279 * config/os/mingw32/bits/os_defines.h: Likewise.
3280 * testsuite/27_io/filebuf_virtuals.cc (test05): Don't overspecify
3281 ungetc test.
3282
3283 2002-04-22 Benjamin Kosnik <bkoz@redhat.com>
3284
3285 * include/bits/istream.tcc (istream::read): Fix.
3286 * testsuite/27_io/istream_unformatted.cc (main): Add.
3287
3288 2002-04-20 Benjamin Kosnik <bkoz@redhat.com>
3289
3290 PR libstdc++/6360
3291 * include/bits/istream.tcc (istream::ignore): Streamline, use
3292 delimiter as is.
3293 * include/bits/streambuf.tcc: Use this->gptr.
3294 * testsuite/27_io/istream_unformatted.cc (test08): Add test.
3295
3296 2002-04-18 Benjamin Kosnik <bkoz@redhat.com>
3297
3298 * include/bits/localefwd.h (locale::id::_M_id): Do this correctly,
3299 as type safety is important, especially on solaris.
3300 * include/bits/istream.tcc (istream::read): Clean.
3301 (istream::readsome): Same.
3302 * locale.cc: Wrap lines.
3303
3304 * testsuite/21_strings/inserters_extractors.cc: Tweaks.
3305 * testsuite/27_io/instantiations.cc (test): Add bool variable...
3306 * testsuite/21_strings/capacity.cc: Clean.
3307
3308 2002-04-17 Phil Edwards <pme@gcc.gnu.org>
3309
3310 * docs/doxygen/doxygroups.cc: New group on binary searching.
3311 * include/bits/stl_algo.h: Document binary searches and merges.
3312 * include/bits/stl_deque.h: The 'map' member is not the 'map' class.
3313
3314 2002-04-17 Phil Edwards <pme@gcc.gnu.org>
3315
3316 * docs/doxygen/mainpage.html: Doxygen logo is now a PNG file.
3317 * docs/doxygen/run_doxygen: Bump required version.
3318 * docs/doxygen/user.cfg.in: Revert accidental change.
3319 * docs/html/faq/index.html: Reindent a block of links.
3320 (4.4): New note on using dlsym.
3321 * docs/html/faq/index.txt: Regenerated.
3322
3323 2002-04-17 Phil Edwards <pme@gcc.gnu.org>
3324
3325 * testsuite_flags.in (cxxflags): Also pass @EXTRA_CXX_FLAGS@.
3326
3327 2002-04-17 Benjamin Kosnik <bkoz@redhat.com>
3328
3329 * config/linker-map.gnu (__malloc_alloc_template): Add.
3330 (__default_alloc_template): Same.
3331 * include/bits/stl_alloc.h (__malloc_alloc_template): Add extern
3332 template.
3333 (__default_alloc_template): Same.
3334
3335 2002-04-17 Benjamin Kosnik <bkoz@redhat.com>
3336
3337 * testsuite/27_io/filebuf_virtuals.cc: Add _S_pback_size instantiation.
3338
3339 2002-04-16 Benjamin Kosnik <bkoz@redhat.com>
3340
3341 * src/concept-inst.cc (vector<locale::facet*>): Remove instantiations.
3342 * src/stl-inst.cc (vector::_M_insert_aux): Remove instantiation.
3343 (__malloc_alloc_template): Conditionalize.
3344
3345 * include/bits/istream.tcc: Remove sputbackc calls.
3346
3347 * testsuite/19_diagnostics/stdexceptions.cc: Fix comment.
3348
3349 2002-04-16 Paolo Carlini <pcarlini@unitus.it>
3350
3351 * testsuite/24_iterators/rel_ops.cc: New test.
3352
3353 2002-04-16 Gabriel Dos Reis <gdr@merlin.codesourcery.com>
3354
3355 * include/bits/type_traits.h (__normal_iterator): Declare in
3356 __gnu_cxx. Adjust use at global namespace.
3357 * include/bits/stl_iterator.h (__normal_iterator): Move definition
3358 into __gnu_cxx::. Add more operator overloads. Tidy existing ones.
3359 * include/bits/basic_string.h (basic_string): Adjust use of
3360 __normal_iterator.
3361 * include/bits/stl_vector.h (_Alloc>): Likewise.
3362 * src/concept-inst.cc (__gnu_cxx): __normal_iterator<> is now here.
3363 * src/string-inst.cc (operator==): Instantiate in __gnu_cxx.
3364
3365 2002-04-15 Benjamin Kosnik <bkoz@redhat.com>
3366
3367 PR libstdc++/4164
3368 Valgrind fixes.
3369 * config/io/basic_file_stdio.cc (__basic_file::~__basic_file):
3370 Call close.
3371 (__basic_file::close): Call fflush. Correct return if fclose ok.
3372 (__basic_file::is_open): Make const.
3373 Change __c_file_type to __c_file.
3374 * config/io/basic_file_stdio.h: Change __c_file_type to __c_file.
3375 (__basic_file::is_open): Make const.
3376 * config/io/c_io_stdio.h: Change __c_file_type to __c_file.
3377 * include/std/std_fstream.h (filebuf::_M_allocate_file): Remove.
3378 (filebuf::_M_unbuf): Add.
3379 (filebuf::_M_file): Change to non-pointer.
3380 (filebuf::_M_allocate_pback_buffer): Remove.
3381 * include/bits/fstream.tcc (filebuf::_M_allocate_file): Remove.
3382 (filebuf::_M_allocate_internal_buffer): Use _M_unbuf.
3383 Change initialization list for _M_file change.
3384 (filebuf::_M_allocate_pback_buffer): Remove.
3385 Change _M_file usage to reflect non-pointer data member.
3386
3387 * config/locale/generic/c_locale.cc
3388 (locale::facet::_S_create_c_locale): Add parameter.
3389 * config/locale/generic/collate_members.cc: Change
3390 _M_compare_helper to _M_compare.
3391 Change _M_transform_helper to _M_transform.
3392 * config/locale/generic/monetary_members.cc: Changeup data types.
3393 Add dtors.
3394 * config/locale/generic/numeric_members.cc: Add dtors.
3395 * config/locale/generic/time_members.cc: Add dtors.
3396 * config/locale/gnu/c_locale.cc: Add parameter.
3397 * config/locale/gnu/collate_members.cc:Change
3398 _M_compare_helper to _M_compare.
3399 Change _M_transform_helper to _M_transform.
3400 * config/locale/gnu/ctype_members.cc: Better error checking.
3401 * config/os/gnu-linux/bits/ctype_noninline.h: Better error checking.
3402 * config/locale/gnu/messages_members.cc: Tweak comment.
3403 * config/locale/gnu/monetary_members.cc: Change data types.
3404 Add dtors.
3405 * config/locale/gnu/numeric_members.cc: Add dtors, better error
3406 checking.
3407 * config/locale/gnu/time_members.cc: Same.
3408 * config/locale/ieee_1003.1-2001/c_locale.cc
3409 (locale::facet::_S_create_c_locale): Add parameter.
3410 * config/locale/ieee_1003.1-2001/c_locale.h: Correct typedef.
3411 * config/locale/ieee_1003.1-2001/codecvt_specializations.h: Remove
3412 bogus ctor.
3413
3414 * include/bits/locale_facets.h (moneypunct): Use string literals.
3415 Don't define dtor.
3416 (numpunct): Same.
3417 (__timepunct): Same.
3418 (locale::_Impl::_M_facets): Change from vector to array.
3419 (locale::_Impl::_M_names): Change from array of strings to array
3420 of string literals.
3421 (locale::facet::_S_create_c_locale): Add parameter.
3422 (locale::locale::_S_num_facets): Move to...
3423 (locale::_Impl::_M_facets_size): Here.
3424 * include/bits/locale_facets.tcc: Fixups for _M_facets, _M_name
3425 changes.
3426 * include/bits/localefwd.h: (locale::id::_M_id): Add member function.
3427 (locale::_Impl::_Impl(facet**, size_t, bool)): Add.
3428 (locale::_Impl::_Impl(string, size_t)): Change to
3429 (locale::_Impl::_Impl(const char*, size_t)): This.
3430
3431 * include/bits/streambuf.tcc (streambuf::_S_pback_size): Define.
3432 * include/std/std_streambuf.h (streambuf::_M_pback_size): Change to
3433 (streambuf::_S_pback_size): This.
3434
3435 * src/globals.cc: Add pre-allocations for "C" facets.
3436 * src/locale-inst.cc: Remove vector instantiations.
3437 * src/locale.cc: Remove vector include. Fixups for _M_names,
3438 _M_facets changes.
3439 * src/localename.cc: Same.
3440
3441 * include/bits/stl_vector.h: Fix odd formatting.
3442
3443 * include/bits/basic_string.tcc: Tweak comment.
3444
3445 * libsupc++/new: Make sure parameters are uglified.
3446 * libsupc++/typeinfo: Same.
3447
3448 * testsuite/22_locale/num_get_members_char.cc: Fixup.
3449 * testsuite/22_locale/num_get_members_wchar_t.cc: Same.
3450 * testsuite/27_io/filebuf_members.cc: Same.
3451
3452 2002-04-12 Steve Ellcey <sje@cup.hp.com>
3453
3454 * gcc/libstdc++-v3/config/os/hpux/bits/os_defines.h
3455 (strtoll, strtoull): In 64 bit mode HP-UX (IA64 and HPPA)
3456 does not define strtoll or strtoull, but does define strtol
3457 and strtoul which are the same since in 64 bit mode
3458 sizeof(long) == sizeof(long long).
3459
3460 2002-04-12 Phil Edwards <pme@gcc.gnu.org>
3461
3462 * include/std/std_bitset.h: Doxygenate std::bitset<>. Clean up
3463 trailing spaces, indentation, and macro names. Make exception
3464 messages more informative.
3465
3466 2002-04-11 Richard Henderson <rth@redhat.com>
3467
3468 * include/bits/fstream.tcc (basic_filebuf<>::open): Fix & ordering.
3469 * include/bits/ostream.tcc (basic_ostream<>::operator<<(long)): Same.
3470 (basic_ostream<>::operator<<(long long)): Same.
3471
3472 2002-04-11 Richard Henderson <rth@redhat.com>
3473
3474 * config/linker-map.gnu: Add __gxx_personality_sj0.
3475
3476 2002-04-09 Benjamin Kosnik <bkoz@redhat.com>
3477
3478 libstdc++/1072
3479 * include/bits/localefwd.h (locale::_Impl::_M_facets): Change from
3480 pointer to vector.
3481 Remove forward declaration of vector.
3482 Include vector.
3483 * include/bits/locale_facets.tcc: Remove vector include.
3484 (use_locale): Adjust.
3485 (has_locale): Adjust.
3486 * src/locale.cc: Adjust.
3487 * src/localename.cc: Same.
3488
3489 2002-04-09 Benjamin Kosnik <bkoz@redhat.com>
3490 Richard Henderson <rth@redhat.com>
3491
3492 * include/bits/sstream.tcc: Clean up bit ops.
3493 * include/bits/fstream.tcc: Same.
3494
3495 2002-04-09 Jakub Jelinek <jakub@redhat.com>
3496
3497 * include/bits/locale_facets.h (__num_base::_S_scale_hex): Remove.
3498 (__num_base::_S_scale_oct): Remove.
3499 * src/locale.cc (__num_base::_S_scale_hex): Remove.
3500 (__num_base::_S_scale_oct): Remove.
3501
3502 2002-04-09 Benjamin Kosnik <bkoz@redhat.com>
3503
3504 libstdc++/6124
3505 * testsuite/23_containers/bitset_members.cc: New test.
3506 * include/std/std_bitset.h (_Bit_count::_S_bit_count): Move..
3507 (_S_bit_count): Here.
3508 (_First_one::_S_first_one): Move...
3509 (_S_first_one): Here.
3510 Format.
3511 * src/bitset.cc: Adjust.
3512 * config/linker-map.gnu: Export.
3513
3514 2002-04-08 Benjamin Kosnik <bkoz@redhat.com>
3515
3516 libstdc++/5180
3517 * include/bits/fstream.tcc (filebuf::seekpos): Fix.
3518 * include/std/std_fstream.h: Clean.
3519 * include/bits/ostream.tcc: Remove extraneous variables.
3520 * include/bits/sstream.tcc (stringbuf::seekoff): Be strict about
3521 open modes and which modes.
3522 (stringbuf::seekpos): Same.
3523 * testsuite/27_io/stringbuf_virtuals.cc: New tests.
3524
3525 2002-04-05 Jonathan Wakely <jw@kayari.org>
3526
3527 * include/bits/stl_algo.h (unique_copy, __gcd, rotate, rotate_copy,
3528 random_shuffle, partition, stable_partition, sort, stable_sort,
3529 partial_sort, partial_sort_copy, nth_element): Doxygenate.
3530
3531 2002-04-05 David S. Miller <davem@redhat.com>
3532
3533 * config/os/gnu-linux/bits/os_defines.h
3534 (__glibcpp_long_double_bits): Set to 64 on 32-bit Sparc.
3535
3536 2002-04-04 Benjamin Kosnik <bkoz@redhat.com>
3537
3538 libstdc++/3457
3539 via gawrilow@math.tu-berlin.de
3540 * acinclude.m4 (version_specific_libs): Fix combo usage with
3541 --with-gxx-include-dir.
3542 * aclocal.m4: Regenerate.
3543 * configure: Same.
3544
3545 2002-04-03 Benjamin Kosnik <bkoz@redhat.com>
3546
3547 As per DR 184, libstdc++/3139
3548 * include/std/std_limits.h (__glibcpp_bool_digits): Change to 1.
3549 (numeric_limits<bool>::is_iec559): False.
3550 (numeric_limits<bool>::is_modulo): False.
3551
3552 * testsuite/27_io/ios_init.cc: Add instantiations.
3553
3554 2002-04-02 Benjamin Kosnik <bkoz@redhat.com>
3555
3556 libstdc++/5268
3557 * src/ios.cc: (ios_base::Init::_S_ios_destroy): Remove flush calls.
3558 * testsuite/27_io/ios_init.cc (tests04): Add test.
3559
3560 libstdc++/3983
3561 * include/bits/basic_ios.h (basic_ios::_M_get_fctype_ios): Remove.
3562 (basic_ios::_M_ios_fctype): Consistently name to _M_fctype.
3563 * include/bits/basic_ios.tcc: Same. Remove outdated comments.
3564 * include/bits/istream.tcc: Use _M_fctype, make consistent with
3565 ostream.
3566 * testsuite/27_io/ios_init.cc (tests03): Add test.
3567
3568 2002-04-02 Phil Edwards <pme@gcc.gnu.org>
3569
3570 * include/Makefile.am (install-data-local): Use mkinstalldirs.
3571 * include/Makefile.in: Regenerate.
3572
3573 2002-04-02 Paolo Carlini <pcarlini@unitus.it>
3574 Nathan Myers <ncm@cantrip.org>
3575 Philip Martin <philip@codematters.co.uk>
3576
3577 * include/bits/basic_string.h
3578 (replace(i1, i2, _CharT* k1, _CharT* k2),
3579 replace(i2, i2, const _CharT* k1, const _CharT* k2),
3580 replace(i1, i2, iterator k1, iterator k2,
3581 replace(i1, i2, const_iterator k1, const_iterator k2):
3582 New specializations to optimize for the common cases of
3583 pointers and iterators.
3584 (replace(pos, n1, s, n2)): Tweak.
3585 * include/bits/basic_string.tcc: Tweak comments.
3586 * testsuite/21_strings/replace.cc (test04): New tests.
3587
3588 2002-04-01 Benjamin Kosnik <bkoz@redhat.com>
3589
3590 libstdc++/5542
3591 * acinclude: More extensive checks for msgfmt, --enable-nls.
3592 * aclocal.m4: Regenerate.
3593 * configure: Regenerate.
3594
3595 2002-04-01 Phil Edwards <pme@gcc.gnu.org>
3596
3597 * libsupc++/exception (__verbose_terminate_handler): Point to docs.
3598 * docs/doxygen/doxygroups.cc: Doxygen hooks for abi::__cxa_demangle.
3599 * docs/html/18_support/howto.html: Document the demangler.
3600 * docs/html/17_intro/howto.html: And link to it.
3601
3602 * docs/doxygen/mainpage.html: Describe user-vs-maintainer docs.
3603 * docs/doxygen/run_doxygen: Print user-vs-maintainer.
3604
3605 2002-04-01 Phil Edwards <pme@gcc.gnu.org>
3606
3607 * config/linker-map.gnu: Export __verbose_terminate_handler.
3608 * libsupc++/Makefile.am (sources): Add cxa_demangle.c, dyn-string.c.
3609 Make new LTCOMPILE variable, use it in new special build rules.
3610 * libsupc++/Makefile.in: Rebuild.
3611 * src/vterminate.cc (__verbose_terminate_handler): Enable use of
3612 runtime __cxa_demangle.
3613
3614 * docs/html/install.html: Update prereqs and instructions.
3615 * docs/html/19_diagnostics/howto.html: Bring naming for
3616 verbose_terminate_handler into line with reality.
3617
3618 2002-04-01 Benjamin Kosnik <bkoz@redhat.com>
3619
3620 libstdc++/3129
3621 * include/bits/basic_ios.h (basic_ios::_M_exception): Move.
3622 (basic_ios::_M_streambuf_state): Move.
3623 * include/bits/ios_base (ios_base): To here.
3624 * include/bits/ios_base.h (ios_base::_S_local_words): To
3625 _S_local_word_size.
3626 (ios_base::_M_word_array): To _M_local_word.
3627 (ios_base::_M_words_limit): To _M_word_size.
3628 (ios_base::_M_words): To _M_word.
3629 Comment.
3630 * include/bits/basic_ios.tcc: Adjust.
3631 * src/ios.cc (ios_base::_M_grow_words): Tweak.
3632 * testsuite/27_io/ios_base_storage.cc: Add tests.
3633
3634 libstdc++/5207
3635 Kenny Simpson <theonetruekenny@yahoo.com>
3636 * include/bits/ios_base.h: Fix.
3637
3638 Richard Henderson <rth@redhat.com>
3639 * include/bits/ostream.tcc (ostream::operator<<(_CharT)): Correct
3640 last change.
3641
3642 * include/bits/basic_string.h: Tweak formatting.
3643
3644 2002-04-01 Paolo Carlini <pcarlini@unitus.it>
3645
3646 * config/locale/ieee_1003.1-2001/codecvt_specializations.h
3647 (codecvt::do_out, codecvt::do_unshift, codecvt::do_in):
3648 By definition, sizeof(char) == 1.
3649 * include/bits/locale_facets.tcc (money_get::do_get,
3650 money_put::do_put): Ditto.
3651 * testsuite/21_strings/inserters_extractors.cc
3652 (test04): Ditto.
3653
3654 2002-03-30 Richard Henderson <rth@redhat.com>
3655
3656 PR c++/3719
3657 * libsupc++/eh_personality.cc (__cxa_call_unexpected): Copy handler
3658 data out of the exception struct before calling unexpectedHandler.
3659
3660 2002-03-28 Roger Sayle <roger@eyesopen.com>
3661
3662 * include/c_std/std_cmath.h: To prevent problems overloading
3663 g++ builtins, use the double variants from the global namespace
3664 before defining float and long double variants in std::.
3665
3666 2002-03-28 Loren J. Rittle <ljrittle@acm.org>
3667
3668 * testsuite/18_support/numeric_limits.cc (test_extrema): Fix typo.
3669
3670 2002-03-28 Paolo Carlini <pcarlini@unitus.it>
3671
3672 * testsuite/24_iterators/istream_iterator.cc
3673 (test02): New tests.
3674
3675 2002-03-28 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
3676 Paolo Carlini <pcarlini@unitus.it>
3677
3678 * testsuite/22_locale/codecvt_members_unicode_wchar_t.cc
3679 (test01): Protect the test with _GLIBCPP_USE_WCHAR_T;
3680 fix i_lit_base e_lit_base arrays, making them independent
3681 from the endianness of the platform; tweak UCS4 to UCS-4BE.
3682
3683 2002-03-27 Benjamin Kosnik <bkoz@redhat.com>
3684
3685 * include/bits/ostream.tcc (ostream::operator<<(_CharT)): Always
3686 allocate at least a byte.
3687
3688 * testsuite/18_support/numeric_limits.cc (test_extrema): Make
3689 debugger-friendly.
3690 * testsuite/27_io/streambuf.cc (test07): Fix.
3691 (test06): Enable.
3692
3693 2002-03-27 Phil Edwards <pme@gcc.gnu.org>
3694
3695 * docs/doxygen/Intro.3: Date tweak.
3696 * docs/doxygen/TODO: Update.
3697 * docs/doxygen/doxygroups.cc: Point to tables.html.
3698 * docs/doxygen/mainpage.html: Date tweak.
3699 * docs/doxygen/run_doxygen: Version tweak. Copy tables.html over.
3700 * docs/doxygen/tables.html: Fill in the blanks.
3701
3702 * docs/doxygen/user.cfg.in (ALIASES): Remove maint and endmaint.
3703 * include/bits/stl_algo.h: Likewise; use expanded form.
3704 * include/bits/stl_alloc.h: Likewise.
3705 * include/bits/stl_construct.h: Likewise.
3706 * include/bits/stl_deque.h: Likewise.
3707 * include/bits/stl_iterator_base_types.h: Likewise.
3708 * include/bits/stl_list.h: Likewise.
3709 * include/bits/stl_relops.h: Likewise.
3710 * include/bits/stl_tempbuf.h: Likewise.
3711 * include/bits/stl_vector.h: Likewise.
3712 * include/std/std_memory.h: Likewise.
3713
3714 * include/bits/stl_deque.h: Point into tables.html and add @ingroup.
3715 * include/bits/stl_list.h: Likewise.
3716 * include/bits/stl_vector.h: Likewise.
3717
3718 2002-03-26 Benjamin Kosnik <bkoz@redhat.com>
3719
3720 * include/c/: Guard with _CPP_.
3721 * include/c_std/: Same.
3722 * include/Makefile.am: Fixup install, link routines for null
3723 c_base_headers_extra scenarios.
3724 * include/Makefile.in: Regerate.
3725
3726 2002-03-25 Paolo Carlini <pcarlini@unitus.it>
3727 Richard Henderson <rth@redhat.com>
3728
3729 * testsuite/22_locale/codecvt_members_unicode_char.cc
3730 (test01, test02): make sure that the i_lit_base array
3731 is sufficiently aligned.
3732
3733 2002-03-25 Benjamin Kosnik <bkoz@redhat.com>
3734
3735 * config/os/newlib/bits/ctype_noninline.h (ctype::classic): Set to
3736 _ctype_.
3737
3738 2002-03-25 Paolo Carlini <pcarlini@unitus.it>
3739
3740 * testsuite/22_locale/collate_byname.cc
3741 (test01): compare the result of collate::compare with
3742 that of collate::transform + string::compare, not with
3743 that of collate::transform + collate::compare; values
3744 returned by collate::compare are normalized, therefore
3745 test against +-1.
3746
3747 2002-03-25 Benjamin Kosnik <bkoz@redhat.com>
3748 Jakub Jelinek <jakub@redhat.com>
3749
3750 * config/locale/gnu/messages_members.h: Correct conditional.
3751 * config/locale/gnu/messages_members.cc: Same.
3752 * config/locale/gnu/time_members.cc: Same.
3753
3754 2002-03-25 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
3755 Paolo Carlini <pcarlini@unitus.it>
3756
3757 * testsuite/22_locale/codecvt_members_unicode_char.cc
3758 (test01, test02): Fix i_lit_base arrays, making them
3759 independent from the endianness of the platform.
3760
3761 2002-03-22 Benjamin Kosnik <bkoz@redhat.com>
3762
3763 * acinclude.m4 (GLIBCPP_CHECK_COMPLEX_MATH_SUPP): Just test for
3764 signbit and __signbit directly.
3765 * aclocal.m4: Regenerate.
3766 * configure: Regenerate.
3767 * config.h.in: Regenerate.
3768 * libmath/Makefile.am: Simplify.
3769 * libmath/Makefile.in: Regenerate.
3770 * include/c_std/std_cmath.h: Update paths for include of cmath.tcc.
3771
3772 * include/Makefile.am: Clean up handling of extra "C" header files.
3773 Add hooks for "C" compatibility headers.
3774 * include/Makefile.in: Regenerate.
3775
3776 * include/c/*: Formatting tweaks, cleanups.
3777 * include/c_std/*: Same.
3778
3779 2002-03-22 Benjamin Kosnik <bkoz@redhat.com>
3780
3781 * config/locale/gnu/messages_members.h: Add __uselocale bits.
3782 * config/locale/gnu/messages_members.cc: Same.
3783 * config/locale/gnu/time_members.cc: Same.
3784
3785 2002-03-22 Benjamin Kosnik <bkoz@redhat.com>
3786
3787 * src/vterminate.cc: Format, -fno-exceptions cleanup.
3788
3789 2002-03-21 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
3790
3791 * acinclude.m4 (GLIBCPP_CHECK_STDLIB_DECL_AND_LINKAGE_3): New.
3792 (GLIBCPP_CONFIGURE_TESTSUITE): Use it to check for setenv.
3793 * aclocal.m4: Regenerate.
3794 * configure: Likewise.
3795
3796 2002-03-19 Paolo Carlini <pcarlini@unitus.it>
3797 Ulrich Drepper <drepper@redhat.com>
3798
3799 * src/locale-inst.cc (__convert_from_v): Add an additional
3800 __size parameter in the declarations.
3801 * include/bits/locale_facets.tcc
3802 (__convert_from_v): When available (that is,
3803 _GLIBCPP_USE_C99 defined) use snprintf instead of sprintf.
3804 (num_put::_M_convert_float): Depending on _GLIBCPP_USE_C99
3805 being defined or not, call and use __convert_from_v in the
3806 appropriate way.
3807 (num_put::_M_convert_int): Same here.
3808 (money_put::do_put(long double)): Same here.
3809
3810 2002-03-19 Phil Edwards <pme@gcc.gnu.org>
3811
3812 * docs/html/faq/index.html (#3.6): Rewrap and close <a href> tags.
3813 * docs/html/faq/index.txt: Regenerate.
3814
3815 2002-03-19 Steve Ellcey <sje@cup.hp.com>
3816
3817 * acinclude.m4 (GLIBCPP_ENABLE_LIBUNWIND_EXCEPTIONS): Define
3818 GLIBCPP_ENABLE_LIBUNWIND_EXCEPTIONS to set LIBUNWIND_FLAG if
3819 --enable-libunwind-exceptions is set.
3820 * configure.in (GLIBCPP_ENABLE_LIBUNWIND_EXCEPTIONS): Call new
3821 macro to check for libunwind.
3822 * configure: Regenerate.
3823 * src/Makefile.am (libstdc___la_LDFLAGS): Add
3824 LIBUNWIND_FLAG to libstdc link line.
3825 * src/Makefile.in: Regenerate.
3826
3827 2002-03-19 Benjamin Kosnik <bkoz@redhat.com>
3828
3829 * docs/html/faq/index.html: Add OS X workaround.
3830 * docs/html/17_intro/TODO: Update.
3831
3832 2002-03-18 Paolo Carlini <pcarlini@unitus.it>
3833
3834 * include/bits/locale_facets.tcc
3835 (money_put::do_put(long double)): Fix dimensioning of
3836 temporary buffers to avoid risk of overruns.
3837 (money_put::do_put(string)): Same for the buffer used to
3838 add the grouping chars.
3839 * testsuite/22_locale/money_put_members_char.cc: Add test06.
3840 * testsuite/22_locale/money_put_members_wchar_t.cc: Ditto.
3841
3842 * include/bits/locale_facets.tcc
3843 (collate::do_transform): Simplify.
3844
3845 2002-03-18 Phil Edwards <pme@gcc.gnu.org>
3846
3847 * acinclude.m4 (GLIBCPP_CONFIGURE): Make indentation/spacing uniform.
3848 * configure.in: Add comments pointing the way for autoconf 2.5x.
3849 * aclocal.m4, config.h.in, configure: Regenerate.
3850
3851 2002-03-18 Philipp Thomas <pthomas@suse.de>
3852
3853 * include/backward/hash_map.h: hash, hashtable, hash_map and
3854 hash_multimap are in namespace __gnu_cxx.
3855 include/backward/hash_set.h: hash, hashtable, hash_set and
3856 hash_multiset are in namespace __gnu_cxx.
3857 include/backward/hashtable.h: hash and hashtable are in
3858 namespace __gnu_cxx.
3859 include/backward/rope.h: char_producer, sequence_buffer,
3860 rope, crope and wrope are in namespace __gnu_cxx.
3861 include/backward/slist.h: slist is in namespace __gnu_cxx.
3862 * testsuite/backward/header_hash_map_h.cc
3863 testsuite/backward/header_hash_set_h.cc
3864 testsuite/backward/header_hashtable_h.cc
3865 testsuite/backward/header_rope_h.cc
3866 testsuite/backward/header_slist_h.cc
3867 testsuite/backward/header_tempbuf_h.cc: New tests for
3868 checking that we're using the correct namespace.
3869
3870 2002-03-17 Jason Merrill <jason@redhat.com>
3871
3872 PR c++/4381
3873 * libsupc++/eh_personality.cc (get_adjusted_ptr): New static fn.
3874 (check_exception_spec): Call it. Take the thrown pointer.
3875 (__cxa_call_unexpected): Pass it.
3876 (PERSONALITY_FUNCTION): Likewise. Use get_adjusted_ptr.
3877
3878 2002-03-15 Anthony Green <green@redhat.com>
3879
3880 * configure.in: Remove useless is_mingw32.
3881 * configure: Rebuilt.
3882
3883 2002-03-15 Paolo Carlini <pcarlini@unitus.it>
3884
3885 * testsuite/22_locale/collate_members_char.cc
3886 (test01): compare the result of collate::compare with
3887 that of collate::transform + string::compare, not with
3888 that of collate::transform + collate::compare.
3889 (test01): values returned by collate::compare are
3890 normalized, therefore test against +-1.
3891 * testsuite/22_locale/collate_members_wchar_t.cc: Ditto.
3892
3893 2002-03-12 Loren Rittle <ljrittle@acm.org>
3894
3895 reported by Peter Schmid <schmid@snake.iap.physik.tu-darmstadt.de>
3896 * testsuite/thread/pthread4.cc: Lower nominal iteration counter.
3897
3898 2002-03-12 Benjamin Kosnik <bkoz@redhat.com>
3899 Per Liboriussen <liborius@stofanet.dk>
3900
3901 * config/os/gnu-linux/bits/ctype_noninline.h: Cast to
3902 unsigned char.
3903 * config/os/gnu-linux/bits/ctype_inline.h: Same.
3904
3905 * config/os/irix/irix6.5/bits/ctype_inline.h: Same.
3906
3907 * config/os/solaris/solaris2.5/bits/ctype_inline.h: Same.
3908 * config/os/solaris/solaris2.5/bits/ctype_noninline.h: Same.
3909
3910 * config/os/solaris/solaris2.6/bits/ctype_inline.h: Same.
3911 * config/os/solaris/solaris2.6/bits/ctype_noninline.h: Same.
3912
3913 * config/os/solaris/solaris2.7/bits/ctype_inline.h: Same.
3914 * config/os/solaris/solaris2.7/bits/ctype_noninline.h: Same.
3915
3916 * testsuite/22_locale/ctype_members_char.cc (main): Add tests.
3917
3918 2002-03-12 Benjamin Kosnik <bkoz@redhat.com>
3919
3920 * include/bits/basic_string.tcc (string::_S_construct(_InIter,
3921 _InIter, const _Alloc&, forward_iterator_tag): Check for null.
3922 (string::basic_string(const _CharT* __s, const _Alloc& __a)): Same.
3923 * testsuite/21_strings/ctor_copy_dtor.cc (test01): Re-enable, now
3924 that memory limits are in place.
3925 (test03): Add tests.
3926
3927 2002-03-11 Benjamin Kosnik <bkoz@redhat.com>
3928
3929 * acinclude.m4 (GLIBCPP_CHECK_WCHAR_T_SUPPORT): Check for wctype.h.
3930 * aclocal.m4: Regenerate.
3931 * config.h.in: Regenerate.
3932 * configure: Regenerate.
3933 * include/c_std/std_cwctype.h: Guard.
3934
3935 2002-03-11 Chris Demetriou <cgd@broadcom.com>
3936
3937 * acinclude.m4 (GLIBCPP_ENABLE_SYMVERS): Enhance check for
3938 whether GLIBCPP_CHECK_LINKER_FEATURES has been used.
3939 * aclocal.m4: Regenerate.
3940 * configure: Regenerate.
3941
3942 2002-03-11 Benjamin Kosnik <bkoz@redhat.com>
3943
3944 * include/bits/stl_bvector.h: Fix warning.
3945
3946 2002-03-11 Richard Henderson <rth@redhat.com>
3947
3948 * include/bits/stl_bvector.h (_Bit_type): New. Use throughout.
3949
3950 2002-03-11 Phil Edwards <pme@gcc.gnu.org>
3951
3952 * testsuite/lib/libstdc++-v3-dg.exp (libstdc++-v3-list-sourcefiles):
3953 New function. Build the list of tests to run in testsuite_files.
3954 * testsuite/libstdc++-v3.dg/dg.exp: Use it.
3955
3956 2002-03-11 Phil Edwards <pme@gcc.gnu.org>
3957
3958 * testsuite/21_strings/capacity.cc: Only explicitly instantiate on
3959 platforms with no weak support.
3960 * testsuite/27_io/ios_init.cc: Likewise.
3961
3962 2002-03-10 Paolo Carlini <pcarlini@unitus.it>
3963
3964 * include/bits/locale_facets.tcc (time_put::do_put):
3965 Consider sizeof(char_type) in allocating the buffer.
3966
3967 * include/bits/locale_facets.tcc (collate::do_tranform):
3968 Remove redundant variable.
3969
3970 2002-03-10 Ulrich Drepper <drepper@redhat.com>
3971 Paolo Carlini <pcarlini@unitus.it>
3972
3973 * config/locale/generic/collate_members.cc
3974 (collate<char,wchar_t>::_M_compare_helper): normalize
3975 values returned by strcoll and wcscoll.
3976 * config/locale/gnu/collate_members.cc
3977 (collate<char,wchar_t>::_M_compare_helper): ditto
3978 for __strcoll_l and __wcscoll_l.
3979
3980 2002-03-10 Anthony Green <green@redhat.com>
3981
3982 * configure.in: Support cross builds to mingw32 target.
3983 * configure: Rebuilt.
3984
3985 2002-03-09 Paolo Carlini <pcarlini@unitus.it>
3986
3987 * include/bits/locale_facets.tcc (collate::do_transform):
3988 Rewrite to fix problems with long transformed strings.
3989
3990 2002-03-08 Benjamin Kosnik <bkoz@redhat.com>
3991
3992 * c_locale_generic.cc: Move to...
3993 * generic/c_locale.cc
3994 * c_locale_generic.h: Move to...
3995 * generic/c_locale.h
3996 * codecvt_specializations_generic.h: Move to...
3997 * generic/codecvt_specializations.h
3998 * collate_members_generic.cc: Move to...
3999 * generic/collate_members.cc
4000 * ctype_members_generic.cc: Move to...
4001 * generic/ctype_members.cc
4002 * messages_members_generic.cc: Move to...
4003 * generic/messages_members.cc
4004 * messages_members_generic.h: Move to...
4005 * generic/messages_members.h
4006 * moneypunct_members_generic.cc: Move to...
4007 * generic/monetary_members.cc
4008 * numpunct_members_generic.cc: Move to...
4009 * generic/numeric_members.cc
4010 * time_members_generic.cc: Move to...
4011 * generic/time_members.cc
4012 * c_locale_gnu.cc: Move to...
4013 * gnu/c_locale.cc
4014 * c_locale_gnu.h: Move to...
4015 * gnu/c_locale.h
4016 * collate_members_gnu.cc: Move to...
4017 * gnu/collate_members.cc
4018 * ctype_members_gnu.cc: Move to...
4019 * gnu/ctype_members.cc
4020 * messages_members_gnu.cc: Move to...
4021 * gnu/messages_members.cc
4022 * messages_members_gnu.h: Move to...
4023 * gnu/messages_members.h
4024 * moneypunct_members_gnu.cc: Move to...
4025 * gnu/monetary_members.cc
4026 * numpunct_members_gnu.cc: Move to...
4027 * gnu/numeric_members.cc
4028 * time_members_gnu.cc: Move to...
4029 * gnu/time_members.cc
4030 * c_locale_ieee_1003.1-200x.cc: Move to...
4031 * ieee_1003.1-2001/c_locale.cc
4032 * c_locale_ieee_1003.1-200x.h: Move to...
4033 * ieee_1003.1-2001/c_locale.h
4034 * codecvt_specializations_ieee_1003.1-200x.h: Move to...
4035 * ieee_1003.1-2001/codecvt_specializations.h
4036 * messages_members_ieee_1003.1-200x.cc: Move to...
4037 * ieee_1003.1-2001/messages_members.cc
4038 * messages_members_ieee_1003.1-200x.h: Move to...
4039 * ieee_1003.1-2001/messages_members.h
4040
4041 * acinclude.m4 (GLIBCPP_ENABLE_CLOCALE): Make consistent.
4042 * aclocal.m4: Regenerate.
4043 * configure: Regenerate.
4044 * src/Makefile.am (sources): Change to monetary and numeric.
4045 * src/Makefile.in: Regenerate.
4046 * docs/html/configopts.html: Update to ieee_1003.1-2001.
4047
4048 2002-03-08 scott snyder <snyder@fnal.gov>
4049
4050 libstdc++/5875
4051 * include/bits/locale_facets.tcc (num_put::_M_convert_float):
4052 Allow one more digit of precision.
4053 * testsuite/27_io/ostream_inserter_arith.cc: Test that we can
4054 write a double and read back in the same value.
4055
4056 2002-03-08 Benjamin Kosnik <bkoz@redhat.com>
4057
4058 * include/std/std_limits.h: Move static const data members out of
4059 generic template, into base class __numeric_limits_base.
4060 * src/limits.cc: Add definitions.
4061 * config/linker-map.gnu: Add __numeric_limits_base.
4062 * testsuite/18_support/numeric_limits.cc: Declare test in scope.
4063
4064 2002-03-07 Benjamin Kosnik <bkoz@redhat.com>
4065
4066 * include/bits/stl_alloc.h: Add extern implicit allocator
4067 instantiations.
4068 * include/bits/basic_string.tcc: Tweak.
4069 * include/bits/locale_facets.tcc: Remove default args. Add
4070 has_facet, use_facet extern instantiations.
4071 * src/stl-inst.cc: Add explicit instantiation.
4072 * src/locale-inst.cc: Clean. Remove locale member template
4073 instantiations.
4074
4075 * testsuite/22_locale/operators.cc (test02): Enable.
4076
4077 2002-03-06 Benjamin Kosnik <bkoz@redhat.com>
4078 Stephen M. Webb <stephen.webb@bregmasoft.com>
4079
4080 * include/bits/stl_tree.h (_S_rb_tree_red): Make enum.
4081 (_S_rb_tree_black): Make enum.
4082 Clean. Format.
4083 * include/bits/stl_bvector.h (__WORD_BIT): To _M_word_bit, enum.
4084 * include/bits/stl_algo.h (__stl_chunk_size): _M_chunk_size, enum.
4085 (__stl_threshold): _M_threshold, enum.
4086 * src/stl-inst.cc: Same.
4087 * config/linker-map.gnu: Remove.
4088
4089 * testsuite/23_containers/vector_bool.cc: New.
4090
4091 2002-03-06 Phil Edwards <pme@gcc.gnu.org>
4092
4093 * docs/doxygen/user.cfg.in: Also document deprecated entries.
4094 * docs/html/Makefile: Example rule to rebuild porting-howto.html.
4095 * docs/html/17_intro/howto.html: "gcc"->"GCC" changes, when
4096 referring to the collection as a whole. New section on which macros
4097 can be redefined by the user.
4098 * docs/html/19_diagnostics/howto.html: Update note for concepts.
4099 * docs/html/20_util/howto.html: Update link to SGI.
4100 * docs/html/faq/index.html: Update snapshot versions. New entry
4101 on why g++ (but not gcc) must currently predefine certain macros.
4102 * docs/html/faq/index.txt: Regenerated.
4103
4104 * include/bits/basic_string.h (basic_string::_S_construct): Fix
4105 names in declaration.
4106 (basic_string::compare): These are no longer optional.
4107 * include/bits/ostream.tcc: Tweak closing brace placement.
4108 * include/bits/stl_algo.h: Lots of initial doxygen comment hooks.
4109 * include/std/std_sstream.h: Fix typo in comment.
4110 * include/bits/locale_facets.tcc: Remove unneeded header inclusion.
4111 * src/locale.cc: Likewise.
4112
4113 2002-03-06 Phil Edwards <pme@gcc.gnu.org>
4114
4115 PR libstdc++/5734
4116 * include/bits/stl_vector.h (vector::push_back()): Guard with
4117 _GLIBCPP_DEPRECATED.
4118
4119 2002-03-06 Phil Edwards <pme@gcc.gnu.org>
4120
4121 * include/bits/c++config: Fix misplaced leading blanks on first line.
4122
4123 2002-03-05 Benjamin Kosnik <bkoz@redhat.com>
4124
4125 * docs/html/17_intro/RELEASE-NOTES: Fix usage.
4126 * README (libmath): Make clear.
4127
4128 2002-03-05 Jakub Jelinek <jakub@redhat.com>
4129
4130 * acinclude.m4 (GLIBCPP_ENABLE_SYMVERS): Check for version
4131 script globbing in ld.
4132 * aclocal.m4: Rebuilt.
4133 * configure: Rebuilt.
4134
4135 2002-03-05 Benjamin Kosnik <bkoz@redhat.com>
4136
4137 * docs/html/17_intro/RELEASE-NOTES: Update.
4138 * README: Format subdirectories.
4139
4140 2002-03-05 Paolo Carlini <pcarlini@unitus.it>
4141
4142 libstdc++/5816
4143 * include/bits/locale_facets.tcc
4144 (num_get::_M_extract_float): Fix the parsing of __dec, since
4145 the standard prescribes that if no grouping characters are
4146 seen, no grouping check is applied.
4147 * testsuite/22_locale/num_get_members_char.cc: Add test05
4148 distilled from the PR.
4149 * testsuite/22_locale/num_get_members_wchar_t.cc: Ditto.
4150
4151 2002-03-04 Craig Rodrigues <rodrigc@gcc.gnu.org>
4152
4153 * docs/html/17_intro/porting-howto.xml: Refer to
4154 http://www.oasis-open.org for docbookx.dtd.
4155 * docs/html/17_intro/porting-howto.html: Regenerated.
4156
4157 2002-03-03 Phil Edwards <pme@gcc.gnu.org>
4158
4159 PR libstdc++/3955
4160 * include/std/std_sstream.h: Remove trailing spaces.
4161 (basic_stringbuf::_M_stringbuf_init): Also check for ios_base::app.
4162 * testsuite/27_io/stringbuf.cc (test05, test06): New tests.
4163
4164 2002-03-02 Paolo Carlini <pcarlini@unitus.it>
4165
4166 * testsuite/22_locale/num_get_members_char.cc (test04):
4167 Use a named locale expecting grouping (de_DE).
4168 * testsuite/22_locale/num_get_members_wchar_t.cc (test04):
4169 Ditto.
4170 * testsuite/27_io/ios_manip_basefield.cc (test01):
4171 Extend coverage, uniform treatment of hexs and octs.
4172
4173 2002-02-28 Richard Henderson <rth@redhat.com>
4174
4175 * config/linker-map.gnu: Export operator new with unsigned long,
4176 and with std::nothrow_t. Likewise operator delete.
4177
4178 2002-02-28 Paolo Carlini <pcarlini@unitus.it>
4179
4180 * include/bits/locale_facets.tcc (num_get::_M_extract_int):
4181 Admit grouping for octals and hexadecimals too.
4182 * testsuite/22_locale/num_get_members_char.cc: Add test04.
4183 (test01): Tweak "." -> "," in void* test.
4184 * testsuite/22_locale/num_get_members_wchar_t.cc: Ditto.
4185
4186 * testsuite/27_io/ios_manip_basefield.cc: Remove static keyword.
4187 * testsuite/27_io/ios_manip_fmtflags.cc: Remove two of them.
4188
4189 2002-02-27 Paolo Carlini <pcarlini@unitus.it>
4190
4191 * testsuite/27_io/ios_manip_basefield.cc (test01):
4192 Fix for 64 bit machines.
4193
4194 2002-02-26 Benjamin Kosnik <bkoz@redhat.com>
4195
4196 libstdc++/3983
4197 * include/bits/basic_ios.tcc (basic_ios::init): Set _M_fill to zero.
4198 Adjust comment.
4199 * include/bits/basic_ios.h (basic_ios::_M_fill): Make mutable.
4200 (basic_ios::_M_fill_init): New.
4201 (basic_ios::fill()): Delay dealing with _M_fill.
4202 Adjust comment.
4203 * ios.cc (ios_base::ios_base()): Initialize _M_callbacks, _M_words.
4204 (ios_base::_M_call_callbacks): Adjust.
4205 * testsuite/27_io/ios_init.cc (test02): Adjust testcase.
4206
4207 2002-02-26 Loren Rittle <ljrittle@acm.org>
4208
4209 * include/Makefile.am (thread_target_headers): Unconditionally
4210 stage and install gthr-posix.h.
4211 (${target_builddir}/gthr-posix.h): New rule cloned off
4212 ${target_builddir}/gthr-default.h.
4213 (${target_builddir}/gthr-default.h): Support chained inclusion
4214 of gthr support headers.
4215 * include/Makefile.in: Rebuilt.
4216
4217 2002-02-26 Paolo Carlini <pcarlini@unitus.it>
4218
4219 * include/bits/locale_facets.tcc (num_put::_M_widen_int):
4220 Group all the integral types, not only decs.
4221 * testsuite/27_io/ios_manip_basefield.cc (test01): Tweak existing
4222 tests, add a few more.
4223
4224 2002-02-25 Benjamin Kosnik <bkoz@redhat.com>
4225
4226 * src/ios.cc (ios_base::~ios_base): Tweak.
4227 (ios_base::_M_call_callbacks): Deal with null __p.
4228 (ios_base::ios_base): Set _M_callbacks.
4229 * include/bits/basic_ios.tcc (basic_ios::init): Adjust comment.
4230 * testsuite/27_io/ios_init.cc (test02): Fix.
4231
4232 * mkcheck.in (static_fail): Failed links go to output file.
4233
4234 2002-02-25 Phil Edwards <pme@gcc.gnu.org>
4235
4236 * docs/html/faq/index.html: Update.
4237 * docs/html/faq/index.txt: Regenerate.
4238
4239 2002-02-22 Phil Edwards <pme@gcc.gnu.org>
4240
4241 * acinclude.m4 (GLIBCPP_ENABLE_SYMVERS): Fix comment.
4242 * aclocal.m4: Regenerate.
4243 * docs/html/configopts.html: Document --enable-symvers.
4244 * config/linker-map.gnu: Break libsupc++ symbols out to their own tag.
4245
4246 2002-02-22 Philipp Thomas <pthomas@suse.de>
4247
4248 * include/backward/tempbuf.h: get_temporary_buffer and
4249 return_temporary_buffer are in namespace std, not in __gnu_cxx.
4250
4251 2002-02-21 Benjamin Kosnik <bkoz@redhat.com>
4252
4253 * configure.in (target_alias): Default to yes.
4254 * acinclude.m4 (GLIBCPP_ENABLE_SYMVERS): Add check for shared
4255 libgcc to default case.
4256
4257 2002-02-20 Phil Edwards <pme@gcc.gnu.org>
4258
4259 * acinclude.m4 (GLIBCPP_CHECK_LINKER_FEATURES): Also check version.
4260 (GLIBCPP_ENABLE_SYMVERS): Redo logic, use linker version.
4261 * configure.in (GLIBCPP_ENABLE_SYMVERS): Move later in the script.
4262 * aclocal.m4: Regenerate.
4263 * configure: Regenerate.
4264 * config/linker-map.dummy: New file. Contains nothing useful.
4265
4266 2002-02-20 Benjamin Kosnik <bkoz@redhat.com>
4267
4268 * testsuite/22_locale/money_put_members_char.cc: Fix.
4269 * testsuite/22_locale/money_put_members_wchar_t.cc: Fix.
4270
4271 * testsuite/27_io/standard_manipulators.cc: New file.
4272
4273 * testsuite/27_io/ios_manip_basefield.cc: Check results, now failing.
4274 * testsuite/27_io/ios_manip_fmtflags.cc: Use locale::classic().
4275
4276 2002-02-20 Danny Smith <dannysmith@users.sourceforge.net>
4277
4278 * config/os/mingw32/bits/ctype_noninline.h
4279 (ctype<char>::ctype): Remove default args from parm list.
4280 * config/os/djgpp/bits/ctype_noninline.h: Same.
4281
4282 2002-02-19 Benjamin Kosnik <bkoz@redhat.com>
4283
4284 * include/std/std_iomanip.h: Inline, tweaks.
4285 * config/linker-map.gnu: Remove hacks.
4286
4287 * testsuite/21_strings/capacity.cc: Add explicit instantiations.
4288 * testsuite/27_io/ios_init.cc: Same.
4289 * testsuite/22_locale/money_get_members_char.cc (test07): Fix.
4290 * testsuite/22_locale/money_get_members_wchar_t.cc (test07): Same.
4291
4292 2002-02-19 Benjamin Kosnik <bkoz@redhat.com>
4293
4294 * config/linker-map.gnu: Export global vtable, typeinfo, guard
4295 variable, and thunk info as per CXXABI docs.
4296
4297 2002-02-19 Loren Rittle <ljrittle@acm.org>
4298
4299 * include/Makefile.am: Use CONFIG_HEADER instead of ad hoc names.
4300 * include/Makefile.in: Rebuilt.
4301
4302 2002-02-18 Peter Schmid <schmid@snake.iap.physik.tu-darmstadt.de>
4303
4304 * testsuite/22_locale/collate_byname.cc (test01): Replace size4
4305 with size3 for the string collations of str5.
4306
4307 2002-02-18 Paolo Carlini <pcarlini@unitus.it>
4308
4309 libstdc++/5708
4310 * include/bits/locale_facets.tcc (money_put::do_put):
4311 For the space field use __fill instead of ' ', uniformly.
4312 * testsuite/22_locale/money_put_members_char.cc:
4313 Add test05 distilled from PR.
4314 (test01-02-03): Trim some '*' to ' '.
4315 * testsuite/22_locale/money_put_members_wchar_t.cc: Ditto.
4316
4317 2002-02-18 Loren Rittle <ljrittle@acm.org>
4318
4319 libstdc++/5697
4320 * include/Makefile.am (thread_builddir): Remove (map all
4321 existing uses to target_builddir).
4322 (thread_headers): Rename to...
4323 (thread_target_headers): ...this.
4324 (stamp-thread): Remove.
4325 (stamp-target): Correctly state the position as built.
4326 Update all dependencies to match the new reality. Remove all
4327 dependency calculations on directories.
4328 * include/Makefile.in: Rebuilt.
4329
4330 2002-02-16 Benjamin Kosnik <bkoz@redhat.com>
4331
4332 * include/bits/locale_facets.tcc: Add pragma GCC system_header.
4333 * include/bits/fstream.tcc: Same.
4334 * include/bits/sstream.tcc: Same.
4335 * include/bits/ostream.tcc: Same.
4336 * include/bits/istream.tcc: Same.
4337 * include/bits/streambuf.tcc: Same.
4338 * include/bits/basic_ios.tcc: Same.
4339 * include/bits/basic_string.tcc: Same.
4340
4341 2002-02-15 Benjamin Kosnik <bkoz@redhat.com>
4342
4343 * include/std/std_iosfwd.h: Don't guard typedefs with
4344 _GLIBCPP_USE_WCHAR_T
4345 * include/bits/stringfwd.h: Same.
4346
4347 2002-02-15 Benjamin Kosnik <bkoz@redhat.com>
4348
4349 * src/locale.cc (moneypunct_byname): Remove definitions.
4350 * include/std/std_streambuf.h (streambuf::operator=): Return.
4351
4352 2002-02-15 Benjamin Kosnik <bkoz@redhat.com>
4353
4354 Tune for size.
4355 * src/string-inst.cc (string::_Rep::_S_terminal): Remove redundant
4356 explicit instantiation.
4357 (string::_Rep::_S_max_size): Same.
4358 * include/bits/basic_string.tcc: Add extern explicit
4359 instantiations for string, wstring.
4360 * include/bits/basic_ios.tcc: Add extern explicit instantiations
4361 for ios, wios.
4362 * include/bits/streambuf.tcc: Same, for streambuf, wstreambuf.
4363 * include/bits/istream.tcc: Same, for istream, wistream.
4364 * include/bits/ostream.tcc: Same for ostream, wostream, iostream,
4365 wiostream.
4366 * include/bits/sstream.tcc: Same, for stringbuf, wstringbuf,
4367 istringstream, wistringstream, ostringstream, wostringstream,
4368 stringstream, wstringstream.
4369 * include/bits/fstream.tcc: Same, for filebuf, wfilebuf, ifstream,
4370 wifstream, ofstream, wofstream, fstream, wfstream.
4371 * src/misc-inst.cc: Correct comments.
4372 Add iomanip instantiations for wide streams.
4373 * include/std/std_iomanip.h: Same.
4374 * include/bits/locale_facets.tcc: Same.
4375
4376 * include/std/std_streambuf.h: Correct
4377 _GLIBCPP_FULLY_COMPLIANT_HEADERS guard.
4378 * include/std/std_sstream.h: Same.
4379 * include/std/std_ostream.h: Same.
4380 * include/std/std_istream.h: Same.
4381 * include/std/std_fstream.h: Same.
4382
4383 * include/std/std_streambuf.h: Add definitions for private copy
4384 ctor and assignment operator.
4385 * include/std/std_istream.h: Remove declared but undefined copy
4386 ctor and assignment operator. This is taken care of in ios_base,
4387 so adding it in the derived class as well is superfluous.
4388 * include/std/std_ostream.h: Same.
4389
4390 * include/bits/basic_ios.h (basic_ios::clear): Don't inline.
4391 * include/bits/basic_ios.tcc (basic_ios::clear): Move definition here.
4392
4393 2002-02-14 Benjamin Kosnik <bkoz@redhat.com>
4394
4395 * config/linker-map.gnu: Change tag from GCC_3.1 to GLIBCPP_3.1.
4396 Add typeinfo bits. Smooth.
4397 * aclocal.m4: Regenerate.
4398 * configure: Same.
4399 * src/Makefile.in: Same.
4400
4401 2001-02-14 Joel Sherrill <joel@OARcorp.com>
4402
4403 * config/cpu/m68k/bits/atomicity.h: Corrected for RTEMS targets
4404 which do not have a CAS instruction.
4405
4406 2002-02-14 Phil Edwards <pme@gcc.gnu.org>
4407
4408 * acinclude.m4 (GLIBCPP_ENABLE_SYMVERS): New macro, initial revision.
4409 * configure.in: Call it.
4410 * config/linker-map.gnu: New file, initial incomplete revision.
4411 * src/Makefile.am: Optionally pass version script to the linker.
4412 * aclocal.m4: Regenerate.
4413 * configure: Regenerate.
4414 * src/Makefile.in: Regenerate.
4415
4416 2002-02-13 Benjamin Kosnik <bkoz@redhat.com>
4417
4418 * src/localename.cc: Remove stdexcept include.
4419 * src/locale-inst.cc: Same.
4420 * src/locale.cc: Same.
4421 * src/functexcept.cc: Remove string includes.
4422 * include/std/std_bitset.h: Remove stdexcept include.
4423 * testsuite/23_containers/bitset_members.cc: Add stdexcept.
4424 * testsuite/23_containers/bitset_ctor.cc: Same.
4425
4426 2002-02-11 Benjamin Kosnik <bkoz@redhat.com>
4427
4428 * include/bits/stl_algo (__stl_threshold): Declare external.
4429 (__stl_chunk_size): Same.
4430 * include/bits/stl_bvector.h (__WORD_BIT): Same.
4431 * include/bits/stl_tree.h (_S_rb_tree_red): Same.
4432 (_S_rb_tree_black): Same.
4433 * src/stl-inst.cc (__stl_threshold): Define.
4434 (__stl_chunk_size): Same.
4435 (__WORD_BIT): Same.
4436 (_S_rb_tree_red): Same.
4437 (_S_rb_tree_black): Same.
4438
4439 * config/io/basic_file_libio.h (__basic_file): Add declarations.
4440 * include/bits/basic_file.h: Remove.
4441 * config/io/c_io_stdio.h: Remove _GLIBCPP_BASIC_FILE_ENCAPSULATION
4442 Declare generic types, specialization.
4443 * config/io/basic_file_stdio.cc: Definitions.
4444 * config/io/c_io_libio.h: Remove _GLIBCPP_BASIC_FILE_INHERITANCE.
4445 Declare generic types.
4446 * include/Makefile.am (bits_headers): Remove basic_file.h.
4447 (extra_target_headers): Change basic_file_model.h to basic_file.h.
4448 (stamp-target): Same.
4449
4450 * include/bits/stl_alloc.h: Tweaks.
4451 * include/bits/localefwd.h: Same.
4452
4453 2002-02-11 Aaron W LaFramboise <AWLaFramboise@aol.com>
4454
4455 * include/bits/locale_facets.tcc (collate::do_hash): Fix.
4456 * testsuite/22_locale/collate_members_char.cc (test03): New test.
4457 * testsuite/22_locale/collate_members_wchar_t.cc (test03): Same.
4458
4459 2002-02-10 Phil Edwards <pme@gcc.gnu.org>
4460
4461 * include/bits/stl_algo.h (transform (both signatures), generate_n):
4462 Use __typeof__ in concept checks.
4463
4464 2002-02-10 Jonathan Wakely <cow@compsoc.man.ac.uk>
4465
4466 * include/bits/stl_algo.h (__median, for_each, find, find_if,
4467 adjacent_find, count, count_if, search, search_n, swap_ranges,
4468 transform, replace, replace_if, replace_copy, replace_copy_if,
4469 generate, generate_n, remove_copy, remove_copy_if, remove, remove_if,
4470 unique, unique_copy, reverse, reverse_copy): Doxygenate.
4471
4472 2002-02-08 Benjamin Kosnik <bkoz@redhat.com>
4473
4474 * include/bits/locale_facets.h
4475 (numpunct<_CharT>::_M_initialize_numpunct): Remove definition.
4476 (__timepunct<_CharT>::_M_initialize_timepunct): Same.
4477 (__timepunct<_CharT>::_M_put_helper): Same.
4478 (moneypunct<_CharT, _Intl>::_M_initialize_moneypunct): Same.
4479
4480 * include/bits/fstream.tcc (filebuf::underflow): Remove
4481 __codecvt_type typedef.
4482 (filebuf::_M_convert_to_external): Same.
4483
4484 2002-02-08 Phil Edwards <pme@gcc.gnu.org>
4485
4486 * docs/doxygen/TODO: Update.
4487 * docs/doxygen/doxygroups.cc: Tweak __gnu_cxx description.
4488 * docs/doxygen/mainpage.html: Add TODO list link.
4489 * docs/doxygen/user.cfg.in: Add @doctodo hook.
4490 * docs/doxygen/tables.html: New file, emoty structure only.
4491
4492 * include/bits/stl_iterator.h: Doxygenate just about everything.
4493 * include/bits/stl_iterator_base_funcs.h: Ditto, clean up spaces.
4494 * include/bits/stl_iterator_base_types.h: Add notes.
4495
4496 2002-02-07 Stephan Buys <sbproxy@icon.co.za>
4497
4498 * include/bits/stl_map.h: Tweak doxygen markup.
4499 * include/bits/stl_multimap.h: Doxygenate and remove extra spaces.
4500 * include/bits/stl_vector.h: Likewise.
4501
4502 2002-02-07 Benjamin Kosnik <bkoz@redhat.com>
4503
4504 libstdc++/5286
4505 libstdc++/3860
4506 * include/std/std_fstream.h (filebuf::__file_type): Change to
4507 __basic_file<char>.
4508 (filebuf::_M_convert_to_external): Declare.
4509 * include/bits/fstream.tcc (filebuf::_M_convert_to_external): Define
4510 codecvt bits for wide streams.
4511 (filebuf::_M_really_overflow): Use it.
4512 (filebuf::underflow): Use codecvt.
4513 * config/locale/codecvt_specializations_ieee_1003.1-200x.h:
4514 (codecvt<__enc_traits>::do_out): Deal with partial.
4515 (codecvt<__enc_traits>::do_encoding): Return something useful.
4516 * src/codecvt.cc (codecvt<wchar_t>::do_encoding): Return sizeof
4517 wchar_t.
4518 * testsuite/22_locale/codecvt_members_unicode_char.cc (test01):
4519 Change expected encoding output.
4520 (test02): Same.
4521 * testsuite/22_locale/codecvt_members_wchar_t_char.cc (test01): Same.
4522 (test02): Same.
4523
4524 2002-02-07 Benjamin Kosnik <bkoz@redhat.com>
4525 Wolfgang Bangerth <wolfgang.bangerth@iwr.uni-heidelberg.de>
4526
4527 * include/bits/basic_ios.tcc (basic_ios::narrow): Add default value.
4528 (basic_ios::widen): Same.
4529
4530 2002-02-07 Paolo Carlini <pcarlini@unitus.it>
4531
4532 * testsuite/22_locale/money_get_members_char.cc:
4533 Add comment, tidy up.
4534 (test01): more "en_HK" tests (without showbase).
4535 * testsuite/22_locale/money_get_members_wchar_t.cc: Ditto.
4536
4537 2002-02-06 Loren Rittle <ljrittle@acm.org>
4538
4539 * config/locale/c_locale_generic.cc: Do not trust
4540 _GLIBCPP_HAVE_STRTOF or _GLIBCPP_HAVE_STRTOLD as
4541 set by configure.
4542
4543 2002-02-06 Loren Rittle <ljrittle@acm.org>
4544
4545 * acinclude.m4: Add C++ linkage check for strtof.
4546 * aclocal.m4: Rebuilt.
4547 * config.h.in: Rebuilt.
4548 * configure: Rebuilt.
4549 * config/locale/c_locale_generic.cc: Conditionally include
4550 <ieeefp.h>. Improve handling and error checking of float
4551 and long double input for non-C99 configurations.
4552
4553 2002-02-06 Paolo Carlini <pcarlini@unitus.it>
4554
4555 * include/bits/locale_facets.tcc (money_get::do_get(string)):
4556 In case money_base::symbol deal properly with multi-char sign
4557 for patterns {X,Y,Z,symbol} and {X,Y,symbol,none}.
4558 * testsuite/22_locale/money_get_members_char.cc: Add test07.
4559 * testsuite/22_locale/money_get_members_wchar_t.cc: Add test07.
4560
4561 2002-02-05 Paolo Carlini <pcarlini@unitus.it>
4562
4563 * include/bits/locale_facets.tcc (money_get::do_get(string)):
4564 First construct a tentative returned string, then, only if the
4565 parsing succeeds, copy it into the string passed by reference.
4566 * testsuite/22_locale/money_get_members_char.cc: Add test06.
4567 * testsuite/22_locale/money_get_members_wchar_t.cc: Add test06.
4568
4569 2002-02-04 Phil Edwards <pme@gcc.gnu.org>
4570
4571 * docs/doxygen/TODO: Impl-defined behavior now documented...
4572 * docs/html/17_intro/howto.html: ...here.
4573 * docs/doxygen/mainpage.doxy: Remove, rename...
4574 * docs/doxygen/mainpage.html: ...to this. Tweak HTML, add license.
4575 * docs/doxygen/style.css: Add small text.
4576 * docs/doxygen/run_doxygen: Adjust for new mainpage.
4577 * docs/doxygen/user.cfg.in: Likewise.
4578
4579 2002-02-04 Stephan Buys <sbproxy@icon.co.za>
4580
4581 * include/bits/stl_map.h: Initial doxygen markup.
4582 * include/std/std_fstream.h: Initial doxygen markup.
4583
4584 2002-02-04 Paolo Carlini <pcarlini@unitus.it>
4585
4586 libstdc++/5579
4587 * include/bits/locale_facets.tcc (money_get::do_get(string)):
4588 Deal correctly with !(__io.flags() & ios_base::showbase)
4589 for case money_base::symbol.
4590 * testsuite/22_locale/money_get_members_char.cc: Add test05.
4591 * testsuite/22_locale/money_get_members_wchar_t.cc: Add test05.
4592
4593 2002-02-02 Paolo Carlini <pcarlini@unitus.it>
4594
4595 * testsuite/22_locale/operators.cc
4596 (gnu_collate::do_compare()): Add return statement to
4597 suppress "no return statement" warning.
4598
4599 2002-02-01 Paolo Carlini <pcarlini@unitus.it>
4600
4601 * testsuite/27_io/ostream_manip.cc: Enable test02.
4602
4603 2002-02-01 Phil Edwards <pme@gcc.gnu.org>
4604
4605 * docs/html/documentation.html: Update for 3.0.96.
4606 * docs/html/faq/index.html: Update for 3.0.96.
4607 * docs/html/faq/index.txt: Regenerated.
4608 * docs/doxygen/TODO: Update notes.
4609 * docs/html/17_intro/howto.html: Initial impl-specific listing.
4610
4611 2002-01-31 Benjamin Kosnik <bkoz@redhat.com>
4612
4613 * config/locale/codecvt_specializations_ieee_1003.1-200x.h:
4614 Initialize all data members in copy ctor. Make ctors explicit.
4615 (__enc_traits::__enc_traits()): Default ctor does nothing.
4616 (__enc_traits::_M_init): Guard against multiple iconv_opens.
4617 * include/std/std_sstream.h (basic_stringbuf): Make data members
4618 protected.
4619 * include/std/std_fstream.h (basic_filebuf): Same.
4620 * include/std/std_streambuf.h: Tweak.
4621 * include/bits/streambuf.tcc: Same.
4622 * include/bits/sstream.tcc: Same.
4623 * include/bits/fstream.tcc: Same.
4624
4625 2002-01-31 Loren Rittle <ljrittle@acm.org>
4626
4627 * testsuite/22_locale/codecvt_members_char_char.cc: Do not
4628 allow NULL argument to be passed to setenv().
4629 * testsuite/22_locale/codecvt_members_wchar_t_char.cc: Likewise.
4630 * testsuite/22_locale/collate_members_char.cc: Likewise.
4631 * testsuite/22_locale/collate_members_wchar_t.cc: Likewise.
4632 * testsuite/22_locale/ctype_members_char.cc: Likewise.
4633 * testsuite/22_locale/ctype_members_wchar_t.cc: Likewise.
4634 * testsuite/22_locale/messages_members_char.cc: Likewise.
4635 * testsuite/22_locale/money_get_members_char.cc: Likewise.
4636 * testsuite/22_locale/money_get_members_wchar_t.cc: Likewise.
4637 * testsuite/22_locale/money_put_members_char.cc: Likewise.
4638 * testsuite/22_locale/money_put_members_wchar_t.cc: Likewise.
4639 * testsuite/22_locale/moneypunct_members_char.cc: Likewise.
4640 * testsuite/22_locale/moneypunct_members_wchar_t.cc: Likewise.
4641 * testsuite/22_locale/num_get_members_char.cc: Likewise.
4642 * testsuite/22_locale/num_get_members_wchar_t.cc: Likewise.
4643 * testsuite/22_locale/num_put_members_char.cc: Likewise.
4644 * testsuite/22_locale/num_put_members_wchar_t.cc: Likewise.
4645 * testsuite/22_locale/numpunct_members_char.cc: Likewise.
4646 * testsuite/22_locale/numpunct_members_wchar_t.cc: Likewise.
4647 * testsuite/22_locale/time_get_members_char.cc: Likewise.
4648 * testsuite/22_locale/time_get_members_wchar_t.cc: Likewise.
4649 * testsuite/22_locale/time_put_members_char.cc: Likewise.
4650 * testsuite/22_locale/time_put_members_wchar_t.cc: Likewise.
4651
4652 2002-01-30 Benjamin Kosnik <bkoz@redhat.com>
4653
4654 * config/locale/c_locale_gnu.cc: Same errno fixes as generic.
4655
4656 * ChangeLog-2001: Fix spelling errors...
4657 * docs/html/17_intro/RELEASE-NOTES: Update.
4658 * docs/html/17_intro/TODO: Update.
4659 * README (file): Update.
4660
4661 2002-01-30 Loren Rittle <ljrittle@acm.org>
4662
4663 * config/locale/c_locale_generic.cc: Check errno for ERANGE
4664 instead of non-zero to aid portability.
4665
4666 2002-01-30 Peter Schmid <schmid@snake.iap.physik.tu-darmstadt.de>
4667
4668 * docs/html/22_locale/messages.html: Fix example code.
4669
4670 2002-01-30 Richard Henderson <rth@redhat.com>
4671
4672 * testsuite/27_io/ostream_inserter_arith.cc (test03_check): Break
4673 out from test03 and templatize.
4674 (test03): Use it.
4675
4676 2002-01-30 Paolo Carlini <pcarlini@unitus.it>
4677
4678 * config/locale/numpunct_members_gnu.cc
4679 (numpunct<char, wchar_t>::_M_initialize_numpunct()):
4680 Fix initialization of _M_grouping for locales which have
4681 _M_thousands_sep == '\0'(L'\0', respectively).
4682 * testsuite/22_locale/numpunct_byname.cc (test02): Add test.
4683
4684 2002-01-30 Paolo Carlini <pcarlini@unitus.it>
4685
4686 * testsuite/27_io/ostream_inserter_arith.cc (test03):
4687 Better fix for 32/64 bit architectures, avoiding the
4688 implicit assumption that CHAR_BIT == 8.
4689
4690 2002-01-28 Phil Edwards <pme@gcc.gnu.org>
4691
4692 * Makefile.am (doxygen, doxygen-maint, doxygen-man): Tweak targets.
4693 * Makefile.in: Regenerate.
4694
4695 * docs/doxygen/run_doxygen: Update, mostly for man pages.
4696 * docs/doxygen/Intro.3: Update.
4697 * docs/doxygen/TODO: Update.
4698 * docs/doxygen/doxygroups.cc: Add namespace hook for __gnu_cxx.
4699 * docs/doxygen/mainpage.doxy: Update.
4700 * docs/doxygen/user.cfg.in: Update for header rename. Also
4701 regenerate comments and variables with 1.2.12.
4702 * docs/doxygen/maint.cfg.in: Remove file.
4703
4704 * include/bits/stl_relops.h: Doxygenate.
4705 * include/bits/stl_tempbuf.h (std::_Temporary_buffer): Likewise.
4706
4707 * include/c_std/std_cassert.h, include/c_std/std_cctype.h,
4708 include/c_std/std_cerrno.h, include/c_std/std_cfloat.h,
4709 include/c_std/std_ciso646.h, include/c_std/std_climits.h,
4710 include/c_std/std_clocale.h, include/c_std/std_cmath.h,
4711 include/c_std/std_csetjmp.h, include/c_std/std_csignal.h,
4712 include/c_std/std_cstdarg.h, include/c_std/std_cstddef.h,
4713 include/c_std/std_cstdio.h, include/c_std/std_cstdlib.h,
4714 include/c_std/std_cstring.h, include/c_std/std_ctime.h,
4715 include/c_std/std_cwchar.h, include/c_std/std_cwctype.h,
4716 include/ext/algorithm, include/ext/functional, include/ext/hash_map,
4717 include/ext/hash_set, include/ext/iterator, include/ext/memory,
4718 include/ext/numeric, include/ext/rb_tree, include/ext/rope,
4719 include/ext/ropeimpl.h, include/ext/slist, include/ext/stl_hash_fun.h,
4720 include/ext/stl_hashtable.h, include/ext/stl_rope.h,
4721 include/std/std_algorithm.h, include/std/std_bitset.h,
4722 include/std/std_complex.h, include/std/std_deque.h,
4723 include/std/std_fstream.h, include/std/std_functional.h,
4724 include/std/std_iomanip.h, include/std/std_ios.h,
4725 include/std/std_iosfwd.h, include/std/std_iostream.h,
4726 include/std/std_istream.h, include/std/std_iterator.h,
4727 include/std/std_limits.h, include/std/std_list.h,
4728 include/std/std_locale.h, include/std/std_map.h,
4729 include/std/std_memory.h, include/std/std_numeric.h,
4730 include/std/std_ostream.h, include/std/std_queue.h,
4731 include/std/std_set.h, include/std/std_sstream.h,
4732 include/std/std_stack.h, include/std/std_stdexcept.h,
4733 include/std/std_streambuf.h, include/std/std_string.h,
4734 include/std/std_utility.h, include/std/std_valarray.h,
4735 include/std/std_vector.h: Add/correct @file doxygen hook.
4736
4737 * include/ext/memory: Doxygenate most of rest of file.
4738 * libsupc++/exception: Doxygen output formatting.
4739 * libsupc++/new: Say which header it is.
4740
4741 * testsuite/lib/libstdc++-v3-dg.exp: Fix spacing.
4742 * docs/html/19_diagnostics/howto.html: Describe concept-checks switch.
4743 * docs/html/23_containers/howto.html: Describe O(n) list::size().
4744 * docs/html/27_io/howto.html: Also link to Langer and Kreft text.
4745
4746 2002-01-28 Paolo Carlini <pcarlini@unitus.it>
4747 Charles Leggett <CGLeggett@lbl.gov>
4748
4749 * testsuite/27_io/filebuf_members.cc (test_05): Add test.
4750
4751 2002-01-28 Paolo Carlini <pcarlini@unitus.it>
4752
4753 * testsuite/27_io/ostream_inserter_arith.cc (test03):
4754 Fix to deal correctly with both 32 bit and 64 bit architectures
4755
4756 2002-01-25 Loren Rittle <ljrittle@acm.org>
4757
4758 * testsuite/thread/pthread1.cc: Use one condition variable
4759 per predicate instead of tricky use of one condition variable.
4760
4761 2002-01-25 Benjamin Kosnik <bkoz@redhat.com>
4762
4763 * include/bits/fstream.tcc (filebuf::close()): Fix close for input
4764 streams.
4765 (filebuf::_M_really_overflow): Match indeterminate and sync calls.
4766 * testsuite/27_io/filebuf.cc: Compile only.
4767 * testsuite/27_io/filebuf_members.cc: Move tests to here.
4768 * testsuite/27_io/filebuf_virtuals.cc: And here.
4769 Revert sungetc, sync changes for expected values.
4770 * testsuite/27_io/filebuf-*: Move to...
4771 * testsuite/27_io/filebuf_virtuals-*: ...here.
4772 * testsuite/27_io/istream.cc: Compile only, activate.
4773 * testsuite/27_io/ostream.cc: Same.
4774 * testsuite/27_io/iostream.cc: New.
4775 * testsuite/27_io/iostream_members.cc: New.
4776
4777 2002-01-25 David Billinghurst <David.Billinghurst@riotinto.com>
4778
4779 * testsuite/thread/pthread1.cc: Enable on cygwin.
4780 * testsuite/thread/pthread2.cc: Likewise.
4781 * testsuite/thread/pthread3.cc: Likewise.
4782 * testsuite/thread/pthread4.cc: Likewise.
4783 * testsuite/thread/pthread5.cc: Likewise.
4784 * testsuite/thread/pthread6.cc: Likewise.
4785
4786 2002-01-24 Benjamin Kosnik <bkoz@redhat.com>
4787
4788 * testsuite/27_io/ostream_inserter_char.cc (test07): New.
4789
4790 2002-01-24 Benjamin Kosnik <bkoz@redhat.com>
4791
4792 * include/bits/basic_ios.h (basic_ios::_M_check_facet): Make
4793 const, tweak.
4794 (basic_ios::fill(char_type)): Use fill().
4795 * include/bits/basic_ios.tcc (basic_ios::widen): Use _M_check_facet.
4796 (basic_ios::narrow): Same.
4797 (basic_ios::_M_cache_facets): Explicitly set cached facets to zero
4798 if they are invalid.
4799 (basic_ios::init): Comment.
4800 * testsuite/27_io/ios_init.cc (test02): New.
4801
4802 2002-01-24 Phil Edwards <pme@gcc.gnu.org>
4803
4804 * include/bits/stl_tempbuf.h (_Temporary_buffer): Add doxygen hook.
4805 * include/bits/stl_algo.h: Include stl_tempbuf.h.
4806 * include/ext/memory: Do not include stl_tempbuf.h.
4807 (temporary_buffer): Add doxygen hook.
4808 (__get_temporary_buffer, get_temporary_buffer,
4809 return_temporary_buffer): Move back to std:: header...
4810 * include/std/std_memory.h: ...here. Do not include stl_tempbuf.h.
4811 * include/ext/rope: Do not include stl_tempbuf.h.
4812 * include/ext/stl_hashtable.h: Likewise.
4813 * include/std/std_algorithm.h: Likewise.
4814 * testsuite/20_util/temporary_buffer.cc: New file.
4815
4816 2002-01-24 andrew@andypo.net
4817 (tweaks, test and commit by Loren J. Rittle <ljrittle@acm.org>)
4818
4819 libstdc++/5432
4820 * include/bits/ios_base.h: Use _Atomic_word for reference counts.
4821 * include/bits/localefwd.h: Likewise.
4822 Also use for std::locale::id::_S_highwater.
4823 * src/ios.cc (ios_base::xalloc): Use _Atomic_word.
4824 * src/locale.cc: Support new usage of _Atomic_word.
4825 (std::locale::classic): Guard entire function against reentry.
4826 * src/localename.cc: Support new usage of _Atomic_word.
4827
4828 2002-01-24 Benjamin Kosnik <bkoz@redhat.com>
4829
4830 * testsuite/22_locale/num_put_members_wchar_t.cc (test03): Use
4831 _GLIBCPP_HAVE_SETENV.
4832 * testsuite/22_locale/codecvt_members_wchar_t_char.cc (test02): Same.
4833 * testsuite/22_locale/collate_members_char.cc (test02): Same.
4834 * testsuite/22_locale/ctype_members_char.cc (test03): Same.
4835 * testsuite/22_locale/ctype_members_wchar_t.cc (test03): Same.
4836 * testsuite/22_locale/messages_members_char.cc (test02): Same.
4837 * testsuite/22_locale/moneypunct_members_char.cc (test02): Same.
4838 * testsuite/22_locale/moneypunct_members_wchar_t.cc (test02): Same.
4839 * testsuite/22_locale/money_put_members_char.cc (test04): Same.
4840 * testsuite/22_locale/money_put_members_wchar_t.cc (test04): Same.
4841 * testsuite/22_locale/num_get_members_char.cc (test03): Same.
4842 * testsuite/22_locale/num_get_members_wchar_t.cc (test03): Same.
4843 * testsuite/22_locale/numpunct_members_char.cc (test02): Same.
4844 * testsuite/22_locale/numpunct_members_wchar_t.cc (test02): Same.
4845 * testsuite/22_locale/time_get_members_char.cc (test07): Same.
4846 * testsuite/22_locale/time_get_members_wchar_t.cc (test07): Same.
4847 * testsuite/22_locale/time_put_members_char.cc (test03): Same.
4848 * testsuite/22_locale/time_put_members_wchar_t.cc (test03): Same.
4849 * testsuite/22_locale/num_put_members_char.cc (test03): Same.
4850 * acinclude.m4 (GLIBCPP_CONFIGURE_TESTSUITE): Check for setenv.
4851 * aclocal.m4: Regenerate.
4852 * configure: Regenerate.
4853 * config.h.in: Regenerate.
4854
4855 2002-01-23 Loren Rittle <ljrittle@acm.org>
4856
4857 * testsuite/thread/pthread1.cc: New test.
4858 * testsuite/thread/pthread2.cc: New test adapted from libstdc++/5347.
4859 * testsuite/thread/pthread3.cc: Likewise.
4860 * testsuite/thread/pthread4.cc: New test adapted from
4861 http://gcc.gnu.org/ml/gcc-bugs/2002-01/msg00679.html
4862 * testsuite/thread/pthread5.cc: New test adapted from libstdc++/5464.
4863 * testsuite/thread/pthread6.cc: New test adapted from libstdc++/5444.
4864
4865 2002-01-23 Richard Henderson <rth@redhat.com>
4866
4867 PR libstdc++/5198
4868 * config/cpu/m68k/bits/atomicity.h (__exchange_and_add): Only use
4869 CAS on the cpu variants that support it. Add versions that use
4870 TAS and that disable interrupts.
4871 (__atomic_add): Use __exchange_and_add to guarantee atomicity.
4872
4873 2002-01-23 Matt Kraai <kraai@alumni.cmu.edu>
4874
4875 * include/bits/locale_facets.tcc: Remove old comments.
4876
4877 2002-01-23 Andreas Tobler <toa@pop.agri.ch>
4878
4879 * include/bits/locale_facets.tcc (__convert_to_v): Change template
4880 parameter to _Tv.
4881 (__convert_from_v): Same.
4882
4883 2002-01-23 Benjamin Kosnik <bkoz@redhat.com>
4884
4885 * include/bits/locale_facets.h (num_get::_M_extract_int): Change
4886 prototype.
4887 * include/bits/locale_facets.tcc (num_get::_M_extract_int): Remove
4888 __max_digits checks, adjust arguments.
4889 (num_get::do_get(*)): Changeup.
4890
4891 2002-01-23 Loren Rittle <ljrittle@acm.org>
4892
4893 * config/locale/c_locale_generic.cc: Fix typename usage.
4894
4895 2002-01-22 Benjamin Kosnik <bkoz@redhat.com>
4896
4897 * config/locale/c_locale_generic.cc: Fix.
4898
4899 2002-01-22 Benjamin Kosnik <bkoz@redhat.com>
4900
4901 * docs/html/22_locale/messages.html: Remove angle brackets.
4902 * docs/html/17_intro/TODO: Add.
4903
4904 2002-01-22 Paolo Carlini <pcarlini@unitus.it>
4905
4906 * testsuite/27_io/ios_manip_basefield.cc: Enable test02.
4907 * testsuite/27_io/ostream_inserter_arith.cc: Enable test03.
4908 * testsuite/27_io/ostream_inserter_char.cc: Enable test01.
4909 * testsuite/27_io/ostream_inserter_other.cc: Enable test04.
4910
4911 2002-01-22 Benjamin Kosnik <bkoz@redhat.com>
4912
4913 Audit for LANG independence.
4914 * include/bits/localefwd.h: Tweaks.
4915 * include/bits/locale_facets.tcc (money_get::do_get(long double)):
4916 Use __convert_to_v.
4917 (time_get::do_get_year): Same.
4918 (__convert_from_v): Add.
4919 (num_put::_M_convert_float): Use.
4920 (num_put::_M_convert_int): Same.
4921 (money_put::do_put): Same.
4922
4923 * src/locale-inst.cc: Add instantiations for __convert_from_v.
4924 * config/locale/time_members_gnu.cc: Cleanup setlocale usage.
4925 * config/locale/time_members_generic.cc:
4926 * config/locale/messages_members_gnu.cc: Same.
4927 * config/locale/messages_members_gnu.h: Same.
4928
4929 * testsuite/22_locale/codecvt_members_wchar_t_char.cc (test02): New.
4930 * testsuite/22_locale/codecvt_members_char_char.cc (test02): New.
4931 * testsuite/22_locale/collate_members_wchar_t.cc (test02): New.
4932 * testsuite/22_locale/collate_members_char.cc (test02): New.
4933 * testsuite/22_locale/ctype_members_wchar_t.cc (test03): New.
4934 * testsuite/22_locale/ctype_members_char.cc (test03): New.
4935 * testsuite/22_locale/messages_members_char.cc (test02): New.
4936 * testsuite/22_locale/moneypunct_members_wchar_t.cc (test02): New.
4937 * testsuite/22_locale/moneypunct_members_char.cc (test02): New.
4938 * testsuite/22_locale/money_get_members_wchar_t.cc (test04): New.
4939 * testsuite/22_locale/money_get_members_char.cc (test04): New.
4940 * testsuite/22_locale/money_put_members_wchar_t.cc (test04): New.
4941 * testsuite/22_locale/money_put_members_char.cc (test04): New.
4942 * testsuite/22_locale/numpunct_members_wchar_t.cc (test02): New.
4943 * testsuite/22_locale/numpunct_members_char.cc (test02): New.
4944 * testsuite/22_locale/time_put_members_wchar_t.cc (test03): New.
4945 * testsuite/22_locale/time_put_members_char.cc (test03): New.
4946 * testsuite/22_locale/time_get_members_wchar_t.cc (test07): New.
4947 * testsuite/22_locale/time_get_members_char.cc (test07): New.
4948 * testsuite/22_locale/num_get_members_wchar_t.cc (test03): New.
4949 * testsuite/22_locale/num_get_members_char.cc (test03): New.
4950 * testsuite/22_locale/num_put_members_wchar_t.cc (test03): New.
4951 * testsuite/22_locale/num_put_members_char.cc (test03): New.
4952
4953 * testsuite/22_locale/time_get_members_char.cc: Fixups for global
4954 locale issues.
4955 * testsuite/22_locale/time_get_members_char.cc: Same.
4956
4957 2002-01-22 Benjamin Kosnik <bkoz@redhat.com>
4958
4959 libstdc++/5280
4960 * include/bits/localefwd.h: Tweak comments.
4961 * include/bits/locale_facets.h (__convert_to_v): Add.
4962 * include/bits/locale_facets.tcc (num_get::do_get(double)): Use it.
4963 (num_get::do_get(float)): Same.
4964 (num_get::do_get(long double)): Same.
4965 (num_get::do_get(bool)): Same.
4966 (num_get::do_get(long)): Same.
4967 (num_get::do_get(long long)): Same.
4968 (num_get::do_get(unsigned int)): Same.
4969 (num_get::do_get(unsigned short)): Same.
4970 (num_get::do_get(unsigned long)): Same.
4971 (num_get::do_get(unsigned long long)): Same.
4972 * config/locale/c_locale_gnu.cc (__convert_to_v): Specialize.
4973 * config/locale/c_locale_generic.cc: Same.
4974
4975 2002-01-22 Loren Rittle <ljrittle@acm.org>
4976
4977 * include/Makefile.am (c_base_builddir): Remove redundant slash.
4978 (std_builddir): Likewise.
4979 (std_headers_rename): Fix cut-n-paste typo.
4980 (install-data-local): Concat path per element instead of once to
4981 first element of list.
4982 * include/Makefile.in: Rebuilt.
4983
4984 2002-01-22 Benjamin Kosnik <bkoz@redhat.com>
4985
4986 * config/os/aix/bits/ctype_noninline.h: Fix formatting.
4987 * config/os/bsd/netbsd/bits/ctype_noninline.h: Fix typo.
4988 * config/os/bsd/freebsd/bits/ctype_noninline.h: Fix formatting.
4989
4990 2002-01-20 Benjamin Kosnik <bkoz@redhat.com>
4991
4992 * include/bits/locale_facets.h (ctype<char>::classic_table):
4993 Remove definition.
4994 (ctype<char>::_S_ctable): Remove.
4995 * config/os/gnu-linux/bits/ctype_noninline.h
4996 (ctype<char>::_S_table): Remove definition.
4997 (ctype<char>::classic_table): Define.
4998 (ctype<char>::ctype): Replace _S_ctable with classic_table().
4999 * config/os/aix/bits/ctype_noninline.h: Same.
5000 * config/os/bsd/freebsd/bits/ctype_noninline.h: Same.
5001 * config/os/bsd/netbsd/bits/ctype_noninline.h: Same.
5002 * config/os/djgpp/bits/ctype_noninline.h: Same.
5003 * config/os/generic/bits/ctype_noninline.h: Same.
5004 * config/os/gnu-linux/bits/ctype_noninline.h: Same.
5005 * config/os/hpux/bits/ctype_noninline.h: Same.
5006 * config/os/irix/irix5.2/bits/ctype_noninline.h: Same.
5007 * config/os/irix/irix6.5/bits/ctype_noninline.h: Same.
5008 * config/os/mingw32/bits/ctype_noninline.h: Same.
5009 * config/os/newlib/bits/ctype_noninline.h: Same.
5010 * config/os/solaris/solaris2.5/bits/ctype_noninline.h: Same.
5011 * config/os/solaris/solaris2.6/bits/ctype_noninline.h: Same.
5012 * config/os/solaris/solaris2.7/bits/ctype_noninline.h: Same.
5013
5014 2002-01-20 Danny Smith <dannysmith@users.sourceforge.net>
5015
5016 * config/os/mingw32/bits/ctype_noninline.h: Declare _ctype instead
5017 of _pctype. Use to define _S_ctable. Add definition for alternate
5018 ctor. Initialise _M_ctable to _S_ctable in ctors.
5019 (do_toupper, do_tolower): Use inline code appropriate for C-locale
5020 rather than ::toupper, ::tolower.
5021
5022 2002-01-18 Loren Rittle <ljrittle@acm.org>
5023
5024 * testsuite/18_support/numeric_limits.cc (test_extrema<long double>):
5025 Add specialization for FreeBSD systems only to avoid losing test
5026 only due to extra precision unmentioned in system headers.
5027
5028 2002-01-18 David Billinghurst <David.Billinghurst@riotinto.com>
5029
5030 * config/os/irix/irix6.5/bits/ctype_noninline.h: Fix typo
5031
5032 2002-01-17 Nick Clifton <nickc@cambridge.redhat.com>
5033
5034 * testsuite/testsuite_hooks.h: Fix comment typo. Memory
5035 limiting is only attempted if _GLIBCPP_MEM_LIMIT is defined.
5036
5037 2002-01-17 Peter Schmid <schmid@snake.iap.physik.tu-darmstadt.de>
5038
5039 * testsuite/22_locale/ctor_copy_dtor.cc: Remove check.
5040
5041 2002-01-17 David Edelsohn <edelsohn@gnu.org>
5042
5043 * configure.target: Define OPT_LDFLAGS for AIX case.
5044
5045 2002-01-17 Gabriel Dos Reis <gdr@merlin.codesourcery.com>
5046
5047 * include/std/std_limits.h (__glibcpp_float_has_quiet_NaN,
5048 __glibcpp_double_has_quiet_NaN): Correct mispelling.
5049
5050 2002-01-17 Andreas Tobler <toa@pop.agri.ch>
5051
5052 * config/os/solaris/solaris2.6/bits/ctype_noninline.h: Fix.
5053
5054 2002-01-16 David Edelsohn <dje@watson.ibm.com>
5055
5056 * acinclude.m4 (GLIBCPP_CHECK_LINKER_FEATURES): Do not clear
5057 SECTION_LDFLAGS and OPT_LDFLAGS. Fix ac_sectionLDflags type.
5058 * aclocal.m4: Regenerate.
5059 * configure: Regenerate.
5060
5061 2002-01-16 Benjamin Kosnik <bkoz@redhat.com>
5062
5063 * include/Makefile.am (c_base_headers_rename): New.
5064 (c_base_headers_extra): New.
5065 (stamp-c_base): Modify.
5066 (install-data-local): Use both.
5067 * include/Makefile.in: Regenerate.
5068 * include/c/[cctype ciso646 cmath cstdarg cstdlib cerrno climits
5069 csetjmp cstddef cstring cwchar cassert cfloat clocale csignal
5070 cstdio ctime cwctype]: Move to..
5071 * include/c/std_*: Here.
5072 * include/c_std/[cctype ciso646 cmath cstdarg cstdlib cerrno climits
5073 csetjmp cstddef cstring cwchar cassert cfloat clocale csignal
5074 cstdio ctime cwctype]: Move to..
5075 * include/c_std/std_*: Here.
5076
5077 Alexandre Oliva <aoliva@redhat.com>
5078 * include/Makefile.am (.PRECIOUS): Add rule.
5079 * include/Makefile.in: Regenerate.
5080
5081 2002-01-16 Benjamin Kosnik <bkoz@redhat.com>
5082 Peter Schmid <schmid@snake.iap.physik.tu-darmstadt.de>
5083
5084 * include/bits/stl_iterator.h (reverse_iterator::_M_current):
5085 Deuglify, should be current.
5086 (back_insert_iterator::_M_container): Deuglify, should be container.
5087 (front_insert_iterator::_M_container): Same.
5088 (insert_iterator::_M_container): Same.
5089 * testsuite/24_iterators/reverse_iterator.cc: Add check.
5090 * testsuite/24_iterators/back_insert_iterator.cc: Add check.
5091 * testsuite/24_iterators/front_insert_iterator.cc: Same.
5092 * testsuite/24_iterators/insert_iterator.cc: Same.
5093
5094 2002-01-16 Benjamin Kosnik <bkoz@redhat.com>
5095
5096 * include/bits/locale_facets.h (ctype<char>::classic_table): Make
5097 static.
5098 (ctype<char>::_M_ctable): Make static, change name to _S_ctable.
5099 * config/os/gnu-linux/bits/ctype_noninline.h: Define _S_ctable.
5100 * config/os/solaris/solaris2.7/bits/ctype_noninline.h: Same.
5101 * config/os/solaris/solaris2.6/bits/ctype_noninline.h: Same.
5102 * config/os/solaris/solaris2.5/bits/ctype_noninline.h: Same.
5103 * config/os/newlib/bits/ctype_noninline.h: Same.
5104 * config/os/irix/irix6.5/bits/ctype_noninline.h: Same.
5105 * config/os/irix/irix5.2/bits/ctype_noninline.h: Same.
5106 * config/os/hpux/bits/ctype_noninline.h: Same.
5107 * config/os/djgpp/bits/ctype_noninline.h: Same.
5108 * config/os/bsd/netbsd/bits/ctype_noninline.h: Same.
5109 * config/os/bsd/freebsd/bits/ctype_noninline.h: Same.
5110 * config/os/aix/bits/ctype_noninline.h: Same.
5111
5112 Testcase by Dietmar Kühl via Peter Schmid
5113 * testsuite/22_locale/ctype_members_char.cc (char>): Add test for
5114 classic_table().
5115
5116 2002-01-16 Benjamin Kosnik <bkoz@redhat.com>
5117
5118 * libmath/signbitl.c: Copyright years as list, not range.
5119 * libmath/Makefile.am: Same.
5120 * libmath/Makefie.in: Regenerate.
5121 * libmath/signbit.c: Same.
5122 * libmath/nan.c: Same.
5123 * libmath/copysignf.c: Same.
5124 * libmath/signbitf.c: Same.
5125 * testsuite/22_locale/money_get_members_char.cc: Same.
5126 * testsuite/22_locale/money_get_members_wchar_t.cc: Same.
5127 * testsuite/22_locale/money_put_members_char.cc: Same.
5128 * testsuite/22_locale/money_put_members_wchar_t.cc: Same.
5129 * testsuite/22_locale/time_get_members_char.cc: Same.
5130 * testsuite/22_locale/time_get_members_wchar_t.cc: Same.
5131 * testsuite/22_locale/time_put_members_char.cc: Same.
5132 * testsuite/22_locale/time_put_members_wchar_t.cc: Same.
5133 * testsuite/21_strings/nonmember.cc: Same.
5134 * testsuite/21_strings/compare.cc: Same.
5135 * testsuite/27_io/stringstream.cc: Same.
5136 * testsuite/27_io/stringbuf.cc: Same.
5137 * testsuite/27_io/filebuf.cc: Same.
5138 * testsuite/27_io/ios_manip_basefield.cc: Same.
5139 * testsuite/27_io/ios_manip_fmtflags.cc: Same.
5140 * include/bits/cpp_type_traits.h: Same.
5141 * include/bits/generic_shadow.h: Same.
5142 * include/bits/gslice_array.h: Same.
5143 * include/bits/gslice.h: Same.
5144 * include/bits/indirect_array.h: Same.
5145 * include/bits/slice_array.h: Same.
5146 * include/bits/sstream.tcc: Same.
5147 * include/bits/streambuf_iterator.h: Same.
5148 * include/bits/valarray_array.tcc: Same.
5149 * include/bits/valarray_meta.h: Same.
5150 * include/bits/valarray_array.h: Same.
5151 * config/os/mingw32/bits/ctype_noninline.h: Same.
5152 * config/os/mingw32/bits/ctype_base.h: Same.
5153 * config/os/hpux/bits/ctype_noninline.h: Same.
5154 * config/os/hpux/bits/ctype_base.h: Same.
5155 * config/os/gnu-linux/bits/ctype_noninline.h: Same.
5156 * config/os/gnu-linux/bits/ctype_base.h: Same.
5157 * config/os/generic/bits/ctype_noninline.h: Same.
5158 * config/os/generic/bits/ctype_base.h: Same.
5159
5160 * libsupc++/tinfo.h: Tweaks.
5161
5162 2002-01-15 Benjamin Kosnik <bkoz@redhat.com>
5163
5164 * testsuite/22_locale/num_put_members_wchar_t.cc (test02): Same.
5165 * testsuite/22_locale/num_put_members_char.cc (test01): Tweak.
5166 * testsuite/22_locale/ctype_members_char.cc: Tweak.
5167
5168 2002-01-15 Benjamin Kosnik <bkoz@redhat.com>
5169
5170 * include/bits/locale_facets.tcc (num_put::do_put(bool): Fix.
5171 (num_put::do_put(void*)): Fix.
5172 * testsuite/22_locale/num_put_members_char.cc (test02): Add.
5173 * testsuite/22_locale/num_put_members_wchar_t.cc (test02): Add.
5174 * testsuite/22_locale/num_get_members_char.cc (test02): Add
5175 long double, void, bool types.
5176 * testsuite/22_locale/num_get_members_wchar_t.cc (test02): Add.
5177
5178 2002-01-15 Benjamin Kosnik <bkoz@redhat.com>
5179 Alexandre Oliva <aoliva@redhat.com>
5180
5181 * libmath/Makefile.am (LINK): Add --tag CC.
5182 * libmath/Makefile.in: Regenerate.
5183
5184 2002-01-15 John David Anglin <dave@hiauly1.hia.nrc.ca>
5185
5186 * config/os/hpux/bits/ctype_noninline.h: Use __SB_masks for address
5187 of character to attribute mapping table.
5188
5189 2002-01-15 David Billinghurst <David.Billinghurst@riotinto.com>
5190
5191 * testsuite/26_numerics/c99_classification_macros_c.cc
5192 Remove dg-error and dg-excess-errors comments.
5193
5194 2002-01-14 Benjamin Kosnik <bkoz@redhat.com>
5195
5196 * include/bits/locale_facets.tcc (time_put::put): Correct output
5197 iterator positions.
5198 * testsuite/22_locale/time_put_members_char.cc (test02): Add.
5199 * testsuite/22_locale/time_put_members_wchar_t.cc (test02): Add.
5200 * testsuite/22_locale/time_get_members_wchar_t.cc (test06): Add.
5201 * testsuite/22_locale/time_get_members_char.cc (test06): Add.
5202
5203 2002-01-14 Craig Rodrigues <rodrigc@gcc.gnu.org>
5204
5205 * docs/html/17_intro/porting-howto.xml: Update filebuf section.
5206
5207 2002-01-14 Paolo Carlini <pcarlini@unitus.it>
5208 Nathan Myers <ncm@cantrip.org>
5209
5210 * include/bits/basic_string.h
5211 (replace(__pos, __n1, __s, __n2)): Optimize by avoiding
5212 temporaries (i.e., call _M_replace_safe) when possible.
5213 (replace(__pos, __n, __str)): Call replace(__pos, __n1, __s, __n2).
5214 (replace(__pos, __n1, __s)): Call replace(__pos, __n1, __s , __n2).
5215 (replace(__i1, __i2, __str)): Call replace(__i1, __i2, __s, __n).
5216 (replace(__i1, __i2, __s)): Call replace(__i1, __i2, __s, __n).
5217 (replace(__i1, __i2, __s, __n)): Call replace(__pos1, __n1, __s, __n2).
5218 * include/bits/basic_string.tcc
5219 (replace(__pos1, __n1, __str, __pos2, __n2)): Call
5220 replace(__pos, __n1, __s, __n2).
5221 * testsuite/21_strings/replace.cc (test03): New testcases.
5222
5223 * include/bits/basic_string.h (insert(__pos, __s, __n)):
5224 Adjust comparison wrt overflow.
5225
5226 2002-01-12 Benjamin Kosnik <bkoz@redhat.com>
5227
5228 * include/Makefile.am (std_headers_rename): New variable.
5229 (install-data-local): Use it.
5230 * include/Makefile.in: Regenerate.
5231
5232 2002-01-12 Benjamin Kosnik <bkoz@redhat.com>
5233
5234 * include/bits/locale_facets.tcc (money_put::do_put(string):
5235 Correct output iterator value.
5236 * testsuite/22_locale/money_put_members_char.cc (test03): Add.
5237 * testsuite/22_locale/money_put_members_wchar_t.cc: Same.
5238
5239 2002-01-11 Phil Edwards <pme@gcc.gnu.org>
5240
5241 * include/Makefile.am, include/Makefile.in (stamp-std): Fix typo from
5242 previous commit.
5243
5244 2002-01-11 Phil Edwards <pme@gcc.gnu.org>
5245
5246 * include/Makefile.am (std_headers): Update list with new names.
5247 (stamp-std): Link to standardized name.
5248 * include/Makefile.in: Regenerate.
5249
5250 * include/std/algorithm, include/std/bitset, include/std/complex,
5251 include/std/deque, include/std/fstream, include/std/functional,
5252 include/std/iomanip, include/std/ios, include/std/iosfwd,
5253 include/std/iostream, include/std/istream, include/std/iterator,
5254 include/std/limits, include/std/list, include/std/locale,
5255 include/std/map, include/std/memory, include/std/numeric,
5256 include/std/ostream, include/std/queue, include/std/set,
5257 include/std/sstream, include/std/stack, include/std/stdexcept,
5258 include/std/streambuf, include/std/string, include/std/utility,
5259 include/std/valarray, include/std/vector: Rename to...
5260
5261 * include/std/std_algorithm.h, include/std/std_bitset.h,
5262 include/std/std_complex.h, include/std/std_deque.h,
5263 include/std/std_fstream.h, include/std/std_functional.h,
5264 include/std/std_iomanip.h, include/std/std_ios.h,
5265 include/std/std_iosfwd.h, include/std/std_iostream.h,
5266 include/std/std_istream.h, include/std/std_iterator.h,
5267 include/std/std_limits.h, include/std/std_list.h,
5268 include/std/std_locale.h, include/std/std_map.h,
5269 include/std/std_memory.h, include/std/std_numeric.h,
5270 include/std/std_ostream.h, include/std/std_queue.h,
5271 include/std/std_set.h, include/std/std_sstream.h,
5272 include/std/std_stack.h, include/std/std_stdexcept.h,
5273 include/std/std_streambuf.h, include/std/std_string.h,
5274 include/std/std_utility.h, include/std/std_valarray.h,
5275 include/std/std_vector.h: ...this.
5276
5277 2002-01-11 Loren Rittle <ljrittle@acm.org>
5278
5279 * include/Makefile.am (extra_target_headers): New list of all
5280 target files built with ad hoc naming rules.
5281 (stamp-*): Handle LN_S failure in manner portable across make
5282 implementations.
5283 (install-data-local): Install header files from human-maintained
5284 file lists and directory components instead of non-robust find.
5285 * include/Makefile.in: Rebuilt.
5286
5287 2002-01-11 Benjamin Kosnik <bkoz@redhat.com>
5288
5289 * include/bits/locale_facets.tcc (money_get::do_get(string)):
5290 Check for zero-length negative sign before adding it to output
5291 string.
5292 (money_get::do_get(long double)): Return beg.
5293 * testsuite/22_locale/money_get_members_char.cc (test02): Add
5294 iterator checks.
5295 * testsuite/22_locale/money_get_members_wchar_t.cc: Same.
5296
5297 2002-01-10 David Seymour <seymour_dj@yahoo.com>
5298
5299 libstdc++/5331
5300 * include/bits/locale_facets.h (num_get<>): Return advanced iterator
5301 for _M_extract_float and _M_extract_int
5302 * include/bits/locale_facets.tcc (num_get<>::_M_extract_float)
5303 (num_get<>::_M_extract_int): Likewise, all callers changed
5304 * testsuite/22_locale/num_get_members_char.cc: Testcase
5305
5306 2002-01-09 Paolo Carlini <pcarlini@unitus.it>
5307
5308 * libsupc++/exception (bad_exception): Add comment.
5309 * libsupc++/new (bad_alloc): Same.
5310 * libsupc++/typeinfo (bad_cast, bad_typeid): Same.
5311
5312 2002-01-09 Paolo Carlini <pcarlini@unitus.it>
5313
5314 libstdc++/3150: revert 2001-11-30 commit. DR266 only means
5315 that the destructors should be removed from the descriptions
5316 in the standard: writing them explicitly allows the vtable
5317 heuristic to work. For additional information see:
5318 http://gcc.gnu.org/ml/libstdc++/2002-01/msg00090.html
5319 http://gcc.gnu.org/ml/libstdc++/2002-01/msg00110.html
5320 http://gcc.gnu.org/ml/libstdc++/2002-01/msg00155.html
5321 * libsupc++/exception (bad_exception::~bad_exception()):
5322 Reintroduce declaration.
5323 * libsupc++/new (bad_alloc::~bad_alloc()): Same.
5324 * libsupc++/typeinfo (bad_cast::~bad_cast()): Same.
5325 (bad_typeid::~bad_typeid()): Same.
5326 * libsupc++/eh_exception.cc (bad_exception::~bad_exception()):
5327 Reintroduce definition.
5328 * libsupc++/new_handler.cc (bad_alloc::~bad_alloc()): Same.
5329 * libsupc++/tinfo.cc (bad_cast::~bad_cast()): Same.
5330 (bad_typeid::~bad_typeid()): Same.
5331
5332 2002-01-09 Benjamin Kosnik <bkoz@redhat.com>
5333
5334 * include/Makefile.am (c_base_srcdir): Remove duplicate '/'.
5335 * include/Makefile.in: Regenerate.
5336
5337 2002-01-09 Bo Thorsen <bo@suse.co.uk>
5338
5339 * config/cpu/x86-64/bits/cpu_limits.h (__glibcpp_long_bits): Add
5340 definition.
5341
5342 2002-01-08 Benjamin Kosnik <bkoz@redhat.com>
5343
5344 libstdc++/2913
5345 libstdc++/4879
5346 * include/bits/fstream.tcc (filebuf::_M_really_overflow): Test
5347 return value of _M_file->sync().
5348 (filebuf::showmanyc): Check for is_open.
5349 * include/std/fstream (filebuf::sync): Tweak.
5350 * testsuite/27_io/filebuf.cc: Tweak.
5351
5352 2002-01-08 John Fardo <jfardo@laurelnetworks.com>
5353 Brad Garcia <garsh@attbi.com>
5354
5355 * testsuite/27_io/filebuf_members.cc: Add test.
5356
5357 2002-01-07 Benjamin Kosnik <bkoz@redhat.com>
5358 Craig Rodrigues <rodrigc@mediaone.net>
5359
5360 libstdc++/5174
5361 * po/Makefile.am (mkinstalldirs): Add.
5362 * po/Makefile.in: Regenerate.
5363
5364 2002-01-07 David Billinghurst <David.Billinghurst@riotinto.com>
5365
5366 * testsuite_flags.in: Add -fmessage-length=0 to CXXFLAGS *
5367 testsuite/lib/prune.exp: Delete lines ":In function ..." from
5368 compiler output.
5369 * testsuite/23_containers/map_operators.cc: Remove
5370 dg-excess-errors comment.
5371 * testsuite/23_containers/set_operators.cc: Likewise.
5372
5373 2002-01-06 Paolo Carlini <pcarlini@unitus.it>
5374
5375 * include/bits/stl_function.h: Remove two lines of comments;
5376 adjust copyright years.
5377
5378 2002-01-04 Benjamin Kosnik <bkoz@redhat.com>
5379
5380 * include/Makefile.am (std_headers): Remove cXXX from list.
5381 (c_base_srcdir): No bits subdirectory.
5382 (c_base_builddir): Same.
5383 (c_base_headers): Adjust names, add ciso646.
5384 (bits_headers): Remove std_xxx.h headers.
5385 * include/Makefile.in: Regenerate.
5386
5387 * include/ext/iterator: Adjust includes.
5388 * include/ext/ropeimpl.h: Same.
5389 * include/ext/stl_hash_fun.h: Same.
5390 * include/ext/algorithm: Same.
5391
5392 * include/backward/bvector.h: Adjust includes.
5393 * include/backward/vector.h: Same.
5394 * include/backward/strstream: Same.
5395 * include/backward/streambuf.h: Same.
5396 * include/backward/stack.h: Same.
5397 * include/backward/set.h: Same.
5398 * include/backward/queue.h: Same.
5399 * include/backward/multiset.h: Same.
5400 * include/backward/multimap.h: Same.
5401 * include/backward/map.h: Same.
5402 * include/backward/list.h: Same.
5403 * include/backward/iterator.h: Same.
5404 * include/backward/iostream.h: Same.
5405 * include/backward/iomanip.h: Same.
5406 * include/backward/fstream.h: Same.
5407 * include/backward/deque.h: Same.
5408 * include/backward/complex.h: Same.
5409
5410 * include/bits/std_algorithm.h: Move to...
5411 * include/std/algorithm: ...here.
5412 * include/bits/std_iosfwd.h, std_locale.h, std_stack.h,
5413 std_bitset.h, std_ios.h, std_map.h, std_stdexcept.h,
5414 std_complex.h, std_iostream.h, std_memory.h, std_streambuf.h,
5415 std_deque.h, std_istream.h, std_numeric.h, std_string.h,
5416 std_fstream.h, std_ostream.h, std_utility.h, std_iterator.h,
5417 std_queue.h, std_valarray.h, std_functional.h, std_limits.h,
5418 std_set.h, std_vector.h, std_iomanip.h, std_list.h, std_sstream.h:
5419 Same.
5420
5421 * include/c_std/bits/std_cassert.h: Move to...
5422 * include/c_std/cassert: Here.
5423 * include/c_std/std_cctype.h, std_cerrno.h, std_cfloat.h,
5424 std_climits.h, std_clocale.h, std_cmath.h, std_csetjmp.h,
5425 std_csignal.h, std_cstdarg.h, std_cstddef.h, std_cstdio.h,
5426 std_cstdlib.h, std_cstring.h, std_ctime.h, std_cwchar.h,
5427 std_cwctype.h: Same.
5428 * include/c_std/cmath: Adjust cmath.tcc include.
5429 * include/c_std/cstdlib: Adjust includes.
5430 * include/c_std/cwchar: Same.
5431 * include/c_std/ctime: Same.
5432 * include/c_std/cstring: Same.
5433 * include/c_std/cstdio: Same.
5434 * include/c_std/bits: Remove directory.
5435
5436 * include/c/bits/std_cassert.h: Move to...
5437 * include/c/cassert: Here.
5438 * include/c/std_cctype.h, std_cerrno.h, std_cfloat.h,
5439 std_climits.h, std_clocale.h, std_cmath.h, std_csetjmp.h,
5440 std_csignal.h, std_cstdarg.h, std_cstddef.h, std_cstdio.h,
5441 std_cstdlib.h, std_cstring.h, std_ctime.h, std_cwchar.h,
5442 std_cwctype.h: Same.
5443 * include/c/bits: Remove directory.
5444
5445 * include/std/cwctype: Remove.
5446 * include/std/cwchar: Remove.
5447 * include/std/ctime: Remove.
5448 * include/std/cstring: Remove.
5449 * include/std/cstdlib: Remove.
5450 * include/std/cstdio: Remove.
5451 * include/std/cstddef: Remove.
5452 * include/std/cstdarg: Remove.
5453 * include/std/csignal: Remove.
5454 * include/std/csetjmp: Remove.
5455 * include/std/cmath: Remove.
5456 * include/std/clocale: Remove.
5457 * include/std/climits: Remove.
5458 * include/std/ciso646: Remove.
5459 * include/std/cfloat: Remove.
5460 * include/std/cerrno: Remove.
5461 * include/std/cctype: Remove.
5462 * include/std/cassert: Remove.
5463
5464 * include/bits/fpos.h: Adjust includes, removing <bits/std_xxx.h>
5465 files and subsituting <xxx>.
5466 * include/bits/valarray_array.h: Same.
5467 * include/bits/stl_uninitialized.h: Same.
5468 * include/bits/stl_alloc.h: Same.
5469 * include/bits/stl_algobase.h: Same.
5470 * include/bits/sstream.tcc: Same.
5471 * include/bits/pthread_allocimpl.h: Same.
5472 * include/bits/ostream.tcc: Same.
5473 * include/bits/localefwd.h: Same.
5474 * include/bits/locale_facets.tcc: Same.
5475 * include/bits/locale_facets.h: Same.
5476 * include/bits/istream.tcc: Same.
5477 * include/bits/char_traits.h: Same.
5478 * include/bits/boost_concept_check.h: Same.
5479 * include/bits/basic_file.h: Same.
5480 * include/std/bitset: Same.
5481 * include/std/complex: Same.
5482 * include/std/fstream: Same.
5483 * include/std/functional: Same.
5484 * include/std/ios: Same.
5485 * include/std/iostream: Same.
5486 * include/std/ostream: Same.
5487 * include/std/sstream: Same.
5488 * include/std/streambuf: Same.
5489 * include/std/string: Same.
5490 * include/std/iterator: Same.
5491 * include/std/valarray: Same.
5492
5493 * src/ios.cc: Adjust includes.
5494 * src/valarray-inst.cc: Same.
5495 * src/string-inst.cc: Same.
5496 * src/stl-inst.cc: Same.
5497 * src/stdexcept.cc: Same.
5498 * src/misc-inst.cc: Same.
5499 * src/localename.cc: Same.
5500 * src/locale-inst.cc: Same.
5501 * src/locale.cc: Same.
5502 * src/limits.cc: Same.
5503 * src/concept-inst.cc: Same.
5504 * src/complex_io.cc: Same.
5505 * src/codecvt.cc: Same.
5506 * src/bitset.cc: Same.
5507 * src/cmath.cc: Same.
5508
5509 2002-01-04 Paolo Carlini <pcarlini@unitus.it>
5510
5511 * include/bits/stl_tree.h (rb_tree): Move to...
5512 * include/ext/rb_tree: ...here, new file.
5513 * include/Makefile.am (ext_headers): Add new file.
5514 * include/Makefile.in: Regenerate.
5515 * include/bits/stl_tempbuf.h (get_temporary_buffer + helper,
5516 return_temporary_buffer, struct temporary_buffer): Move to...
5517 * include/ext/memory: ...here.
5518 * testsuite/ext/headers.cc: Include <ext/rb_tree>.
5519 * include/backward/tempbuf.h: Include <ext/memory>, tweak.
5520 * include/backward/tree.h: Include <ext/rb_tree), tweak.
5521
5522 2002-01-03 Paolo Carlini <pcarlini@unitus.it>
5523
5524 * include/bits/stl_numeric.h (power + helpers, iota): Move to...
5525 * include/ext/numeric: ...here, new file.
5526 * include/bits/stl_function.h (identity_element, unary_compose,
5527 binary_compose, compose1, compose2, identity, select1st,
5528 select2nd, project1st + helper, project2nd + helper,
5529 constant_void_fun + helper, constant_unary_fun + helper,
5530 costant_binary_fun + helper, constant0, constant1, constant2,
5531 subtractive_rng, mem_fun1, mem_fun1_ref): Move to...
5532 * include/ext/functional: ...here, new file.
5533 * include/Makefile.am (ext_headers): Add new files.
5534 * include/Makefile.in: Regenerate.
5535 * testsuite/ext/headers.cc: Include <ext/numeric> and
5536 <ext/functional>.
5537 * include/backward/algo.h: Include <ext/numeric>, tweak.
5538 * include/backward/function.h: Include <ext/functional>, tweak.
5539 * include/ext/ropeimpl.h: Include <ext/numeric>.
5540
5541 2002-01-03 Jeffrey A Law <law@redhat.com>
5542
5543 * config/os/hpux/bits/os_defines.h: Prefix __strtoll and
5544 __strtoull declarations with __extension__.
5545
5546 2002-01-03 David Billinghurst <David.Billinghurst@riotinto.com>
5547
5548 * testsuite/lib/prune.exp: Correct regular expression for
5549 -ffunction-sections
5550
5551 2002-01-02 Phil Edwards <pme@gcc.gnu.org>
5552
5553 * include/bits/stl_algo.h (upper_bound, equal_range, binary_search):
5554 Change concept checks, as with lower_bound and PR 2054.
5555 * testsuite/ext/concept_checks.cc: Expand test to include those.
5556
5557 2002-01-02 Phil Edwards <pme@gcc.gnu.org>
5558
5559 * include/bits/boost_concept_check.h: Import some changes from
5560 upsteam (Boost) version.
5561
5562 2002-01-02 Paolo Carlini <pcarlini@unitus.it>
5563
5564 * include/bits/stl_algobase.h (copy_n + helpers,
5565 lexicographical_compare_3way + helpers): Move to...
5566 * include/ext/algorithm: ...here.
5567 * include/bits/stl_uninitialized.h (uninitialized_copy_n +
5568 helpers): Move to...
5569 * include/ext/memory: ...here, new file.
5570 * include/Makefile.am (ext_headers): Add new file.
5571 * include/Makefile.in: Regenerate.
5572 * testsuite/ext/headers.cc: Include <ext/memory>.
5573 * include/backward/algobase.h: Include <ext/memory> and
5574 <ext/algorithm>, tweak.
5575 * include/ext/ropeimpl.h: Include <ext/memory>, tweak.
5576 * include/ext/stl_rope.h: Include <ext/memory>, tweak.
5577
5578 2002-01-01 Roger Sayle <roger@eyesopen.com>
5579
5580 * libmath/stubs.c (sinf,cosf): Implement stubs to enable the
5581 equivalent ___builtin__ versions.
5582
5583 * include/c_shadow/bits/std_cmath.h: All __builtin math functions
5584 are available in libstdc++ as the necessary stub implementations
5585 are provided by libmath/stubs.c.
5586
5587 2002-01-01 Jason Thorpe <thorpej@wasabisystems.com>
5588
5589 * configure.in: Add support for NetBSD cross compiles.
5590 * configure: Regenerate.
5591 \f
5592 Copyright (C) 2002 Free Software Foundation, Inc.
5593
5594 Copying and distribution of this file, with or without modification,
5595 are permitted in any medium without royalty provided the copyright
5596 notice and this notice are preserved.