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