Subversion Repositories Kolibri OS

Rev

Go to most recent revision | Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
5134 serge 1
2003-12-31  Paolo Carlini  
2
 
3
	* include/bits/locale_facets.tcc (num_get::_M_extract_int,
4
	num_get::_M_extract_float): According to 22.2.2.1.2, p8-9,
5
	_first_ look for thousands_sep, then for decimal_point and
6
	finally for digits.
7
	(num_get::_M_extract_float): After the decimal_point or
8
	'e'/'E', decimal_point and thousands_sep just break out the
9
	parsing loop.
10
	* testsuite/22_locale/num_get/get/char/11.cc: Add tests.
11
	* testsuite/22_locale/num_get/get/wchar_t/11.cc: Likewise.
12
 
13
2003-12-30  Paolo Carlini  
14
 
15
	PR libstdc++/13369
16
	* include/bits/locale_facets.tcc (__verify_grouping):
17
	Fix to deal properly with __grouping_tmp.size() >
18
	__grouping.size().
19
	* testsuite/22_locale/num_get/get/char/13.cc: New.
20
	* testsuite/22_locale/num_get/get/wchar_t/13.cc: Ditto.
21
 
22
2003-12-29  Jerry Quinn  
23
 
24
	* include/bits/locale_facets.h (ctype.narrow,widen): Add cast.
25
 
26
2003-12-29  Paolo Carlini  
27
 
28
	* acinclude.m4 (GLIBCXX_CHECK_LFS): Add -fno-exceptions
29
	to CXXFLAGS.
30
	* aclocal.m4: Regenerate.
31
	* configure: Likewise.
32
 
33
2003-12-29  Mark Mitchell  
34
 
35
	* acconfig.h: Add _GLIBCXX_USE_C99_MATH.
36
	* acinclude.m4 (GLIBCXX_ENABLE_C99): Define GLIBCXX_USE_C99_MATH.
37
	* configure.ac: Define HAVE_S_ISREG and HAVE_S_IFREG when
38
	targeting newlib.
39
	* aclocal.m4: Regenerated.
40
	* config.h.in: Likewise.
41
	* configure: Likewise.
42
	* Makefile.in: Likewise.
43
	* include/Makefile.in: Likewise.
44
	* libmath/Makefile.in: Likewise.
45
	* libsupc++/Makefile.in: Likewise.
46
	* testsuite/Makefile.in: Likewise.
47
	* src/Makefile.in: Likewise.
48
	* po/Makefile.in: Likewise.
49
	* include/c_std/std_cmath.h (_GLIBCXX_USE_C99): Replace with ...
50
	(_GLIBCXX_USE_C99_MATH): ... this.
51
 
52
	* testsuite/27_io/basic_filebuf/sgetn/char/1-in.cc: XFAIL for
53
	arm-none-elf.
54
	* testsuite/27_io/basic_filebuf/sgetn/char/1-io.cc: Likewise.
55
	* testsuite/27_io/basic_filebuf/sgetn/char/2-in.cc: Likewise.
56
	* testsuite/27_io/basic_filebuf/sgetn/char/2-io.cc: Likewise.
57
	* testsuite/27_io/basic_istream/readsome/char/6476-2.cc: Likewise.
58
	* testsuite/27_io/objects/char/9.cc: Likewise.
59
	* testsuite/ext/stdio_filebuf/char/10063-2.cc: Likewise.
60
 
61
2003-12-28  Paolo Carlini  
62
 
63
	* include/ext/pool_allocator.h (class __pool_alloc): Use
64
	operator new and operator delete.
65
 
66
2003-12-24  Andrew Pinski  
67
 
68
	* config/cpu/i386/atomicity.h (__exchange_and_add): Fix output
69
	constraint.
70
 
71
	PR libstdc++/13480
72
	* config/cpu/i386/atomicity.h: Split up read-write memory operand.
73
 
74
2003-12-23  Benjamin Kosnik  
75
 
76
	* include/ext/new_allocator.h (new_allocator): Proper allocator class.
77
	(__new_alloc): Delete.
78
	* include/ext/malloc_allocator.h (malloc_allocator): Same.
79
	(__malloc_alloc): Delete.
80
 	* include/ext/mt_allocator.h: Same, but weakly.
81
 	* include/ext/debug_allocator.h: Convert to the new style.
82
	* include/ext/pool_allocator.h: Use global new and delete directly.
83
	* include/backward/alloc.h: Don't inject malloc_allocator, or
84
	debug_allocator.
85
	* testsuite/ext/allocators.cc: Minimal fixups for usage of new
86
	classes.  Comment out tests with __pool_alloc for now.
87
	* testsuite/performance/allocator.cc: Same.
88
 
89
2003-12-22  Matt Austern  
90
 
91
	* include/bits/stl_bvector.h (_Bvector_alloc_base): Eliminate.
92
	(_Bvector_base): Inherit directly from word allocator.
93
	* include/bits/stl_tree.h (_Rb_tree_alloc_base): Eliminate.
94
	(_Rb_tree_base): Eliminate.
95
	(_Rb_tree): Inherit directly from node allocator.
96
	* include/ext/slist (_Alist_alloc_base): Eliminate.
97
	(_Slist_base): Inherit direcly from node allocator.
98
 
99
2003-12-22  Benjamin Kosnik  
100
 
101
	* testsuite/18_support/numeric_limits.cc: Add _GLIBCXX_ASSERT to
102
	dg-options in testcases that use VERIFY.
103
	* testsuite/23_containers/vector/invalidation/1.cc: Same.
104
	* testsuite/23_containers/vector/invalidation/2.cc: Same.
105
	* testsuite/23_containers/vector/invalidation/3.cc: Same.
106
	* testsuite/23_containers/vector/invalidation/4.cc: Same.
107
	* testsuite/23_containers/vector/resize/1.cc: Same.
108
	* testsuite/26_numerics/complex_value.cc: Same.
109
	* testsuite/27_io/ios_base/storage/1.cc: Same.
110
	* testsuite/27_io/ios_base/storage/2.cc: Same.
111
	* testsuite/27_io/ios_base/storage/3.cc: Same.
112
	* testsuite/27_io/manipulators/standard/char/2.cc: Same.
113
	* testsuite/backward/11460.cc: Same.
114
	* testsuite/backward/strstream_members.cc: Same.
115
 
116
	* include/ext/hash_set (class hash_multiset): Fix typo.
117
 
118
2003-12-22  Benjamin Kosnik  
119
 
120
	* testsuite/27_io/objects/char/5.cc: Don't use stdc++.h.gch.
121
	* testsuite/27_io/objects/wchar_t/5.cc: Same.
122
	* docs/html/test.html: Add docs for constructing test files that
123
	don't use stdc++.h.gch.
124
	* scripts/testsuite_flags.in (PCHFLAGS): Move to --cxxpchflags.
125
	* testsuite/libstdc++-dg/normal.exp: Compute DEFAULT_CXXFLAGS
126
	differently.
127
 
128
	* include/bits/ios_base.h (ios_base::Init::_S_initialized): Remove.
129
	* src/ios_init.cc: Same.
130
	* config/linker-map.gnu: Same.
131
	* testsuite/27_io/ios_base/cons/copy_neg.cc: Adjust line numbers.
132
	* testsuite/27_io/ios_base/cons/assign_neg.cc: Same.
133
 
134
2003-12-22  Andrew Pinski  
135
 
136
	PR libstdc++/13462
137
	* include/bits/stl_multiset.h (__gnu_norm::multiset): Define pointer
138
	as allocator's pointer, likewise for reference, const_pointer, and
139
	const_reference.
140
	* include/bits/stl_set.h (__gnu_norm::set): Likewise.
141
	* include/ext/hash_set (__gnu_ext::hash_set): Likewise.
142
	(__gnu_ext::hash_multiset): Likewise.
143
 
144
2003-12-22  Paolo Carlini  
145
 
146
	* include/bits/locale_facets.tcc (num_get::_M_extract_int,
147
	num_get::_M_extract_float): According to 22.2.2.1.2, p8-9,
148
	first look for decimal_point and thousands_sep, when parsing
149
	sign, leading zeros (and 0, Ox, 0X for integer types) too.
150
	* testsuite/22_locale/num_get/get/char/12.cc: New.
151
	* testsuite/22_locale/num_get/get/wchar_t/12.cc: Likewise.
152
 
153
	* testsuite/22_locale/num_get/get/char/11.cc: Add a comment.
154
	* testsuite/22_locale/num_get/get/wchar_t/11.cc: Likewise.
155
 
156
2003-12-20  Jason Merrill  
157
 
158
	* config/cpu/powerpc/atomicity.h: Fix oversight in previous
159
	change.
160
 
161
2003-12-20  Jerry Quinn  
162
 
163
	* docs/doxygen/TODO: Update.
164
	* include/bits/locale_classes.h (locale, facet, id): Document.
165
	* include/bits/locale_facets.tcc (has_facet, use_facet): Document.
166
 
167
2003-12-19  Jason Merrill  
168
 
169
	* config/cpu/cris/atomicity.h: Remove memory clobbers.
170
	* config/cpu/mips/atomicity.h: Likewise.
171
	* config/cpu/i486/atomicity.h: Remove memory clobbers.
172
	Split up read-write memory operand.
173
	* config/cpu/m68k/atomicity.h: Likewise.
174
	* config/cpu/powerpc/atomicity.h: Make memory I/O explicit.
175
	* config/cpu/s390/atomicity.h: Likewise.
176
	* config/cpu/sparc/atomicity.h: Likewise.
177
 
178
2003-12-20  Carlo Wood  
179
 
180
	* bits/demangle.h
181
	namespace __gnu_cxx::demangler
182
	(session::decode_encoding): Put the postfix
183
	of the return type of (member) functions after the function
184
	instead of after the return type.
185
 
186
2003-12-19  Jerry Quinn  
187
 
188
        * include/bits/locale_facet.h
189
        (__ctype_abstract_base,ctype,ctype,ctype):
190
        Document.
191
 
192
2003-12-19  Paolo Carlini  
193
 
194
	* include/bits/locale_facets.tcc (num_get::_M_extract_int,
195
	num_get::_M_extract_float): According to 22.2.2.1.2, p8-9,
196
	first look for decimal_point and thousands_sep.
197
	* testsuite/22_locale/num_get/get/char/11.cc: New.
198
	* testsuite/22_locale/num_get/get/wchar_t/11.cc: Likewise.
199
 
200
2003-12-19  Paolo Carlini  
201
 
202
	* include/bits/locale_facets.tcc (num_get::_M_extract_float):
203
	When __found_sci becomes true stop eating thousands separators
204
	and the decimal radix separator.
205
	* testsuite/22_locale/num_get/get/char/9.cc: New.
206
	* testsuite/22_locale/num_get/get/wchar_t/9.cc: Likewise.
207
 
208
	* config/locale/generic/c_locale.cc (__convert_to_v): Don't
209
	check that *__sanity == '\0': parsing may stop earlier, still
210
	be successful.
211
	* config/locale/gnu/c_locale.cc: Likewise.
212
	* testsuite/22_locale/num_get/get/char/10.cc: New.
213
	* testsuite/22_locale/num_get/get/wchar_t/10.cc: Likewise.
214
	* testsuite/27_io/basic_istream/extractors_arithmetic/char/10.cc:
215
	Tweak in one place accordingly.
216
 
217
	* testsuite/22_locale/money_get/get/char/1.cc: Fix typo.
218
	* testsuite/22_locale/money_get/get/wchar_t/1.cc: Likewise.
219
 
220
2003-12-18  Benjamin Kosnik  
221
 
222
	* include/bits/stl_list.h: Formatting tweaks.
223
	* include/bits/list.tcc: Same.
224
 
225
2003-12-18  Matt Austern  
226
 
227
	* include/bits/demangle.h: Fix allocator type correctness,
228
	i.e. make sure that when we instantiate a container with a value
229
	type and an allocator, the allocator's value type matches the
230
	container's.
231
	* include/bits/stl_deque.h (_Deque_alloc_base): Eliminate.
232
	(_Deque_base): inherit directly from the deque's allocator.  Use
233
	rebinding instead of _Alloc_traits.  Pick up data members from
234
	_Deque_alloc_base.
235
	* include/bits/stl_list.h (_List_alloc_base): Eliminate.
236
	(_List_base): Inherit directly from the list's allocator.  Use
237
	rebinding instead of _Alloc_traits.  Pick up data members from
238
	_List_alloc_base.
239
	* include/bits/stl_vector.h (_Vector_alloc_base): Eliminate
240
	(_Vector_base): Inherit directly from the vector's allocator.  Use
241
	rebinding instead of _Alloc_traits.  Pick up data members from
242
	_Vector_alloc_base.
243
	* include/ext/hashtable.h: Fix allocator type correctness (the
244
	vector of buckets must be passed an allocator for objects of
245
	type _Node*).  Use rebinding instead of _Alloc_traits.
246
 
247
2003-12-17  Paolo Carlini  
248
 
249
	* include/bits/locale_facets.tcc (time_get::_M_extract_via_format):
250
	Use narrow to get from __format[__i] a char __c representing a
251
	formatting code, don't use it to compare *__beg to __format[__i].
252
	* testsuite/22_locale/time_get/get_date/wchar_t/4.cc: New.
253
 
254
2003-12-17  Paolo Carlini  
255
 
256
	* testsuite/performance/container_benchmark.cc: Tweak outputs.
257
 
258
	* testsuite/performance/list_create_fill_sort.cc: Shrink a
259
	bit some outputs.
260
 
261
	* testsuite/testsuite_performance.h: Widen a few output fields.
262
 
263
	* testsuite/performance/ifstream_extract_int.cc: New.
264
 
265
2003-12-16  Phil Edwards  
266
 
267
	* configure.ac (AM_INIT_AUTOMAKE):  Don't warn about GNU Make.
268
	* configure:  Regenerated.
269
	* Makefile.am (check-%):  New catch-all forwarding target.
270
	* Makefile.in:  Regenerated.
271
 
272
2003-12-16  Paolo Carlini  
273
 
274
	* testsuite/performance/container_benchmark.cc: New, a
275
	benchmark developed by Bjarne Stroustrup and Alexander
276
	Stepanov and made available with no restrictions.
277
 
278
	* testsuite/testsuite_performance.h (report_header): New,
279
	useful to produce header lines in the reports.
280
 
281
2003-12-16  Jonathan Wakely  
282
 
283
	* docs/html/21_strings/howto.html: Document shrink-to-fit reserve().
284
	* docs/html/faq/index.html: Reducing vector's capacity() to size().
285
	* docs/html/documentation.html, docs/html/faq/index.txt: Regenerate.
286
 
287
2003-12-16  Paolo Carlini  
288
 
289
	* testsuite/performance/narrow_widen_char.cc: Tweak the
290
	number of iterations for each test.
291
	* testsuite/performance/narrow_widen_wchar_t.cc: Add a
292
	missing clear_counters.
293
 
294
2003-12-16  Paolo Carlini  
295
 
296
	PR libstdc++/11723
297
	* include/bits/locale_facets.h: Add _M_bit and _M_wmask,
298
	used to speed up the computation of ctype::do_is.
299
	* config/locale/generic/ctype_members.cc
300
	(_M_initialize_ctype): Fill _M_bit and _M_wmask.
301
	(ctype::do_is): Use _M_bit and _M_wmask.
302
	* config/locale/gnu/ctype_members.cc: Likewise.
303
	* testsuite/performance/is_wchar_t.cc: New.
304
 
305
	* testsuite/performance/narrow_widen_wchar_t.cc: Tweak
306
	string literal (incorrect citation ;)
307
 
308
	* include/bits/locale_facets.h: Minor tweaks, const
309
	correctness, unsigned -> size_t.
310
 
311
2003-12-16  Jerry Quinn  
312
 
313
	* include/bits/locale_facets.h (widen, narrow):  Uncomment the
314
	intended code.
315
 
316
2003-12-15  Jerry Quinn  
317
 
318
        * config/os/aix/ctype_noninline.h,
319
	config/os/bsd/freebsd/ctype_noninline.h,
320
	config/os/bsd/netbsd/ctype_noninline.h,
321
	config/os/djgpp/ctype_noninline.h,
322
	config/os/generic/ctype_noninline.h,
323
	config/os/gnu-linux/ctype_noninline.h,
324
	config/os/hpux/ctype_noninline.h,
325
	config/os/irix/irix5.2/ctype_noninline.h,
326
	config/os/irix/irix6.5/ctype_noninline.h,
327
	config/os/mingw32/ctype_noninline.h,
328
	config/os/newlib/ctype_noninline.h,
329
	config/os/qnx/qnx6.1/ctype_noninline.h,
330
	config/os/solaris/solaris2.5/ctype_noninline.h,
331
	config/os/solaris/solaris2.6/ctype_noninline.h,
332
	config/os/solaris/solaris2.7/ctype_noninline.h,
333
	config/os/vxworks/ctype_noninline.h,
334
	config/os/windiss/ctype_noninline.h (ctype):  Initialize
335
	_M_narrow, _M_widen.
336
	* include/bits/locale_facets.h (_M_widen, _M_widen_ok,
337
	_M_narrow, _M_narrow_ok): New.
338
	(widen, narrow): Use tables to bypass virtual functions.
339
	(_M_widen_init, _M_narrow_init): New.
340
 
341
2003-12-15  Carlo Wood  
342
 
343
	* include/bits/ios_base.h (Init::_S_initialized): Change into
344
	declaration.
345
	* src/ios_init.cc (Init::_S_initialized): Add definition.
346
 
347
2003-12-15  Benjamin Kosnik  
348
 
349
	PR libstdc++/12658
350
	* include/Makefile.am (bits_headers): Add concurrence.h.
351
	* include/Makefile.in: Regenerated.
352
	* include/bits/concurrence.h: New.
353
	* src/locale_init.cc: Use it.
354
	(locale::locale): Lock critical regions.
355
	(locale::global): Same.
356
 
357
2003-12-15  Benjamin Kosnik  
358
 
359
	* include/bits/basic_string.h: Change _*_references to _*_refcount.
360
	* include/bits/locale_classes.h: Same.
361
	* src/locale.cc: Same.
362
	* src/locale_name.cc: Same.
363
	* src/locale_init.cc: Same.
364
 
365
2003-12-15  Benjamin Kosnik  
366
 
367
	PR libstdc++/12855
368
	* include/bits/ios_base.h (Init::_S_ios_base_init): Change to
369
	_S_refcount, make atomic.
370
	* src/ios.cc: Adjust definition.
371
	* src/ios_init.cc (ios_base::Init::Init): Use __exchange_and_add,
372
	and __atomic_add.
373
	(ios_base::Init::~Init): Same.
374
	* testsuite/27_io/ios_base/cons/assign_neg.cc: Adjust line numbers.
375
	* testsuite/27_io/ios_base/cons/copy_neg.cc: Same.
376
 
377
2003-12-15  Paolo Carlini  
378
 
379
	* include/bits/locale_facets.tcc (num_get::do_get(bool&)):
380
	Fail as soon as the begins of both truename and falsename
381
	stop to match; always leave __beg one position beyond the
382
	last char successfully matched.
383
	* testsuite/22_locale/num_get/get/char/8.cc: New.
384
	* testsuite/22_locale/num_get/get/wchar_t/8.cc: Likewise.
385
 
386
2003-12-15  Paolo Carlini  
387
 
388
	* include/bits/locale_facets.h (_M_widen): Reserve space
389
	for all the possible widened chars.
390
	* config/locale/generic/ctype_members.cc (_M_initialize_ctype):
391
	Compute at construction time all the possible widened chars.
392
	(do_widen): Tweak, simplify.
393
	* config/locale/gnu/ctype_members.cc: Likewise.
394
	* testsuite/performance/narrow_widen_wchar_t.cc: Add tests
395
	for the array versions.
396
 
397
2003-12-12  Paolo Carlini  
398
	    Benjamin Kosnik  
399
 
400
	PR libstdc++/13341
401
	* include/bits/locale_facets.h (ctype): Declare
402
	_M_initialize_ctype() and _M_narrow_ok, _M_narrow and _M_widen.
403
	* src/ctype.cc (ctype::ctype(size_t),
404
	ctype::ctype(__c_locale, size_t)): Use
405
	_M_initialize_ctype to fill _M_narrow and _M_widen.
406
	(ctype_byname::ctype_byname(const char*, size_t)):
407
	Likewise.
408
	* config/locale/generic/ctype_members.cc (do_narrow, do_widen)
409
	Use _M_narrow and _M_widen when possible, instead of calling
410
	wctob and btowc, respectively.
411
	(_M_initialize_ctype): Define, it fills at construction time
412
	_M_narrow and _M_widen.
413
	* config/locale/gnu/ctype_members.cc: Likewise.
414
	* testsuite/performance/narrow_widen_wchar_t.cc: New.
415
 
416
2003-12-12  Jonathan Wakely  
417
 
418
	* docs/html/faq/index.txt: Regenerate after adding  tags.
419
 
420
2003-12-11  Neil Ferguson  
421
            Paolo Carlini  
422
 
423
	* include/bits/basic_string.tcc (reserve): Allow shrink-to-fit.
424
	* testsuite/21_strings/basic_string/capacity/1.cc: Tweak.
425
	* testsuite/21_strings/basic_string/capacity/char/1.cc: Ditto.
426
	* testsuite/21_strings/basic_string/capacity/wchar_t/1.cc: Ditto.
427
 
428
2003-12-10  Benjamin Kosnik  
429
 
430
	PR libstdc++/6243
431
	* testsuite/lib/libstdc++.exp (v3-init): Add
432
	original_ld_library_path, calculate ld_library path, set
433
	LD_LIBRARY_PATH to both. Based on libjava.exp.
434
 
435
2003-12-10  Benjamin Kosnik  
436
            Alexandre Oliva  
437
 
438
	PR libstdc++/11612
439
	* testsuite/Makefile.am (GLIBCXX_DIR): New.
440
	(GLIBGCC_DIR): New.
441
	(CXXLINK): Use both with -R so libtool links the correct libs.
442
 
443
2003-12-10  Paolo Carlini  
444
 
445
	PR libstdc++/13217
446
	* include/bits/fstream.tcc (underflow): Deal gracefully with
447
	read errors: throw ios_base::failure.
448
 
449
2003-12-10  Benjamin Kosnik  
450
 
451
	PR libstdc++/10063
452
	* config/io/basic_file_stdio.cc (__basic_file::sys_open): Sync.
453
	* testsuite/ext/stdio_filebuf/char/10063-1.cc: New.
454
	* testsuite/ext/stdio_filebuf/char/10063-2.cc: New.
455
 
456
2003-12-10  Paolo Carlini  
457
 
458
	* include/bits/locale_facets.tcc (num_put::do_put(void*)):
459
	Remove the try/catch, not necessary.
460
 
461
2003-12-10  Paolo Carlini  
462
 
463
	* testsuite/22_locale/locale/cons/12438.cc: Tweak memory
464
	limit and iterations to avoid spurious failures on some
465
	64 bit machines.
466
 
467
2003-12-09  Benjamin Kosnik  
468
 
469
	* config/linker-map.gnu: Remove private ios_base members from
470
	export list.
471
 
472
	* config/cpu/alpha/atomicity.h: Consistently format.
473
	* config/cpu/cris/atomicity.h: Same.
474
	* config/cpu/generic/atomicity.h: Same.
475
	* config/cpu/hppa/atomicity.h: Same.
476
	* config/cpu/i386/atomicity.h: Same.
477
	* config/cpu/i486/atomicity.h: Same.
478
	* config/cpu/ia64/atomicity.h: Same.
479
	* config/cpu/m68k/atomicity.h: Same.
480
	* config/cpu/mips/atomicity.h: Same.
481
	* config/cpu/powerpc/atomicity.h: Same.
482
	* config/cpu/s390/atomicity.h: Same.
483
	* config/cpu/sparc/atomicity.h: Same.
484
 
485
2003-12-09  Benjamin Kosnik  
486
 
487
	PR libstdc++/13296
488
	* acinclude.m4 (GLIBCXX_ENABLE_LIBUNWIND_EXCEPTIONS): Remove.
489
	* aclocal.m4: Regenerate.
490
	* configure.ac: Remove call to GLIBCXX_ENABLE_LIBUNWIND_EXCEPTIONS.
491
	* conigure: Regenerate.
492
	* src/Makefile.am (libstdc___la_LDFLAGS): Remove LIBUNWIND_FLAGS.
493
	* src/Makefile.in: Regenerate.
494
	* docs/html/17_intro/configury.html: Modify.
495
 
496
2003-12-09  Paolo Carlini  
497
 
498
	* include/bits/demangle.h (struct implementation_details):
499
	Keep in comments the names of the unused parameters.
500
 
501
2003-12-09  Paolo Carlini  
502
 
503
	* include/bits/demangle.h (struct implementation_details):
504
	Fix unused parameters warning.
505
 
506
2003-12-09  Paolo Carlini  
507
 
508
	* include/bits/locale_facets.tcc (num_get::_M_extract_int):
509
	Slightly streamline the code dealing with overflows and the
510
	parsing of the sign.
511
 
512
2003-12-09  Bernardo Innocenti  
513
 
514
	* include/ext/algorithm, include/ext/debug_allocator.h,
515
	include/ext/enc_filebuf.h, include/ext/functional,
516
	include/ext/hash_fun.h, include/ext/hash_map, include/ext/hash_set,
517
	include/ext/hashtable.h, include/ext/iterator,
518
	include/ext/malloc_allocator.h, include/ext/memory,
519
	include/ext/mt_allocator.h, include/ext/numeric,
520
	include/ext/pod_char_traits.h, include/ext/pool_allocator.h,
521
	include/ext/rb_tree, include/ext/rope, include/ext/ropeimpl.h,
522
	include/ext/slist, include/ext/stdio_filebuf.h,
523
	include/ext/stdio_sync_filebuf.h: Remove trailing whitespace.
524
 
525
2003-12-09  Bernardo Innocenti  
526
 
527
	* include/debug/bitset, include/debug/debug.h, include/debug/deque,
528
	include/debug/formatter.h, include/debug/hash_map.h,
529
	include/debug/hash_multimap.h, include/debug/hash_multiset.h,
530
	include/debug/hash_set, include/debug/hash_set.h, include/debug/list,
531
	include/debug/map.h, include/debug/multimap.h,
532
	include/debug/multiset.h, include/debug/safe_base.h,
533
	include/debug/safe_iterator.h, include/debug/safe_iterator.tcc,
534
	include/debug/safe_sequence.h, include/debug/set.h,
535
	include/debug/string, include/debug/vector: Remove trailing whitespace.
536
 
537
2003-12-09  Bernardo Innocenti  
538
 
539
	* include/c_compatibility/iso646.h, include/c_compatibility/limits.h,
540
	include/c_compatibility/locale.h, include/c_compatibility/stdio.h,
541
	include/c_compatibility/string.h, include/c_compatibility/time.h,
542
	include/c_compatibility/wchar.h, include/c_compatibility/wctype.h:
543
	Remove trailing whitespace.
544
 
545
2003-12-09  Bernardo Innocenti  
546
 
547
	* include/c_std/cmath.tcc, include/c_std/std_cassert.h,
548
	include/c_std/std_cctype.h, include/c_std/std_cmath.h,
549
	include/c_std/std_cstddef.h, include/c_std/std_cstdio.h,
550
	include/c_std/std_cstdlib.h, include/c_std/std_cstring.h,
551
	include/c_std/std_cwchar.h, include/c_std/std_cwctype.h:
552
	Remove trailing whitespace.
553
 
554
2003-12-09  Bernardo Innocenti  
555
 
556
	* include/c/std_cctype.h, include/c/std_cmath.h,
557
	include/c/std_cstdlib.h include/c/std_cwchar.h,
558
	include/c/std_cwctype.h: Remove trailing whitespace.
559
 
560
2003-12-09  Bernardo Innocenti  
561
 
562
	* include/backward/algo.h, include/backward/algobase.h,
563
	include/backward/alloc.h, include/backward/complex.h,
564
	include/backward/defalloc.h, include/backward/function.h,
565
	include/backward/iterator.h, include/backward/new.h,
566
	include/backward/ostream.h, include/backward/queue.h,
567
	include/backward/rope.h, include/backward/stream.h,
568
	include/backward/streambuf.h, include/backward/strstream,
569
	include/backward/tempbuf.h, include/backward/tree.h,
570
	include/backward/vector.h: Remove trailing whitespace.
571
 
572
2003-12-08  Paolo Carlini  
573
 
574
	* config/locale/generic/c_locale.cc (__convert_to_v(long&),
575
	__convert_to_v(unsigned long&), __convert_to_v(long long&),
576
	__convert_to_v(unsigned long long&): Remove.
577
	(__convert_to_v(float&), __convert_to_v(double&),
578
	__convert_to_v(long double&)): Remove last unused parameter.
579
	* config/locale/gnu/c_locale.cc: Likewise.
580
	* include/bits/locale_facets.h: Likewise.
581
	(num_get::_M_extract_int): Update declaration.
582
	(class __num_base): Tweak _S_ie and _S_iE according to the
583
	_S_atoms_in changes.
584
	* include/bits/locale_facets.tcc (num_get::_M_extract_int):
585
	Provide directly the final _ValueT, not a string: accumulate
586
	the result checking for overflow at each digit.
587
	(num_get::do_get(bool&), num_get::do_get(long&),
588
	num_get::do_get(unsigned short&), num_get::do_get(unsigned int&),
589
	num_get::do_get(unsigned long&), num_get::do_get(long long&),
590
	num_get::do_get(unsigned long long&), num_get::do_get(void*&)):
591
	Use the new _M_extract_int, simplify.
592
	* src/locale-inst.cc (num_get::_M_extract_int(long&),
593
	num_get::_M_extract_int(unsigned short&),
594
	num_get::_M_extract_int(unsigned int&),
595
	num_get::_M_extract_int(unsigned long&),
596
	num_get::_M_extract_int(long long&),
597
	num_get::_M_extract_int(unsigned long long&): Instantiate.
598
	* src/locale_facets.cc (__num_base::_S_atoms_in): Reorder
599
        the chars in the natural order: abcdefABCDEF.
600
 
601
2003-12-08  David S. Miller  
602
 
603
	PR libstdc++/12496
604
	* config/cpu/sparc/atomicity.h (__exchange_and_add, __atomic_add):
605
	Extend increment to _Atomic_word before giving to assembler.
606
 
607
2003-12-06  Benjamin Kosnik  
608
 
609
	* testsuite/ext/enc_filebuf/char/13189.cc: Guard for __enc_traits.
610
	* testsuite/ext/enc_filebuf/wchar_t/13189.cc: Same.
611
 
612
2003-12-06  Benjamin Kosnik  
613
 
614
	PR libstdc++/11691
615
	* include/ext/stdio_filebuf.h (stdio_filebuf::stdio_filebuf):
616
	Remove __del argument to file descriptor constructor.
617
	* config/io/basic_file_stdio.h (__basic_file::sys_open): Remove
618
	bool argument.
619
	* config/io/basic_file_stdio.cc: Same.
620
 
621
2003-12-05  Benjamin Kosnik  
622
 
623
	PR libstdc++/13189
624
	* include/ext/enc_filebuf.h: Fix.
625
	* include/bits/fstream.tcc: Tweak formatting.
626
	* include/bits/postypes.h: Same.
627
	* include/bits/sstream.tcc: Same.
628
	* include/bits/streambuf.tcc: Same.
629
	* testsuite/ext/stdio_filebuf.cc: Split.
630
	* testsuite/ext/stdio_filebuf_2.cc: Split.
631
	* testsuite/ext/stdio_sync_filebuf_char.cc: Split.
632
	* testsuite/ext/stdio_sync_filebuf_wchar_t.cc: Split.
633
	* testsuite/ext/enc_filebuf/char/13189.cc: New.
634
	* testsuite/ext/enc_filebuf/wchar_t/13189.cc: New.
635
	* testsuite/ext/stdio_filebuf/char/1.cc: New.
636
	* testsuite/ext/stdio_filebuf/char/2.cc: New.
637
	* testsuite/ext/stdio_sync_filebuf/char/1.cc: New.
638
	* testsuite/ext/stdio_sync_filebuf/char/12048-1.cc: New.
639
	* testsuite/ext/stdio_sync_filebuf/char/12048-2.cc: New.
640
	* testsuite/ext/stdio_sync_filebuf/char/12048-3.cc: New.
641
	* testsuite/ext/stdio_sync_filebuf/char/12048-4.cc: New.
642
	* testsuite/ext/stdio_sync_filebuf/wchar_t/1.cc: New.
643
	* testsuite/ext/stdio_sync_filebuf/wchar_t/12948-1.cc: New.
644
	* testsuite/ext/stdio_sync_filebuf/wchar_t/12948-2.cc: New.
645
	* testsuite/ext/stdio_sync_filebuf/wchar_t/12948-3.cc: New.
646
	* testsuite/ext/stdio_sync_filebuf/wchar_t/12948-4.cc: New.
647
 
648
2003-12-05  Carlo Wood  
649
 
650
	PR libstdc++/13045
651
	* bits/demangle.h
652
	namespace __gnu_cxx::demangler
653
	(enum substitution_nt): Removed trailing comma.
654
	(implementation_details): Added.
655
	(session::M_implementation_details): Added.
656
	(session::session): Pass implementation_details.
657
	(session::decode_encoding): Same.
658
	(session::decode_real): Added.
659
	(_GLIBCXX_DEMANGLER_STYLE_VOID _GLIBCXX_DEMANGLER_STYLE_LITERAL
660
	_GLIBCXX_DEMANGLER_STYLE_LITERAL_INT
661
	_GLIBCXX_DEMANGLER_STYLE_COMPACT_EXPR_OPS
662
	_GLIBCXX_DEMANGLER_STYLE_SIZEOF_TYPENAME): Replaced with
663
	implementation_details equivalent.
664
	(session::decode_expression):
665
	Use M_implementation_details instead of macros. Add extra parentheses
666
	around 'larger than' operator in expressions in template arguments.
667
	(session::decode_bare_function_type): Idem.
668
	(session::decode_literal):
669
	Idem, and call decode_real for floating literals.
670
	(session::decode_type_with_postfix): Put the postfix
671
	of the return type of (member) functions after the function
672
	instead of after the return type.  Also, put a space after the
673
	prefix of qualified function pointers: "int (* const".
674
	* src/demangle.cc: include most dependent header file first.
675
	* testsuite/demangle/regression/cw-16.cc: Updated two
676
	and added three tests.
677
 
678
2003-12-04  Benjamin Kosnik  
679
 
680
	PR libstdc++/13284
681
	* include/bits/stl_algo.h (__random_number): Remove.
682
	(random_shuffle): Use rand, as permitted by DR 395.
683
	* include/ext/algorithm: Same.
684
	* linkage.m4 (GLIBCXX_CHECK_STDLIB_SUPPORT): Remove lrand48.
685
	* acconfig.h: Same.
686
	* crossconfig.m4: Remove HAVE_DRAND48, HAVE_LRAND48.
687
	* config.h.in: Regenerated.
688
	* configure: Same.
689
	* aclocal.m4: Same.
690
 
691
2003-12-04  Paolo Carlini  
692
 
693
	PR libstdc++/12653
694
	* include/std/std_bitset.h (operator>>): Implement resolution
695
	of DR 303 [WP]: use widen('0') and widen('1').
696
	* docs/html/ext/howto.html: Add an entry for DR 303.
697
 
698
	* include/std/std_bitset.h (operator>>): Implement the common
699
	requirements of formatted input functions (27.6.1.2.1).
700
 
701
	* include/std/std_bitset.h (operator>>): Set the failbit when
702
	nothing was extracted and _Nb != 0.
703
	* testsuite/23_containers/bitset/input/1.cc: New.
704
 
705
2003-12-03  Paolo Carlini  
706
 
707
	PR libstdc++/12791
708
	* include/bits/locale_facets.tcc (time_get::_M_extract_num):
709
	Rewrite, stop the parsing as soon as a digit cannot possibly
710
	lead to a final number within the bounds; otherwise, simplify,
711
	avoiding __ctype.is() and atoi().
712
	* testsuite/22_locale/time_get/get_date/char/12791.cc: New.
713
	* testsuite/22_locale/time_get/get_date/wchar_t/12791.cc: New.
714
 
715
	* include/bits/locale_facets.tcc (time_get::_M_extract_via_format):
716
	Minor tweak: a 4-digit integer cannot be bigger than 9999.
717
 
718
	* testsuite/22_locale/time_get/get_date/wchar_t/1.cc: Use
719
	type-correct wchar_t string literals.
720
	* testsuite/22_locale/time_get/get_monthname/wchar_t/1.cc: Ditto.
721
	* testsuite/22_locale/time_get/get_time/wchar_t/1.cc: Ditto.
722
	* testsuite/22_locale/time_get/get_weekday/wchar_t/1.cc: Ditto.
723
	* testsuite/22_locale/time_get/get_year/wchar_t/1.cc: Ditto.
724
 
725
2003-12-02  Paolo Carlini  
726
 
727
	* include/bits/locale_facets.tcc (time_get::do_get_year):
728
	Avoid using a basic_string and calling a full blown strtol
729
	(via __convert_to_v) for simple 2 or 4 digits, base 10,
730
	positive integers; simplify.
731
 
732
2003-12-02  Paolo Carlini  
733
 
734
	* config/locale/gnu/monetary_members.cc
735
	(money_base::_S_construct_pattern): For case 3: and 4:
736
	exchanging 'if (__precedes)' and 'if (__space)' allows
737
	to factor out a few more assignments.
738
 
739
2003-12-01  Benjamin Kosnik  
740
 
741
	* include/bits/basic_ios.h (basic_ios::setstate): Revert.
742
	* include/bits/istream.tcc: Only call setstate if __err != goodbit.
743
	* include/bits/ostream.tcc: Same.
744
	* testsuite/27_io/basic_ios/exceptions/char/2.cc: New.
745
 
746
	* testsuite/testsuite_io.h (__gnu_test::fail_streambuf): Make
747
	internal buffer non-static.
748
 
749
2003-12-01  Benjamin Kosnik  
750
 
751
	* docs/html/17_intro/C++STYLE: Add exception bits.
752
	* include/bits/fstream.tcc: Add location info to exception strings.
753
 
754
	* include/bits/stl_construct.h: Formatting tweaks.
755
 
756
2003-12-01  Paolo Carlini  
757
 
758
	PR libstdc++/10378
759
	* include/bits/allocator.h (allocator::construct): Implement
760
	resolution of DR 402 [Ready] (in Revision 28).
761
	* include/bits/allocator_traits.h (__allocator::construct):
762
	Likewise.
763
	* include/bits/stl_construct.h (_Construct): Likewise.
764
	* testsuite/20_util/allocator_members.cc: Move to...
765
	* testsuite/20_util/allocator/1.cc: ... here.
766
	* testsuite/20_util/allocator/10378.cc: New.
767
	* docs/html/ext/howto.html: Add an entry for DR 402.
768
 
769
2003-11-30  Paolo Carlini  
770
 
771
	* config/locale/gnu/codecvt_members.cc (codecvt::do_in,
772
	codecvt::do_length): More minor tweaks.
773
 
774
2003-11-30  Paolo Carlini  
775
 
776
	* config/locale/gnu/codecvt_members.cc (codecvt::do_in):
777
	Minor stylistic tweak.
778
 
779
2003-11-30  Paolo Carlini  
780
 
781
	* include/bits/locale_facets.tcc (num_put::do_put(..., bool)):
782
	Minor tweaks, consistent with the style used in other facets.
783
 
784
2003-11-29  Paolo Carlini  
785
 
786
	* include/bits/fstream.tcc (underflow): Minor tweaks in
787
	preparation for libstdc++/13217.
788
 
789
2003-11-29  Paolo Carlini  
790
 
791
	* testsuite/27_io/basic_filebuf/imbue/char/13171-2.cc:
792
	Tweak for a few small problems (fix timings, use VERIFY..)
793
 
794
2003-11-28  Paolo Carlini  
795
 
796
	* testsuite/27_io/basic_filebuf/imbue/char/13171-3.cc: Remove.
797
	* testsuite/27_io/basic_filebuf/imbue/wchar_t/13171-3.cc: New,
798
	the original third testcase for libstdc++/13171 belong here.
799
 
800
2003-11-28  Paolo Carlini  
801
 
802
	* testsuite/27_io/basic_filebuf/imbue/char/13171-3.cc:
803
	Remove extraneous wchar_t lines.
804
 
805
2003-11-27  Paolo Carlini  
806
 
807
	PR libstdc++/11544
808
	PR libstdc++/11603
809
	* include/bits/fstream.tcc (underflow): Throw ios_base::failure
810
	upon incomplete or invalid byte sequences in the file.
811
	* testsuite/27_io/basic_filebuf/underflow/wchar_t/11544-1.cc: New.
812
	* testsuite/27_io/basic_filebuf/underflow/wchar_t/11544-2.cc: New.
813
	* testsuite/27_io/basic_filebuf/underflow/wchar_t/11603.cc: New.
814
 
815
2003-11-27  Paolo Carlini  
816
 
817
	* include/std/std_streambuf.h (__copy_streambufs): Remove
818
	the first, unused, basic_ios<> parameter.
819
	* src/streambuf-inst.cc: Likewise.
820
	* include/bits/streambuf.tcc: Likewise.
821
	* include/bits/istream.tcc (operator>>(__streambuf_type*)):
822
	Tweak accordingly the call.
823
	* include/bits/ostream.tcc (operator<<(__streambuf_type*)):
824
	Likewise.
825
 
826
	* include/bits/streambuf.tcc (__copy_streambufs): Remove
827
	redundant try/catch.
828
 
829
2003-11-26  Benjamin Kosnik  
830
 
831
	PR libstdc++/9371
832
	PR libstdc++/9546
833
	PR libstdc++/10093
834
	PR libstdc++/10095
835
	* include/bits/basic_ios.h (basic_ios::setstate): Elide if goodbit.
836
	(basic_ios::_M_setstate): Consolidate common error handling code.
837
	* include/bits/basic_ios.tcc: Tweak.
838
	* include/bits/fstream.tcc: Tweak.
839
	* include/bits/istream.tcc: Use _M_setstate for common exception
840
	handling. Move setstate calls after catch.
841
	(basic_istream::tellg): Check for exceptions thrown by streambuf
842
	virtual functions.
843
	(basic_istream::seekg): Same.
844
	* include/bits/ostream.tcc: Same, but for ostream.
845
	(basic_ostream::flush): Check for exceptions thrown by streambuf
846
	virtual functions.
847
	(basic_istream::tellp): Same.
848
	(basic_istream::seekp): Same.
849
	* include/bits/locale_facets.tcc: Tweak.
850
	* include/bits/streambuf.tcc: Tweak.
851
	(__copy_streambufs): Propagate exceptions.
852
	* testsuite/testsuite_io.h (fail_streambuf): New.
853
	(fail_num_get): New.
854
	(fail_num_put): New.
855
	(facet_error): New.
856
	(underflow_error): New.
857
	(overflow_error): New.
858
	(positioning_error): New.
859
	* testsuite/27_io/basic_istream/exceptions/char/9561.cc: Tweak.
860
	* testsuite/27_io/basic_istream/extractors_arithmetic/char/
861
        exceptions_badbit_throw.cc, exceptions_failbit.cc,
862
        exceptions_failbit_throw.cc: New.
863
	* testsuite/27_io/basic_istream/extractors_other/char/
864
	error_failbit.cc, exceptions_badbit_throw.cc,
865
        exceptions_failbit_throw.cc, exceptions_null.cc: New.
866
	* testsuite/27_io/basic_istream/seekg/char/exceptions_badbit_throw.cc:
867
	New.
868
	* testsuite/27_io/basic_istream/tellg/char/exceptions_badbit_throw.cc:
869
	New.
870
	* testsuite/27_io/basic_ostream/flush/char/exceptions_badbit_throw.cc:
871
	New.
872
	* testsuite/27_io/basic_ostream/inserters_arithmetic/char/
873
	exceptions_badbit_throw.cc, exceptions_failbit_throw.cc: New.
874
	* testsuite/27_io/basic_ostream/inserters_other/char/
875
	error_failbit.cc, exceptions_badbit_throw.cc,
876
        exceptions_failbit_throw.cc, exceptions_null.cc: New.
877
	* testsuite/27_io/basic_ostream/seekp/char/exceptions_badbit_throw.cc:
878
	New.
879
	* testsuite/27_io/basic_ostream/tellp/char/exceptions_badbit_throw.cc:
880
	New.
881
 
882
2003-11-26  Benjamin Kosnik  
883
 
884
	PR libstdc++/12297
885
	* include/bits/istream.tcc
886
	(basic_istream::sentry::sentry): Set failbit and eofbit when eof.
887
	* testsuite/27_io/basic_istream/sentry/char/12297.cc: New.
888
 
889
2003-11-26  Paolo Carlini  
890
	    Petur Runolfsson  
891
 
892
	PR libstdc++/13171
893
	* include/bits/fstream.tcc (imbue): Relax the conditions under
894
	which the function succeeds: allow for two consecutive calls with
895
	the same name; state dependent encodings are ok even after open
896
	if at the beginning of the file; don't check seekoff return value
897
	(pipes, cin, cout, etc...)
898
	* testsuite/27_io/basic_filebuf/imbue/char/13171-1.cc: New.
899
	* testsuite/27_io/basic_filebuf/imbue/char/13171-2.cc: New.
900
	* testsuite/27_io/basic_filebuf/imbue/char/13171-3.cc: New.
901
	* testsuite/27_io/basic_filebuf/imbue/char/13171-4.cc: New.
902
	* testsuite/27_io/basic_filebuf/imbue/char/2.cc: Tweak comment.
903
	* testsuite/27_io/basic_filebuf/imbue/char/3.cc: Likewise.
904
	* testsuite/27_io/basic_filebuf/imbue/wchar_t/2.cc: Tweak comment.
905
	* testsuite/27_io/basic_filebuf/imbue/wchar_t/3.cc: Likewise.
906
 
907
	* testsuite/27_io/basic_filebuf/imbue/wchar_t/12868.cc: More
908
	correctly use the UTF-8 locale appearing in the PR.
909
 
910
2003-11-26  Paolo Carlini  
911
 
912
	* include/bits/locale_facets.h
913
	(__numpunct_cache<>::_M_cache): Avoid zeroing _M_grouping,
914
	_M_truename and _M_falsename: the constructor always does
915
	it immediately before the _M_cache call.
916
 
917
2003-11-25  Paolo Carlini  
918
 
919
	* config/locale/gnu/codecvt_members.cc (codecvt::do_length):
920
	Rewrite, using both mbsnrtowcs and mbrtowc in a loop: the
921
	former is very fast, but stops if encounters a NUL.
922
	(codecvt::do_out): Tweaks.
923
	(codecvt::do_in): Tweaks, improve the code dealing with errors.
924
	* testsuite/performance/wchar_t_length.cc: New.
925
 
926
2003-11-24  Paolo Carlini  
927
 
928
	* config/locale/gnu/codecvt_members.cc (codecvt::do_in):
929
	Rewrite, using both mbsnrtowcs and mbrtowc in a loop: the
930
	former is very fast, but stops if encounters a NUL.
931
	(codecvt::do_out): Tweak.
932
	* testsuite/performance/wchar_t_in.cc: New.
933
 
934
2003-11-24  Paolo Carlini  
935
 
936
	* include/bits/locale_facets.h
937
	(__numpunct_cache<>::_M_cache): Set _M_allocated at the beginning
938
	in order to avoid memory leaks; simplify a bit.
939
 
940
2003-11-24  Benjamin Kosnik  
941
 
942
	* include/bits/streambuf_iterator.h (ostreambuf_iterator): Remove
943
	non-standard throw specs.
944
	* testsuite/24_iterators/istreambuf_iterator.cc: Split into...
945
	* testsuite/24_iterators/istreambuf_iterator/1.cc
946
	* testsuite/24_iterators/istreambuf_iterator/2.cc
947
	* testsuite/24_iterators/istreambuf_iterator/2627.cc
948
	* testsuite/24_iterators/ostreambuf_iterator.cc: Split into...
949
	* testsuite/24_iterators/ostreambuf_iterator/1.cc
950
	* testsuite/24_iterators/ostreambuf_iterator/2.cc
951
 
952
	* testsuite/24_iterators/reverse_iterator/1.cc: Just compile,
953
	don't link.
954
 
955
	* include/bits/allocator.h: Formatting tweak.
956
 
957
2003-11-24  Paolo Carlini  
958
 
959
	* src/locale_init.cc: Cosmetic reformatting.
960
 
961
2003-11-23  Paolo Carlini  
962
 
963
	* include/bits/locale_facets.tcc (__add_grouping):
964
	Cosmetic reformatting.
965
 
966
2003-11-23  Paolo Carlini  
967
 
968
	* include/bits/locale_facets.tcc (_M_extract_float,
969
	_M_extract_int): Remove a wrong comment and simplify
970
	the corresponding code using char_traits::find().
971
 
972
2003-11-22  Paolo Carlini  
973
 
974
	* config/locale/gnu/monetary_members.cc
975
	(money_base::_S_construct_pattern): Factor out two assignments.
976
 
977
2003-11-22  Paolo Carlini  
978
 
979
	* include/bits/istream.tcc (getline(basic_string<>&)):
980
        Fix error in comment of the previous commit.
981
 
982
2003-11-22  Paolo Carlini  
983
 
984
	PR libstdc++/12593
985
	* include/bits/istream.tcc (operator>>(basic_string<>&),
986
	getline(basic_string<>&)): Implement resolution of DR 91 [WP];
987
	fix some minor issues with the exit conditions.
988
	* docs/html/ext/howto.html: Add an entry for DR 91.
989
 
990
2003-11-21  Paolo Carlini  
991
 
992
	* config/locale/gnu/monetary_members.cc
993
	(money_base::_S_construct_pattern): Factor out an assignment.
994
 
995
2003-11-21  Paolo Carlini  
996
 
997
	PR libstdc++/12882 (partial)
998
	* acinclude.m4 (GLIBCXX_CHECK_LFS): Check fseeko64
999
	and ftello64 too.
1000
	* include/ext/stdio_sync_filebuf.h (seekoff): Use fseeko64
1001
	and ftello64 if available.
1002
	* aclocal.m4: Regenerate.
1003
	* configure: Ditto.
1004
 
1005
2003-11-20  Benjamin Kosnik  
1006
 
1007
	* include/debug/formatter.h: Use _Tp as template argument.
1008
	* src/debug.cc: Same, instantiate std::size_t.
1009
 
1010
2003-11-20  Benjamin Kosnik  
1011
 
1012
	PR libstdc++/13109
1013
	* include/debug/formatter.h (_Error_formatter::_M_format_word): New.
1014
	* src/debug.cc (__gnu_debug): Format.
1015
	(_Error_formatter::_M_format_word): Define, use, instantiate.
1016
 
1017
2003-11-20  Paolo Carlini  
1018
 
1019
	PR libstdc++/11602
1020
	* config/locale/gnu/codecvt_members.cc (codecvt::do_out):
1021
	Rewrite, using both wcsnrtombs and wcrtomb in a loop: the
1022
	former is very fast, but stops if encounters a NUL.
1023
	* testsuite/performance/wchar_t_out.cc: New, from the PR.
1024
 
1025
2003-11-19  Paolo Carlini  
1026
 
1027
	* config/locale/gnu/codecvt_members.cc (do_out): If
1028
	we can upper bound the total number of external chars
1029
	to something smaller than __to_end - __to, avoid the
1030
	temporary buffer, the memcopy and simplify the loop.
1031
	* config/locale/generic/codecvt_members.cc (do_out):
1032
	Likewise.
1033
 
1034
2003-11-19  Andreas Tobler  
1035
 
1036
	* testsuite/lib/libstdc++.exp: Add DYLD_LIBRARY_PATH for darwin.
1037
	* testsuite/libstdc++-dg/normal.exp: Add -multiply_defined suppress
1038
	flag.
1039
 
1040
2003-11-18  Jonathan Wakely  
1041
 
1042
	* docs/html/configopts.html, docs/html/debug.html,
1043
	docs/html/documentation.html, docs/html/explanations.html,
1044
	docs/html/install.html, docs/html/17_intro/contribute.html,
1045
	docs/html/17_intro/howto.html, docs/html/17_intro/license.html,
1046
	docs/html/18_support/howto.html, docs/html/19_diagnostics/howto.html,
1047
	docs/html/20_util/howto.html, docs/html/21_strings/howto.html,
1048
	docs/html/22_locale/codecvt.html, docs/html/22_locale/ctype.html,
1049
	docs/html/22_locale/howto.html, docs/html/22_locale/locale.html,
1050
	docs/html/22_locale/messages.html, docs/html/23_containers/howto.html,
1051
	docs/html/24_iterators/howto.html, docs/html/25_algorithms/howto.html,
1052
	docs/html/26_numerics/howto.html, docs/html/27_io/howto.html,
1053
	docs/html/ext/howto.html, docs/html/ext/sgiexts.html: Add  tags.
1054
 
1055
2003-11-18  Paolo Carlini  
1056
 
1057
	PR libstdc++/12868
1058
	* include/bits/fstream.tcc (imbue): For encodings != -1 it's
1059
	always ok to imbue a new locale, provided seekoff(0, cur, ...)
1060
	doesn't fail, of course.
1061
	(underflow): In order for the above to work, deal gracefully
1062
	with _M_codecvt->in returning codecvt_base::error while
1063
	(__ilen = __iend - this->eback()) > 0: it just means __ilen
1064
	correctly converted internal characters before an error.
1065
	* testsuite/27_io/basic_filebuf/imbue/wchar_t/12868.cc: New.
1066
 
1067
2003-11-17  Paolo Carlini  
1068
 
1069
	* include/bits/locale_facets.tcc: Fix typo in comment.
1070
 
1071
2003-11-17  Paolo Carlini  
1072
 
1073
	* testsuite/22_locale/num_put/put/char/8.cc: New test,
1074
	summarizing the discussion ensuing libstdc++/12988.
1075
	* testsuite/22_locale/num_put/put/wchar_t/8.cc: Ditto.
1076
 
1077
2003-11-15  Paolo Carlini  
1078
 
1079
	* include/std/std_fstream.h: Tweak a comment.
1080
 
1081
2003-11-15  Roger Sayle  
1082
 
1083
	* include/c_std/std_cmath.h: Don't import C99's float transcendentals
1084
	into the __gnu_cxx::__c99_binding namespace.
1085
	(acos, asin, atan, atan2, ceil, cosh, exp, floor, fmod, frexp,
1086
	ldexp, log, log10, modf, pow, sinh, tan, tanh): Implement using
1087
	GCC's math builtins, i.e. __builtin_foo.
1088
	* libmath/stubs.c (acosf, acosl, asinf, asinl, atanf, atanl,
1089
	ceilf, ceill, floorf, floorl, fmodf, fmodl, frexpf, frexpl,
1090
	ldexpf, ldexpl, modff, modfl): Provide stub implementations.
1091
 
1092
2003-11-14  Paolo Carlini  
1093
 
1094
	* testsuite/22_locale/locale/cons/12352.cc: Use
1095
	__gnu_test::try_named_locale.
1096
 
1097
2003-11-14  Paolo Carlini  
1098
 
1099
	* docs/html/ext/howto.html: Add entries for DR 63, 75
1100
	and 305; tweak entries for DR 60 and 328.
1101
 
1102
2003-11-13  Douglas Gregor  
1103
 
1104
	* docs/html/debug.html: Users are allowed to specialize in
1105
	namespace __gnu_debug, unlike in the Apple version of the debug
1106
	mode. Clear up a confusing double-negative. Note that
1107
	std::basic_string does provide extra debugging capabilities, but
1108
	not safe iterators.
1109
	* include/bits/basic_string.tcc: Make sure there's never an
1110
	ambiguity when calling __is_null_pointer.
1111
	* include/debug/deque: (deque::erase) Properly handle invalidation
1112
	when erasing at the end of the deque.
1113
	* include/debug/vector: (vector::swap): Swap _M_guaranteed_capacity.
1114
	(vector::clear): Set the guaranteed capacity to 0.
1115
	* testsuite/23_containers/deque/invalidation/4.cc: (test04): Test
1116
	iterator invalidation when erasing at the end of the deque.
1117
 
1118
2003-11-13  Paolo Carlini  
1119
	    Petur Runolfsson  
1120
 
1121
	PR libstdc++/13007
1122
	* include/bits/fstream.tcc (imbue): Don't touch the stored
1123
	locale.
1124
	* include/std/std_streambuf.h (imbue): According to the
1125
	standard, base class version does nothing.
1126
	(pubimbue): Store the locale.
1127
	* testsuite/27_io/basic_filebuf/imbue/char/13007.cc: New.
1128
	* testsuite/27_io/basic_filebuf/imbue/wchar_t/13007.cc: New.
1129
	* testsuite/27_io/basic_filebuf/imbue/char/2.cc: Tweak.
1130
	* testsuite/27_io/basic_filebuf/imbue/wchar_t/2.cc: Likewise.
1131
	* testsuite/27_io/basic_streambuf/imbue/char/13007-1.cc: New.
1132
	* testsuite/27_io/basic_streambuf/imbue/char/13007-2.cc: New.
1133
	* testsuite/27_io/basic_streambuf/imbue/wchar_t/13007-1.cc: New.
1134
	* testsuite/27_io/basic_streambuf/imbue/wchar_t/13007-2.cc: New.
1135
 
1136
2003-11-13  Petur Runolfsson  
1137
 
1138
	PR libstdc++/12594
1139
	* include/bits/ostream.tcc
1140
	(basic_ostream::operator<<(basic_ostream& (*)(basic_ostream&)),
1141
	basic_ostream::operator<<(basic_ios& (*)(basic_ios&)),
1142
	basic_ostream::operator<<(ios_base& (*)(ios_base&))):
1143
	Implement the resolution of DR 60 (TC): These are not formatted
1144
	output functions so don't construct sentry objects and don't
1145
	catch exceptions.
1146
	(basic_ostream::put, basic_ostream::write): Implement the
1147
	resolution of DR 63 (TC) by catching exceptions and setting
1148
	badbit.
1149
	(basic_ostream::flush): Implement the resolution of DR 60 (TC):
1150
	This is not an unformatted output function so don't construct
1151
	a sentry object.
1152
	* testsuite/testsuite_io.h (sync_streambuf): Define.
1153
	* testsuite/27_io/basic_ostream/flush/char/2.cc: New test.
1154
	* testsuite/27_io/basic_ostream/inserters_other/char/5.cc: New test.
1155
	* testsuite/27_io/basic_ostream/put/char/1.cc: New test.
1156
	* testsuite/27_io/basic_ostream/write/char/1.cc: New test.
1157
 
1158
2003-11-13  Paolo Carlini  
1159
 
1160
	* testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-1:
1161
	Fix, closely following the testcase included in the PR.
1162
	* testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-2: Ditto.
1163
	* testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-3: Ditto.
1164
	* testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-4: Ditto.
1165
 
1166
2003-11-13  Jonathan Wakely 
1167
 
1168
	* docs/html/17_intro/configury.html: XHTML tweak.
1169
 
1170
2003-11-13  Jonathan Wakely 
1171
 
1172
	* docs/html/debug_mode.html: XHTML fixes.
1173
 
1174
2003-11-12  Benjamin Kosnik  
1175
 
1176
	* docs/html/debug_mode.html: Update.
1177
	* docs/html/17_intro/TODO: Update.
1178
 
1179
2003-11-12  Benjamin Kosnik  
1180
 
1181
	* include/bits/c++config: Move using directive...
1182
	* include/debug/formatter.h: ...here.
1183
 
1184
2003-11-12  Carlo Wood  
1185
 
1186
        PR libstdc++/12947
1187
	* bits/demangle.h
1188
	(_GLIBCXX_DEMANGLER_STYLE_COMPACT_EXPR_OPS): Added.
1189
	(_GLIBCXX_DEMANGLER_STYLE_SIZEOF_TYPENAME): Added.
1190
	(session::next_peek() const): Added.
1191
	(decode_non_negative_decimal_integer(string_type&)):
1192
	Renamed from decode_decimal_integer(string_type&).
1193
	(session::decode_nested_name):
1194
	Decode  as well.
1195
	(session::add_substitution):
1196
	Handle  for 's.
1197
	(enum xary_nt): Added.
1198
	(struct entry_st): Added member `xary_nt type' instead of `bool unary'.
1199
	(symbol_name_table_c): Updated for `entry_st::type' and additional
1200
	operators (unary `operator+' and `sizeof(type)').
1201
	(offset_table_c): Updated for new operators (causing a new hash map).
1202
	(decode_operator_name): Match the updated hash map.
1203
	(session::decode_expression):
1204
	Support for `sizeof ([typename] type)' (st),
1205
	dependent names (sr) and casting operator (cv).  Handle
1206
	`entry_st::type'.  Handle _GLIBCXX_DEMANGLER_STYLE_COMPACT_EXPR_OPS
1207
	and _GLIBCXX_DEMANGLER_STYLE_SIZEOF_TYPENAME.
1208
	(session::decode_type_with_postfix):
1209
	Support `extern "C"' function types (FY).
1210
	* testsuite/demangle/regression/cw-16.cc: Added tests for the
1211
	added functionality.
1212
	* testsuite/demangle/regression/3111-2.cc: sizeof now has a space
1213
	appended.
1214
 
1215
2003-11-11  Paolo Carlini  
1216
 
1217
	PR libstdc++/12875
1218
	* include/bits/fstream.tcc (setbuf): Don't do anything
1219
	after open(), in particular don't discard data.
1220
	(_M_allocate_internal_buffer): Tweak to not allocate memory
1221
	in case the buffer is provided by the user via setbuf.
1222
	* include/ext/stdio_filebuf.h: Tweak comment.
1223
	* testsuite/27_io/basic_filebuf/setbuf/char/12875-1.cc: New.
1224
	* testsuite/27_io/basic_filebuf/setbuf/char/12875-2.cc: Likewise.
1225
	* testsuite/27_io/basic_filebuf/setbuf/char/2.cc: Tweak, now
1226
	setbuf does nothing after open().
1227
	* testsuite/27_io/basic_filebuf/setbuf/char/3.cc: Likewise.
1228
 
1229
2003-11-11  Doug Gregor  
1230
 
1231
	* docs/html/debug.html: Document libstdc++ debug mode.
1232
	* docs/html/debug_mode.html: Document libstdc++ debug mode design.
1233
	* docs/html/test.html: Document how to test under debug mode.
1234
	* docs/html/17_intro/howto.html: Document debug-mode macros.
1235
	* include/Makefile.am: Install debug-mode headers.
1236
	* src/Makefile.am: Include debug.cc.
1237
	* include/bits/basic_string.tcc:
1238
	(basic_string::_S_construct): Fix NULL pointer check.
1239
	(__is_null_pointer): New.
1240
	Add precondition annotations.
1241
	* include/bits/stream_iterator.h (istream_iterator,
1242
	ostream_iterator): Added precondition annotations.
1243
	* include/bits/streambuf_iterator.h (istreambuf_iterator): Ditto.
1244
	* include/bits/stl_queue.h (queue, priority_queue): Ditto.
1245
	* include/bits/stl_stack.h (stack): Ditto.
1246
	* include/bits/basic_string.h (basic_string): Ditto.
1247
	* include/bits/basic_string.tcc (basic_string): Ditto.
1248
	* include/std/std_memory.h (auto_ptr): Ditto.
1249
	* include/std/std_valarray.h (valarray): Ditto.
1250
	* include/bits/stl_algo.h: Added algorithm precondition
1251
	annotations.
1252
	* include/bits/stl_algobase.h: Added algorithm precondition
1253
	annotations.
1254
	* include/bits/stl_numeric.h: Ditto.
1255
	* include/ext/algorithm: Added algorithm precondition
1256
	annotations.
1257
	(__is_heap): Moved away from here.
1258
	* include/bits/stl_heap.h: Added algorithm precondition
1259
	annotations.
1260
	(__is_heap): Moved to the top of this file.
1261
	(__is_heap): Added iterator range overloads.
1262
	* testsuite/20_util/auto_ptr_neg.cc: Fix line numbers to match up
1263
	with changes in std_memory.h.
1264
	* testsuite/23_containers/list/operators/4.cc: Don't verify
1265
	performance guarantees when in debug mode.
1266
	* testsuite/23_containers/bitset/invalidation/1.cc: New.
1267
	* testsuite/23_containers/deque/invalidation/1.cc: New.
1268
	* testsuite/23_containers/deque/invalidation/2.cc: New.
1269
	* testsuite/23_containers/deque/invalidation/3.cc: New.
1270
	* testsuite/23_containers/deque/invalidation/4.cc: New.
1271
	* testsuite/23_containers/list/invalidation/1.cc: New.
1272
	* testsuite/23_containers/list/invalidation/2.cc: New.
1273
	* testsuite/23_containers/list/invalidation/3.cc: New.
1274
	* testsuite/23_containers/list/invalidation/4.cc: New.
1275
	* testsuite/23_containers/map/invalidation/1.cc: New.
1276
	* testsuite/23_containers/map/invalidation/2.cc: New.
1277
	* testsuite/23_containers/multimap/invalidation/1.cc: New.
1278
	* testsuite/23_containers/multimap/invalidation/2.cc: New.
1279
	* testsuite/23_containers/multiset/invalidation/1.cc: New.
1280
	* testsuite/23_containers/multiset/invalidation/2.cc: New.
1281
	* testsuite/23_containers/set/invalidation/1.cc: New.
1282
	* testsuite/23_containers/set/invalidation/2.cc: New.
1283
	* testsuite/23_containers/vector/invalidation/1.cc: New.
1284
	* testsuite/23_containers/vector/invalidation/2.cc: New.
1285
	* testsuite/23_containers/vector/invalidation/3.cc: New.
1286
	* testsuite/23_containers/vector/invalidation/4.cc: New.
1287
	* testsuite/25_algorithms/heap.cc: Don't verify
1288
	performance guarantees when in debug mode.
1289
	* include/debug/bitset: New.
1290
	* include/debug/debug.h: New.
1291
	* include/debug/deque: New.
1292
	* include/debug/formatter.h: New.
1293
	* include/debug/hash_map: New.
1294
	* include/debug/hash_map.h: New.
1295
	* include/debug/hash_multimap.h: New.
1296
	* include/debug/hash_set: New.
1297
	* include/debug/hash_set.h: New.
1298
	* include/debug/hash_multiset.h: New.
1299
	* include/debug/list: New.
1300
	* include/debug/map: New.
1301
	* include/debug/map.h: New.
1302
	* include/debug/multimap.h: New.
1303
	* include/debug/multiset.h: New.
1304
	* include/debug/safe_base.h: New.
1305
	* include/debug/safe_iterator.h: New.
1306
	* include/debug/safe_iterator.tcc: New.
1307
	* include/debug/safe_sequence.h: New.
1308
	* include/debug/set: New.
1309
	* include/debug/set.h: New.
1310
	* include/debug/string: New.
1311
	* include/debug/vector: New.
1312
	* src/debug.cc: New.
1313
	* config/linker-map.gnu: Add debug mode symbols.
1314
 
1315
2003-11-11  Benjamin Kosnik  
1316
 
1317
	* src/string-inst.cc: Tweak namespaces.
1318
	* src/misc-inst.cc: Same.
1319
	* docs/html/debug.html: Edits.
1320
	* config/link-map.gnu: Remove cruft.
1321
 
1322
	* include/bits/c++config: Add in namespace associations.
1323
	* include/std/std_bitset.h: Adjust namespace to __gnu_norm,
1324
	comment tweaks.
1325
	* include/bits/deque.tcc: Same.
1326
	* include/bits/list.tcc: Same.
1327
	* include/bits/stl_bvector.h: Same.
1328
	* include/bits/stl_deque.h: Same.
1329
	* include/bits/stl_list.h: Same.
1330
	* include/bits/stl_map.h: Same.
1331
	* include/bits/stl_multimap.h: Same.
1332
	* include/bits/stl_multiset.h: Same.
1333
	* include/bits/stl_set.h: Same.
1334
	* include/bits/stl_vector.h: Same.
1335
	* include/bits/vector.tcc: Same.
1336
 
1337
	* include/std/std_algorithm.h: Remove markup comments.
1338
	* include/std/std_functional.h: Same.
1339
	* include/std/std_iterator.h: Same.
1340
	* include/std/std_numeric.h: Same.
1341
	* include/std/std_utility.h: Same.
1342
	* include/bits/stl_queue.h: Formatting tweaks.
1343
	* include/bits/stl_stack.h: Same.
1344
	* include/std/std_deque.h: Include debugging version in debug mode.
1345
	* include/std/std_list.h: Same.
1346
	* include/std/std_map.h: Same.
1347
	* include/std/std_set.h: Same.
1348
	* include/std/std_vector.h: Same.
1349
	* include/std/std_queue.h: Use deque, vector.
1350
	* include/std/std_stack.h: Same.
1351
 
1352
2003-11-09  Paolo Carlini  
1353
 
1354
	* include/bits/locale_facets.tcc (_M_insert_int,
1355
	_M_insert_float): Move a couple of vars inside an if block.
1356
 
1357
2003-11-09  Paolo Carlini  
1358
 
1359
	PR libstdc++/12971
1360
	* include/bits/locale_facets.tcc
1361
	(money_put::do_put(..., long double)): Fix conversion
1362
	specification as per DR 328 [WP].
1363
	* testsuite/22_locale/money_put/put/char/12971.cc: Add.
1364
	* testsuite/22_locale/money_put/put/wchar_t/12971.cc: Ditto.
1365
	* docs/html/ext/howto.html: Add entry for DR 328.
1366
 
1367
2003-11-08  Paolo Carlini  
1368
 
1369
	PR libstdc++/12967
1370
	* include/bits/list.tcc (merge): Implement resolution of
1371
	DR 300 [WP].
1372
	* docs/html/ext/howto.html: Add entry for DR 300; tweak entry
1373
	for DR 231.
1374
 
1375
	* docs/html/ext/lwg-active.html, docs/html/ext/lwg-defects.html:
1376
	Import R27.
1377
 
1378
2003-11-07  Jonathan Wakely  
1379
 
1380
	* libsupc++/vec.cc: Conform to C++STYLE.
1381
 
1382
2003-11-07  Carlo Wood  
1383
 
1384
	PR libstdc++/12736
1385
	* bits/demangle.h (qualifier_list::decode_KVrA): Added.
1386
	(qualifier_list::decode_qualifiers): Collect concatenated
1387
	K, V, r and A qualifiers before processing them as a group.
1388
	* testsuite/demangle/abi_text/01.cc: Reordered CV-qualifiers.
1389
	* testsuite/demangle/regression/cw-16.cc: New.
1390
 
1391
2003-11-07  Robert Millan  
1392
 
1393
	* configure.host: Add kfreebsd*-gnu and knetbsd*-gnu.
1394
	* crossconfig.m4: Likewise.
1395
	* configure: Regenerate.
1396
 
1397
2003-11-07  Carlo Wood  
1398
 
1399
	* include/bits/demangle.h
1400
	(qualifier_list::decode_qualifiers(string_type&,
1401
	string_type&, bool member_function_pointer_qualifiers):
1402
	Always separate the '[' of an array type with a space from
1403
	what is left of it, except when that is the closing bracket
1404
	of another array dimension.
1405
 
1406
2003-11-07  Carlo Wood  
1407
 
1408
	* include/bits/demangle.h
1409
	(qualifier_list::decode_qualifiers(string_type&,
1410
	string_type&, bool) const): Made const.
1411
	(qualifier_list::M_printing_suppressed): Added mutable.
1412
	(_GLIBCXX_DEMANGLER_DOUT_ENTERING3, _GLIBCXX_DEMANGLER_RETURN3,
1413
	std::ostream& operator<<(std::ostream&, qualifier const&),
1414
	std::ostream& operator<<(std::ostream&, qualifier_list const&),
1415
	qualifier_list::decode_qualifiers(string_type&,
1416
	string_type&, bool) const,
1417
	session::decode_type_with_postfix(string_type&,
1418
	string_type&, qualifier_list*))
1419
	Added and/or changed debug-only hooks and code.
1420
 
1421
2003-11-04  Jeffrey D. Oldham  
1422
 
1423
	* libsupc++/vec.cc (__cxa_vec_delete2): If given a NULL pointer,
1424
	immediately return.  This reflects a C++ ABI change 2003 Nov 03.
1425
	(__cxa_vec_delete3): Likewise.
1426
 
1427
2003-11-03  Petur Runolfsson  
1428
 
1429
	PR libstdc++/12790
1430
	* include/bits/fstream.tcc: Delete _M_last_overflowed.
1431
	(basic_filebuf::basic_filebuf): Initialize _M_state_last.
1432
	(basic_filebuf::open, basic_filebuf::close): Assign
1433
	_M_state_beg to _M_state_cur and _M_state_last.
1434
	(basic_filebuf::close): Call _M_terminate_output to handle
1435
	unshift and flushing.
1436
	(basic_filebuf::underflow): Assign _M_state_last, throw
1437
	exception instead of calling abort when codecvt::max_length()
1438
	is bad.
1439
	(basic_filebuf::seekoff): Use _M_state_last when calling
1440
	codecvt::length(), pass correct state to _M_seek.
1441
	(basic_filebuf::seekpos): Pass __pos.state() to _M_seek.
1442
	(basic_filebuf::_M_seek): Add __state_type parameter,
1443
	set _M_state_cur correctly, store the resulting state in
1444
	the return value and use _M_terminate_output to handle
1445
	flushing and unshift.
1446
	(basic_filebuf::_M_terminate_output): Flush contents of
1447
	output buffer, if any, then call codecvt::unshift as
1448
	needed and output the result.
1449
	(basic_filebuf::sync): Move here, don't modify _M_writing
1450
	or _M_reading.
1451
 
1452
	* include/std/std_fstream.h
1453
	(basic_filebuf::_M_state_last): Declare it.
1454
	(basic_filebuf::_M_last_overflowed): Delete.
1455
	(basic_filebuf::_M_seek): Add __state_type parameter.
1456
	(basic_filebuf::sync): Declare only.
1457
	(basic_filebuf::_M_output_unshift): Delete.
1458
	(basic_filebuf::_M_terminate_output): Declare it.
1459
 
1460
	* testsuite/testsuite_character.h:
1461
	Define character class and state class plus char_traits and
1462
	codecvt specializations for same for testing support for
1463
	stateful encodings.
1464
 
1465
	* testsuite/27_io/basic_filebuf/close/12790-1.cc,
1466
	* testsuite/27_io/basic_filebuf/close/char/12790-1.cc,
1467
	* testsuite/27_io/basic_filebuf/close/char/12790-2.cc,
1468
	* testsuite/27_io/basic_filebuf/close/char/12790-3.cc,
1469
	* testsuite/27_io/basic_filebuf/close/char/12790-4.cc,
1470
	* testsuite/27_io/basic_filebuf/close/wchar_t/12790-1.cc,
1471
	* testsuite/27_io/basic_filebuf/close/wchar_t/12790-2.cc,
1472
	* testsuite/27_io/basic_filebuf/close/wchar_t/12790-3.cc,
1473
	* testsuite/27_io/basic_filebuf/close/wchar_t/12790-4.cc,
1474
	* testsuite/27_io/basic_filebuf/open/12790-1.cc,
1475
	* testsuite/27_io/basic_filebuf/seekoff/12790-1.cc,
1476
	* testsuite/27_io/basic_filebuf/seekoff/12790-2.cc,
1477
	* testsuite/27_io/basic_filebuf/seekoff/12790-3.cc,
1478
	* testsuite/27_io/basic_filebuf/seekoff/12790-4.cc,
1479
	* testsuite/27_io/basic_filebuf/seekoff/char/12790-1.cc,
1480
	* testsuite/27_io/basic_filebuf/seekoff/char/12790-2.cc,
1481
	* testsuite/27_io/basic_filebuf/seekoff/char/12790-3.cc,
1482
	* testsuite/27_io/basic_filebuf/seekoff/char/12790-4.cc,
1483
	* testsuite/27_io/basic_filebuf/seekoff/wchar_t/12790-1.cc,
1484
	* testsuite/27_io/basic_filebuf/seekoff/wchar_t/12790-2.cc,
1485
	* testsuite/27_io/basic_filebuf/seekoff/wchar_t/12790-3.cc,
1486
	* testsuite/27_io/basic_filebuf/seekoff/wchar_t/12790-4.cc,
1487
	* testsuite/27_io/basic_filebuf/seekoff/wchar_t/3.cc,
1488
	* testsuite/27_io/basic_filebuf/seekpos/12790-1.cc,
1489
	* testsuite/27_io/basic_filebuf/seekpos/12790-2.cc,
1490
	* testsuite/27_io/basic_filebuf/seekpos/12790-3.cc,
1491
	* testsuite/27_io/basic_filebuf/seekpos/char/12790-1.cc,
1492
	* testsuite/27_io/basic_filebuf/seekpos/char/12790-2.cc,
1493
	* testsuite/27_io/basic_filebuf/seekpos/char/12790-3.cc,
1494
	* testsuite/27_io/basic_filebuf/seekpos/char/12790-4.cc,
1495
	* testsuite/27_io/basic_filebuf/seekpos/wchar_t/1.cc,
1496
	* testsuite/27_io/basic_filebuf/seekpos/wchar_t/12790-1.cc,
1497
	* testsuite/27_io/basic_filebuf/seekpos/wchar_t/12790-2.cc,
1498
	* testsuite/27_io/basic_filebuf/seekpos/wchar_t/12790-3.cc,
1499
	* testsuite/27_io/basic_filebuf/seekpos/wchar_t/12790-4.cc,
1500
	* testsuite/27_io/basic_filebuf/sync/char/1.cc,
1501
	* testsuite/27_io/basic_filebuf/sync/wchar_t/1.cc:
1502
	New tests.
1503
 
1504
	* testsuite/27_io/basic_filebuf/3.cc,
1505
	* testsuite/27_io/basic_filebuf/seekoff/10132-2.cc,
1506
	* testsuite/27_io/basic_filebuf/seekpos/10132-3.cc,
1507
	* testsuite/27_io/basic_fstream/3.cc,
1508
	* testsuite/27_io/basic_ifstream/3.cc,
1509
	* testsuite/27_io/basic_ofstream/3.cc:
1510
	Use streamoff as off_type and fpos as pos_type.
1511
 
1512
	* testsuite/27_io/basic_filebuf/seekpos/char/1-io.cc,
1513
	* testsuite/27_io/basic_filebuf/seekpos/char/1-out.cc:
1514
	Check that sync does *not* set _M_writing to false.
1515
 
1516
2003-11-03  Anthony Green  
1517
 
1518
	* libmath/stubs.c (sqrtf, sqrtl): Reorder so they appear before
1519
	they're used.
1520
 
1521
2003-11-03  Benjamin Kosnik  
1522
 
1523
	* include/bits/locale_facets.h (time_get::_M_extract_name): Add
1524
	ctype argument.
1525
	* include/bits/locale_facets.tcc: Same, use it to allow
1526
	capitalized names.
1527
 
1528
	* include/bits/fstream.tcc: Spacing tweak.
1529
	* include/bits/istream.tcc: Same.
1530
	* include/bits/ostream.tcc: Same.
1531
 
1532
2003-10-30  Paolo Carlini  
1533
 
1534
	* include/bits/locale_facets.tcc (time_get::_M_extract_via_format):
1535
	__mod is only assigned, never used its value, remove it.
1536
 
1537
2003-10-29  Paolo Carlini  
1538
 
1539
	* include/bits/locale_facets.tcc (time_get::do_get_year):
1540
	Absolutely avoid dereferencing end iterators.
1541
	(time_put::put): Minor clean up.
1542
 
1543
	* include/bits/locale_facets.tcc: Cosmetic reformattings.
1544
 
1545
2003-10-29  Paolo Carlini  
1546
 
1547
	* include/bits/locale_facets.tcc (num_get::_M_extract_float):
1548
	Revert the last commit, is not correct, sorry.
1549
 
1550
2003-10-29  Paolo Carlini  
1551
 
1552
	* config/locale/generic/c_locale.cc: Add back  and
1553
	.
1554
 
1555
	* include/bits/locale_facets.tcc (num_get::_M_extract_float):
1556
	Clean up.
1557
 
1558
2003-10-29  Paolo Carlini  
1559
 
1560
	* include/bits/locale_facets.tcc (time_put::put): Absolutely
1561
	avoid dereferencing end iterators; clean up.
1562
 
1563
	* include/bits/locale_facets.tcc (num_get::_M_extract_float,
1564
	num_get::_M_extract_int): Minor tweak.
1565
 
1566
2003-10-29  Paolo Carlini  
1567
 
1568
	* include/bits/locale_facets.tcc: Remove some unnecessary
1569
	includes.
1570
	* config/locale/generic/c_locale.cc: Include  here.
1571
	* config/locale/gnu/c_locale.cc: Likewise.
1572
 
1573
2003-10-28  Paolo Carlini  
1574
 
1575
	* include/bits/locale_facets.tcc
1576
	(money_get<>::do_get(..., string_type&)): Absolutely avoid
1577
	dereferencing end iterators; general clean up.
1578
 
1579
2003-10-28  Paolo Carlini  
1580
 
1581
	* include/bits/locale_facets.tcc (time_get::_M_extract_num):
1582
	Absolutely avoid dereferencing end iterators.
1583
	(time_get::_M_extract_name): Likewise.
1584
 
1585
	* include/bits/locale_facets.tcc
1586
	(time_get::_M_extract_via_format, case 'e'): Don't try to
1587
	be smart wrt returning the right __beg in case of parse
1588
	error, time_get::_M_extract_num must be fixed instead.
1589
 
1590
2003-10-27  Paolo Carlini  
1591
 
1592
	PR libstdc++/12778
1593
	* acinclude.m4 (GLIBCXX_CHECK_LFS): Use the C++ compiler.
1594
	* aclocal.m4: Regenerate.
1595
	* configure: Regenerate.
1596
 
1597
2003-10-27  Benjamin Kosnik  
1598
 
1599
	* docs/html/17_intro/TODO: Add links.
1600
	* testsuite/27_io/basic_istream/extractors_character/char/9555-ic.cc:
1601
	Uncomment.
1602
 
1603
2003-10-27  Paolo Carlini  
1604
 
1605
	PR libstdc++/12750
1606
	* include/bits/locale_facets.tcc
1607
	(time_get::_M_extract_via_format): Deal with code 'e'.
1608
	* testsuite/22_locale/time_get/get_date/char/12750.cc: New.
1609
	* testsuite/22_locale/time_get/get_date/wchar_t/12750.cc: Ditto.
1610
 
1611
	* include/bits/locale_facets.tcc
1612
	(time_get::_M_extract_via_format): Tweak to absolutely avoid
1613
	dereferencing end iterators.
1614
 
1615
	* include/bits/locale_facets.h (__verify_grouping):
1616
	Const-ify second parameter.
1617
	* include/bits/locale_facets.tcc (__verify_grouping): Ditto.
1618
	* src/locale-inst.cc (__verify_grouping): Ditto.
1619
 
1620
2003-10-27  Paolo Carlini  
1621
 
1622
	* include/bits/locale_facets.tcc (num_get::_M_extract_float):
1623
	Various things: 1- Avoid absolutely end iterator dereferences;
1624
	2- Improve performance-wise the code skipping leading zeros;
1625
	3- Fix two bugs wrt early bail out in case of parsing errors
1626
	(see testcases); 4- General clean up.
1627
	(num_get::_M_extract_int): Likewise, except 3-. Additionally,
1628
	use __builtin_expect to favor base 10 inputs.
1629
	* testsuite/22_locale/num_get/get/char/7.cc: New.
1630
	* testsuite/22_locale/num_get/get/wchar_t/7.cc: Ditto.
1631
 
1632
2003-10-26  Paolo Carlini  
1633
 
1634
	* testsuite/22_locale/money_put/put/char/1.cc: Clean up.
1635
	* testsuite/22_locale/money_put/put/wchar_t/1.cc: Ditto.
1636
 
1637
2003-10-25  Paolo Carlini  
1638
 
1639
	* include/bits/locale_facets.tcc (num_get::_M_extract_int):
1640
	__pos in only incremented, never used its value, remove it.
1641
 
1642
2003-10-24  Robert Millan  
1643
 
1644
	* acinclude.m4 (GLIBCXX_ENABLE_CLOCALE): Add kfreebsd*-gnu
1645
	and knetbsd*-gnu.
1646
	* aclocal.m4:  Regenerated.
1647
	* configure:  Regenerated.
1648
 
1649
2003-10-24  Paolo Carlini  
1650
 
1651
	* include/bits/locale_facets.tcc (money_get::do_get(...,
1652
	long double&): Properly size the temporary buffer.
1653
	* testsuite/22_locale/money_get/get/char/11.cc: New.
1654
	* testsuite/22_locale/money_get/get/wchar_t/11.cc: Ditto.
1655
 
1656
	* include/bits/locale_facets.tcc (num_put::_M_group_int,
1657
	num_put::_M_group_float, money_put::do_put(..., const
1658
	string_type&), collate::do_compare, collate::do_transform):
1659
	Prefer basic_string::data() to c_str() when the '\0'
1660
	terminator is not really needed.
1661
 
1662
2003-10-24  Paolo Carlini  
1663
 
1664
	* include/bits/locale_facets.tcc (__verify_grouping):
1665
	Prefer '=' to an unnecessary '&='.
1666
 
1667
2003-10-24  Paolo Carlini  
1668
 
1669
	* include/bits/basic_ios.tcc (copyfmt(const basic_ios&)):
1670
	Tweak my fix for libstdc++/12657.
1671
 
1672
2003-10-24  Paolo Carlini  
1673
 
1674
	* include/bits/locale_facets.tcc (money_get::do_get(...,
1675
	string_type&): Minor tweak to the previous commit.
1676
 
1677
2003-10-24  Paolo Carlini  
1678
 
1679
	* include/bits/locale_facets.tcc (money_get::do_get(...,
1680
	string_type&): Disregard the previous commit: doesn't hurt but
1681
	doesn't accomplish anything useful either. This is the right
1682
	one, speeding up greatly the function in case of early fail.
1683
 
1684
2003-10-24  Paolo Carlini  
1685
 
1686
	* include/bits/locale_facets.tcc (money_get::do_get(...,
1687
	string_type&): Move an if block, thus minimizing the amount
1688
	of code processed anyway when __tmp_units.size() == 0.
1689
 
1690
2003-10-24  Paolo Carlini  
1691
 
1692
	* include/bits/locale_facets.tcc
1693
	(time_get<>::_M_extract_via_format): Deal with case 'C' too,
1694
	equivalent to 'y'.
1695
 
1696
2003-10-23  Benjamin Kosnik  
1697
 
1698
	* docs/html/documentation.html: Add a pointer to the doxygen style
1699
	guide.
1700
	* docs/html/17_intro/TODO: Update.
1701
	* docs/html/test.html: Add instructions for running a subset of
1702
	tests, update.
1703
 
1704
2003-10-23  Paolo Carlini  
1705
 
1706
	* include/bits/locale_facets.tcc (money_get<>::do_get(...,
1707
	string_type&)): Use find_first_not_of to strip leading
1708
	zeros; if __tmp_units == "0" never prefix it with '-';
1709
	always fail if __tmp_units is empty.
1710
	* testsuite/22_locale/money_get/get/char/10.cc: New.
1711
	* testsuite/22_locale/money_get/get/wchar_t/10.cc: Ditto.
1712
 
1713
2003-10-23  Phil Edwards  
1714
 
1715
	* config/os/vxworks/ctype_noninline.h:  Adjust ctor to match
1716
	2003-10-21 change.
1717
 
1718
2003-10-22  Paolo Carlini  
1719
 
1720
	* include/bits/locale_facets.tcc (__int_to_char): Remove
1721
	the const int parameter.
1722
	(_M_insert_int): Update caller.
1723
	* src/locale-inst.cc (__int_to_char): Update instantiations.
1724
 
1725
2003-10-22  Benjamin Kosnik  
1726
 
1727
	* include/bits/locale_facets.h: Correct byname facets for "C"
1728
	locale.
1729
	* config/locale/generic/ctype_members.cc: Same.
1730
	* config/locale/generic/messages_members.h: Same.
1731
	* config/locale/gnu/ctype_members.cc: Same.
1732
	* config/locale/gnu/messages_members.h: Same.
1733
	* include/bits/codecvt.h: Same.
1734
	* src/ctype.cc: Same.
1735
	* testsuite/22_locale/codecvt_byname/1.cc: New.
1736
	* testsuite/22_locale/collate/1.cc: Edit.
1737
	* testsuite/22_locale/collate_byname/1.cc: Derivation tests, move to...
1738
	* testsuite/22_locale/collate_byname/named_equivalence.cc: ...here.
1739
	* testsuite/22_locale/ctype/1.cc: Derivation tests.
1740
	* testsuite/22_locale/ctype/11844.cc: Move...
1741
	* testsuite/22_locale/ctype_base/11844.cc: ...here.
1742
	* testsuite/22_locale/ctype_base/1.cc: Move mask bits here.
1743
	* testsuite/22_locale/ctype_byname/1.cc: Name.
1744
	* testsuite/22_locale/messages_byname/1.cc: New.
1745
	* testsuite/22_locale/messages_byname/named_equivalence.cc: New.
1746
	* testsuite/22_locale/moneypunct_byname/1.cc: Derivation test.
1747
	* testsuite/22_locale/moneypunct_byname/named_equivalence.cc: New.
1748
	* testsuite/22_locale/numpunct/1.cc: Edit.
1749
	* testsuite/22_locale/numpunct_byname/2.cc: Move...
1750
	* testsuite/22_locale/numpunct/members/char/3.cc: ...here.
1751
	* testsuite/22_locale/numpunct_byname/1.cc: Derivation tests.
1752
	* testsuite/22_locale/numpunct_byname/named_equivalence.cc: New.
1753
 
1754
2003-10-22  Paolo Carlini  
1755
 
1756
	PR libstdc++/8610
1757
	* acinclude.m4 (GLIBCXX_CHECK_INT64_T): New macro,
1758
	checking for the availability of int64_t.
1759
	(GLIBCXX_CHECK_LFS): New macro, checking for LFS support.
1760
	* configure.ac: Call here.
1761
	* acconfig.h: Add undef for the corresponding symbols.
1762
	* config/io/basic_file_stdio.cc	(__basic_file::open):
1763
	Depending on _GLIBCXX_USE_LFS, call fopen64 or fopen.
1764
	(__basic_file::seekoff): Likewise, call lseek64 when
1765
	available, otherwise lseek, checking the __off parameter.
1766
	* include/bits/postypes.h: Typedef __streamoff_base_type
1767
	to int64_t if available, otherwise long long.
1768
	* aclocal.m4: Regenerate.
1769
	* config.h.in: Likewise.
1770
	* configure: Likewise.
1771
 
1772
	* acinclude.m4 (GLIBCXX_CHECK_POLL, GLIBCXX_CHECK_WRITEV):
1773
	Use AC_TRY_LINK instead of AC_TRY_COMPILE.
1774
 
1775
2003-10-22  Paolo Carlini  
1776
 
1777
	PR libstdc++/12657
1778
	* include/bits/basic_ios.tcc (copyfmt(const basic_ios&)):
1779
	Implement resolution of DR 292 (WP).
1780
	* docs/html/ext/howto.html: Add entry for DR 292.
1781
 
1782
2003-10-21  Benjamin Kosnik  
1783
 
1784
	* include/ext/mt_allocator.h: Change include to gthr.h.
1785
	* include/ext/rope: Same. Add _Refcount_base definitions.
1786
	* include/ext/pool_allocator.h: Adjust namespaces.
1787
	* include/bits/stl_threads.h (_Refcount_base): Move.
1788
	Put remaining into namespace __gnu_cxx.
1789
 
1790
2003-10-21  Benjamin Kosnik  
1791
 
1792
	PR libstdc++/9858
1793
	* include/bits/locale_facets.h (ctype): Remove
1794
	__ctype_abstract_base.
1795
	(ctype::do_is): Remove.
1796
	(ctype::do_scan_is): Remove.
1797
	* src/ctype.cc: Same. Inline the rest.
1798
	* testsuite/22_locale/ctype/is/char/9858.cc: New.
1799
	* config/os/aix/ctype_noninline.h: Adjust ctor.
1800
	* config/os/bsd/freebsd/ctype_noninline.h: Same.
1801
	* config/os/bsd/netbsd/ctype_noninline.h: Same.
1802
	* config/os/djgpp/ctype_noninline.h: Same.
1803
	* config/os/generic/ctype_noninline.h: Same.
1804
	* config/os/gnu-linux/ctype_noninline.h: Same.
1805
	* config/os/hpux/ctype_noninline.h: Same.
1806
	* config/os/irix/irix5.2/ctype_noninline.h: Same.
1807
	* config/os/irix/irix6.5/ctype_noninline.h: Same.
1808
	* config/os/mingw32/ctype_noninline.h: Same.
1809
	* config/os/newlib/ctype_noninline.h: Same.
1810
	* config/os/qnx/qnx6.1/ctype_noninline.h: Same.
1811
	* config/os/solaris/solaris2.5/ctype_noninline.h: Same.
1812
	* config/os/solaris/solaris2.6/ctype_noninline.h: Same.
1813
	* config/os/solaris/solaris2.7/ctype_noninline.h: Same.
1814
	* config/os/windiss/ctype_noninline.h: Same.
1815
 
1816
2003-10-21  Paolo Carlini  
1817
 
1818
	* src/locale.cc: Tweak a comment.
1819
	* src/localename.cc: Move a comment.
1820
 
1821
2003-10-20  Benjamin Kosnik  
1822
 
1823
	PR libstdc++/10081
1824
	* testsuite_hooks.h: Add pod_type, ctype and numpunct specializations.
1825
	* testsuite_hooks.cc: Same.
1826
	* 22_locale/numpunct/members/pod/1.cc: Edit.
1827
	* 22_locale/numpunct/members/pod/2.cc: Same.
1828
	* 27_io/basic_istream/sentry/char/3983-fstream.cc: Move ...
1829
	* 27_io/basic_istream/sentry/char/3983-sstream.cc: Move ...
1830
	* 27_io/basic_istream/extractors_arithmetic/pod/3983-1.cc: Here.
1831
	* 27_io/basic_istream/extractors_character/pod/3983-2.cc: Here.
1832
	* 27_io/basic_istream/extractors_other/pod/3983-3.cc: Here.
1833
	* 27_io/basic_ostream/sentry/char/3983-fstream.cc: Remove.
1834
	* 27_io/basic_ostream/sentry/char/3983-sstream.cc: Remove.
1835
	* 27_io/basic_istream/sentry/pod/1.cc: New.
1836
	* 27_io/basic_ostream/sentry/pod/1.cc: New.
1837
	* 21_strings/basic_string/inserters_extractors/pod/10081-in.cc: New.
1838
	* 21_strings/basic_string/inserters_extractors/pod/10081-out.cc: New.
1839
 
1840
2003-10-20  Rainer Orth  
1841
 
1842
	* config/cpu/mips/atomicity.h (__atomic_add): Use _ABIO32 instead
1843
	of external _MIPS_SIM_ABI32.
1844
 
1845
2003-10-20  Phil Edwards  
1846
 
1847
	* configure.ac:  Fix comment typo.
1848
	* configure.host:  Add vxworks to host_os switch.
1849
	* crossconfig.m4:  Remove old commented os_include_dir variables
1850
	left over from autotools transition.
1851
	(*-vxworks):  New stanza.
1852
	(*-windiss):  Add missing symbols.
1853
	* configure:  Regenerate.
1854
	* config/os/vxworks/ctype_base.h, config/os/vxworks/ctype_inline.h,
1855
	config/os/vxworks/ctype_noninline.h, config/os/vxworks/os_defines.h:
1856
	New files.
1857
	* config/os/windiss/os_defines.h:  Define __C9X__.
1858
 
1859
2003-10-19  David Edelsohn  
1860
 
1861
	PR other/12506
1862
	* configure.host (aix4,aix*): Define os_include_dir to os/generic.
1863
 
1864
2003-10-18  Andreas Tobler  
1865
 
1866
	* src/locale.cc (locale::_S_initialize): Re-apply workaround a
1867
	confusion of the use of the gthr API when __gthread_active_p()
1868
	returns true.
1869
 
1870
2003-10-17  Benjamin Kosnik  
1871
 
1872
	* src/Makefile.am: Add new files.
1873
	* src/Makefile.in: Regenerate.
1874
	* src/globals.cc: Split into..
1875
	* src/globals_io.cc: New.
1876
	* src/globals_locale.cc: New.
1877
	* src/ios.cc: Split into...
1878
	* src/ios_init.cc: New.
1879
	* src/ios_locale.cc: New.
1880
	* src/locale-inst.cc: Split into..
1881
	* src/wlocale-inst.cc: New.
1882
	* src/locale-misc-inst.cc: New.
1883
	* src/locale.cc, src/localename: Split into...
1884
	* src/locale_facets.cc: New.
1885
	* src/locale_init.cc: New.
1886
	* src/wstring-inst.cc: Add copyright info.
1887
 
1888
2003-10-16  Petur Runolfsson  
1889
 
1890
	PR libstdc++/11450
1891
	PR libstdc++/11543
1892
	PR libstdc++/12065
1893
	* config/io/basic_file_stdio.cc (__basic_file::seekoff):
1894
	Change return value from streampos to streamoff.
1895
	(__basic_file::seekpos): Delete.
1896
	* config/io/basic_file_stdio.h: Same.
1897
	* config/io/c_io_stdio.h: Remove streamoff and wstreamsize typedefs.
1898
	* include/Makefile.am (bits_headers): Add bits/postypes.h.
1899
	* include/bits/char_traits.h: Include bits/postypes.h instead of
1900
	bits/fpos.h.
1901
	* include/bits/fstream.tcc (basic_filebuf::open,
1902
	basic_filebuf::pbackfail): Don't use < or >= to compare pos_type
1903
	values, use == and != instead.
1904
	(basic_filebuf::_M_seek): Use explicit conversion from streamoff
1905
	to pos_type.
1906
	(basic_filebuf::imbue):  Don't use ! on pos_type values, use
1907
	== instead. Don't use __check_facet(_M_codecvt) unless is_open().
1908
	* include/bits/postypes.h: New file.
1909
	Add __streamoff_base_type typedef, streamsize.
1910
	(streamoff, streampos, wstreampos): Define typedefs, with
1911
	streamoff defined as...
1912
	(streamoff): New class. Document implementation defined
1913
	aspects.
1914
	(fpos): New implementation. Document implementation defined
1915
	aspects.
1916
	* include/bits/sstream.tcc (basic_stringbuf::seekpos): Use
1917
	explicit conversion from pos_type to off_type.
1918
	* include/std/std_iosfwd.h: Include bits/postypes.h instead
1919
	of bits/fpos.h.
1920
	* testsuite/27_io/basic_filebuf/seekoff/char/11543.cc: New test.
1921
	* testsuite/27_io/basic_filebuf/seekoff/wchar_t/11543.cc: New test.
1922
	* testsuite/27_io/fpos/11450.cc: New test.
1923
	* testsuite/27_io/fpos/mbstate_t/12065.cc: New test.
1924
	* testsuite/27_io/fpos/mbstate_t/4_neg.cc: New test.
1925
	* testsuite/27_io/types/3.cc: New test.
1926
 
1927
2003-10-16  Benjamin Kosnik  
1928
 
1929
	* configure.host: Remove fpos_include_dir.
1930
	* configure.ac: Remove FPOS_INC_SRCDIR.
1931
	* configure: Regenerate.
1932
	* acinclude.m4 (GLIBCXX_ENABLE_CSTDIO): Remove FPOS_H.
1933
	* aclocal.m4: Regenerate.
1934
	* include/Makefile.am (host_headers): Remove fpos.h.
1935
	(bits_headers): Add postypes.h.
1936
	* include/Makefile.in: Regenerate.
1937
	* config/os/gnu-linux/fposh: Remove.
1938
	* config/os/generic/fpos.h: Remove.
1939
 
1940
	* testsuite/27_io/basic_filebuf/seekoff/char/1-in.cc: Fixup.
1941
	* testsuite/27_io/basic_filebuf/seekoff/char/1-io.cc: Same.
1942
	* testsuite/27_io/basic_filebuf/seekoff/char/1-out.cc: Same.
1943
	* testsuite/27_io/basic_filebuf/seekoff/char/2-in.cc: Same.
1944
	* testsuite/27_io/basic_filebuf/seekoff/char/2-io.cc: Same.
1945
	* testsuite/27_io/basic_filebuf/seekoff/char/2-out.cc: Same.
1946
	* testsuite/27_io/basic_filebuf/seekpos/char/1-in.cc: Same.
1947
	* testsuite/27_io/basic_filebuf/seekpos/char/1-io.cc: Same.
1948
	* testsuite/27_io/basic_filebuf/seekpos/char/1-out.cc: Same.
1949
	* testsuite/27_io/basic_filebuf/seekpos/char/2-in.cc: Same.
1950
	* testsuite/27_io/basic_filebuf/seekpos/char/2-io.cc: Same.
1951
	* testsuite/27_io/basic_filebuf/seekpos/char/2-out.cc: Same.
1952
	* testsuite/27_io/basic_istream/seekg/char/2.cc: Same.
1953
	* testsuite/27_io/basic_stringbuf/seekoff/char/1.cc: Same.
1954
	* testsuite/27_io/basic_stringbuf/seekpos/char/1.cc: Same.
1955
	* testsuite/27_io/fpos/mbstate_t/3.cc: Same.
1956
	* testsuite/27_io/objects/char/10.cc: Same.
1957
 
1958
2003-10-16  Paolo Carlini  
1959
 
1960
	* src/locale.cc (locale::locale(const char*)): ... one
1961
	more comparison missed in the previous commit.
1962
 
1963
2003-10-16  Benjamin Kosnik  
1964
 
1965
        * acconfig.h: Add HAVE_DRAND48.
1966
	* crossconfig.m4: Remove ISATTY.
1967
	* aclocal.m4: Regenerated.
1968
	* config.h.in: Regenerated.
1969
	* configure: Regenerated.
1970
 
1971
2003-10-16  Bernardo Innocenti  
1972
 
1973
	* config/cpu/m68k/atomicity.h (__exchange_and_add): Use TAS on
1974
	__mcf5400__. Don't rely on __mc68000__ to detect a bare 68000.
1975
	Document SMP safeness of asm macros.
1976
 
1977
2003-10-16  Paolo Carlini  
1978
 
1979
	* src/locale.cc (locale::locale(const char*)): Tweak
1980
	a couple of comparisons to use basic_string operators.
1981
 
1982
2003-10-16  Paolo Carlini  
1983
 
1984
	PR libstdc++/12540
1985
	* config/locale/gnu/monetary_members.cc
1986
	(moneypunct::_M_initialize_moneypunct):
1987
	Don't leak memory if new throws.
1988
	* src/locale.cc (locale::locale(const char*)): In order not
1989
	to leak memory in case new throws, use a basic_string type
1990
	for __res too and avoid strdup.
1991
 
1992
2003-10-14  Jeff Bailey  
1993
 
1994
	PR libstdc++/12562
1995
	* crossconfig.m4: Share the config between *-linux* and *-gnu*.
1996
	* configure: Regenerate.
1997
 
1998
2003-10-14  Carlo Wood  
1999
 
2000
	PR libstdc++/12600
2001
	* include/bits/demangle.h (session::
2002
	  decode_unqualified_name(string_type& output)): Fail on a
2003
	   when decoding .
2004
	* testsuite/demangle/regression/cw-15.cc: New.
2005
 
2006
2003-10-14  Paolo Carlini  
2007
 
2008
	PR libstdc++/11480
2009
	* include/bits/stl_algo.h (unique): Fix.
2010
	* testsuite/25_algorithms/unique.cc: Move to unique/1.cc.
2011
	* testsuite/25_algorithms/unique/11480.cc: New, from the PR.
2012
	* testsuite/25_algorithms/unique/2.cc: New.
2013
 
2014
2003-10-14  Paolo Carlini  
2015
 
2016
	* src/localename.cc (_M_replace_categories, M_replace_facet):
2017
	Const-ify a couple of variables.
2018
 
2019
2003-10-14  Petur Runolfsson  
2020
	    Andreas Tobler  
2021
 
2022
	* src/locale.cc (locale::_S_initialize): Workaround a confusion
2023
	of the use of the gthr API when __gthread_active_p() returns true.
2024
 
2025
2003-10-12  Petur Runolfsson  
2026
	    Paolo Carlini  
2027
 
2028
	PR libstdc++/11460
2029
	* src/strstream.cc (pbackfail): Fix to use to_int_type.
2030
	* testsuite/backward/11460.cc: New, from the PR.
2031
 
2032
2003-10-12  Paolo Carlini  
2033
 
2034
	* config/locale/ieee_1003.1-2001/codecvt_specializations.h:
2035
	Change #ifdef _GLIBCXX_RESOLVE_LIB_DEFECTS to a comment.
2036
	* include/bits/basic_string.tcc: Likewise.
2037
	* include/bits/ios_base.h: Likewise.
2038
	* include/bits/istream.tcc: Likewise.
2039
	* include/bits/locale_facets.tcc: Likewise.
2040
	* include/bits/ostream.tcc: Likewise.
2041
	* include/bits/stl_function.h: Likewise.
2042
	* include/bits/stl_multiset.h: Likewise.
2043
	* include/bits/stl_pair.h: Likewise.
2044
	* include/bits/stl_set.h: Likewise.
2045
	* include/bits/streambuf_iterator.h
2046
	* include/std/std_iosfwd.h: Likewise.
2047
	* include/std/std_istream.h: Likewise.
2048
	* include/std/std_sstream.h: Likewise.
2049
	* include/std/std_streambuf.h: Likewise.
2050
	* src/ios.cc: Likewise.
2051
	* include/bits/c++config:
2052
	Comment out #define _GLIBCXX_RESOLVE_LIB_DEFECTS 1.
2053
	* testsuite/27_io/ios_base/cons/assign_neg.cc: Tweak a
2054
	dg-error directive due to removal of a blank line.
2055
	* testsuite/27_io/ios_base/cons/copy_neg.cc: Likewise.
2056
 
2057
2003-10-12  Andreas Tobler  
2058
	    Paolo Carlini  
2059
 
2060
	PR libstdc++/11844/11740 (cont)
2061
	* config/os/generic/ctype_inline.h (ctype::is):
2062
	Generically, use a bitmasksize of 15 (instead of 10);
2063
	Fix the logic to actually return (M & m) != 0 as per
2064
	22.2.1.1.2.
2065
 
2066
2003-10-11  Bernardo Innocenti  
2067
 
2068
	* crossconfig.m4 (*-uclinux*): New target.
2069
	* configure: Regenerate.
2070
 
2071
2003-10-10  Paolo Carlini  
2072
 
2073
	* include/bits/ostream.tcc (operator<<(basic_ostream&, _CharT))
2074
	Avoid unnecessarily calling __builtin_alloca and dealing
2075
	explicitly with width() smaller than zero.
2076
	(operator<<(basic_ostream&, char), operator<<(basic_ostream&,
2077
	const _CharT*), operator<<(basic_ostream<_CharT, _Traits>&,
2078
	const char*), operator<<(basic_ostream&,
2079
	const char*), operator<<(basic_ostream, const basic_string&)):
2080
	Likewise.
2081
 
2082
2003-10-09  Benjamin Kosnik  
2083
 
2084
	* config/linker-map.gnu: Make more *_type_info bits visible.
2085
	Move new/delete bits back into GLIBCXX space.
2086
 
2087
	* include/bits/locale_classes.h: Move _M_id out of line, so that
2088
	locale::id::_S_highwater can be removed from the export list.
2089
	* src/locale.cc (locale::id::_M_id): Define.
2090
 
2091
2003-10-09  Andreas Tobler  
2092
 
2093
	* testsuite/lib/libstdc++.exp: Set LD_LIBRARY_PATH_64 for
2094
	SPARC64.
2095
 
2096
2003-10-09  Paolo Carlini  
2097
 
2098
	PR libstdc++/11844
2099
	* config/os/aix/ctype_base.h: Fix 'alnum' and 'graph'
2100
	to conform to the requirements of 22.2.1.
2101
	* config/os/bsd/freebsd/ctype_base.h: Likewise.
2102
	* config/os/djgpp/ctype_base.h: Likewise.
2103
	* config/os/generic/ctype_base.h: Likewise.
2104
	* config/os/gnu-linux/ctype_base.h: Likewise.
2105
	* config/os/hpux/ctype_base.h: Likewise.
2106
	* config/os/irix/irix6.5/ctype_base.h: Likewise.
2107
	* config/os/solaris/solaris2.6/ctype_base.h: Likewise.
2108
	* config/os/solaris/solaris2.7/ctype_base.h: Likewise.
2109
	* testsuite/22_locale/ctype/11844.cc: New.
2110
 
2111
	* config/locale/generic/ctype_members.cc (do_is):
2112
	Generically, use a bitmasksize of 15 (instead of 10), since
2113
	we don't know the numerical encoding of the various categories
2114
	in the underlying /usr/include/ctype.h.
2115
 
2116
2003-10-09  Benjamin Kosnik  
2117
 
2118
	* src/string-inst.cc: Prune.
2119
	* testsuite/27_io/ios_base/cons/assign_neg.cc: Adjust line numbers.
2120
	* testsuite/27_io/ios_base/cons/copy_neg.cc: Same.
2121
 
2122
2003-10-09  Petur Runolfsson  
2123
 
2124
	* src/io-inst.cc: Don't include iostream.
2125
	* include/bits/ios_base.h (ios_base::failure): Use string.
2126
	* src/Makefile.am: Add ios_failure.cc.
2127
	* src/Makefile.in: Regenerate.
2128
	* src/ios.cc: Move ios_base::failure definitions to...
2129
	* src/ios_failure.cc: ...here. New.
2130
 
2131
2003-10-09  Petur Runolfsson  
2132
 
2133
	PR libstdc++/9874
2134
	* include/bits/fstream.tcc (basic_filebuf::seekoff):
2135
	Move code needed for both seekoff and seekpos...
2136
	(basic_filebuf::_M_seek): ...here. New function.
2137
	(basic_filebuf::seekpos): Don't call seekoff, call _M_seek.
2138
	* include/std/std_fstream.h (basic_filebuf::_M_seek): Declare it.
2139
	* testsuite/27_io/basic_filebuf/seekpos/wchar_t/9874.cc: New test.
2140
 
2141
	* testsuite/22_locale/locale/cons/12438.cc: Increase memory limit.
2142
 
2143
2003-10-08  Paolo Carlini  
2144
 
2145
	* include/bits/locale_facets.tcc: More minor cosmetic
2146
	changes and const-ifications of some variables.
2147
 
2148
2003-10-07  Paolo Carlini  
2149
 
2150
	* include/bits/locale_facets.tcc: Minor cosmetic changes
2151
	and const-ifications of some variables.
2152
 
2153
	* include/bits/locale_facets.tcc
2154
	(money_get::do_get(..., string_type&)): Simplify an if-else.
2155
 
2156
2003-10-06  Paolo Carlini  
2157
 
2158
	PR libstdc++/11740
2159
	* config/locale/gnu/ctype_members.cc (ctype::do_is):
2160
	Fix to actually return (M & m) != 0 as per 22.2.1.1.2.
2161
	* config/locale/generic/ctype_members.cc: Same.
2162
	* testsuite/22_locale/ctype/is/wchar_t/11740.cc: New.
2163
 
2164
2003-10-06  Paolo Carlini  
2165
 
2166
	* include/bits/locale_facets.tcc (__pad<>::_S_pad):
2167
	Improve performance-wise: avoid one traits::copy, avoid
2168
	the __builtin_alloca, streamline.
2169
 
2170
2003-10-05  Paolo Carlini  
2171
 
2172
	* include/bits/locale_facets.tcc
2173
	(num_put::do_put(..., bool)): Prefer ?: to if-else.
2174
	(time_get::_M_extract_name): Qualify min with std::.
2175
	(__pad<>::_S_pad): Constify two variables; simplify an
2176
	if-else statement factoring out some code.
2177
 
2178
	* include/bits/locale_facets.tcc: Minor cosmetic changes.
2179
 
2180
2003-10-04  Paolo Carlini  
2181
 
2182
	* include/bits/locale_facets.tcc (num_get::_M_extract_float):
2183
	Constify a couple of variables.
2184
	(num_get::do_get(..., bool&)): Constify __c; prefer *__beg,
2185
	++__beg to *__beg++.
2186
 
2187
2003-10-04  Paolo Carlini  
2188
            Petur Runolfsson  
2189
 
2190
	* include/ext/stdio_sync_filebuf.h: Don't include the whole
2191
	, only  and .
2192
 
2193
2003-10-04  Paolo Carlini  
2194
 
2195
	PR libstdc++/12206
2196
	* include/bits/fstream.tcc (imbue): In case a codecvt facet
2197
	is not available, set _M_codecvt = 0.
2198
	* testsuite/27_io/basic_filebuf/imbue/12206.cc: New.
2199
 
2200
2003-10-02  Harald Boehme  
2201
 
2202
	PR libstdc++/12451
2203
	* libsupc++/cxxabi.h: Move forward declaration of __class_type_info.
2204
 
2205
2003-10-02  Benjamin Kosnik  
2206
 
2207
	* include/bits/locale_classes.h (locale::facet::_S_get_c_name): Add.
2208
	* src/locale.cc: Define.
2209
	* src/localename.cc: Use it.
2210
	* config/locale/generic/time_members.h: Same.
2211
	* config/locale/gnu/messages_members.h: Same.
2212
	* config/locale/gnu/time_members.h: Same.
2213
 
2214
2003-10-02  Paolo Carlini  
2215
 
2216
	PR libstdc++/12232
2217
	* include/bits/fstream.tcc (seekoff): Ignore the openmode
2218
	argument; simplify.
2219
	* config/io/basic_file_stdio.h (__basic_file::seekoff,
2220
	seekpos): Remove the openmode argument.
2221
	* config/io/basic_file_stdio.cc (__basic_file::seekoff,
2222
	seekpos): Remove redundant placeholder for the openmode argument.
2223
	* testsuite/27_io/basic_filebuf/seekoff/char/12232.cc: New.
2224
	* testsuite/27_io/basic_filebuf/seekoff/char/3-in.cc: Tweak.
2225
	* testsuite/27_io/basic_filebuf/seekoff/char/3-out.cc: Likewise.
2226
	* testsuite/27_io/basic_filebuf/seekpos/char/3-in.cc: Likewise.
2227
	* testsuite/27_io/basic_filebuf/seekpos/char/3-out.cc: Likewise.
2228
 
2229
2003-10-02  Benjamin Kosnik  
2230
 
2231
	* src/locale.cc (locale::_S_initialize): Use __gthread_active_p.
2232
	(locale::facet::_S_get_c_locale): Same.
2233
 
2234
2003-10-02  Benjamin Kosnik  
2235
 
2236
	* config/linker-map.gnu: Export _S_get_c_locale instead of
2237
	_S_c_locale object.
2238
 
2239
2003-10-02  Petur Runolfsson  
2240
 
2241
	* config/locale/generic/c_locale.cc
2242
	(category_names, locale::_S_categories): Const qualify.
2243
	* config/locale/gnu/c_locale.cc: Same.
2244
	* config/locale/generic/time_members.h (__timepunct::__timepunct):
2245
	Copy string contents before assigning to _M_name_timepunct,
2246
	qualify strcpy and strlen with std::.
2247
	* config/locale/gnu/time_members.h: Same.
2248
	* config/locale/gnu/messages_members.h (messages::messages):
2249
	Copy string contents before assigning to _M_name_messages,
2250
	qualify strcpy and strlen with std::.
2251
	* config/os/gnu-linux/ctype_noninline.h
2252
	(ctype::classic_table()): Don't call locale::classic().
2253
	* include/bits/locale_classes.h
2254
	(locale::_S_categories): Const qualify.
2255
	(locale::_S_once, locale::_S_initialize_once,
2256
	locale::facet::_S_once, locale::facet::_S_initialize_once,
2257
	locale::facet::_S_get_c_locale): Declare.
2258
	(locale::_S_initialize): Don't define.
2259
	(locale::facet::_S_c_locale): Make private.
2260
	(locale::facet::_S_c_name): Same, const qualify.
2261
	(locale::_Impl::_Impl(facet**, size_t, bool)): Drop unused
2262
	parameters, add throw() specifier.
2263
	* include/bits/locale_facets.h (__timepunct::_M_name_timepunct,
2264
	messages::_M_name_messages): Const qualify.
2265
	* src/locale.cc
2266
	(locale::_S_once, locale::facet::_S_once): Define.
2267
	(locale::classic): Move initialization code...
2268
	(locale::_S_initialize_once): ...here.
2269
	(locale::_S_initialize): Call _S_initialize_once through
2270
	__gthread_once.
2271
	(locale::facet::_S_initialize_once): Initialize _S_c_locale.
2272
	(locale::facet::_S_get_c_locale): Call _S_initialize_once through
2273
	__gthread_once before returning _S_c_locale.
2274
	* src/localename.cc (locale::_Impl::_Impl(facet**, size_t, bool)):
2275
	Drop unused parameters, add throw() specifier, don't initialize
2276
	locale::facet::_S_c_locale and _S_c_name.
2277
 
2278
	* config/locale/generic/messages_members.h:
2279
	Replace _S_c_locale with _S_get_c_locale().
2280
	* config/locale/gnu/c_locale.cc: Same.
2281
	* config/locale/gnu/messages_members.h: Same.
2282
	* config/locale/gnu/numeric_members.cc: Same.
2283
	* config/locale/gnu/time_members.cc: Same.
2284
	* config/os/gnu-linux/ctype_noninline.h: Same.
2285
	* include/bits/locale_facets.h: Same.
2286
	* include/bits/locale_facets.tcc: Same.
2287
	* src/codecvt.cc: Same.
2288
	* src/ctype.cc: Same.
2289
 
2290
2003-10-02  Carlo Wood  
2291
 
2292
	* include/bits/demangle.h (demangle::symbol(char const*)):
2293
	Decode symbols that start with _GLOBAL_[ID]_ differently: the
2294
	trailing part ends with a terminating zero and is not necessarily an
2295
	encoding.
2296
	* src/demangle.cc (): Same.
2297
	* testsuite/demangle/regression/cw-13.cc: Adjust for new output.
2298
 
2299
2003-10-02  Paolo Carlini  
2300
 
2301
	* testsuite/22_locale/locale/cons/12438.cc: Use
2302
	__gnu_test::try_named_locale("").
2303
 
2304
2003-10-01  Rainer Orth  
2305
 
2306
	* linkage.m4 (GLIBCXX_CHECK_STDLIB_DECL_AND_LINKAGE_0): Define.
2307
	(GLIBCXX_CHECK_STDLIB_SUPPORT): Use it to test for lrand48
2308
	instead of drand48.
2309
	* acconfig.h (HAVE_DRAND48): Renamed to HAVE_LRAND48.
2310
	* crossconfig.m4 (*-freebsd*): Define HAVE_LRAND48 instead of
2311
	HAVE_DRAND48.
2312
	* config.h.in, configure: Regenerate.
2313
	* include/bits/stl_algo.h: Use _GLIBCXX_HAVE_LRAND48 to guard
2314
	lrand48 use.
2315
 
2316
2003-10-01  Nathan Myers  
2317
 
2318
	* include/bits/locale_facets.tcc (time_put::put): Avoid
2319
	expensive *__s++, in favor of *__s, ++__s.
2320
 
2321
2003-10-01  Paolo Carlini  
2322
 
2323
	* include/bits/locale_facets.tcc (time_put::put): Minor
2324
	tweak to the previous commit.
2325
 
2326
2003-10-01  Paolo Carlini  
2327
 
2328
	PR libstdc++/12439
2329
	* include/bits/locale_facets.tcc (time_put::put): Deal
2330
	with the three issues pointed out by the PR.
2331
	* testsuite/22_locale/time_put/put/char/12439_1.cc: New.
2332
	* testsuite/22_locale/time_put/put/char/12439_3.cc: New.
2333
	* testsuite/22_locale/time_put/put/wchar_t/12439_1.cc: New.
2334
	* testsuite/22_locale/time_put/put/wchar_t/12439_2.cc: New.
2335
	* testsuite/22_locale/time_put/put/wchar_t/12439_3.cc: New.
2336
 
2337
2003-09-30  Paolo Carlini  
2338
 
2339
	* include/bits/stl_algo.h: Minor cosmetic reformattings.
2340
 
2341
2003-09-30  Paolo Carlini  
2342
 
2343
	* include/bits/stl_algo.h (search_n): Tweak, to spare the
2344
	first --__n.
2345
 
2346
2003-09-30  Paolo Carlini  
2347
 
2348
	* testsuite/22_locale/locale/cons/12352.cc: Explicitly
2349
	qualify exception name.
2350
 
2351
2003-09-30  Paolo Carlini  
2352
 
2353
	PR libstdc++/12438
2354
	* include/bits/locale_facets.tcc (locale::combine): Don't
2355
	leak memory if _M_replace_facet throws.
2356
	* testsuite/22_locale/locale/cons/12438.cc: New, from the PR.
2357
 
2358
	* include/bits/locale_classes.h (locale::locale(const locale&,
2359
	_Facet*)): Tweak, use consistently _M_remove_reference.
2360
 
2361
2003-09-30  Paolo Carlini  
2362
 
2363
	PR libstdc++/12352 (cont)
2364
	* src/localename.cc (locale::_Impl::_Impl(const char*, size_t)):
2365
	Don't leak __cloc; don't leak if any of the _M_init_facet(...)
2366
	calls fail.
2367
	(locale::_Impl::_Impl(const _Impl&, size_t)): Tweak.
2368
	(locale::_Impl::~_Impl): Don't do anything if !_M_facets,
2369
	!_M_caches, !_M_names.
2370
 
2371
2003-09-29  Rainer Orth  
2372
 
2373
	* configure.host: Handle Solaris 2.5 micro releases explicitly.
2374
	Remove wildcards from Solaris 2.6, 7-9: there were no
2375
	micro releases.
2376
	Treat Solaris 10 and up like 7-9.
2377
 
2378
2003-09-29  Paolo Carlini  
2379
 
2380
	* include/bits/stl_algo.h (search_n): Improve the previous
2381
	fix as suggested by Martin.
2382
 
2383
2003-09-29  Paolo Carlini  
2384
 
2385
	PR libstdc++/12296
2386
	* include/bits/istream.tcc (peek): Set eofbit if sgetc
2387
	returns eof.
2388
	* testsuite/27_io/basic_istream/peek/char/12296.cc:
2389
	New, from the PR.
2390
 
2391
2003-09-29  Nathan Myers  
2392
	    Paolo Carlini  
2393
 
2394
	PR libstdc++/11400
2395
	* include/bits/stl_algo.h (search_n):
2396
	Use iterator_traits<>::difference_type for __n.
2397
	* testsuite/25_algorithms/search_n/11400.cc: New, from the PR.
2398
 
2399
2003-09-29  Paolo Carlini  
2400
 
2401
	* testsuite/22_locale/locale/cons/12352.cc:
2402
	Use __attribute__((unused)) for test.
2403
 
2404
2003-09-26  Ulrich Weigand  
2405
 
2406
	* testsuite/22_locale/time_put/put/char/2.cc (test_02): Allow either
2407
	"Son" or "So" as abbreviated name for Sunday in de_DE locale.
2408
	* testsuite/22_locale/time_put/put/wchar_t/2.cc (test_02): Likewise.
2409
 
2410
2003-09-26  Brad Spencer  
2411
 
2412
	* testsuite/27_io/basic_filebuf/cons/wchar_t/10132-1.cc:
2413
	Explicitly qualify exceptions.
2414
	* testsuite/27_io/basic_istream/sentry/char/3983-fstream.cc: Same.
2415
	* testsuite/27_io/basic_istream/sentry/char/3983-sstream.cc: Same.
2416
	* testsuite/27_io/basic_ostream/sentry/char/3983-fstream.cc: Same.
2417
	* testsuite/27_io/basic_ostream/sentry/char/3983-sstream.cc: Same.
2418
 
2419
2003-09-25  Paolo Carlini  
2420
 
2421
	PR libstdc++/12352
2422
	* src/localename.cc (locale::_Impl::_Impl(const _Impl&,
2423
	size_t)): Don't leak if memory allocations for _M_facets,
2424
	_M_caches, and _M_names fail.
2425
	(locale::_Impl::_Impl(const char*, size_t)): Ditto.
2426
	(locale::_Impl::_M_replace_categories(const _Impl*,
2427
	category)): Ditto.
2428
	(locale::_Impl::_M_install_facet(const locale::id*,
2429
	const facet*)): Ditto.
2430
	* include/bits/locale_classes.h (locale::locale(const locale&,
2431
	_Facet*)): Don't leak memory.
2432
	* testsuite/22_locale/locale/cons/12352.cc: New, from the PR.
2433
 
2434
	* src/localename.cc (locale::_Impl::_Impl(facet**, size_t,
2435
	bool)): Qualify with std:: strcpy, tweak.
2436
	* include/bits/locale_classes.h
2437
	(locale::_Impl::_M_check_same_name): Qualify strcmp.
2438
 
2439
2003-09-25  Brad Spencer  
2440
 
2441
	PR libstdc++/6072
2442
	* acinclude.m4: Split out checks for vfwscanf, vswscanf, vwscanf,
2443
	wcstof, iswblank.
2444
	* aclocal.m4: Regenerate.
2445
	* config.h.in: Regenerate.
2446
	* configure: Regenerate.
2447
	* crossconfig.m4: Add in wchar_t bits for solaris crosses.
2448
	* config/io/basic_file_stdio.cc: Guard unistd.h.
2449
	* include/c_compatibility/wchar.h: Guard extra wchar_t functionality.
2450
	* include/c_std/std_cwchar.h: Same.
2451
	* include/c_std/std_cwctype.h: Same.
2452
 
2453
2003-09-25  Benjamin Kosnik  
2454
 
2455
	PR libstdc++/11065
2456
	* config/locale/gnu/ctype_members.cc (ctype::do_is): Fix.
2457
	* config/locale/generic/ctype_members.cc: Same.
2458
	* testsuite/22_locale/ctype/is/char/1.cc: Initialize mask.
2459
	* testsuite/22_locale/ctype/is/wchar_t/1.cc: Same.
2460
 
2461
	* config/os/generic/ctype_inline.h: Update.
2462
 
2463
2003-09-25  Ulrich Weigand  
2464
 
2465
	* src/Makefile.am (version_dep): New variable.
2466
	(libstdc___la_DEPENDENCIES): Use it to add dependency on
2467
	libstdc++-symbol.ver only when using symbol versioning.
2468
	* src/Makefile.in: Regenerate.
2469
 
2470
2003-09-23  Benjamin Kosnik  
2471
 
2472
	* include/bits/locale_facets.tcc: Tweak to avoid warnings.
2473
	* testsuite/testsuite_hooks.h: Same.
2474
	* testsuite/*/*.cc: Same.
2475
 
2476
2003-09-22  Petur Runolfsson  
2477
 
2478
	* include/bits/istream.tcc (basic_istream::read,
2479
	basic_istream::readsome, basic_istream::putback,
2480
	basic_istream::unget, operator>>(basic_istream, CharT)):
2481
	Avoid redundant setstate(failbit) calls when sentry::operator bool()
2482
	returns false.
2483
 
2484
2003-09-22  Carlo Wood  
2485
 
2486
	PR libstdc++/12365
2487
	* include/bits/demangle.h (qualifier(int, cv_qualifier_nt,
2488
	char const*, int, int)):  Remove unused identifier
2489
	cv_qualifier for overloaded constructor.
2490
 
2491
2003-09-18  Benjamin Kosnik  
2492
 
2493
	PR libstdc++/11504
2494
	* acinclude.m4 (GLIBCXX_EXPORT_FLAGS): Add -Wcast-qual to
2495
	WARN_FLAGS, remove -Wno-format.
2496
	* aclocal.m4: Regenerate.
2497
	* configure: Regenerate.
2498
 
2499
2003-09-18  Petur Runolfsson  
2500
 
2501
	* config/io/basic_file_stdio.cc (sys_getc, sys_ungetc): Delete.
2502
	* config/io/basic_file_stdio.h: Same.
2503
	* include/std/std_fstream.h (__ctype_type): Delete.
2504
	* include/std/std_streambuf.h (__ctype_type, __state_type): Delete.
2505
 
2506
2003-09-17  Benjamin Kosnik  
2507
 
2508
	PR libstdc++/12239
2509
	* configure.host (abi_baseline_pair): Error out on solaris2
2510
	configurations without a minor version number.
2511
 
2512
2003-09-13  Phil Edwards  
2513
 
2514
	* docs/doxygen/run_doxygen:  Clear GENERATE_TAGFILE entirely
2515
	if man pages are on.
2516
	* docs/doxygen/user.cfg.in:  And here.
2517
 
2518
2003-09-10  Daniel Jacobowitz  
2519
	    Andreas Jaeger 
2520
 
2521
	PR libstdc++/12189
2522
	* acinclude.m4 (GLIBCXX_CONFIGURE_TESTSUITE): Don't build
2523
	abi_check if cross compiling.
2524
	* aclocal.m4: Regenerated.
2525
	* configure: Regenerated.
2526
 
2527
2003-09-10  Jeffrey D. Oldham  
2528
 
2529
	* libsupc++/vec.cc (__cxa_vec_new2): If the allocator returns
2530
	NULL, return NULL.  This reflects a C++ ABI change 2003 Sep 05.
2531
	(__cxa_vec_new3): Likewise.
2532
 
2533
2003-09-10  Petur Runolfsson  
2534
 
2535
	* include/bits/fstream.tcc (basic_filebuf::seekoff):
2536
	Use codecvt::length to handle variable-width stateless encodings
2537
	correctly.
2538
	* testsuite/27_io/basic_filebuf/seekoff/wchar_t/1.cc: New test.
2539
	* testsuite/27_io/basic_filebuf/seekoff/wchar_t/2.cc: New test.
2540
 
2541
2003-09-10  Alan Modra  
2542
 
2543
	* config/io/basic_file_stdio.cc (_M_open_mode): Assign __p_mode
2544
	rather than or'ing.
2545
 
2546
2003-09-09  Alan Modra  
2547
 
2548
	* configure: Regenerate.
2549
 
2550
2003-09-09  David Edelsohn  
2551
 
2552
	* src/ios.cc (ios_base::Init::Init): Remove unnecessary
2553
	qualifier from _S_synced_with_stdio.
2554
 
2555
2003-09-09  Bernardo Innocenti  
2556
 
2557
	* include/c_std/std_cstdlib.h: Avoid using missing C library symbols.
2558
 
2559
2003-09-04  Petur Runolfsson  
2560
 
2561
	PR libstdc++/9028
2562
	* include/bits/fstream.tcc
2563
	(basic_filebuf::_M_destroy_internal_buffer): Destroy _M_ext_buf.
2564
	(basic_filebuf::basic_filebuf): Initialize _M_ext_buf,
2565
	_M_ext_buf_size, _M_ext_next and _M_ext_end.
2566
	(basic_filebuf::underflow): Handle variable-width stateless
2567
	encodings (codecvt::encoding() == 0), including UTF-8.
2568
	* include/std/std_fstream.h (basic_filebuf):
2569
	Declare _M_ext_buf, _M_ext_buf_size, _M_ext_next, _M_ext_end.
2570
	* testsuite/27_io/basic_filebuf/underflow/wchar_t/1.cc: New test.
2571
	* testsuite/27_io/basic_filebuf/underflow/wchar_t/2.cc: New test.
2572
	* testsuite/27_io/basic_filebuf/underflow/wchar_t/3.cc: New test.
2573
	* testsuite/27_io/basic_filebuf/underflow/wchar_t/4.cc: New test.
2574
	* testsuite/27_io/basic_filebuf/underflow/wchar_t/5.cc: New test.
2575
	* testsuite/27_io/objects/wchar_t/12.cc: New test.
2576
	* testsuite/27_io/objects/wchar_t/13.cc: New test.
2577
 
2578
2003-09-04  Jonathan Wakely  
2579
 
2580
	* docs/html/faq/index.html: Note that a namespace alias can't be
2581
	used when specialising templates in extension namespace.
2582
	* docs/html/faq/index.txt: Regenerate.
2583
 
2584
2003-09-03  Petur Runolfsson  
2585
 
2586
	PR libstdc++/12048
2587
	* include/ext/stdio_sync_filebuf.h
2588
	(stdio_sync_filebuf::_M_unget_buf): Declare it.
2589
	(stdio_sync_filebuf::stdio_sync_filebuf): Initialize _M_unget_buf.
2590
	(stdio_sync_filebuf::uflow): Store the returned character in
2591
	_M_unget_buf.
2592
	(stdio_sync_filebuf::pbackfail): If argument is eof(), pass
2593
	_M_unget_buf to syncungetc(). Set _M_unget_buf to eof().
2594
	(stdio_sync_filebuf::xsgetn): Store last read character in
2595
	_M_unget_buf, if any, else eof().
2596
	(stdio_sync_filebuf::xsgetn: Store last read character in
2597
	_M_unget_buf, if any, else eof().
2598
	* testsuite/27_io/objects/char/12048.cc: Rename to...
2599
	* testsuite/27_io/objects/char/12048-1.cc: ...this.
2600
	* testsuite/27_io/objects/char/12048-2.cc: New test.
2601
	* testsuite/27_io/objects/char/12048-3.cc: New test.
2602
	* testsuite/27_io/objects/char/12048-4.cc: New test.
2603
	* testsuite/27_io/objects/char/12048-5.cc: New test. XFAIL.
2604
	* testsuite/27_io/objects/wchar_t/12048-1.cc: New test.
2605
	* testsuite/27_io/objects/wchar_t/12048-2.cc: New test.
2606
	* testsuite/27_io/objects/wchar_t/12048-3.cc: New test.
2607
	* testsuite/27_io/objects/wchar_t/12048-4.cc: New test.
2608
	* testsuite/27_io/objects/wchar_t/12048-5.cc: New test. XFAIL.
2609
	* testsuite/ext/stdio_sync_filebuf_char.cc
2610
	(test02, test03, test04, test05): New tests.
2611
	* testsuite/ext/stdio_sync_filebuf_wchar_t.cc
2612
	(test02, test03, test04, test05): New tests.
2613
 
2614
2003-09-03  Petur Runolfsson  
2615
 
2616
	* docs/html/27_io/howto.html: setbuf(0, 0) has no effect on
2617
	stringbuf or strstreambuf. Fix typos.
2618
 
2619
2003-09-02  Phil Edwards  
2620
 
2621
	* acinclude.m4 (GLIBCXX_ENABLE_HOSTED):  #define _GLIBCXX_HOSTED
2622
	appropriately.
2623
	* config.h.in:  Add _GLIBCXX_HOSTED.
2624
	* libsupc++/eh_term_handler.cc:  Test it here; initialize
2625
	__terminate_handler to std::abort if freestanding.
2626
	* aclocal.m4, configure:  Regenerated.
2627
	* docs/html/configopts.html:  Document --disable-hosted-libstdcxx.
2628
 
2629
2003-08-29  Nathan Myers  
2630
 
2631
	PR libstdc++/11990
2632
	* include/bits/locale_facets.tcc (__pad): delete dead code.
2633
 
2634
2003-08-28  Alan Modra  
2635
 
2636
	* configure.ac: Test $with_cross_host against $build_alias, not $build.
2637
	* configure: Regenerate.
2638
 
2639
2003-08-27  Petur Runolfsson  
2640
 
2641
	* testsuite/27_io/objects/wchar_t/10.cc: Move wcout stuff...
2642
	* testsuite/27_io/objects/wchar_t/11.cc: ...here. New file.
2643
 
2644
2003-08-27  Phil Edwards  
2645
 
2646
	* Makefile.am:  Remove trailing whitespace.  Remove needless
2647
	"foo = @foo@" assignments.  Replace direct uses of @foo@ with $(foo).
2648
	* include/Makefile.am:  Likewise.
2649
	* libmath/Makefile.am:  Likewise.
2650
	* libsupc++/Makefile.am:  Likewise.
2651
	* po/Makefile.am:  Likewise.
2652
	* src/Makefile.am:  Likewise.
2653
	* testsuite/Makefile.am:  Likewise.
2654
 
2655
	* Makefile.in, include/Makefile.in, libmath/Makefile.in,
2656
	libsupc++/Makefile.in, po/Makefile.in, src/Makefile.in,
2657
	testsuite/Makefile.in:  Regenerated.
2658
 
2659
2003-08-27  Phil Edwards  
2660
 
2661
	* acinclude.m4 (GLIBCXX_EXPORT_INCLUDES):  Change quoting of
2662
	includedir.
2663
	* aclocal.m4, configure:  Regenerate.
2664
 
2665
2003-08-27  Daniel Jacobowitz  
2666
 
2667
	* acinclude.m4: Include no-executables.m4.
2668
	* configure.ac: Uncomment GCC_NO_EXECUTABLES.
2669
	* aclocal.m4: Regenerated.
2670
	* configure: Regenerated.
2671
 
2672
2003-08-27  Daniel Jacobowitz  
2673
 
2674
	* acinclude.m4: Don't call AC_ISC_POSIX.
2675
	* aclocal.m4: Regenerated.
2676
	* configure: Regenerated.
2677
 
2678
2003-08-27  Phil Edwards  
2679
 
2680
	* acinclude.m4 (GLIBCXX_CONDITIONAL):  New macro.  Wrap
2681
	AM_CONDITIONAL.  Replace all calls to AM_CONDITIONAL with this one.
2682
	(GLIBCXX_ENABLE_HOSTED):  New macro, sets new variable is_hosted,
2683
	used elsewhere in this file.
2684
	(GLIBCXX_EVALUATE_CONDITIONALS):  New macro...
2685
	* configure.ac:  ...called here to expand all conditionals.
2686
	* Makefile.am:  Conditionalize SUBDIRS on GLIBCXX_HOSTED.
2687
	* include/Makefile.am:  Remove redundant gxx_include_dir assignment.
2688
	(install-freestanding-headers):  New target, a subset of
2689
	install-headers.  Conditionalize install-data-local on GLIBCXX_HOSTED.
2690
 
2691
	* aclocal.m4, configure, Makefile.in, include/Makefile.in,
2692
	libmath/Makefile.in, libsupc++/Makefile.in, po/Makefile.in,
2693
	src/Makefile.in, testsuite/Makefile.in:  Regenerated.
2694
 
2695
2003-08-26  Phil Edwards  
2696
 
2697
	* docs/doxygen/run_doxygen:  Shell fixes.  Remove hardcoded local
2698
	pathnames from generated tag file.
2699
 
2700
2003-08-26  Phil Edwards  
2701
 
2702
	* Makefile.am:  Add comment.
2703
	* acinclude.m4 (GLIBCXX_CONFIGURE):  Set new glibcxx_SUBDIRS and
2704
	SUBDIRS variables.
2705
	* configure.ac:  Use them both here, instead of hardcoded lists.
2706
 
2707
	* fragment.am:  Add STAMP varaible.
2708
	* include/Makefile.am:  Cosmetic whitespace cleanup.  Use $(LN_S)
2709
	instead of @LN_S@.
2710
	(stamp-*):  Move file creation rule outside of 'if' branches to
2711
	ensure the stamp-* files are actually updated.  Use $(STAMP).
2712
	* src/Makefile.am:  Remove now-nonexistant variable.
2713
	* libsupc++/Makefile.am:  Likewise.  Snap the assignment chain
2714
	for -prefer-pic.
2715
	* po/Makefile.am:  Include same fragment as all the others.
2716
 
2717
	* aclocal.m4, configure, Makefile.in, include/Makefile.in,
2718
	libsupc++/Makefile.in, po/Makefile.in, src/Makefile.in:  Regenerated.
2719
 
2720
2003-08-26  Loren J. Rittle  
2721
 
2722
	* testsuite/data/cin_unget-1.txt: New.
2723
	* testsuite/27_io/objects/char/12048.cc: New.
2724
 
2725
2003-08-25  Zack Weinberg  
2726
 
2727
	* config/os/hpux/os_defines.h: Unconditionally define
2728
	_GLIBCXX_GTHREAD_USE_WEAK to 0.
2729
 
2730
2003-08-19  Geoffrey Keating  
2731
 
2732
	* crossconfig.m4 (*-darwin*): Add a large and boring stanza for
2733
	crosses to Darwin targets.
2734
	* configure: Regenerate.
2735
 
2736
2003-08-19  Petur Runolfsson  
2737
 
2738
	* include/ext/ropeimpl.h: #include  instead of 
2739
 
2740
2003-08-17  Phil Edwards  
2741
 
2742
	* configure.ac:  GCC_NO_EXECUTABLES was supposed to be commented
2743
	in the patch from 3 minutes ago.  Boy, is my face red.
2744
	* configure:  At least I remembered to regenerate this.
2745
 
2746
2003-08-17  Phil Edwards  
2747
 
2748
	* acinclude.m4 (GLIBCXX_EXPORT_INCLUDES):  Remove LIBMATH_INCLUDES
2749
	and LIBSUPCXX_INCLUDES.  Re-purpose TOPLEVEL_INCLUDES to refer to
2750
	things from the top level.
2751
	* configure.ac (GLIBCXX_IS_NATIVE):  Determine earlier and re-order.
2752
	Comment out the conditionals for CANADIAN and GLIBCXX_BUILD_LIBMATH
2753
	(currently unused).  Strip the fake-VPATH shell fragment from
2754
	automake-generated rules, if present.
2755
	* linkage.m4:  Add comment.
2756
 
2757
	* fragment.am:  New file, containing factored-out common settings.
2758
	(AM_CPPFLAGS):  Absorb the deprecated INCLUDES variable contents.
2759
	* Makefile.am:  Include fragment.am.  Remove common variables.
2760
	* include/Makefile.am:  Likewise.
2761
	* libmath/Makefile.am:  Likewise.
2762
	* libsupc++/Makefile.am:  Likewise.
2763
	* po/Makefile.am:  Likewise.  Print rules during check.
2764
	* src/Makefile.am:  Likewise.
2765
	* testsuite/Makefile.am:  Likewise.
2766
 
2767
	* aclocal.m4, configure, Makefile.in, include/Makefile.in,
2768
	libmath/Makefile.in, libsupc++/Makefile.in, po/Makefile.in,
2769
	src/Makefile.in, testsuite/Makefile.in:  Regenerate.
2770
 
2771
2003-08-11  John Levon  
2772
 
2773
	* docs/html/ext/howto/guide.html (GLIBCXX_FORCE_NEW): Update
2774
	remaining places for the name change from GLIBCPP_FORCE_NEW
2775
	to GLIBCXX_FORCE_NEW
2776
 
2777
2003-08-11  Benjamin Kosnik  
2778
 
2779
	* include/bits/basic_ios.h: Remove *_iter typedefs, change num*
2780
	typedefs to num_*.
2781
	* include/bits/basic_ios.tcc: Same.
2782
	* include/bits/istream.tcc: Same.
2783
	* include/bits/locale_facets.h: Same.
2784
	* include/bits/ostream.tcc: Same.
2785
	* include/std/std_istream.h: Same.
2786
	* include/std/std_ostream.h: Same.
2787
	* testsuite/26_numerics/complex_inserters_extractors.cc: Fix.
2788
 
2789
	* include/ext/rope: Remove build warning.
2790
 
2791
2003-08-11  Andreas Jaeger  
2792
 
2793
	* include/Makefile.am (stamp-c_base): Add dependency on stamp-bits
2794
	to make SMP-safe.
2795
	* include/Makefile.in: Regenerated.
2796
 
2797
2003-08-11  Phil Edwards  
2798
 
2799
	* acinclude.m4 (GLIBCXX_CONFIGURE):  Unprecious CC and CFLAGS
2800
	when calling AC_PROG_CC.
2801
	* aclocal.m4, configure:  Regenerate.
2802
 
2803
2003-08-11  Phil Edwards  
2804
 
2805
	* acinclude.m4:  Properly quote variable which will be expanded
2806
	inside makefiles.  Use CXX instead of CC to extract compiler info.
2807
	* configure.ac (AC_INIT):  Use the new 4-arg form to finally get the
2808
	correct form in PACKAGE.
2809
	* aclocal.m4, configure:  Regenerate.
2810
 
2811
2003-08-08  Benjamin Kosnik  
2812
 
2813
	* testsuite/Makefile.am (check-abi): Change libstdc++-v3 to libstdc++.
2814
	(check-abi-verbose): Same.
2815
	* testsuite/testsuite_performance.h (report_performance): Same.
2816
 
2817
2003-08-08  Loren J. Rittle  
2818
 
2819
	* testsuite/testsuite_performance.h (__FreeBSD__): Add fake mallinfo.
2820
 
2821
2003-08-07  Doug Gregor  
2822
 
2823
	* include/bits/char_traits.h (char_traits::not_eof): Match operand
2824
	types in ? :.
2825
 
2826
2003-08-07  Bernardo Innocenti  
2827
 
2828
	PR libstdc++/11784
2829
	* libstdc++-v3/config/cpu/m68k/atomicity.h (__exchange_and_add):
2830
	Replace variants with new BSET-based version.
2831
 
2832
2003-08-07  Carlo Wood  
2833
 
2834
	* include/bits/demangle.h: Do not use cctype functions that depend
2835
	on locale.
2836
 
2837
2003-08-05  Phil Edwards  
2838
 
2839
	* configure.in:  Rename...
2840
	* configure.ac:  ...to this.
2841
	* docs/html/17_intro/porting.texi:  Update name.
2842
 
2843
	* docs/html/17_intro/porting.html:  Regenerate.
2844
	* config.h.in, Makefile.in, include/Makefile.in, libmath/Makefile.in,
2845
	libsupc++/Makefile.in, po/Makefile.in, src/Makefile.in,
2846
	testsuite/Makefile.in:  Regenerate (picks up new dependancy).
2847
 
2848
2003-08-05  Phil Edwards  
2849
 
2850
	* acinclude.m4 (GLIBCXX_ENABLE_SJLJ_EXCEPTIONS):  Put down the crack
2851
	pipe, open the window to let out the fumes, redo the option-handling
2852
	logic to properly execute the detection test.
2853
	* aclocal.m4, configure:  Regenerate.
2854
 
2855
2003-08-04  Phil Edwards  
2856
 
2857
	Convert to new autotools.
2858
	* acconfig.h:  Update with correct names.
2859
	* configure.host (ATOMICITYH):  Rename to atomicity_include_dir.
2860
	(qnx6.[12]*):  'q' comes before 's', not after 'w'.
2861
	* configure.in:  Update.  Split hardcoded cross-configury settings
2862
	out to...
2863
	* crossconfig.m4:  ...here.  New file.  Contents untouched.
2864
	* acinclude.m4:  Reorganize and rewrite as needed.  Split large
2865
	chunks out to...
2866
	* linkage.m4:  ...here.  New file.  Math and stdlib linkage tests.
2867
	Contents untouched.
2868
	* scripts/testsuite_flags.in:  Update.
2869
 
2870
	* Makefile.am:  Remove unneeded AUTOMAKE_OPTIONS settings and other
2871
	variables (already generated by automake).
2872
	* include/Makefile.am:  Ditto.
2873
	* libmath/Makefile.am:  Ditto.
2874
	* libsupc++/Makefile.am:  Ditto.
2875
	* po/Makefile.am:  Ditto.
2876
	* src/Makefile.am:  Ditto.
2877
 
2878
	* aclocal.m4:  Regenerate using new versions.
2879
	* config.h.in:  Ditto.
2880
	* configure:  Ditto.
2881
	* Makefile.in:  Ditto.
2882
	* include/Makefile.in:  Ditto.
2883
	* libmath/Makefile.in:  Ditto.
2884
	* libsupc++/Makefile.in:  Ditto.
2885
	* po/Makefile.in:  Ditto.
2886
	* src/Makefile.in:  Ditto.
2887
	* testsuite/Makefile.in:  Ditto.
2888
 
2889
2003-08-04  Phil Edwards  
2890
 
2891
	* po/libstdc++.pot:  Re-extract/regenerate.
2892
 
2893
2003-08-04  Phil Edwards  
2894
 
2895
	* testsuite/Makefile.am (DEJATOOL,EXPECT,RUNTEST,RUNTESTFLAGS):
2896
	Remove unneeded variable assignments.  Leave them for automake.
2897
	* testsuite/lib/libstdc++-v3.exp:  Rename...
2898
	* testsuite/lib/libstdc++.exp:  ...to this.  Adjust function names
2899
	accordingly.
2900
	* testsuite/libstdc++-v3.dg/dg.exp:  Rename...
2901
	* testsuite/libstdc++-dg/normal.exp:  ...to this.  Adjust function
2902
	names accordingly.
2903
 
2904
2003-08-04  Phil Edwards  
2905
 
2906
	* docs/doxygen/guide.html:  run_doxygen uses bash.
2907
	* docs/doxygen/mainpage.html:  We'll be shipping tag files.
2908
	* docs/doxygen/run_doxygen:  Tweaks and improvements.
2909
	* docs/doxygen/user.cfg.in:  Set GENERATE_TAGFILE.
2910
	* docs/html/install.html:  Update autoconf/automake requirements.
2911
	* docs/html/test.html:  Add section describing DejaGNU support.
2912
	* docs/html/17_intro/confdeps.dot:  New file, generates...
2913
	* docs/html/17_intro/confdeps.png:  ...this new file.
2914
	* docs/html/Makefile:  Generated here.
2915
	* docs/html/17_intro/configury.html:  New file.
2916
 
2917
2003-07-31  Phil Edwards  
2918
 
2919
	* testsuite/lib/libstdc++-v3-dg.exp:  Rename...
2920
	* testsuite/lib/libstdc++-v3.exp:  ...to this.
2921
	* testsuite/libstdc++-v3.dg/dg.exp:  No special case needed now.
2922
 
2923
2003-07-31  Doug Gregor  
2924
 
2925
	Add user specialization tests.
2926
	* testsuite/23_containers/deque/1.cc: New.
2927
	* testsuite/23_containers/list/1.cc: New.
2928
	* testsuite/23_containers/map/1.cc: New.
2929
	* testsuite/23_containers/multimap/1.cc: New.
2930
	* testsuite/23_containers/multiset/1.cc: New.
2931
	* testsuite/23_containers/set/1.cc: New.
2932
	* testsuite/23_containers/vector/1.cc: New.
2933
 
2934
2003-07-31  Benjamin Kosnik  
2935
 
2936
	Reshuffle 23_containers testsuite.
2937
	* 23_containers/adaptors.cc, bitset_ctor.cc,bitset_members.cc,
2938
	bitset_shift.cc, deque_ctor.cc, deque_operators.cc,
2939
	list_capacity.cc, list_ctor.cc, list_modifiers.cc, list_operators.cc,
2940
	map_insert.cc, map_operators.cc, map_operators_neg.cc, multiset.cc,
2941
	set_operators_neg.cc, vector_bool.cc, vector_capacity.cc,
2942
	vector_ctor.cc, vector_element_access.cc, vector_modifiers.cc,
2943
	vector_resize.cc: Split into...
2944
	* 23_containers/bitset/cons/1.cc: New.
2945
	* 23_containers/bitset/cons/6282.cc: New.
2946
	* 23_containers/bitset/count/6124.cc: New.
2947
	* 23_containers/bitset/operations/1.cc: New.
2948
	* 23_containers/bitset/operations/2.cc: New.
2949
	* 23_containers/bitset/test/1.cc: New.
2950
	* 23_containers/bitset/to_ulong/1.cc: New.
2951
	* 23_containers/deque/cons/1.cc: New.
2952
	* 23_containers/deque/cons/2.cc: New.
2953
	* 23_containers/deque/operators/1.cc: New.
2954
	* 23_containers/list/capacity/1.cc: New.
2955
	* 23_containers/list/cons/1.cc: New.
2956
	* 23_containers/list/cons/2.cc: New.
2957
	* 23_containers/list/cons/3.cc: New.
2958
	* 23_containers/list/cons/4.cc: New.
2959
	* 23_containers/list/cons/5.cc: New.
2960
	* 23_containers/list/cons/6.cc: New.
2961
	* 23_containers/list/cons/7.cc: New.
2962
	* 23_containers/list/cons/8.cc: New.
2963
	* 23_containers/list/cons/9.cc: New.
2964
	* 23_containers/list/modifiers/1.cc: New.
2965
	* 23_containers/list/modifiers/2.cc: New.
2966
	* 23_containers/list/modifiers/3.cc: New.
2967
	* 23_containers/list/operators/1.cc: New.
2968
	* 23_containers/list/operators/2.cc: New.
2969
	* 23_containers/list/operators/3.cc: New.
2970
	* 23_containers/list/operators/4.cc: New.
2971
	* 23_containers/map/insert/1.cc: New.
2972
	* 23_containers/map/operators/1.cc: New.
2973
	* 23_containers/map/operators/1_neg.cc: New.
2974
	* 23_containers/multiset/insert/1.cc: New.
2975
	* 23_containers/priority_queue/members/7161.cc: New.
2976
	* 23_containers/queue/members/7157.cc: New.
2977
	* 23_containers/set/operators/1_neg.cc: New.
2978
	* 23_containers/stack/members/7158.cc: New.
2979
	* 23_containers/vector/bool/1.cc: New.
2980
	* 23_containers/vector/bool/6886.cc: New.
2981
	* 23_containers/vector/capacity/1.cc: New.
2982
	* 23_containers/vector/capacity/2.cc: New.
2983
	* 23_containers/vector/capacity/8230.cc: New.
2984
	* 23_containers/vector/cons/1.cc: New.
2985
	* 23_containers/vector/cons/2.cc: New.
2986
	* 23_containers/vector/cons/3.cc: New.
2987
	* 23_containers/vector/cons/4.cc: New.
2988
	* 23_containers/vector/cons/6513.cc: New.
2989
	* 23_containers/vector/element_access/1.cc: New.
2990
	* 23_containers/vector/modifiers/1.cc: New.
2991
	* 23_containers/vector/modifiers/2.cc: New.
2992
	* 23_containers/vector/resize/1.cc: New.
2993
 
2994
2003-07-31  Rainer Orth  
2995
 
2996
	* testsuite/thread/pthread1.cc: Add alpha*-*-osf* to dg-do run,
2997
	dg-options.
2998
	* testsuite/thread/pthread2.cc: Likewise.
2999
	* testsuite/thread/pthread3.cc: Likewise.
3000
	* testsuite/thread/pthread4.cc: Likewise.
3001
	* testsuite/thread/pthread5.cc: Likewise.
3002
	* testsuite/thread/pthread6.cc: Likewise.
3003
	* testsuite/thread/pthread7-rope.cc: Likewise.
3004
 
3005
2003-07-30  Phil Edwards  
3006
 
3007
	* include/bits/c++config:  Partial reversion (comment placement) of
3008
	previous patch.
3009
 
3010
2003-07-30  Benjamin Kosnik  
3011
 
3012
	* include/bits/c++config (_GLIBCXX_FULLY_COMPLIANT_HEADERS): Remove.
3013
	(_GLIBCXX_NO_TEMPLATE_EXPORT): To _GLIBCXX_EXPORT_TEMPLATE.
3014
	(_GLIBCXX_AT_AT): Remove.
3015
	(__USE_MALLOC): Remove.
3016
	* include/std/std_fstream.h: Modify.
3017
	* include/bits/basic_ios.h: Same.
3018
	* include/bits/valarray_array.h: Same.
3019
	* include/c_std/std_cmath.h: Same.
3020
	* include/c_std/cmath.tcc: Same.
3021
	* include/std/std_vector.h: Same.
3022
	* include/std/std_string.h: Same.
3023
	* include/std/std_stack.h: Same.
3024
	* include/std/std_queue.h: Same.
3025
	* include/std/std_list.h: Same.
3026
	* include/std/std_deque.h: Same.
3027
	* include/std/std_streambuf.h: Same.
3028
	* include/std/std_sstream.h: Same.
3029
	* include/std/std_ostream.h: Same.
3030
	* include/std/std_istream.h: Same.
3031
	* include/bits/valarray_array.tcc: Same, format.
3032
 
3033
	* include/c/std_cctype.h: Fix include guards.
3034
	* include/c/std_cerrno.h: Same.
3035
	* include/c/std_cfloat.h: Same.
3036
	* include/c/std_climits.h: Same.
3037
	* include/c/std_clocale.h: Same.
3038
	* include/c/std_cmath.h: Same.
3039
	* include/c/std_csetjmp.h: Same.
3040
	* include/c/std_csignal.h: Same.
3041
	* include/c/std_cstdarg.h: Same.
3042
	* include/c/std_cstddef.h: Same.
3043
	* include/c/std_cstdio.h: Same.
3044
	* include/c/std_cstdlib.h: Same.
3045
	* include/c/std_cstring.h: Same.
3046
	* include/c/std_ctime.h: Same.
3047
	* include/c/std_cwchar.h: Same.
3048
	* include/c/std_cwctype.h: Same.
3049
	* include/c_std/cmath.tcc: Same.
3050
	* include/c_std/std_cmath.h: Same.
3051
 
3052
2003-07-30  Gawain Bolton  
3053
 
3054
	PR libstdc++/11504.
3055
	* include/bits/stl_tree.h: Replace C-style casts with C++-style
3056
	casts.  Changes to avoid casting away constness.  Eliminate
3057
	_Rb_tree_base_iterator class.  Change _Rb_tree_iterator to use
3058
	initialization lists.  Move out implementation of __black_count()
3059
	to...
3060
	* src/stl_tree.cc: ...here and rename _Rb_tree_black_count().
3061
	Rename_Rb_tree_base_iterator::_M_increment() to
3062
	_Rb_tree_increment and _Rb_tree_base_iterator::_M_decrement() to
3063
	_Rb_tree_decrement.
3064
	* config/linker-map.gnu: Add and change symbols here.
3065
 
3066
2003-07-30  Jonathan Wakely  
3067
 
3068
	* docs/html/22_locale/howto.html: Use locale::classic() instead
3069
	of locale("C").
3070
 
3071
2003-07-28  Benjamin Kosnik  
3072
 
3073
	* testsuite/testsuite_hooks.h: Remove list include.
3074
	(func_callback): Define as unique type, not std::list.
3075
	Change DEBUG_ASSERT to _GLIBCXX_ASSERT.
3076
	* testsuite/libstdc++-v3.dg/dg.exp: Same.
3077
	* testsuite/lib/libstdc++-v3-dg.exp (libstdc++-v3-init): Same.
3078
	* testsuite/23_containers/bitset_ctor.cc:
3079
	* testsuite/17_intro/header_ciso646.cc: Remove DEBUG_ASSERT.
3080
	* testsuite/18_support/numeric_limits.cc: Same.
3081
	* testsuite/21_strings/basic_string/append/char/1.cc: Same.
3082
	* testsuite/21_strings/basic_string/append/wchar_t/1.cc: Same.
3083
	* testsuite/21_strings/basic_string/compare/char/1.cc: Same.
3084
	* testsuite/21_strings/basic_string/compare/wchar_t/1.cc: Same.
3085
	* testsuite/21_strings/basic_string/element_access/char/1.cc: Same.
3086
	* testsuite/21_strings/basic_string/element_access/char/2.cc: Same.
3087
	* testsuite/21_strings/basic_string/element_access/char/3.cc: Same.
3088
	* testsuite/21_strings/basic_string/element_access/wchar_t/1.cc: Same.
3089
	* testsuite/21_strings/basic_string/element_access/wchar_t/2.cc: Same.
3090
	* testsuite/21_strings/basic_string/element_access/wchar_t/3.cc: Same.
3091
	* testsuite/21_strings/basic_string/find/char/1.cc: Same.
3092
	* testsuite/21_strings/basic_string/find/char/2.cc: Same.
3093
	* testsuite/21_strings/basic_string/find/char/3.cc: Same.
3094
	* testsuite/21_strings/basic_string/find/wchar_t/1.cc: Same.
3095
	* testsuite/21_strings/basic_string/find/wchar_t/2.cc: Same.
3096
	* testsuite/21_strings/basic_string/find/wchar_t/3.cc: Same.
3097
	* testsuite/21_strings/basic_string/insert/char/1.cc: Same.
3098
	* testsuite/21_strings/basic_string/insert/char/2.cc: Same.
3099
	* testsuite/21_strings/basic_string/insert/wchar_t/1.cc: Same.
3100
	* testsuite/21_strings/basic_string/insert/wchar_t/2.cc: Same.
3101
	* testsuite/21_strings/basic_string/inserters_extractors/char/1.cc:
3102
	* testsuite/21_strings/basic_string/inserters_extractors/char/4.cc:
3103
	* testsuite/21_strings/basic_string/inserters_extractors/char/5.cc:
3104
	* testsuite/21_strings/basic_string/inserters_extractors/char/6.cc:
3105
	* testsuite/21_strings/basic_string/inserters_extractors/char/7.cc:
3106
	* testsuite/21_strings/basic_string/inserters_extractors/wchar_t/1.cc:
3107
	* testsuite/21_strings/basic_string/inserters_extractors/wchar_t/4.cc:
3108
	* testsuite/21_strings/basic_string/inserters_extractors/wchar_t/5.cc:
3109
	* testsuite/21_strings/basic_string/inserters_extractors/wchar_t/6.cc:
3110
	* testsuite/21_strings/basic_string/inserters_extractors/wchar_t/7.cc:
3111
	* testsuite/21_strings/basic_string/operators/char/1.cc: Same.
3112
	* testsuite/21_strings/basic_string/operators/char/2.cc: Same.
3113
	* testsuite/21_strings/basic_string/operators/wchar_t/1.cc: Same.
3114
	* testsuite/21_strings/basic_string/operators/wchar_t/2.cc: Same.
3115
	* testsuite/21_strings/basic_string/replace/char/1.cc: Same.
3116
	* testsuite/21_strings/basic_string/replace/wchar_t/1.cc: Same.
3117
	* testsuite/21_strings/basic_string/rfind/char/1.cc: Same.
3118
	* testsuite/21_strings/basic_string/rfind/char/2.cc: Same.
3119
	* testsuite/21_strings/basic_string/rfind/char/3.cc: Same.
3120
	* testsuite/21_strings/basic_string/rfind/wchar_t/1.cc: Same.
3121
	* testsuite/21_strings/basic_string/rfind/wchar_t/2.cc: Same.
3122
	* testsuite/21_strings/basic_string/rfind/wchar_t/3.cc: Same.
3123
	* testsuite/21_strings/basic_string/substr/char/1.cc: Same.
3124
	* testsuite/21_strings/basic_string/substr/wchar_t/1.cc: Same.
3125
	* testsuite/23_containers/bitset_ctor.cc: Same.
3126
	* testsuite/23_containers/bitset_shift.cc: Same.
3127
	* testsuite/23_containers/vector_ctor.cc: Same.
3128
	* testsuite/23_containers/vector_element_access.cc: Same.
3129
	* testsuite/24_iterators/istreambuf_iterator.cc: Same.
3130
	* testsuite/24_iterators/iterator.cc: Same.
3131
	* testsuite/24_iterators/ostreambuf_iterator.cc: Same.
3132
	* testsuite/25_algorithms/lower_bound.cc: Same.
3133
	* testsuite/26_numerics/complex_inserters_extractors.cc: Same.
3134
	* testsuite/27_io/basic_istream/extractors_arithmetic/char/01.cc: Same.
3135
	* testsuite/27_io/basic_istream/extractors_arithmetic/char/02.cc: Same.
3136
	* testsuite/27_io/basic_istream/extractors_arithmetic/char/03.cc: Same.
3137
	* testsuite/27_io/basic_istream/extractors_arithmetic/char/06.cc: Same.
3138
	* testsuite/27_io/basic_istream/extractors_arithmetic/char/07.cc: Same.
3139
	* testsuite/27_io/basic_istream/extractors_arithmetic/char/08.cc: Same.
3140
	* testsuite/27_io/basic_istream/extractors_arithmetic/char/09.cc: Same.
3141
	* testsuite/27_io/basic_istream/extractors_arithmetic/char/10.cc: Same.
3142
	* testsuite/27_io/basic_ostream/inserters_arithmetic/char/1.cc: Same.
3143
	* testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/1.cc:
3144
	Same.
3145
 
3146
2003-07-28  Phil Edwards  
3147
 
3148
	* docs/doxygen/user.cfg.in, docs/html/abi.txt, docs/html/debug.html,
3149
	docs/html/test.html, docs/html/17_intro/headers_cc.txt,
3150
	docs/html/17_intro/howto.html, docs/html/ext/howto.html:  Change
3151
	GLIBCPP to GLIBCXX (and explain as needed).
3152
 
3153
2003-07-28  Phil Edwards  
3154
 
3155
	* README:  Update.
3156
 
3157
2003-07-28  Phil Edwards  
3158
 
3159
	* testsuite/22_locale/messages/members/char/1.cc,
3160
	testsuite/22_locale/messages/members/char/2.cc,
3161
	testsuite/22_locale/messages/members/char/3.cc,
3162
	testsuite/22_locale/messages_byname/1.cc:  Update comment regarding
3163
	the origin of LOCALEDIR.
3164
	* testsuite/lib/libstdc++-v3.exp:  New file.
3165
 
3166
2003-07-25  Benjamin Kosnik  
3167
 
3168
	* include/bits/char_traits.h: Update copyright, tweak.
3169
	* testsuite/ext/pod_char_traits.cc: Explicitly qualify namespace
3170
	std types.
3171
 
3172
2003-07-24  Matt Austern  
3173
 
3174
	* /include/bits/char_traits.h (class char_traits): Put all the
3175
	real work into the new class template __gnu_cxx::char_traits.
3176
	Gave generic definitions for member functions.  Types are taken
3177
	from the new class template __gnu_cxx::_Char_types.
3178
	* testsuite/21_strings/char_traits/requirements/short/1.cc: New
3179
	file.  Test of std::char_traits, which serves as a test of
3180
	the char_traits primary template.
3181
 
3182
2003-07-24  Benjamin Kosnik  
3183
 
3184
	* testsuite/*: Change __gnu_cxx_test to __gnu_test.
3185
 
3186
2003-07-24  Nathan Myers  
3187
 
3188
	* testsuite/23_containers/map_operators.cc: Conform to
3189
	container requirement as value must be Assignable.
3190
 
3191
2003-07-23  Alexandre Oliva  
3192
 
3193
	* acinclude.m4 (GLIBCXX_ENABLE_PCH): Rework test such that it
3194
	tests not only generation of pch files, but also their use.
3195
	* aclocal.m4, configure: Rebuilt.
3196
 
3197
2003-07-23  Steve Ellcey  
3198
 
3199
	* config/cpu/hppa/atomicity.h: Change
3200
	_GLIBCXX_INST_GLIBCXX_ATOMICITY_LOCK to _GLIBCXX_INST_ATOMICITY_LOCK
3201
	to match misc-inst.cc
3202
 
3203
2003-07-23  Steve Ellcey  
3204
 
3205
	* include/c_std/cmath.tcc: Use _GLIBCXX_ prefix on file guard.
3206
	* include/c_std/std_cctype.h: Ditto.
3207
	* include/c_std/std_cerrno.h: Ditto.
3208
	* include/c_std/std_cfloat.h: Ditto.
3209
	* include/c_std/std_climits.h: Ditto.
3210
	* include/c_std/std_clocale.h: Ditto.
3211
	* include/c_std/std_cmath.h: Ditto.
3212
	* include/c_std/std_csetjmp.h: Ditto.
3213
	* include/c_std/std_csignal.h: Ditto.
3214
	* include/c_std/std_cstdarg.h: Ditto.
3215
	* include/c_std/std_cstddef.h: Ditto.
3216
	* include/c_std/std_cstdio.h: Ditto.
3217
	* include/c_std/std_cstdlib.h: Ditto.
3218
	* include/c_std/std_cstring.h: Ditto.
3219
	* include/c_std/std_ctime.h: Ditto.
3220
	* include/c_std/std_cwchar.h: Ditto.
3221
	* include/c_std/std_cwctype.h: Ditto.
3222
	* include/std/std_algorithm.h: Ditto.
3223
	* include/std/std_bitset.h: Ditto.
3224
	* include/std/std_complex.h: Ditto.
3225
	* include/std/std_deque.h: Ditto.
3226
	* include/std/std_fstream.h: Ditto.
3227
	* include/std/std_functional.h: Ditto.
3228
	* include/std/std_iomanip.h: Ditto.
3229
	* include/std/std_ios.h: Ditto.
3230
	* include/std/std_iosfwd.h: Ditto.
3231
	* include/std/std_iostream.h: Ditto.
3232
	* include/std/std_istream.h: Ditto.
3233
	* include/std/std_iterator.h: Ditto.
3234
	* include/std/std_limits.h: Ditto.
3235
	* include/std/std_list.h: Ditto.
3236
	* include/std/std_locale.h: Ditto.
3237
	* include/std/std_map.h: Ditto.
3238
	* include/std/std_memory.h: Ditto.
3239
	* include/std/std_numeric.h: Ditto.
3240
	* include/std/std_ostream.h: Ditto.
3241
	* include/std/std_queue.h: Ditto.
3242
	* include/std/std_set.h: Ditto.
3243
	* include/std/std_sstream.h: Ditto.
3244
	* include/std/std_stack.h: Ditto.
3245
	* include/std/std_stdexcept.h: Ditto.
3246
	* include/std/std_streambuf.h: Ditto.
3247
	* include/std/std_string.h: Ditto.
3248
	* include/std/std_utility.h: Ditto.
3249
	* include/std/std_valarray.h: Ditto.
3250
	* include/std/std_vector.h: Ditto.
3251
 
3252
2003-07-22  Doug Gregor  
3253
 
3254
	* include/bits/basic_string.h (basic_string::insert): Deprecate
3255
	GNU extension.
3256
 
3257
2003-07-21  Benjamin Kosnik  
3258
 
3259
	* scripts/testsuite_flags.in (--build-includes): Remove extraneous
3260
	paths for libio.
3261
	* testsuite/27_io/basic_istream/sentry/char/3983-fstream.cc
3262
	(test03): Include typeinfo for bad_cast.
3263
	* testsuite/27_io/basic_ostream/sentry/char/3983-sstream.cc: Same.
3264
	* testsuite/27_io/basic_ostream/sentry/char/3983-fstream.cc: Same.
3265
	* testsuite/27_io/basic_istream/sentry/char/3983-sstream.cc: Same.
3266
 
3267
2003-07-21  Doug Gregor  
3268
 
3269
	* include/bits/boost_concept_check.h:
3270
	(_EqualityComparableConcept::__constraints): Remove != from the
3271
	list of constraints; it is not listed in Table 28 of the C++98
3272
	standard.
3273
 
3274
2003-07-18  Andreas Jaeger  
3275
 
3276
	* config/abi/sparc-linux-gnu/baseline_symbols.txt: New file.
3277
	* config/abi/mips-linux-gnu/baseline_symbols.txt: New file.
3278
	* config/abi/hppa-linux-gnu/baseline_symbols.txt: New file.
3279
	* config/abi/x86_64-linux-gnu/baseline_symbols.txt: Regenerated.
3280
 
3281
2003-07-17  Benjamin Kosnik  
3282
 
3283
	* config/linker-map.gnu: Add __moneypunct_cache, __timepunct_cache.
3284
	* config/locale/generic/messages_members.h: Tweaks.
3285
	* config/locale/generic/monetary_members.cc
3286
	(moneypunct::_M_initialize_moneypunct): Use cache.
3287
	(moneypunct::~moneypunct): Delete cache.
3288
	* config/locale/generic/time_members.cc:
3289
	(__timepunct::_M_initialize_timepunct): Use cache.
3290
	* config/locale/generic/time_members.h:
3291
	(__timepunct::~__timepunct): Delete cache.
3292
	(__timepunct::__timepunct): Set cache.
3293
	* config/locale/gnu/messages_members.h: Tweaks.
3294
	* config/locale/gnu/monetary_members.cc:
3295
	(moneypunct::_M_initialize_moneypunct): Use cache.
3296
	(moneypunct::~moneypunct): Delete cache.
3297
	* config/locale/gnu/time_members.cc:
3298
	(__timepunct::_M_initialize_timepunct): Use cache.
3299
	* config/locale/gnu/time_members.h:
3300
	(__timepunct::~__timepunct): Delete cache.
3301
	(__timepunct::__timepunct): Set cache.
3302
	* include/bits/locale_facets.h (__timepunct_cache): New.
3303
	(__moneypunct_cache): New.
3304
	* include/bits/locale_facets.tcc: Tweak.
3305
	* src/locale.cc (__timepunct::_S_timezones): Adjust for cache.
3306
	* src/locale-inst.cc: Instantiate caches.
3307
	* src/globals.cc: Add "C" caches.
3308
	* src/localename.cc: Use external "C" caches.
3309
 
3310
2003-07-17  Phil Edwards  
3311
 
3312
	* docs/doxygen/guide.html:  Fix typo.
3313
 
3314
2003-07-16  Benjamin Kosnik  
3315
 
3316
	* include/ext/pod_char_traits.h: Add state template argument.
3317
 
3318
2003-07-16  Benjamin Kosnik  
3319
 
3320
	* include/bits/locale_facets.h (__num_base::_S_atoms_in): Add -+xX.
3321
	(num_get::_M_convert_int): To _M_insert_int.
3322
	(num_get::_M_convert_float): To _M_insert_float.
3323
	* include/bits/locale_facets.tcc (num_get::_M_extract_float):
3324
	Use caches for ctype, num_get.
3325
	(num_get::_M_extract_int): Same.
3326
	(num_get::get(bool)): Same.
3327
	(__verify_grouping): Use size_t.
3328
	* src/locale-inst.cc: Update.
3329
	* src/locale.cc: Adjust _S_atoms_in.
3330
 
3331
2003-07-16  Phil Edwards  
3332
 
3333
	* docs/doxygen/mainpage.html:  Move building/writing instructions...
3334
	* docs/doxygen/guide.html:  ...to here.  New file.
3335
 
3336
2003-07-16  Jonathan Wakely  
3337
 
3338
	* docs/html/ext/howto.html: Update URL for SGI STL docs.
3339
	* docs/html/faq/index.html: Same.
3340
	* docs/html/faq/index.txt: Regenerate.
3341
 
3342
2003-07-16  Paolo Carlini  
3343
 
3344
	PR libstdc++/11528
3345
	* include/bits/locale_facets.tcc (money_get::do_get):
3346
	Strip only _leading_ zeros.
3347
	* testsuite/22_locale/money_get/get/char/11528.cc: Add.
3348
	* testsuite/22_locale/money_get/get/wchar_t/11528.cc: Add.
3349
 
3350
2003-07-16  Gerald Pfeifer  
3351
 
3352
	* include/ext/hash_map (class hash_multimap): Remove extra
3353
	semicolons from __glibcxx_class_requires3 entries.
3354
	* include/ext/hash_set (class hash_set): Ditto.
3355
	(class hash_multiset): Ditto.
3356
 
3357
2003-07-15  Petur Runolfsson  
3358
 
3359
	* include/bits/char_traits.h (char_traits::move):
3360
	Change last parameter from int_type to size_t.
3361
 
3362
2003-07-15  Jerry Quinn  
3363
 
3364
	* include/bits/stl_algo.h (includes, set_union, set_intersection,
3365
	set_difference, set_symmetric_difference, max_element, min_element,
3366
	next_permutation, prev_permutation, find_first_of, find_end):
3367
	Document.
3368
	* include/bits/stl_algobase.h (copy,copy_backward):  Clarify overlap
3369
	restrictions in docs.
3370
	* include/bits/stl_heap.h (push_heap, pop_heap, make_heap, sort_heap):
3371
	Document.
3372
	* docs/doxygen/doxygroups.cc (setoperations):  New group.
3373
 
3374
2003-07-15  Jerry Quinn  
3375
 
3376
	* include/bits/basic_string.h:  Document public functions.
3377
	* docs/doxygen/TODO:  Update c21 todo.
3378
 
3379
2003-07-15  Jerry Quinn  
3380
 
3381
	* include/bits/stl_list.h:  Document more functions.
3382
	* docs/doxygen/TODO:  Update c23 todo.
3383
 
3384
2003-07-14  Paolo Carlini  
3385
 
3386
	* config/locale/gnu/c_locale.h (__convert_from_v): One more
3387
	qualification.
3388
 
3389
2003-07-14  Paolo Carlini  
3390
 
3391
	* include/bits/stl_tempbuf.h: Qualify free with std::.
3392
	* src/locale.cc: Include , qualify getenv.
3393
 
3394
2003-07-14  Paolo Carlini  
3395
 
3396
	* config/locale/gnu/c_locale.h (__convert_from_v): Include
3397
	. Qualify names.
3398
	* config/locale/generic/c_locale.h (__convert_from_v): Ditto.
3399
 
3400
2003-07-14  Paolo Carlini  
3401
	    Nathan C. Myers  
3402
 
3403
	PR libstdc++/11378
3404
	* include/std/std_fstream.h (xsputn): Declare only.
3405
	* include/bits/fstream.tcc (xsputn): Define, optimize for the
3406
	always_noconv() case: when __n is sufficiently large flush
3407
	the buffer and issue a direct write, if possible combining the
3408
	two with writev in __basic_file<>::xsputn_2.
3409
	* config/io/basic_file_stdio.h (__basic_file<>::xsputn_2):
3410
	New, declare.
3411
	* config/io/basic_file_stdio.cc (__basic_file<>::xsputn_2):
3412
	Define.
3413
	* acinclude.m4 (GLIBCXX_CHECK_WRITE): New macro, checking for
3414
	the availability of writev in .
3415
	* configure.in: Call here.
3416
	* acconfig.h: Add undef for the corresponding symbol.
3417
	* aclocal.m4: Regenerate.
3418
	* configure: Regenerate.
3419
	* config.h.in: Regenerate.
3420
	* testsuite/27_io/basic_filebuf/setbuf/char/3.cc: Tweak.
3421
 
3422
	* include/std/std_fstream.h (sync): Constify a variable.
3423
 
3424
2003-07-14  Benjamin Kosnik  
3425
 
3426
	* testsuite/27_io/ios_base/cons/assign_neg.cc: Fix line numbers.
3427
	* testsuite/27_io/ios_base/cons/copy_neg.cc: Same.
3428
 
3429
2003-07-14  Gabriel Dos Reis  
3430
 
3431
	* config/locale/gnu/c_locale.h (__convert_from_v): Include
3432
	 and . Qualify names.
3433
 
3434
2003-07-13  Mark Mitchell  
3435
 
3436
	* config/locale/generic/c_locale.h: Include  and
3437
	.
3438
	* include/bits/boost_concept_check.h: Add this-> to unqualified
3439
	method calls.
3440
	* include/bits/deque.tcc: Likewise.
3441
	* include/bits/locale_facets.h : Likewise.
3442
	* include/bits/ostream.tcc: Likewise.
3443
	* include/bits/stl_algo.h: Likewise.
3444
	* include/bits/stl_bvector.h: Likewise.
3445
	* include/bits/stl_deque.h: Likewise.
3446
	* include/bits/stl_list.h: Likewise.
3447
	* include/bits/stl_tree.h: Likewise.
3448
	* include/bits/stl_vector.h: Likewise.
3449
	* include/bits/vector.tcc: Likewise.
3450
	* include/ext/rope: Likewise.
3451
	* include/ext/ropeimpl.h: Likewise.
3452
	* include/ext/stdio_filebuf.h: Likewise.
3453
 
3454
2003-07-11  Jerry Quinn  
3455
 
3456
	* include/bits/basic_ios.h (copyfmt): Document.
3457
	* include/bits/ios_base.h (event, event_callback, register_callback,
3458
	xalloc, iword, pword):  Document.
3459
	(imbue, ~ios_base): Update docs on callbacks.
3460
 
3461
2003-07-11  Phil Edwards  
3462
 
3463
	* acinclude.m4 (GLIBCC_ENABLE_SYMVERS):  Tweak comments.  Add
3464
	warning messages if the environment cannot support symbol versioning.
3465
	(port_specific_symbol_file):  It's plural, add an 's' on the end.
3466
	* configure.host:  Likewise.
3467
	* src/Makefile.am:  Likewise.
3468
	* config/linker-map.gnu:  Remove one semicolon, heh.
3469
	* scripts/extract_symvers:  Don't assume useful 'export' syntax.
3470
	Set LANG as well as LC_ALL for possibly-broken sort(1)s.
3471
	* aclocal.m4, configure, src/Makefile.in:  Regenerated.
3472
 
3473
2003-07-09  Benjamin Kosnik  
3474
 
3475
	* include/bits/locale_facets.tcc: Use function object for
3476
	__use_cache instead of template function. Partially specialize for
3477
	__numpunct<_CharT>.
3478
	* include/bits/locale_classes.h: Update friend declaration for
3479
	__use_cache.
3480
	(_M_install_cache): No throw exception specs.
3481
	* src/locale.cc: Remove __use_cache specializations.
3482
	* include/ext/pod_char_traits.h (length): Tweak.
3483
	* include/bits/locale_facets.h (__numpunct_cache): Remove
3484
	char_type typedef.
3485
	* testsuite/testsuite_hooks.h (pod_unsigned_int): Remove.
3486
	(pod_long): Remove.
3487
	* testsuite/22_locale/numpunct/members/char/cache_1.cc: New.
3488
	* testsuite/22_locale/numpunct/members/char/cache_2.cc: New.
3489
	* testsuite/22_locale/numpunct/members/wchar_t/cache_1.cc: New.
3490
	* testsuite/22_locale/numpunct/members/wchar_t/cache_2.cc: New.
3491
	* testsuite/22_locale/numpunct/members/pod/1.cc: New.
3492
	* testsuite/22_locale/numpunct/members/pod/2.cc: New.
3493
 
3494
2003-07-09  Jerry Quinn  
3495
 
3496
	* src/ios.cc (_M_grow_words):  Fix spelling.
3497
 
3498
2003-07-09  Gawain Bolton  
3499
 
3500
	* include/bits/stl_tree.h: Move larger member functions in
3501
	_Rb_tree_base_iterator and _Rb_tree_node to...
3502
	* src/stl_tree.cc: Here.
3503
	* src/Makefile.in: Add stl_tree.cc.
3504
	* src/Makefile.in: Regenerated.
3505
	* config/linker-map.gnu: Add symbols here.
3506
 
3507
2003-07-08  Benjamin Kosnik  
3508
 
3509
	* testsuite/ext/pod_char_traits.cc: New.
3510
	* include/ext/pod_char_traits.h: New.
3511
	* include/Makefile.am (ext_headers): Add pod_char_traits.h.
3512
	* include/Makefile.in: Regenerate.
3513
	* docs/html/21_strings/howto.html: Update.
3514
 
3515
2003-07-08  Gawain Bolton  
3516
 
3517
	* testsuite/performance/list_create_fill_sort.cc: New.
3518
 
3519
2003-07-08  Benjamin Kosnik  
3520
 
3521
	* config/locale/generic/numeric_members.cc: Correct type info.
3522
	* config/locale/gnu/numeric_members.cc: Same.
3523
	* include/bits/locale_facets.h: Same.
3524
 
3525
	* include/bits/char_traits.h: Correct spacing.
3526
 
3527
	* src/locale.cc: Wrap to 80 col.
3528
 
3529
2003-07-07  Paolo Carlini  
3530
 
3531
	* include/std/std_complex.h: Partially revert last
3532
	changes: cmath functions must not be qualified.
3533
 
3534
2003-07-06  Phil Edwards  
3535
 
3536
	* acinclude.m4 (GLIBCXX_ENABLE_SYMVERS):  Do not test for binutils
3537
	2.11 with globbing backport fix.
3538
	* aclocal.m4, configure:  Regenerated.
3539
 
3540
2003-07-06  Paolo Carlini  
3541
 
3542
	* include/std/std_fstream.h (xsputn): Don't call _M_destroy_pback:
3543
	if output is at all possible (!_M_reading), cannot be active.
3544
 
3545
	* include/std/std_fstream.h: Tweak comments to doxygen style.
3546
 
3547
2003-07-06  Paolo Carlini  
3548
 
3549
	* include/bits/locale_classes.h: Fully qualify standard
3550
	functions with std::, thus avoiding Koenig lookup.
3551
	* include/bits/locale_facets.tcc: Likewise.
3552
	* src/locale.cc: Likewise.
3553
	* src/localename.cc: Likewise.
3554
 
3555
2003-07-06  Phil Edwards  
3556
 
3557
	* include/bits/allocator_traits.h:  Fix doxygen markup.
3558
	* include/ext/mt_allocator.h:  Likewise.
3559
 
3560
2003-07-06  Phil Edwards  
3561
 
3562
	* testsuite/testsuite_hooks.h:  Guard against a missing unlink().
3563
 
3564
2003-07-05  Phil Edwards  
3565
 
3566
	* acinclude.m4 (GLIBCXX_ENABLE_SYMVERS):  Bump minimal version
3567
	requirement.  Add port_specific_symbol_file variable.
3568
	* configure.host:  Add docs for port_specific_symbol_file.
3569
	Clean up try_cpu block for x86.
3570
	* config/linker-map.gnu:  No more "last symbol can't have a
3571
	semicolon" kaka.  Add hook for port-specific symbols.
3572
	* src/Makefile.am:  Remove trailing whitespace.
3573
	(libstdc++-symbol.ver):  Detect the presence of port-specific
3574
	symbols, and add them accordingly.
3575
 
3576
	* docs/html/17_intro/porting.texi:  Bring up to date.
3577
 
3578
	* src/Makefile.in, aclocal.m4, configure,
3579
	docs/html/17_intro/porting.html:  Regenerated.
3580
 
3581
2003-07-05  Phil Edwards  
3582
 
3583
	* scripts/create_testsuite_files:  New file.
3584
	* testsuite/Makefile.am (all-local, check-performance):  Use it.
3585
	* testsuite/lib/libstdc++-v3-dg.exp (v3-computer-tests):  Remove.
3586
	* testsuite/Makefile.in:  Regenerated.
3587
 
3588
	* testsuite/performance/filebuf_sputc.cc:  Remove the temporary
3589
	files at the end.
3590
	* testsuite/performance/fstream_seek_write.cc:  Likewise.
3591
	* testsuite/performance/ofstream_insert_float.cc:  Likewise.
3592
	* testsuite/performance/ofstream_insert_int.cc:  Likewise.
3593
	* testsuite/abi_check.cc (main):  Nicer spacing in usage output.
3594
 
3595
2003-07-05  Gawain Bolton  
3596
 
3597
	* include/bits/stl_list.h: Performance and memory usage
3598
	improvements. In particular, the behaviour of the constructor and
3599
	destructor as the list header node is no longer dynamically
3600
	allocated/de-allocated.
3601
	* include/bits/list.tcc: Likewise.
3602
 
3603
2003-07-05  Paolo Carlini  
3604
 
3605
	* include/std/std_complex.h: Fully qualify standard
3606
	functions with std::, thus avoiding Koenig lookup.
3607
	* include/std/std_memory.h: Likewise.
3608
	* include/std/std_valarray.h: Likewise.
3609
 
3610
2003-07-05  Gawain Bolton  
3611
 
3612
	* include/bits/stl_tree.h: _Rb_tree_rebalance():  Add local
3613
	  variable for grandparent and use const
3614
 
3615
2003-07-05  David Billinghurst 
3616
 
3617
	* testsuite/27_io/basic_filebuf/close/char/4879.cc: xfail on cygwin
3618
	* testsuite/27_io/basic_filebuf/close/char/9964.cc: Ditto
3619
	* testsuite/27_io/basic_filebuf/open/char/9507.cc: Ditto
3620
 	* testsuite/27_io/basic_filebuf/showmanyc/char/9533-1.cc: Ditto
3621
	* testsuite/27_io/basic_filebuf/underflow/char/10097.cc: Ditto
3622
 	* testsuite/27_io/objects/char/7.cc: Ditto
3623
 	* testsuite/27_io/objects/char/9661-1.cc: Ditto
3624
 
3625
2003-07-05  Paolo Carlini  
3626
 
3627
	* include/std/std_bitset.h: Fully qualify standard
3628
	functions with std::, thus avoiding Koenig lookup.
3629
 
3630
	* include/std/std_fstream.h: Change comment to doxygen style.
3631
 
3632
2003-07-05  Phil Edwards  
3633
 
3634
	* include/std/std_limits.h:  More CPP->CXX changes.
3635
	* scripts/check_survey.in:  Likewise.
3636
 
3637
2003-07-04  Benjamin Kosnik  
3638
 
3639
	Move from CPP to CXX.
3640
	* include/bits/c++config: Move to GLIBCXX from GLIBCPP.
3641
	* testsuite/Makefile.am: Same.
3642
	* testsuite/Makefile.in: Regenerate.
3643
	* po/Makefile.am: Same.
3644
	* po/Makefile.in: Regenerate.
3645
	* libsupc++/Makefile.am: Same.
3646
	* libsupc++/Makefile.in: Regenerate.
3647
	* libmath/Makefile.am: Same.
3648
	* libmath/Makefile.in: Regenerate.
3649
	* include/Makefile.am: Same.
3650
	* include/Makefile.in: Regenerate.
3651
	* src/Makefile.am: Same.
3652
	* src/Makefile.in: Regenerate.
3653
	* acconfig.h: Same.
3654
	* configure.host: Same.
3655
	* configure.in: Same.
3656
	* configure: Regenerate.
3657
	* acinclude.m4: Same.
3658
	* aclocal.m4: Same.
3659
	* src: Change all files in this directory.
3660
	* testsuite: Same.
3661
	* include: Same, standardize include guards.
3662
	* config: Same.
3663
	* libsupc++: Same.
3664
 
3665
2003-07-04  Zack Weinberg  
3666
 
3667
	* testsuite/22_locale/collate/compare/wchar_t/2.cc
3668
	* testsuite/22_locale/collate/compare/wchar_t/wrapped_env.cc
3669
	* testsuite/22_locale/collate/compare/wchar_t/wrapped_locale.cc
3670
	* testsuite/22_locale/collate/hash/wchar_t/2.cc
3671
	* testsuite/22_locale/collate/hash/wchar_t/wrapped_env.cc
3672
	* testsuite/22_locale/collate/hash/wchar_t/wrapped_locale.cc
3673
	* testsuite/22_locale/collate/transform/wchar_t/2.cc
3674
	* testsuite/22_locale/collate/transform/wchar_t/wrapped_env.cc
3675
	* testsuite/22_locale/collate/transform/wchar_t/wrapped_locale.cc:
3676
	XFAIL on all targets.
3677
 
3678
2003-07-04  Benjamin Kosnik  
3679
 
3680
	* acinclude.m4 (GLIBCPP_ENABLE_PCH): Fix missed variable.
3681
	* aclocal.m4: Regenerate.
3682
	* configure: Regenerate.
3683
 
3684
2003-07-04  Jerry Quinn  
3685
 
3686
	* include/bits/locale_facets.tcc (__int_to_char): Move common case
3687
	to the top.
3688
 
3689
2003-07-04  Benjamin Kosnik  
3690
	    Petur Runolfsson  
3691
 
3692
	* config/io/basic_file_stdio.cc: Revert.
3693
 
3694
2003-07-04  Paolo Carlini  
3695
 
3696
	* include/bits/deque.tcc: Fully qualify standard
3697
	functions with std::, thus avoiding Koenig lookup.
3698
	* include/bits/gslice_array.h: Likewise.
3699
	* include/bits/indirect_array.h: Likewise.
3700
	* include/bits/list.tcc: Likewise.
3701
	* include/bits/mask_array.h: Likewise.
3702
	* include/bits/slice_array.h: Likewise.
3703
 
3704
2003-07-04  Gawain Bolton  
3705
 
3706
	* include/bits/stl_tree.h: Performance and memory usage
3707
	improvements.
3708
 
3709
2003-07-04  H.J. Lu 
3710
 
3711
	* Makefile.am: Replace PWD with PWD_COMMAND.
3712
	* Makefile.in: Regenerated.
3713
	* docs/html/Makefile: Likewise.
3714
 
3715
2003-07-04  Paolo Carlini  
3716
 
3717
	* include/bits/valarray_array.h: Fully qualify standard
3718
	functions with std::, thus avoiding Koenig lookup.
3719
	* include/bits/vector.tcc: Likewise.
3720
 
3721
2003-07-04  Benjamin Kosnik  
3722
 
3723
	* include/Makefile.am: Update target_ to host_.
3724
	* include/Makefile.in: Regenerate.
3725
	* src/Makefile.am: Same.
3726
	* src/Makefile.in: Regenerate.
3727
 
3728
	* config/os/gnu-linux/os_defines.h: Remove glibc-2.0 support.
3729
 
3730
2003-07-04  Benjamin Kosnik  
3731
 
3732
	* acinclude.m4 (GLIBCPP_ENABLE_DEBUG_FLAGS): To
3733
	--enable-libstdcxx-debug-flags.
3734
	(GLIBCPP_ENABLE_DEBUG_FLAGS): To --enable-libstdcxx-debug.
3735
	(GLIBCPP_ENABLE_PCH): To --enable-libstdcxx-pch.
3736
	* aclocal.m4: Regenerate.
3737
	* configure: Same.
3738
	* docs/html/configopts.html: Update.
3739
 
3740
2003-07-04  Paolo Carlini  
3741
 
3742
	Revert the fix for libstdc++/11378.
3743
 
3744
2003-07-04  Paolo Carlini  
3745
 
3746
	PR libstdc++/11378
3747
	* include/std/std_fstream.h (xsputn): In the unbuffered case,
3748
	provided always_noconv(), issue directly _M_file.xsputn.
3749
	* testsuite/performance/filebuf_unbuf_sputn.cc: New.
3750
 
3751
2003-07-04  Paolo Carlini  
3752
 
3753
	* include/bits/stl_list.h: Fully qualify standard
3754
	functions with std::, thus avoiding Koenig lookup.
3755
	* include/bits/stl_queue.h: Likewise.
3756
	* include/bits/stl_raw_storage_iter.h: Likewise.
3757
	* include/bits/stl_tempbuf.h: Likewise.
3758
	* include/bits/stl_tree.h: Likewise.
3759
	* include/bits/stl_uninitialized.h: Likewise.
3760
	* include/bits/stl_vector.h: Likewise.
3761
	* include/ext/rope: Change includes order.
3762
 
3763
2003-07-04  Benjamin Kosnik  
3764
 
3765
	* configure.host (fpos_include_dir): Fix.
3766
 
3767
2003-07-04  Paolo Carlini  
3768
 
3769
	* include/bits/stl_heap.h: Fully qualify standard
3770
	functions with std::, thus avoiding Koenig lookup.
3771
	* include/bits/stl_iterator_base_funcs.h: Likewise.
3772
 
3773
	* include/bits/stl_algo.h: Qualify __iterator_category too.
3774
	* include/bits/stl_algobase.h: Likewise.
3775
	* include/bits/stl_bvector.h: Likewise.
3776
 
3777
	* include/bits/stl_algo.h: Don't qualify the pair type.
3778
 
3779
2003-07-03  Benjamin Kosnik  
3780
 
3781
	* include/Makefile.am (target_headers): Add fpos.h
3782
	(bits_headers): Remove.
3783
	* include/Makefile.in: Regenerate.
3784
	* configure.in: Add FPOS_INC_SRCDIR, substitute it.
3785
	* configure: Regenerate.
3786
	* configure.host: Add fpos_include_dir.
3787
	* config/os/gnu-linux/fpos.h: New.
3788
	* config/os/generic/fpos.h: Add.
3789
	* include/bits/fpos.h: Remove.
3790
 
3791
	* config/io/c_io_stdio.h: Remove fpos_t typedef.
3792
 
3793
	* include/bits/fstream.tcc: Tweaks.
3794
	* include/std/std_fstream.h: Same.
3795
 
3796
	* testsuite/27_io/fpos/1.cc (test01): Uncomment. Move to...
3797
	* testsuite/27_io/fpos/mbstate_t/1.cc: ...here.
3798
	* testsuite/27_io/fpos/mbstate_t/2.cc: Same.
3799
	* testsuite/27_io/fpos/mbstate_t/3.cc: Same.
3800
	* testsuite/27_io/fpos/1.cc: New.
3801
 
3802
2003-07-03  Benjamin Kosnik  
3803
	    Petur Runolfsson  
3804
 
3805
	* include/std/std_streambuf.h: Remove _M_pos.
3806
	* config/io/basic_file_stdio.h: Use seekpos instead of seekoff.
3807
	* config/io/basic_file_stdio.cc: Same, use fseek instead of lseek,
3808
	use fread/fwrite instead of read/write.
3809
	* testsuite/27_io/basic_filebuf/showmanyc/char/9533-2.cc: Fix.
3810
	* testsuite/27_io/basic_filebuf/sputn/char/9339.cc: Close filebufs
3811
	before reading again.
3812
	* testsuite/27_io/objects/char/6.cc: Tweak.
3813
 
3814
2003-07-03  David Edelsohn  
3815
 
3816
	* testsuite/22_locale/num_put/put/char/7.cc: Guard with
3817
	_GLIBCPP_USE_WCHAR_T.
3818
 
3819
2003-07-02  Paolo Carlini  
3820
 
3821
	* include/bits/basic_string.tcc (_M_replace_aux): Constify
3822
	__n1 and __off1.
3823
 
3824
2003-07-02  Paolo Carlini  
3825
 
3826
	* include/bits/stl_bvector.h: Fully qualify standard
3827
	functions with std::, thus avoiding Koenig lookup.
3828
	* include/bits/stl_construct.h: Likewise.
3829
	* include/bits/stl_deque.h: Likewise.
3830
 
3831
2003-07-02  Paolo Carlini  
3832
 
3833
	* testsuite/22_locale/num_put/put/char/7.cc: Include
3834
	, tweak.
3835
	* testsuite/22_locale/num_put/put/wchar_t/7.cc: Likewise.
3836
 
3837
2003-07-01  Phil Edwards  
3838
 
3839
	* testsuite/Makefile.am (AM_MAKEFLAGS):  Set to -j1 (affects
3840
	check* targets, but not libs/programs).
3841
	* testsuite/Makefile.in:  Regenerate.
3842
 
3843
2003-07-01  Roger Sayle  
3844
 
3845
	* acinclude.m4 (GLIBCPP_CHECK_STDLIB_SUPPORT): Fix typo in CXXFLAGS.
3846
	(GLIBCPP_CHECK_MATH_SUPPORT): Likewise.
3847
	* aclocal.m4: Regenerate.
3848
	* configure: Regenerate.
3849
 
3850
2003-07-01  Benjamin Kosnik  
3851
 
3852
	* acinclude.m4 (GLIBCPP_ENABLE_PCH): Fix obvious error.
3853
	* aclocal.m4: Regenerated.
3854
	* configure: Regenerated.
3855
 
3856
2003-07-01  Paolo Carlini  
3857
 
3858
	PR libstdc++/11389
3859
	* include/bits/fstream.tcc (underflow): For encoding() == 0
3860
	don't read more than __buflen chars.
3861
	* testsuite/27_io/basic_filebuf/underflow/wchar_t/11389-1.cc: New.
3862
	* testsuite/27_io/basic_filebuf/underflow/wchar_t/11389-2.cc: New.
3863
	* testsuite/27_io/basic_filebuf/underflow/wchar_t/11389-3.cc: New.
3864
	* testsuite/27_io/basic_filebuf/underflow/wchar_t/11389-4.cc: New.
3865
 
3866
2003-07-01  Jerry Quinn  
3867
 
3868
	* 22_locale/num_put/put/char/7.cc: New.
3869
	* 22_locale/num_put/put/wchar_t/7.cc: New.
3870
 
3871
2003-06-30  Jerry Quinn  
3872
 
3873
	* src/locale.cc (__use_cache): Revert previous relocation.
3874
	* include/bits/locale_facets.tcc (__use_cache): Ditto.
3875
 
3876
2003-06-30  Benjamin Kosnik  
3877
 
3878
	* 27_io/basic_filebuf/seekoff/char/1-in.cc: New.
3879
	* 27_io/basic_filebuf/seekoff/char/1-io.cc: New.
3880
	* 27_io/basic_filebuf/seekoff/char/1-out.cc: New.
3881
	* 27_io/basic_filebuf/seekoff/char/2-in.cc: New.
3882
	* 27_io/basic_filebuf/seekoff/char/2-io.cc: New.
3883
	* 27_io/basic_filebuf/seekoff/char/2-out.cc: New.
3884
	* 27_io/basic_filebuf/seekoff/char/2.cc: Remove.
3885
	* 27_io/basic_filebuf/seekoff/char/3-in.cc: New.
3886
	* 27_io/basic_filebuf/seekoff/char/3-io.cc: Change.
3887
	* 27_io/basic_filebuf/seekoff/char/3-out.cc: New.
3888
	* 27_io/basic_filebuf/seekoff/char/4-io.cc: Remove.
3889
	* 27_io/basic_filebuf/seekpos/char/1-in.cc: New.
3890
	* 27_io/basic_filebuf/seekpos/char/1-io.cc: New.
3891
	* 27_io/basic_filebuf/seekpos/char/1-out.cc: New.
3892
	* 27_io/basic_filebuf/seekpos/char/2-in.cc: New.
3893
	* 27_io/basic_filebuf/seekpos/char/2-io.cc: New.
3894
	* 27_io/basic_filebuf/seekpos/char/2-out.cc: New.
3895
	* 27_io/basic_filebuf/seekpos/char/2.cc: Change.
3896
	* 27_io/basic_filebuf/seekpos/char/3-in.cc: New.
3897
	* 27_io/basic_filebuf/seekpos/char/3-io.cc: Remove.
3898
	* 27_io/basic_filebuf/seekpos/char/3-out.cc: New.
3899
	* 27_io/basic_filebuf/seekpos/char/4-io.cc: Remove.
3900
 	* data/seekoff-1.tst: Remove.
3901
	* data/seekoff-1io.tst: New.
3902
	* data/seekoff-1out.tst: New.
3903
	* data/seekoff-2.tst: Remove.
3904
	* data/seekoff-2io.tst: New.
3905
	* data/seekoff-2out.tst: New.
3906
	* data/seekoff.txt
3907
	* data/seekpos-1.tst: Remove.
3908
	* data/seekpos-1io.tst: New.
3909
	* data/seekpos-1out.tst: New.
3910
	* data/seekpos-2.tst: Remove.
3911
	* data/seekpos-2io.tst: New.
3912
	* data/seekpos-2out.tst: New.
3913
	* data/seekpos.txt: New.
3914
 
3915
2003-06-30  Jerry Quinn  
3916
 
3917
	* src/locale.cc (__use_cache): Move from here ...
3918
	* include/bits/locale_facets.tcc (__use_cache): To
3919
	here.
3920
 
3921
2003-06-30  Paolo Carlini  
3922
 
3923
	* include/bits/stl_algobase.h: Fully qualify standard
3924
	functions with std::, thus avoiding Koenig lookup.
3925
 
3926
2003-06-30  Doug Gregor 
3927
 
3928
	* include/bits/locale_facets.tcc (money_get::do_get): Avoid
3929
	subscripting empty string.
3930
 
3931
2003-06-30  Phil Edwards  
3932
 
3933
	* testsuite/Makefile.am (check-am):  Do not override.
3934
	(baseline_symbols):  Declare as PHONY, so no need to 'touch' it.
3935
	* testsuite/Makefile.in:  Regenerate.
3936
 
3937
2003-06-30  Doug Gregor 
3938
 
3939
	* testsuite/24_iterators/insert_iterator.cc (test01, test02):
3940
	Don't initialize an insert_iterator with a singular iterator.
3941
 
3942
2003-06-30  Benjamin Kosnik  
3943
 
3944
	* acinclude.m4 (GLIBCPP_ENABLE_PCH): Add bits for --enable-pch.
3945
	* aclocal.m4: Regenerate.
3946
	* configure.in (GLIBCPP_CHECK_PCH): Move, change to
3947
	GLIBCPP_ENABLE_PCH, default to yes.
3948
	* configure: Regenerate.
3949
	* docs/html/configopts.html: Add --enable-pch.
3950
 
3951
2003-06-30  Phil Edwards  
3952
 
3953
	* testsuite/lib/libstdc++-v3-dg.exp:  Add comments.
3954
	(libstdc++-v3-init):  Also set LD_RUN_PATH.
3955
 
3956
2003-06-30  Paolo Carlini  
3957
 
3958
	* include/std/std_streambuf.h (_M_mode): Unused by streambuf, move
3959
	from here to filebuf and stringbuf.
3960
	(~basic_streambuf()): Don't set _M_mode.
3961
	(basic_streambuf()): Don't set _M_mode.
3962
	* include/std/std_fstream.h (_M_mode): Move here, from streambuf.
3963
	(~basic_filebuf()): Clean up.
3964
	* include/bits/fstream.tcc (basic_filebuf()): Set _M_mode.
3965
	* include/std/std_sstream.h (_M_mode): Move here, from streambuf.
3966
	* testsuite/27_io/basic_streambuf/cons/char/1.cc: Don't set _M_mode.
3967
	* testsuite/27_io/basic_streambuf/overflow/char/1.cc: Likewise.
3968
	* testsuite/27_io/basic_streambuf/sgetc/char/1.cc: Likewise.
3969
	* testsuite/27_io/basic_streambuf/sgetn/char/1.cc: Likewise.
3970
	* testsuite/27_io/basic_streambuf/sputn/char/1.cc: Likewise.
3971
 
3972
2003-06-30  Paolo Carlini  
3973
 
3974
	* include/std/std_fstream.h (_M_underflow): Remove.
3975
	(uflow): Remove, inherited from streambuf.
3976
	(underflow): Only declare.
3977
	* include/bits/fstream.tcc (_M_underflow): Rename to
3978
	underflow, to which is equivalent for __bump == false,
3979
	simplify.
3980
	* include/std/std_sstream.h (_M_underflow): Remove.
3981
	(uflow): Remove, inherited from streambuf.
3982
	(underflow): Only declare.
3983
	* include/bits/sstream.tcc (_M_underflow): Rename to
3984
	underflow, to which is equivalent for __bump == false,
3985
	simplify.
3986
 
3987
2003-06-29  Paolo Carlini  
3988
 
3989
	* include/bits/stl_algo.h: Fully qualify standard functions
3990
	with std::, thus avoiding Koenig lookup.
3991
 
3992
2003-06-29  Paolo Carlini  
3993
 
3994
	* testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-1.cc:
3995
	Improve type correctness-wise.
3996
	* testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-2.cc:
3997
	Likewise.
3998
	* testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-3.cc:
3999
	Likewise.
4000
	* testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-4.cc:
4001
	Likewise.
4002
 
4003
2003-06-29  Paolo Carlini  
4004
 
4005
	* include/std/std_streambuf.h (uflow): According to
4006
	27.5.2.4.3,p16, don't check gptr() < egptr().
4007
 
4008
2003-06-28  Paolo Carlini  
4009
 
4010
	PR libstdc++/9875
4011
	* include/bits/fstream.tcc (seekoff): Fix for encoding() > 0.
4012
	(seekpos): Likewise.
4013
	* testsuite/27_io/basic_filebuf/seekoff/wchar_t/9875_seekoff.cc:
4014
	New test.
4015
	* testsuite/27_io/basic_filebuf/seekpos/wchar_t/9875_seekpos.cc:
4016
	New test.
4017
 
4018
2003-06-27  Benjamin Kosnik  
4019
 
4020
	* testsuite/testsuite_performance.h (__gnu_cxx_test): Change
4021
	output name to libstdc++-v3-performance.sum.
4022
	* testsuite/Makefile.am (CLEANFILES): Remove .performance.
4023
	* testsuite/Makefile.in: Regenerate.
4024
 
4025
2003-06-27  Matthias Klose  
4026
 
4027
	* testsuite/Makefile.am (check-abi, check-abi-verbose): Save
4028
	output of abi-check in libstdc++-v3-abi.sum.
4029
	* testsuite/Makefile.in: Regenerate.
4030
 
4031
2003-06-27  Krister Walfridsson  
4032
 
4033
	* config/os/bsd/netbsd/ctype_noninline.h
4034
	(_C_ctype_): Declare.
4035
	(ctype::classic_table): Return _C_ctype_ + 1.
4036
	(ctype::ctype): Use classic_table.
4037
 
4038
2003-06-27  Paolo Carlini  
4039
	    Nathan C. Myers  
4040
 
4041
	PR libstdc++/9178
4042
	* include/bits/fstream.tcc (_M_underflow): Properly estimate
4043
	the worst-case number of external bytes for a given get area.
4044
	* testsuite/27_io/basic_filebuf/underflow/wchar_t/9178.cc: New.
4045
 
4046
2003-06-27  Paolo Carlini  
4047
	    Petur Runolfsson  
4048
 
4049
	PR libstdc++/11305
4050
	* include/bits/fstream.tcc (overflow): Properly estimate the
4051
	worst-case number of external bytes for a given put area
4052
	(by using codecvt::max_length()).
4053
	* testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-1: New.
4054
	* testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-2: New.
4055
	* testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-3: New.
4056
	* testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-4: New.
4057
 
4058
2003-06-27  Nathan Sidwell  
4059
 
4060
	* config/linker-map.gnu: Remove ; after __numpunct_cache.
4061
 
4062
2003-06-26  Benjamin Kosnik  
4063
 
4064
	* include/bits/ios_base.h (ios_base::_M_getloc): Return reference
4065
	to the imbued locale.
4066
	* include/bits/locale_facets.tcc (num_put::_M_convert_int): Use
4067
	_M_getloc.
4068
	(num_put::_M_convert_float): Use.
4069
 
4070
2003-06-26  Benjamin Kosnik  
4071
	    Jerry Quinn  
4072
 
4073
	* config/linker-map.gnu: Add __numpunct_cache.
4074
	* config/locale/gnu/numeric_members.cc
4075
	(numpunct::_M_initialize_numpunct): Account for _M_data, fill in
4076
	all elements for "C" locale.
4077
	(numpunct::~numpunct): Delete _M_data.
4078
	* config/locale/generic/numeric_members.cc: Same.
4079
	* include/bits/basic_ios.tcc
4080
	(basic_ios::init): Remove __locale_cache bits.
4081
	(basic_ios::_M_cache_locale): Same.
4082
	* include/bits/ios_base.h: Same. Tweaks.
4083
	* include/bits/locale_classes.h: Tweaks. Reorder classes.
4084
	(__use_cache): Make friends with _Impl, locale.
4085
	(_Impl::_M_caches): Add.
4086
	(_Impl::_M_install_cache): Add.
4087
	* include/bits/locale_facets.h (__numpunct_cache): New.
4088
	(numpunct): Encapsulate data members in __numpunct_cache member,
4089
	_M_data. Adjust virtuals.
4090
	(numpunct::numpunct): New ctor for the same.
4091
	(__locale_cache_base): Remove.
4092
	(__locale_cache): Remove.
4093
	* include/bits/locale_facets.tcc (__use_cache): New function,
4094
	specializations.
4095
	(num_put::_M_convert_int, _M_convert_float, do_put): Use it.
4096
	* src/globals.cc: Add cache_vec, numpunct_cache_c, numpunct_cache_w.
4097
	* src/ios.cc (ios_base::ios_base): Remove __locale_cache.
4098
	* src/locale-inst.cc: Same. Add __numpunct_cache.
4099
	* src/locale.cc: Tweak inlines.
4100
	(__use_cache): Define specializations.
4101
	* src/localename.cc: Use global bits.
4102
	(_Impl::~Impl): Deal with __numpunct_cache destruction.
4103
	(_Impl::_Impl): Same. Pre-cache standard numpunct facets.
4104
	(_Impl::_M_init_facet): Take into account __numpunct_cache.
4105
	* testsuite/27_io/ios_base/cons/assign_neg.cc: Update line numbers.
4106
	* testsuite/27_io/ios_base/cons/copy_neg.cc: Same.
4107
 
4108
2003-06-26  Nathan C. Myers  
4109
	    Paolo Carlini  
4110
 
4111
	* testsuite/performance/filebuf_copy.cc: New, testing char
4112
	by char file copy.
4113
 
4114
2003-06-26  Paolo Carlini  
4115
	    Nathan C. Myers  
4116
 
4117
	* include/bits/fstream.tcc (_M_underflow): When the actual
4118
	end of file is reached, set 'uncommitted' mode to allow a
4119
	next write without an intervening seek (see C++98 27.8.1.1,2
4120
	and C89 7.9.5.3).
4121
	* testsuite/27_io/basic_filebuf/underflow/char/2.cc: New.
4122
 
4123
2003-06-25  Nathan C. Myers  
4124
 
4125
	* include/bits/streambuf.tcc (sbumpc, sputbackc, sungetc,
4126
	sputc): Move inline, from here...
4127
	* include/std/std_streambuf.h: ... to here.
4128
 
4129
	* include/std/std_streambuf.h (snextc, sbumpc, sgetc,
4130
	sputbackc, sungetc, sputc): Use __builtin_expect.
4131
 
4132
2003-06-24  Phil Edwards  
4133
 
4134
	* docs/doxygen/mainpage.html:  Use a useful title.
4135
 
4136
2003-06-24  Benjamin Kosnik  
4137
 
4138
	* docs/html/documentation.html: Remove assignment info.
4139
	* docs/html/17_intro/contribute.html: Edits.
4140
	* docs/html/17_intro/libstdc++-assign.tx: Remove.
4141
 
4142
	* docs/html/test.html: Update.
4143
 
4144
	* README: Update.
4145
 
4146
2003-06-24  Benjamin Kosnik  
4147
	    Ulrich Drepper  
4148
 
4149
	* testsuite/testsuite_performance.h: Tweak mallinfo.
4150
 
4151
2003-06-24  Paolo Carlini  
4152
	    Nathan C. Myers  
4153
 
4154
	* include/std/std_fstream.h (_M_filepos): Remove.
4155
	(_M_reading, _M_writing): New, encode the various I/O modes:
4156
	'read', 'write' and 'uncommitted'.
4157
	(sync): If there is something to flush, do it, then go to
4158
	'uncommitted' mode.
4159
	* include/bits/fstream.tcc (_M_set_buffer): Overhaul to deal
4160
	with three different cases: __off > 0 (upon underflow),
4161
	__off == 0 (upon overflow), __off == -1 (upon open, setbuf,
4162
	seekoff/pos).
4163
	(_M_underflow): Don't call overflow, set _M_reading to true
4164
	on success, tweak.
4165
	(pbackfail): Set _M_reading to true on pback creation, tweak.
4166
	(overflow): Don't seek, deal with overflow in 'uncommitted' mode,
4167
	set _M_writing to true on success, tweak.
4168
	(seekoff): Simplify, set _M_reading, _M_writing to false, call
4169
	_M_set_buffer(-1) ('uncommitted').
4170
	(open, close, setbuf): Set _M_reading, _M_writing to false and
4171
	call _M_set_buffer(-1), tweak.
4172
	(basic_filebuf): Don't set _M_buf_unified.
4173
	(_M_destroy_internal_buffer): Don't call setg and setp.
4174
	* include/ext/stdio_filebuf.h (stdio_filebuf): Use _M_reading,
4175
	_M_writing and _M_set_buffer(-1).
4176
	* include/std/std_streambuf.h (_M_move_out_cur, _M_move_in_cur,
4177
	_M_out_lim, _M_buf_unified): Remove.
4178
	(basic_streambuf): Don't set _M_out_lim and _M_buf_unified.
4179
	(setp): Don't set _M_out_lim.
4180
	* testsuite/27_io/basic_filebuf/sbumpc/char/1-io.cc: Fix for
4181
	the new logic ('read', 'write' and 'uncommitted' modes): e.g.,
4182
	upon open the mode is 'uncommitted' and therefore the put area
4183
	pointers are null.
4184
	* testsuite/27_io/basic_filebuf/sbumpc/char/1-out.cc: Ditto.
4185
	* testsuite/27_io/basic_filebuf/seekoff/char/3-io.cc: Ditto.
4186
	* testsuite/27_io/basic_filebuf/seekpos/char/3-io.cc: Ditto.
4187
	* testsuite/27_io/basic_filebuf/setbuf/char/1.cc: Ditto.
4188
	* testsuite/27_io/basic_filebuf/sgetc/char/1-io.cc: Ditto.
4189
	* testsuite/27_io/basic_filebuf/sgetc/char/1-out.cc: Ditto.
4190
	* testsuite/27_io/basic_filebuf/sgetn/char/1-io.cc: Ditto.
4191
	* testsuite/27_io/basic_filebuf/sgetn/char/1-out.cc: Ditto.
4192
	* testsuite/27_io/basic_filebuf/snextc/char/1-io.cc: Ditto.
4193
	* testsuite/27_io/basic_filebuf/snextc/char/1-out.cc: Ditto.
4194
	* testsuite/27_io/basic_filebuf/sputbackc/char/1-io.cc: Ditto.
4195
	* testsuite/27_io/basic_filebuf/sputbackc/char/1-out.cc: Ditto.
4196
	* testsuite/27_io/basic_filebuf/sputc/char/1-io.cc: Ditto.
4197
	* testsuite/27_io/basic_filebuf/sputc/char/1-out.cc: Ditto.
4198
	* testsuite/27_io/basic_filebuf/sputc/char/9701-2.cc: Ditto.
4199
	* testsuite/27_io/basic_filebuf/sputn/char/1-io.cc: Ditto.
4200
	* testsuite/27_io/basic_filebuf/sputn/char/1-out.cc: Ditto.
4201
	* testsuite/27_io/basic_filebuf/sputn/char/9701-1.cc: Ditto.
4202
	* testsuite/27_io/basic_filebuf/sungetc/char/1-io.cc: Ditto.
4203
	* testsuite/27_io/basic_filebuf/sungetc/char/1-out.cc: Ditto.
4204
 
4205
	* include/bits/fstream.tcc (showmanyc): Use only the
4206
	documented derivation interface to basic_streambuf (gptr(),
4207
	setg(), etc.) to work right with user specializations.
4208
	* include/bits/streambuf.tcc (sbumpc, sputbackc, sungetc,
4209
	sputc, xsgetn, xsputn, __copy_streambufs): Likewise.
4210
	* include/std/std_streambuf.h (in_avail, sgetc, uflow, stossc):
4211
	Likewise.
4212
	* include/std/std_fstream.h (_M_create_pback, _M_destroy_pback,
4213
	xsgetn): Likewise.
4214
 
4215
2003-06-23  Loren J. Rittle  
4216
 
4217
	* configure.host (freebsd*): Set abi_baseline_pair.
4218
	* config/abi/i386-freebsd4/baseline_symbols.txt: Update from 3.2
4219
	(at or near first release) to 3.3.
4220
	* config/abi/i386-freebsd5/baseline_symbols.txt: New file.
4221
	* config/abi/alpha-freebsd5/baseline_symbols.txt: New file.
4222
	* config/abi/sparc-freebsd5/baseline_symbols.txt: New file.
4223
 
4224
	* include/ext/mt_allocator.h: Portability.
4225
	* testsuite/testsuite_performance.h: Likewise.
4226
 
4227
2003-06-23  Benjamin Kosnik  
4228
 
4229
	* docs/html/17_intro/libstdc++-assign.txt: Update address.
4230
 
4231
	* testsuite/performance/ifstream_getline.cc: Fix.
4232
 
4233
2003-06-23  Doug Gregor 
4234
 
4235
	* include/bits/boost_concept_check.h: Don't use _D or _R for type
4236
	names.
4237
 
4238
2003-06-22  Paolo Carlini  
4239
	    Nathan C. Myers  
4240
 
4241
	* include/std/std_streambuf.h (_M_move_out_cur): _M_out_lim
4242
	is now used only for filebuf, when _M_buf_unified is true.
4243
	epgtr() plays the role of _M_out_lim but it's only updated
4244
	upon overflow, underflow, uflow, seekoff/pos.
4245
	* include/bits/sstream.tcc (_M_underflow): New, implements
4246
	stringbuf::underflow and uflow.
4247
	(seekoff, seekpos): Tweak, use  _M_update_egptr.
4248
	* include/std/std_sstream.h (str): Rewrote, deal correctly
4249
	with the new logic, in particular, when pptr() > egptr().
4250
	(_M_sync): When __testout && !__testin set all the get area
4251
	pointers to the current string end.
4252
	(_M_update_egptr): New, internal function updating egptr()
4253
	to the actual string end.
4254
	(_M_underflow): New, declare.
4255
	(underflow): Dispatch to _M_underflow(false).
4256
	(uflow): Dispatch to _M_underflow(true).
4257
 
4258
	* include/bits/sstream.tcc (pbackfail, overflow, seekoff,
4259
	seekpos): Use only the documented derivation interface to
4260
	basic_streambuf (gptr(), setg(), etc.) to work right with
4261
	user specializations.
4262
	* include/std/std_sstream.h (str, _M_sync): Likewise.
4263
 
4264
2003-06-20  Doug Gregor 
4265
 
4266
	* testsuite/20_util/auto_ptr.cc: Don't dereference NULL auto_ptr
4267
	* testsuite/21_strings/basic_string/replace/char/4.cc: Don't
4268
	dereference end iterator.
4269
	* testsuite/21_strings/basic_string/replace/wchar_t/4.cc: Same.
4270
	* testsuite/22_locale/ctype/narrow/char/1.cc: Don't subscript with
4271
	index equal to the length of a string.
4272
	* testsuite/22_locale/ctype/narrow/char/2.cc: Same.
4273
	* testsuite/22_locale/ctype/narrow/wchar_t/1.cc: Same.
4274
	* testsuite/22_locale/ctype/narrow/wchar_t/2.cc: Same.
4275
	* testsuite/22_locale/ctype/widen/char/1.cc: Same.
4276
	* testsuite/22_locale/ctype/widen/wchar_t/1.cc: Same.
4277
	* testsuite/23_containers/list_modifiers.cc: Don't dereference
4278
	singular reverse iterator.
4279
	* testsuite/23_containers/vector_bool.cc: Don't increment singular
4280
	iterator.
4281
	* testsuite/24_iterators/rel_ops.cc: Don't compare singular iterator.
4282
 
4283
2003-06-20  Doug Gregor 
4284
 
4285
	* include/bits/basic_string.h (basic_string::replace): Dispatch
4286
	_InputIterator version based on _Is_integer.
4287
	* include/bits/basic_string.tcc (basic_string::replace):
4288
	Renamed replace(iterator, iterator, size_type, _CharT) to
4289
	_M_replace_aux.
4290
	* testsuite/21_strings/basic_string/assign/char/1.cc (test01):
4291
	Test basic_string::assign(_InputIterator, _InputIterator),
4292
	which calls basic_string::replace(iterator, iterator,
4293
	_Input_iterator, _InputIterator).
4294
 
4295
2003-06-20  Benjamin Kosnik  
4296
 
4297
	* testsuite/testsuite_performance.h (resource_counter): Don't use
4298
	mallinfo at the moment.
4299
 
4300
2003-06-20  Matthias Klose  
4301
 
4302
	* configure.host: Set try_cpu to target_cpu for existing
4303
	baseline files.
4304
 
4305
2003-06-19  Andreas Jaeger  
4306
 
4307
	* testsuite/Makefile.am (extract_symvers): Revert accidental
4308
	change.
4309
	* testsuite/Makefile.in: Regenerate.
4310
 
4311
	* configure.in: Pass MULTISUBDIR to testsuite/Makefile.
4312
	* configure: Regenerated.
4313
 
4314
2003-06-19  Paolo Carlini  
4315
 
4316
	* include/std/std_sstream.h (_M_sync): Make non virtual.
4317
 
4318
2003-06-18  Benjamin Kosnik  
4319
 
4320
	* testsuite/testsuite_performance.h (time_counter): New.
4321
	(resource_counter): New.
4322
	(report_performance): New.
4323
	(start_counters): New.
4324
	(stop_counters): New.
4325
	(clear_counters): New.
4326
	* testsuite/performance/allocator.cc: Instrument.
4327
	* testsuite/performance/cout_insert_int.cc: Same.
4328
	* testsuite/performance/complex_norm.cc: Same.
4329
	* testsuite/performance/filebuf_sputc.cc: New.
4330
	* testsuite/performance/fstream_seek_write.cc: Same.
4331
	* testsuite/performance/ifstream_getline.cc: Same.
4332
	* testsuite/performance/map_create_fill.cc: Same.
4333
	* testsuite/performance/ofstream_insert_float.cc: Same.
4334
	* testsuite/performance/ofstream_insert_int.cc: Same.
4335
	* testsuite/performance/string_append.cc: Convert.
4336
	* scripts/check_performance: New.
4337
	* testsuite/Makefile.am (check-performance): New.
4338
	(CLEANFILES): Add.
4339
 
4340
2003-06-18  Paolo Carlini  
4341
	    Benjamin Kosnik  
4342
 
4343
	* include/std/std_sstream.h (setbuf): Check __n >= 0.
4344
	* include/bits/fstream.tcc (setbuf): Tweak.
4345
 
4346
2003-06-18  Paolo Carlini  
4347
 
4348
	* include/bits/sstream.tcc (seekoff): We can't seek beyond
4349
	_M_out_lim, therefore _M_move_out_cur boils down to simply
4350
	updating _M_out_cur.
4351
	(seekpos): Likewise, clean up.
4352
 
4353
2003-06-18  Nathan C. Myers  
4354
	    Paolo Carlini  
4355
 
4356
	* include/bits/fstream.tcc (setbuf): Allow (__s, 1) too,
4357
	simply equivalent to the unbuffered case (0, 0) as far as
4358
	_M_buf_size is concerned.
4359
 
4360
2003-06-18  Andreas Jaeger  
4361
 
4362
	* testsuite/Makefile.am (new-abi-baseline): Create baseline
4363
	directory.
4364
	(baseline_file): Use baseline_dir.
4365
	(baseline_dir): New.
4366
	(mkinstalldirs): New.
4367
 
4368
	* acinclude.m4: Rename baseline_file to baseline_dir, strip
4369
	filename from baseline_dir.
4370
 
4371
	* testsuite/Makefile.in: Regenerated.
4372
	* Makefile.in: Regenerated.
4373
	* aclocal.m4: Regenerated.
4374
	* configure: Regenerated.
4375
 
4376
2003-06-17  Benjamin Kosnik  
4377
 
4378
	* configure.in: Missed check_survey bit.
4379
	* configure: Regenerated.
4380
 
4381
2003-06-17  Benjamin Kosnik  
4382
 
4383
	* scripts: New.
4384
	* config/abi/extract_symvers: Move to...
4385
	* scripts/extract_symvers: ...here.
4386
	* mkcheck.in: Move to..
4387
	* scripts/check_survey.in: ...here.
4388
	* testsuite_flags.in: Move to..
4389
	* scripts/testsuite_flags.in: ...here.
4390
	* configure.in: Change check and testsuite_flags locations.
4391
	* configure: Regenerate.
4392
	* testsuite/Makefile.am (current_symbols.txt): Change location.
4393
	* testsuite/Makefile.in: Regenerate.
4394
	* testsuite/lib/libstdc++-v3-dg.exp (libstdc++-v3-init): Modify
4395
	location of testsuite_flags.
4396
	* Makefile.am (check-script): Move..
4397
	(check-script-install): Move...
4398
	* testsuite/Makefile.am: ... here.
4399
	* testsuite/Makefile.in: Regenerate.
4400
	* Makefile.in: Regenerate.
4401
 
4402
2003-06-17  Benjamin Kosnik  
4403
 
4404
	* config/abi/i486-linux-gnu/baseline_symbols.txt: Update to 3.3.0.
4405
 
4406
2003-06-16  Benjamin Kosnik  
4407
 
4408
	* Makefile.am (check-abi): Move...
4409
	(new-abi-baseline): Move...
4410
	* testsuite/Makefile.am: ...here.
4411
	(new-abi-baseline): Conditionalize.
4412
	(check-abi): Conditionalize.
4413
	(check-abi-verbose): New.
4414
	* Makefile.in: Regenerate.
4415
	* testsuite/Makefile.in: Regenerate.
4416
	* configure.in: Consolidate testsuite configure bits.
4417
	* acinclude.m4 (GLIBCPP_CONFIGURE_TESTSUITE): Same.
4418
	* configure: Regenerate.
4419
	* aclocal.m4: Regenerate.
4420
	* testsuite/abi_check.cc: Add --check-verbose.
4421
	Only output detailed information if --check-verbose.
4422
 
4423
2003-06-16  Andreas Jaeger  
4424
 
4425
	* testsuite/abi_check.cc: Create summary report.
4426
 
4427
2003-06-16  Paolo Carlini  
4428
 
4429
	* testsuite/27_io/basic_filebuf/sgetn/char/1-in.cc: Fix
4430
	for systems with BUFSIZ != 8192.
4431
	* testsuite/27_io/basic_filebuf/sgetn/char/1-io.cc: Ditto.
4432
	* testsuite/27_io/basic_filebuf/sgetn/char/1-out.cc:
4433
	Minor tweaks.
4434
 
4435
2003-06-16  Andreas Jaeger  
4436
 
4437
	* acinclude.m4 (GLIBCPP_CONFIGURE_TESTSUITE): Make
4438
	check-abi multilib aware.
4439
	* aclocal.m4: Regenerate.
4440
	* configure: Regenerate.
4441
 
4442
2003-06-16  Benjamin Kosnik  
4443
	    Andreas Jaeger  
4444
 
4445
	* configure.host: Set x86_64 abi_baseline pair correctly.
4446
 
4447
2003-06-16  Paolo Carlini  
4448
 
4449
	* testsuite/27_io/basic_filebuf/sungetc/char/1.cc: Split and
4450
	fix for missing seeks between gets and puts into...
4451
	* testsuite/27_io/basic_filebuf/sungetc/char/1-in.cc: New.
4452
	* testsuite/27_io/basic_filebuf/sungetc/char/1-io.cc: New.
4453
	* testsuite/27_io/basic_filebuf/sungetc/char/1-out.cc: New.
4454
	* testsuite/27_io/basic_filebuf/sungetc/char/2-in.cc: New.
4455
	* testsuite/27_io/basic_filebuf/sungetc/char/2-io.cc: New.
4456
	* testsuite/27_io/basic_filebuf/sungetc/char/2-out.cc: New.
4457
 
4458
2003-06-15  Richard Henderson  
4459
 
4460
	* config/linker-map.gnu: Export virtual function thunks for
4461
	64-bit systems too.
4462
 
4463
2003-06-13  Benjamin Kosnik  
4464
 
4465
	* config/abi/i686-pc-linux-gnu: To..
4466
	* config/abi/i486-linux-gnu: ...this.
4467
	* config/abi/alphaev67-unknown-linux-gnu: To..
4468
	* config/abi/alpha-linux-gnu: ...this.
4469
	* config/abi/ia64-unknown-linux-gnu: To...
4470
	* config/abi/ia64-linux-gnu: ...this.
4471
	* config/abi/x86_64-unknown-linux-gnu: To...
4472
	* config/abi/x86_64-linux-gnu: ...this.
4473
	* config/abi/i386-unknown-freebsd4: To...
4474
	* config/abi/i386-freebsd4: ...this.
4475
	* config/linker-map.gnu: Cleanups, move libsupc++ bits into
4476
	CXXABI.
4477
	* configure.host: abi_baseline_triplet to abi_baseline_pair.
4478
	Simplify cpu bits so that abi_baseline_pair can use the same
4479
	cpu configuration.
4480
	* acinclude.m4: Same.
4481
	* aclocal.m4: Regenerate.
4482
	* configure.in: Can't get enable_abi_check to yes unless native.
4483
	* configure: Regenerate.
4484
 
4485
2003-06-13  Paolo Carlini  
4486
 
4487
	* testsuite/27_io/basic_filebuf/seekoff/char/1.cc: Split and
4488
	fix for missing seeks between gets and puts into...
4489
	* testsuite/27_io/basic_filebuf/seekoff/char/3-io.cc: New.
4490
	* testsuite/27_io/basic_filebuf/seekoff/char/4-io.cc: New.
4491
	* testsuite/27_io/basic_filebuf/seekpos/char/1.cc: Same, into...
4492
	* testsuite/27_io/basic_filebuf/seekpos/char/3-io.cc: New.
4493
	* testsuite/27_io/basic_filebuf/seekpos/char/4-io.cc: New.
4494
	* testsuite/27_io/basic_filebuf/sputbackc/char/1-io.cc: Fix
4495
	for missing seeks between gets and puts.
4496
	* testsuite/27_io/basic_filebuf/sputbackc/char/2-io.cc: Ditto.
4497
	* testsuite/data/seekoff-1.tst: New.
4498
	* testsuite/data/seekoff-2.tst: New.
4499
	* testsuite/data/seekpos-1.tst: New.
4500
	* testsuite/data/seekpos-2.tst: New.
4501
 
4502
2003-06-13  Nathan C. Myers 
4503
 
4504
	Avoid multi-processor bus contention on increment/decrement-and-
4505
	test of the reference count in the empty-string object, by comparing
4506
	addresses first, and never touching the reference count of the empty-
4507
	string object.
4508
	* include/bits/basic_string.h:
4509
	(_S_empty_rep_storage): Move into basic_string<>::_Rep for use by its
4510
	members.
4511
	(_Rep::_S_empty_rep()): New accessor.
4512
	(_Rep::_M_length, _Rep::_M_capacity, _Rep::_M_references): Move to
4513
	a base class _Rep_base.
4514
	(_Rep::_M_dispose, _Rep::_M_refcopy): Check for the empty string.
4515
	(basic_string()): Change to use _M_refdata() in place of _M_refcopy(),
4516
	since no longer must increment its refcount.
4517
	* include/bits/basic_string.tcc:
4518
	(_Rep::_M_destroy, _M_leak_hard): Check for the empty string and
4519
	return immediately.  The former might be unnecessary.  The latter
4520
	prevents begin() and end() from cloning it unnecessarily.
4521
	(_S_construct(_InIterator, _InIterator, const _Alloc&,
4522
	input_iterator_tag), _S_construct(_InIterator, _InIterator,
4523
	const _Alloc&, forward_iterator_tag), _S_construct(size_type, _CharT,
4524
	const _Alloc&)): Change to use _M_refdata() in place of _M_refcopy().
4525
	(_M_mutate): Check for the empty string and treat it as shared.
4526
	This is necessary here because _M_mutate is sometimes called with
4527
	all-zero arguments; in all other uses of _M_is_shared, the test comes
4528
	out right anyhow.
4529
 
4530
2003-06-12  Benjamin Kosnik  
4531
 
4532
	* src/allocator-inst.cc: Explicitly instantiate.
4533
	* include/ext/pool_allocator.h: Inhibit implicit instantiations.
4534
	Tweaks.
4535
	* config/linker-map.gnu: Add __pool_alloc bits. Tweaks.
4536
 
4537
2003-06-11  Benjamin Kosnik  
4538
 
4539
	* acinclude.m4 (GLIBCPP_ENABLE_CSTDIO): Simplify.
4540
	* aclocal.m4: Regenerate.
4541
	* Makefile.am (SUBDIRS): Remove libio.
4542
	* Makefile.in: Regenerate.
4543
	* configure.in: Same.
4544
	* configure: Regenerate.
4545
	* config/io/basic_file_libio.cc: Remove.
4546
	* config/io/basic_file_libio.h: Remove.
4547
	* config/io/c_io_libio_codecvt.c: Remove.
4548
	* config/io/c_io_libio.h: Remove.
4549
	* libio/*: Remove.
4550
	* src/Makefile.am: Same.
4551
	* src/Makefile.in: Regenerate.
4552
	* docs/html/configopts.html: Edits.
4553
	* docs/html/explanations.html: Edits.
4554
 
4555
2003-06-11  Benjamin Kosnik  
4556
 
4557
	* include/bits/stl_alloc.h (__debug_alloc): Move out.
4558
	(__malloc_alloc): Same.
4559
	(__pool_alloc): Same.
4560
	(__new_alloc): Same.
4561
	Rename to..
4562
	* include/bits/allocator.h: ...this.
4563
	* include/bits/stl_deque.h: Modify comment.
4564
	* include/bits/stl_tree.h: Modify include.
4565
	* include/std/std_memory.h: Same.
4566
	* include/ext/rope: Same.
4567
	* include/ext/slist: Same.
4568
	* include/std/std_vector.h: Same.
4569
	* include/std/std_stack.h: Same.
4570
	* include/std/std_queue.h: Same.
4571
	* include/std/std_list.h: Same.
4572
	* include/std/std_deque.h: Same.
4573
	* include/backward/alloc.h: Same.
4574
	* include/ext/debug_allocator.h: New.
4575
	* include/ext/malloc_allocator.h: New.
4576
	* include/ext/pool_allocator.h: New.
4577
	* include/ext/new_allocator.h: New.
4578
	* include/bits/pthread_allocimpl.h: Remove.
4579
	* include/bits/stl_pthread_alloc.h: Remove.
4580
	* include/Makefile.am (ext_headers): Add.
4581
	* include/Makefile.in: Regenerate.
4582
	* src/stl-inst.cc: Use __gnu_cxx namespace.
4583
	* src/stl-inst.cc: Move to...
4584
	* src/allocator-inst.cc: Here.
4585
	* src/Makefile.am (sources): Update.
4586
	* src/Makefile.in: Regenerate.
4587
	* config/linker-map.gnu: Remove __pool_alloc bits.
4588
	* testsuite/ext/headers.cc: Add.
4589
	* testsuite/ext/allocators.cc: Fixup.
4590
 
4591
2003-06-11  Stefan Olsson  
4592
	    Ola Rönnerup  
4593
 
4594
	* include/Makefile.am (ext_headers): Add.
4595
	* include/Makefile.in: Regenerate.
4596
	* include/ext/mt_allocator.h: New file.
4597
 
4598
2003-06-10  Paolo Carlini  
4599
 
4600
	* include/bits/fstream.tcc (close): Clean up a bit.
4601
 
4602
	* include/bits/streambuf.tcc (sbumpc): Clean up a bit.
4603
 
4604
	* include/std/std_fstream.h (_M_destroy_pback): _M_pback_cur_save
4605
	- the saved _M_in_cur, that is - cannot be null.
4606
	(sync): Constify a variable.
4607
 
4608
	* include/std/std_streambuf.h: Tweak a comment.
4609
	(in_avail): Constify a variable.
4610
 
4611
2003-06-10  Phil Edwards  
4612
 
4613
	* docs/html/17_intro/BUGS:  Update from 2.90.8 snapshot.
4614
	* docs/html/17_intro/CHECKLIST:  Bring up to date with respect to
4615
	correctness of container::iterator typedefs.  Fix whitespace.
4616
	* docs/html/20_util/howto.html, docs/html/ext/howto.html:  Add links
4617
	to allocator docs.
4618
	* docs/html/documentation.html:  Regenerate.
4619
 
4620
	* include/bits/basic_string.h, include/bits/basic_string.tcc,
4621
	include/bits/deque.tcc, include/bits/list.tcc, include/bits/stl_algo.h,
4622
	include/bits/stl_algobase.h, include/bits/stl_bvector.h,
4623
	include/bits/stl_deque.h, include/bits/stl_iterator_base_funcs.h,
4624
	include/bits/stl_list.h, include/bits/stl_uninitialized.h,
4625
	include/bits/stl_vector.h, include/bits/vector.tcc,
4626
	include/ext/algorithm, include/ext/slist, include/std/std_bitset.h:
4627
	Change _Iter names to _Iterator, and __pos to __position.
4628
 
4629
	* include/bits/stl_relops.h, include/bits/stl_numeric.h,
4630
	include/bits/stl_multiset.h, include/bits/stl_set.h:
4631
	Remove emacs markers.
4632
 
4633
	* include/bits/stl_threads.h (_STL_auto_lock):  Add __unused__.
4634
 
4635
2003-06-10  Paolo Carlini  
4636
 
4637
	* include/bits/fstream.tcc (overflow): According to
4638
	27.5.2.4.5, overflow() returns not_eof(eof()).
4639
	* testsuite/27_io/basic_filebuf/overflow/char/2.cc: New.
4640
	* testsuite/27_io/basic_filebuf/overflow/char/2-unbuf.cc: Ditto.
4641
 
4642
2003-06-10  Paolo Carlini  
4643
 
4644
	* include/bits/fstream.tcc (_M_underflow): Check overflow return
4645
	value; tweak slightly.
4646
 
4647
2003-06-09  Paolo Carlini  
4648
 
4649
	* include/bits/fstream.tcc (_M_underflow): Do not special
4650
	case the unbuffered case, which really means simply a one char
4651
	get area.
4652
	(basic_filebuf): Initialize _M_buf_size.
4653
	(setbuf): Unbuffered means _M_buf_size == 1, since only
4654
	_M_buf_size - 1 == 0 chars are going to be used for the
4655
	put area and 1 for the get area.
4656
	* include/std/std_streambuf.h (_M_buf_size): Move to basic_filebuf.
4657
	(~basic_streambuf): Tweak.
4658
	(basic_streambuf): Do not initialize _M_buf_size.
4659
	* include/std/std_fstream.h (_M_buf_size): Add from basic_streambuf.
4660
	(~basic_filebuf): Tweak.
4661
	(_M_set_buffer): Tweak, considering that _M_buf_size == 1 is the
4662
	unbuffered situation (i.e., put area pointers NULL).
4663
	* include/bits/streambuf.tcc (sbumpc): Clean up.
4664
	* testsuite/27_io/basic_filebuf/sputbackc/char/1.cc: Split into...
4665
	* testsuite/27_io/basic_filebuf/sputbackc/char/1-in.cc: New.
4666
	* testsuite/27_io/basic_filebuf/sputbackc/char/1-io.cc: New.
4667
	* testsuite/27_io/basic_filebuf/sputbackc/char/1-out.cc: New.
4668
	* testsuite/27_io/basic_filebuf/sputbackc/char/2-in.cc: New.
4669
	* testsuite/27_io/basic_filebuf/sputbackc/char/2-io.cc: New.
4670
	* testsuite/27_io/basic_filebuf/sputbackc/char/2-out.cc: New.
4671
 
4672
2003-06-09  Phil Edwards  
4673
 
4674
	* acinclude.m4:  Move all AM_CONDITIONAL calls out.
4675
	(GLIBCPP_CONFIGURE):  Set defaults for variables used in AM_CONDITIONAL
4676
	statements.
4677
	* configure.in:  Centralize AM_CONDITIONALs so that they are always
4678
	run.  Make use of GLIBCPP_IS_CROSS_COMPILING.
4679
	* aclocal.m4, configure:  Regenerated.
4680
 
4681
2003-06-09  Paolo Carlini  
4682
 
4683
	* docs/html/ext/howto.html ('LWG Issues'):  Add issue 235.
4684
 
4685
2003-06-06  Nathan Myers  
4686
 
4687
	* include/bits/stl_iterator.h
4688
	(reverse_iterator::reverse_iterator()): Apply DR235: default
4689
	constructor default-initializes data member.  Instantiated on a
4690
	pointer type, the member has to end up equal to zero.
4691
 
4692
2003-06-06  Benjamin Kosnik  
4693
 
4694
	* include/bits/stl_alloc.h: Cleanups.
4695
	* include/ext/functional: Same.
4696
	* include/ext/hash_map: Same.
4697
	* include/ext/hash_set: Same.
4698
	* include/ext/iterator: Same.
4699
	* include/ext/memory: Same.
4700
	* include/ext/numeric: Same.
4701
	* include/ext/rb_tree: Same.
4702
	* include/ext/ropeimpl.h: Same.
4703
	* include/ext/slist: Same.
4704
	* include/ext/stdio_filebuf.h: Same.
4705
	* include/ext/stdio_sync_filebuf.h: Same.
4706
	* include/ext/stl_rope.h: Move to...
4707
	* include/ext/rope: ...here.
4708
	* include/ext/stl_hash_fun.h: Move to...
4709
	* include/ext/hash_fun.h: ...here.
4710
	* include/ext/stl_hashtable.h: Move to...
4711
	* include/ext/hashtable.h: ...here.
4712
	* include/backward/hashtable.h: Reflect new names.
4713
	* include/Makefile.am: Same.
4714
	* include/Makefile.in: Regenerated.
4715
 
4716
2003-06-05  Benjamin Kosnik  
4717
 
4718
	PR libstdc++/9024
4719
	* include/bits/fstream.tcc (_M_underflow): Fix for unbuffered.
4720
	* include/bits/stl_algobase.h: Tweak.
4721
	* include/std/std_fstream.h: Move _M_buf_size to...
4722
	* include/std/std_streambuf.h: ...here. Modify.
4723
	* include/bits/streambuf.tcc: Same.
4724
	* testsuite/testsuite_hooks.h: Tweak.
4725
	* testsuite/testsuite_io.h (constraint_filebuf): New.
4726
	* testsuite/27_io/basic_filebuf/sbumpc/char/1.cc: Split into...
4727
	* testsuite/27_io/basic_filebuf/sbumpc/char/1-in.cc: New.
4728
	* testsuite/27_io/basic_filebuf/sbumpc/char/1-io.cc: New.
4729
	* testsuite/27_io/basic_filebuf/sbumpc/char/1-out.cc: New.
4730
	* testsuite/27_io/basic_filebuf/sbumpc/char/2-in.cc: New.
4731
	* testsuite/27_io/basic_filebuf/sbumpc/char/2-io.cc: New.
4732
	* testsuite/27_io/basic_filebuf/sbumpc/char/2-out.cc: New.
4733
	* testsuite/27_io/basic_filebuf/sgetc/char/1.cc: Split into...
4734
	* testsuite/27_io/basic_filebuf/sgetc/char/1-in.cc: New.
4735
	* testsuite/27_io/basic_filebuf/sgetc/char/1-io.cc: New.
4736
	* testsuite/27_io/basic_filebuf/sgetc/char/1-out.cc: New.
4737
	* testsuite/27_io/basic_filebuf/sgetc/char/2-in.cc: New.
4738
	* testsuite/27_io/basic_filebuf/sgetc/char/2-io.cc: New.
4739
	* testsuite/27_io/basic_filebuf/sgetc/char/2-out.cc: New.
4740
	* testsuite/27_io/basic_filebuf/sgetn/char/1.cc: Split into...
4741
	* testsuite/27_io/basic_filebuf/sgetn/char/1-in.cc: New.
4742
	* testsuite/27_io/basic_filebuf/sgetn/char/1-io.cc: New.
4743
	* testsuite/27_io/basic_filebuf/sgetn/char/1-out.cc: New.
4744
	* testsuite/27_io/basic_filebuf/sgetn/char/2.cc: Split into...
4745
	* testsuite/27_io/basic_filebuf/sgetn/char/2-in.cc: New.
4746
	* testsuite/27_io/basic_filebuf/sgetn/char/2-io.cc: New.
4747
	* testsuite/27_io/basic_filebuf/sgetn/char/2-out.cc: New.
4748
	* testsuite/27_io/basic_filebuf/sgetn/char/3.cc: New.
4749
	* testsuite/27_io/basic_filebuf/snextc/char/1.cc: Split into...
4750
	* testsuite/27_io/basic_filebuf/snextc/char/1-in.cc: New.
4751
	* testsuite/27_io/basic_filebuf/snextc/char/1-io.cc: New.
4752
	* testsuite/27_io/basic_filebuf/snextc/char/1-out.cc: New.
4753
	* testsuite/27_io/basic_filebuf/snextc/char/2-in.cc: New.
4754
	* testsuite/27_io/basic_filebuf/snextc/char/2-io.cc: New.
4755
	* testsuite/27_io/basic_filebuf/snextc/char/2-out.cc: New.
4756
	* testsuite/27_io/basic_filebuf/sputc/char/1.cc: Split into...
4757
	* testsuite/27_io/basic_filebuf/sputc/char/1-in.cc: New.
4758
	* testsuite/27_io/basic_filebuf/sputc/char/1-io.cc: New.
4759
	* testsuite/27_io/basic_filebuf/sputc/char/1-out.cc: New.
4760
	* testsuite/27_io/basic_filebuf/sputc/char/2.cc: Split into...
4761
	* testsuite/27_io/basic_filebuf/sputc/char/2-in.cc: New.
4762
	* testsuite/27_io/basic_filebuf/sputc/char/2-io.cc: New.
4763
	* testsuite/27_io/basic_filebuf/sputc/char/2-out.cc: New.
4764
	* testsuite/27_io/basic_filebuf/sputn/char/1.cc: Split into...
4765
	* testsuite/27_io/basic_filebuf/sputn/char/1-in.cc: New.
4766
	* testsuite/27_io/basic_filebuf/sputn/char/1-io.cc: New.
4767
	* testsuite/27_io/basic_filebuf/sputn/char/1-out.cc: New.
4768
	* testsuite/27_io/basic_filebuf/sputn/char/2-in.cc: New.
4769
	* testsuite/27_io/basic_filebuf/sputn/char/2-io.cc: New.
4770
	* testsuite/27_io/basic_filebuf/sputn/char/2-out.cc: New.
4771
	* testsuite/data/sgetc.txt: New.
4772
	* testsuite/data/sgetn.txt: New.
4773
 
4774
2003-06-05  Paolo Carlini  
4775
 
4776
	PR libstdc++/11095
4777
	* include/bits/istream.tcc (operator>>(basic_istream&, _CharT*)):
4778
	Deal with width() smaller than zero.
4779
	* include/bits/ostream.tcc (operator<<(basic_ostream&, _CharT),
4780
	operator<<(basic_ostream&, char), operator<<(basic_ostream&, const
4781
	_CharT*), operator<<(basic_ostream<_CharT, _Traits>&, const
4782
	char*), operator<<(basic_ostream&, const char*),
4783
	operator<<(basic_ostream, const basic_string&)): Likewise.
4784
 
4785
	* testsuite/27_io/basic_istream/extractors_character/char/
4786
	(11095-i.cc, 11095-oa.cc, 11095-ob.cc, 11095-oc.cc): New.
4787
	* testsuite/27_io/basic_ostream/inserters_character/char/
4788
	(11095-oa.cc, 11095-ob.cc, 11095-oc.cc): New.
4789
	* testsuite/27_io/basic_ostream/inserters_character/wchar_t/
4790
	(11095-od.cc, 11095-oe.cc, 11095-of.cc): New.
4791
 
4792
2003-06-05  Rainer Orth  
4793
 
4794
	* acinclude.m4 (GLIBCPP_CHECK_PCH): Only set glibcpp_PCHFLAGS if
4795
	.gch compilation works.
4796
	* aclocal.m4, configure: Regenerate.
4797
	* testsuite_flags.in (--build-cxx): Use glibcpp_PCHFLAGS to
4798
	initialize PCHFLAGS.
4799
 
4800
2003-06-04  Paolo Carlini  
4801
 
4802
	* include/bits/basic_string.h (_M_fold, insert(iterator, _CharT),
4803
	erase(iterator), erase(iterator, iterator), c_str,
4804
	compare(const basic_string&)): Constify various variables.
4805
	* include/bits/basic_string.tcc (_S_construct(_InIter, _InIter,
4806
	const _Alloc&, input_iterator_tag), _M_destroy, _M_mutate,
4807
	_S_create, resize, _M_replace, _M_replace_safe,
4808
	append(const basic_string&), append(const basic_string&, size_type,
4809
	size_type), append(const _CharT*, size_type), append(size_type,
4810
	_CharT), operator+(const _CharT*, const basic_string&),
4811
	operator+(_CharT, const basic_string&), replace(iterator, iterator,
4812
	size_type, _CharT), find(const _CharT*, size_type, size_type),
4813
	find(_CharT, size_type), rfind(const _CharT*, size_type, size_type),
4814
	rfind(_CharT, size_type), compare(size_type, size_type,
4815
	const basic_string&), compare(size_type, size_type,
4816
	const basic_string&, size_type, size_type), compare(const _CharT*),
4817
	compare(size_type, size_type, const _CharT*), compare(size_type,
4818
	size_type, const _CharT*, size_type)): Likewise.
4819
 
4820
2003-06-03  Benjamin Kosnik  
4821
 
4822
	* include/bits/fstream.tcc (pbackfail): Make a rarely taken
4823
	'if' branch less obscure.
4824
 
4825
2003-06-02  Andrew Pinski  
4826
 
4827
	PR libstdc++/9815
4828
	* config/cpu/i386/atomicity.h (__exchange_and_add): add intel
4829
	asm case to asm.
4830
	* config/cpu/i486/atomicity.h (__exchange_and_add): Likewise.
4831
	(__atomic_add): likewise.
4832
 
4833
2003-06-02  Paolo Carlini  
4834
 
4835
	* include/bits/sstream.tcc (pbackfail): Minor clean up and
4836
	reformatting, consistent with basic_filebuf::pbackfail.
4837
 
4838
2003-06-02  Richard Kreckel  
4839
 
4840
	PR libstdc++/11062
4841
	* config/cpu/mips/atomicity.h:  Change __attribute__ ((unused)) to
4842
	__attribute__ ((__unused__)).
4843
	* config/os/aix/atomicity.h:  Likewise.
4844
 
4845
2003-06-02  Paolo Carlini  
4846
 
4847
	PR libstdc++/9761
4848
	* include/bits/fstream.tcc (pbackfail): If the pback buffer
4849
	is already active don't try to store in it a second char.
4850
	* testsuite/27_io/basic_filebuf/pbackfail/char/9761.cc: New.
4851
 
4852
	* include/bits/fstream.tcc (pbackfail): Add unbuffered bits.
4853
 
4854
2003-06-02  Paolo Carlini  
4855
 
4856
	* testsuite/27_io/basic_stringbuf/seekpos/char/3.cc: Tweak
4857
	line spacing.
4858
 
4859
2003-06-02  Paolo Carlini  
4860
 
4861
	* include/std/std_fstream.h (_M_destroy_pback): Use _M_in_beg
4862
	instead of unnecessarily taking the address of _M_pback.
4863
	(xsgetn): Simplify slightly for a single char pback buffer.
4864
 
4865
2003-06-02  Paolo Carlini  
4866
 
4867
	* include/bits/sstream.tcc (seekoff): Remove four unnecessary
4868
	variables and two 'if', clean up.
4869
 
4870
2003-06-02  Paolo Carlini  
4871
 
4872
	* include/bits/sstream.tcc (seekpos): Test against _M_out_lim
4873
	not _M_out_end, since the former actually points to the string
4874
	end (vs buffer end).
4875
	* testsuite/27_io/basic_stringbuf/seekpos/char/3.cc: New.
4876
 
4877
2003-05-30  Phil Edwards  
4878
 
4879
	* docs/doxygen/filter:  New file.
4880
	* docs/doxygen/filter.sed:  New file.
4881
	* docs/doxygen/run_doxygen:  Add g flag to sed substitutions.  Duh.
4882
	* docs/doxygen/user.cfg.in (INPUT_FILTER):  Point to new filter.
4883
	* docs/html/documentation.html:  Fix links to doxygen pages.
4884
 
4885
2003-05-30  Paolo Carlini  
4886
 
4887
	* include/bits/fstream.tcc (_M_convert_to_external): Don't
4888
	check for __ilen > 0.
4889
 
4890
2003-05-29  Sylvain Pion  
4891
 
4892
	PR libstdc++/10783
4893
	* include/bits/stl_iterator.h (class __normal_iterator):
4894
	Don't inherit from iterator, add missing typedefs.
4895
 
4896
2003-05-29  Paolo Carlini 
4897
 
4898
	* testsuite/24_iterators/reverse_iterator.cc: Split up, as follows.
4899
	* testsuite/24_iterators/reverse_iterator/1.cc: New.
4900
	* testsuite/24_iterators/reverse_iterator/2.cc: New.
4901
	* testsuite/24_iterators/reverse_iterator/3.cc: New, from
4902
	PR libstdc++/10783.
4903
 
4904
2003-05-27  Steve Ellcey  
4905
 
4906
	* config/os/hpux/os_defines.h: Define _LIBUNWIND_STD_ABI if we are
4907
	on IA64 HP-UX.
4908
	* libsupc++/eh_throw.cc: Don't call _Unwind_Resume_or_Rethrow if
4909
	_LIBUNWIND_STD_ABI is set.
4910
 
4911
2003-05-26  Brendan Kehoe  
4912
 
4913
	* include/bits/locale_facets.tcc (do_get): Honor $22.2.6.3.3/8 and
4914
	make sure the number of digits required after the decimal-point
4915
	(if any) is exactly the value returned by frac_digits().
4916
	* testsuite/22_locale/money_get/get/char/9.cc: New.
4917
	* testsuite/22_locale/money_get/get/wchar_t/9.cc: New.
4918
 
4919
2003-05-27  Jonathan Wakely  
4920
 
4921
	* include/std/std_istream.h, include/std/std_ostream.h: Typo in
4922
	comment.
4923
 
4924
2003-05-26  Benjamin Kosnik  
4925
 
4926
	PR libstdc++/9339
4927
	* include/std/std_fstream.h (basic_filebuf::_M_overflow): Remove.
4928
	(_M_pback): No array necessary.
4929
	* include/bits/fstream.tcc (basic_filebuf::_M_overflow): Add
4930
	unbuffered case, coalesec into ...
4931
	(basic_filebuf::overflow): ...this.
4932
	* testsuite/27_io/basic_filebuf/sputn/char/9339.cc: New.
4933
	* testsuite/27_io/basic_filebuf/sputc/char/2.cc: Unbuffered.
4934
 
4935
2003-05-24  Nathanael Nerode  
4936
 
4937
	* libsupc++/Makefile.am, libsupc++/cxxabi.h, libsupc++/del_op.cc,
4938
	libsupc++/del_opnt.cc, libsupc++/del_opv.cc, libsupc++/del_opvnt.cc,
4939
	libsupc++/eh_alloc.cc, libsupc++/eh_aux_runtime.cc,
4940
	libsupc++/eh_catch.cc, libsupc++/eh_exception.cc,
4941
	libsupc++/eh_globals.cc, libsupc++/eh_personality.cc,
4942
	libsupc++/eh_term_handler.cc, libsupc++/eh_terminate.cc,
4943
	libsupc++/eh_throw.cc, libsupc++/eh_type.cc,
4944
	libsupc++/eh_unex_handler.cc, libsupc++/exception,
4945
	libsupc++/new, libsupc++/new_handler.cc, libsupc++/new_op.cc,
4946
	libsupc++/new_opnt.cc, libsupc++/new_opv.cc, libsupc++/new_opvnt.cc,
4947
	libsupc++/pure.cc, libsupc++/tinfo.cc, libsupc++/tinfo2.cc,
4948
	libsupc++/typeinfo, libsupc++/unwind-cxx.h, libsupc++/vec.cc:
4949
	Replace "GNU CC" with "GCC".
4950
 
4951
	* include/backward/new.h: Replace "GNU CC" with "GCC".
4952
 
4953
2003-05-22  Benjamin Kosnik  
4954
 
4955
	PR libstdc++/3066.
4956
	* configure.in: Switch target to host, don't assume newlib.
4957
	(target_alias): Remove.
4958
	* configure: Regenerate.
4959
	* acinclude.m4: Same.
4960
	* aclocal.m4: Regenerate.
4961
	* configure.target: Same. Rename to...
4962
	* configure.host: This.
4963
 
4964
2003-05-22  Paolo Carlini  
4965
 
4966
	* include/std/std_fstream.h (_S_pback_size): Remove definition.
4967
	(_M_create_pback(), _M_destroy_pback()): Simplify for a single-char
4968
	pback buffer.
4969
	* include/bits/fstream.tcc (_S_pback_size): Remove declaration.
4970
	* testsuite/27_io/basic_filebuf/3.cc: Remove explicit instantiation
4971
	of _S_pback_size for systems with no COMDAT or weak support.
4972
	* testsuite/27_io/basic_filebuf/seekoff/10132-2.cc: Likewise.
4973
	* testsuite/27_io/basic_filebuf/seekpos/10132-3.cc: Likewise.
4974
	* testsuite/27_io/basic_filebuf/underflow/10096.cc: Likewise.
4975
	* testsuite/27_io/basic_fstream/3.cc: Likewise.
4976
	* testsuite/27_io/basic_ifstream/3.cc: Likewise.
4977
	* testsuite/27_io/basic_istream/sentry/char/3983-fstream.cc: Likewise.
4978
	* testsuite/27_io/basic_ofstream/3.cc: Likewise.
4979
	* testsuite/27_io/basic_ostream/sentry/char/3983-fstream.cc: Likewise.
4980
	* testsuite/27_io/basic_streambuf/3.cc: Likewise.
4981
 
4982
2003-05-22  Paolo Carlini  
4983
 
4984
	* include/bits/fstream.tcc (_M_underflow): Simplify:
4985
	!__testout implies _M_filepos == _M_in_end, therefore
4986
	the first _M_file.seekoff call is never issued.
4987
 
4988
2003-05-22  Benjamin Kosnik  
4989
 
4990
	* configure.in: Sort cross table.
4991
	* configure: Regenerate.
4992
 
4993
2003-05-22  Brad Spencer  
4994
 
4995
	PR libstdc++/10106
4996
	* configure.in: Add Solaris cross bits.
4997
 
4998
2003-05-21  Danny Smith  
4999
 
5000
	* libstdc++-v3/config/os/mingw32/os_defines.h
5001
	(__GTHREAD_HIDE_WIN32API): Define to 1 by defualt.
5002
	(NOMINMAX): Define.  Update copyright year.
5003
 
5004
2003-05-21  Paolo Carlini  
5005
 
5006
	* include/std/std_fstream.h (_M_set_buffer): Fix indentation.
5007
 
5008
2003-05-21  Jonathan Wakely  
5009
 
5010
	* docs/html/faq/index.html: Fix typo.
5011
	* docs/html/faq/index.txt: Regenerate.
5012
 
5013
2003-05-21  Jonathan Wakely  
5014
 
5015
	* docs/html/test.html: Fix markup.
5016
 
5017
2003-05-21  Danny Smith  
5018
 
5019
	* libmath/stubs.c (hypot, hypotf, hypotl): Don't divide by
5020
	zero.
5021
	Update copyright year.
5022
 
5023
2003-05-20  Paolo Carlini  
5024
 
5025
	* testsuite/27_io/basic_filebuf/close/char/4.cc: Fix typo.
5026
 
5027
2003-05-20  Paolo Carlini  
5028
 
5029
	* testsuite/27_io/basic_filebuf/close/char/5.cc: New file,
5030
	further testing that upon filebuf::close() 27.8.1.1,3 is enforced.
5031
 
5032
2003-05-20  Gerald Pfeifer  
5033
 
5034
	* include/bits/stl_alloc.h (__default_alloc_template::_S_chunk_alloc):
5035
	Cast via void* to avoid -Wcast-align warnings.
5036
	(__default_alloc_template::_S_refill): Likewise.
5037
 
5038
2003-05-20  Benjamin Kosnik  
5039
 
5040
	* testsuite/README: Move to...
5041
	* docs/html/test.html: ...here. Add documentation.
5042
	* docs/html/install.html: Move testing bits out..
5043
	* docs/html/documentation.html: Add separate testing link.
5044
	* testsuite/performance: Add.
5045
	* testsuite/performance/allocator.cc: New.
5046
	* testsuite/performance/complex_norm.cc: New.
5047
	* testsuite/performance/cout_insert_int.cc: New.
5048
	* testsuite/performance/fstream_seek_write.cc: New.
5049
	* testsuite/performance/ifstream_getline.cc: New.
5050
	* testsuite/performance/map_create_fill.cc: New.
5051
	* testsuite/performance/ofstream_insert_float.cc: New.
5052
	* testsuite/performance/ofstream_insert_int.cc: New.
5053
	* testsuite/performance/string_append.cc: New.
5054
	* testsuite/lib/libstdc++-v3-dg.exp (v3-compute-tests): Filter
5055
	performance tests.
5056
 
5057
2003-05-20  Gabriel Dos Reis 
5058
 
5059
	PR libstdc++/10689
5060
	* include/std/std_complex.h (pow): Tidy.
5061
 
5062
2003-05-19  Paolo Carlini  
5063
 
5064
	* testsuite/27_io/basic_filebuf/close/char/4.cc: New file, testing
5065
	that upon filebuf::close() 27.8.1.1,3 is enforced.
5066
 
5067
2003-05-15  Loren J. Rittle  
5068
 
5069
	* testsuite/thread/pthread4.cc: Further tweak to avoid fini race.
5070
 
5071
2003-05-15  Paolo Carlini  
5072
	    Nathan Myers  
5073
 
5074
	* include/bits/fstream.tcc (_M_overflow): Rewrote to call
5075
	_M_convert_to_external only once (_M_buf_size is now the size of
5076
	the put area + 1 for the overflow char of a full area); call
5077
	_M_set_buffer instead of _M_set_indeterminate.
5078
	(setbuf): Don't accept a buffer smaller than 2 chars.
5079
	(_M_underflow): Refill _M_buf_size - 1 chars; call _M_set_buffer,
5080
	instead of _M_set_determinate.
5081
	(open): Call _M_set_buffer, instead of _M_set_indeterminate.
5082
	(seekoff): Likewise.
5083
	* include/ext/stdio_filebuf.h (stdio_filebuf(int,
5084
	std::ios_base::openmode, bool, size_t),
5085
	stdio_filebuf(std::__c_file*, std::ios_base::openmode, size_t):
5086
	Likewise.
5087
	* include/std/std_fstream.h (_M_set_indeterminate): Remove.
5088
	(_M_set_determinate): Rename as _M_set_buffer, _M_buf_size ->
5089
	_M_buf_size - 1.
5090
	* include/std/std_streambuf.h: Tweak _M_out_lim comment.
5091
	* testsuite/27_io/basic_filebuf/sgetn/char/1.cc: Tweak, taking
5092
	into account that, for _M_buf_size == BUFSIZ == 8192, the size of
5093
	the put area is now BUFSIZ - 1.
5094
	* testsuite/ext/stdio_filebuf_2.cc: Tweak, taking into account
5095
	that now the smallest _M_buf_size is 2 (still fails, for the same
5096
	reason, with 3.2.3)
5097
 
5098
2003-05-14  Loren J. Rittle  
5099
 
5100
	* testsuite/thread/pthread4.cc: Tweak test.
5101
 
5102
2003-05-13  Benjamin Kosnik  
5103
 
5104
	* testsuite/27_io/ios_base/cons/copy_neg.cc: Remove
5105
	excess errors dg marker, use dg-errors instead.
5106
	* testsuite/27_io/ios_base/cons/assign_neg.cc: Same.
5107
	* testsuite/20_util/auto_ptr_neg.cc: Same.
5108
 
5109
2003-05-12  Benjamin Kosnik  
5110
 
5111
	* include/std/std_fstream.h (basic_filebuf::_M_codecvt): Add
5112
	cached member.
5113
	* include/bits/fstream.tcc (basic_filebuf::basic_filebuf):
5114
	Initialize _M_codecvt.
5115
	(basic_filebuf::imbue): Same.
5116
	(basic_filebuf::showmanyc): Use it.
5117
	(basic_filebuf::underflow): Use it.
5118
	(basic_filebuf::_M_convert_to_external): Use it.
5119
	(basic_filebuf::seekoff): Use it.
5120
	(basic_filebuf::imbue): Use it, tweaks.
5121
	* include/bits/localefwd.h (__check_facet): New.
5122
	* include/bits/locale_classes.h: Tweaks.
5123
	* include/bits/locale_facets.tcc: Tweaks.
5124
	* include/bits/basic_ios.h (basic_ios::_M_check_facet): Remove.
5125
	_M_fctype to _M_ctype, _M_fnumput to _M_num_put, _M_fnumget to
5126
	_M_num_get. Change _M_check_facet to __check_facet. Tweaks.
5127
	* include/bits/basic_ios.tcc: Same.
5128
	* include/bits/istream.tcc: Same.
5129
	* include/bits/ostream.tcc: Same.
5130
	* include/std/std_streambuf.h: Same.
5131
	* testsuite/27_io/basic_filebuf/imbue/char/2.cc: New.
5132
	* testsuite/27_io/basic_filebuf/imbue/char/3.cc: New.
5133
	* testsuite/27_io/basic_filebuf/imbue/wchar_t/1.cc: New.
5134
	* testsuite/27_io/basic_filebuf/imbue/wchar_t/2.cc: New.
5135
	* testsuite/27_io/basic_filebuf/imbue/wchar_t/3.cc: New.
5136
	* testsuite/27_io/basic_filebuf/imbue/wchar_t/9322.cc: New.
5137
 
5138
2003-05-12  Paolo Carlini  
5139
 
5140
	* testsuite/27_io/basic_filebuf/sgetc/char/1.cc: Remove
5141
	unnecessary includes and unused string literals.
5142
	* testsuite/27_io/basic_filebuf/sputbackc/char/1.cc: Likewise.
5143
	* testsuite/27_io/basic_filebuf/sputc/char/1.cc: Likewise.
5144
	* testsuite/27_io/basic_filebuf/sputn/char/1.cc: Likewise.
5145
	* testsuite/27_io/basic_filebuf/sungetc/char/1.cc: Likewise.
5146
 
5147
2003-05-12  Benjamin Kosnik  
5148
 
5149
	* include/bits/fstream.tcc (_M_overflow): Remove unbuffered bits.
5150
 
5151
2003-05-12  Paolo Carlini  
5152
 
5153
	* include/std/std_fstream.h (_M_convert_to_external): Change
5154
	to return bool, take two less streamsize parameters.
5155
	* include/bits/fstream.tcc (_M_convert_to_external): Tweak
5156
	consistently definition.
5157
	(_M_overflow): Adjust call points.
5158
 
5159
2003-05-12  Benjamin Kosnik  
5160
 
5161
	* testsuite/27_io/basic_filebuf/underflow/10096.cc: Add weak bits.
5162
 
5163
2003-05-11  Phil Edwards  
5164
 
5165
	* testsuite/Makefile.am:  Properly quote /both/ LD_RUN_PATHs.
5166
	* testsuite/Makefile.in:  Regenerate.
5167
 
5168
2003-05-11  Phil Edwards  
5169
 
5170
	* testsuite/Makefile.am:  Properly quote LD_RUN_PATH.
5171
	* testsuite/Makefile.in:  Regenerate.
5172
 
5173
2003-05-11  Gabriel Dos Reis 
5174
 
5175
	PR libstdc++/3181
5176
	* include/c_std/std_cmath.h: #include 
5177
	(acos): Handle integer argument.
5178
	(asin): Likewise.
5179
	(atan): Likewise.
5180
	(atan2): Likewise.
5181
	(ceil): Likewise.
5182
	(cos): Likewise.
5183
	(cosh): Likewise.
5184
	(exp): Likewise.
5185
	(fabs): Likewise.
5186
	(floor): Likewise.
5187
	(frexp): Likewise.
5188
	(ldexp): Likewise.
5189
	(log): Likewise.
5190
	(log10): Likewise.
5191
	(sin): Likewise.
5192
	(sinh): Likewise.
5193
	(sqrt): Likewise.
5194
	(tan): Likewise.
5195
	(tanh): Likewise.
5196
	* include/bits/cpp_type_traits.h (__are_same<>): New traits.
5197
	(__enable_if): Likewise.
5198
	* testsuite/26_numerics/cmath/overloads.C: New test.
5199
 
5200
2003-05-10  Petur Runolfsson  
5201
 
5202
	PR libstdc++/9027
5203
	PR libstdc++/9520
5204
	PR libstdc++/10096
5205
	* include/bits/fstream.tcc (basic_file::_M_underflow):  Add generic
5206
	implementation, based on old wchar_t specialization, add support
5207
	for codecvt::in() return value of codecvt_base::noconv, remove
5208
	_M_file.sys_ungetc() call.
5209
	* include/std/std_fstream.h (basic_file::underflow,
5210
	basic_file::uflow, basic_file::_M_underflow):  Remove
5211
	specialization declarations, call _M_underflow from generic versions
5212
	of underflow and uflow.
5213
	* src/fstream.cc (basic_file::underflow, basic_file::uflow,
5214
	basic_file::_M_underflow):  Remove specializations.
5215
	* src/Makefile.am (sources):  Remove fstream.cc.
5216
	* src/Makefile.in:  Regenerated.
5217
	* testsuite/27_io/basic_filebuf/underflow/10096.cc:  New test.
5218
	* testsuite/27_io/basic_filebuf/underflow/char/1.cc:  New test.
5219
	* testsuite/27_io/basic_filebuf/underflow/char/9027.cc:  New test.
5220
	* testsuite/27_io/basic_filebuf/underflow/wchar_t/9520.cc:  New test.
5221
 
5222
2003-05-10  Benjamin Kosnik  
5223
 
5224
	* include/ext/stdio_filebuf.h (__stdio_filebuf): Remove stack
5225
	buffer.
5226
	* config/io/basic_file_stdio.h (__basic_file::xsgetn): Remove
5227
	unbuffered bits.
5228
	(__basic_file::xsputn): Same.
5229
	(__basic_file::seekoff): Same.
5230
	(__basic_file::seekpos): Same.
5231
	(__basic_file::showmanyc): Same.
5232
	* config/io/basic_file_stdio.cc: Same.
5233
	* include/std/std_fstream.h: Same.
5234
	* include/bits/fstream.tcc: Same.
5235
	* src/fstream.cc: Same.
5236
	* testsuite/27_io/basic_filebuf/sgetn/char/1.cc (test05): Tidy.
5237
 
5238
2003-05-10  Petur Runolfsson  
5239
 
5240
	PR libstdc++/9520
5241
	PR libstdc++/9661
5242
	PR libstdc++/9662
5243
	* include/ext/stdio_sync_filebuf.h:  New file.
5244
	(basic_stdiobuf):  New.
5245
	* include/Makefile.am (ext_headers): Add ext/stdio_sync_filebuf.h
5246
	* include/Makefile.in: Regenerate.
5247
	* include/bits/ios_base.h (Init::_S_create_buffers,
5248
	Init::_S_destroy_buffers):  Remove declarations.
5249
	* src/globals.cc (buf_cout_sync, buf_cin_sync, buf_cerr_sync,
5250
	buf_wcout_sync, buf_wcin_sync, buf_wcerr_sync):  Define.
5251
	* src/ios.cc (Init::_S_create_buffers,
5252
	Init::_S_destroy_buffers):  Remove.
5253
	(Init::Init):  Create and use syncronized buffers.
5254
	(ios_base::sync_with_stdio):  Destroy syncronized buffers,
5255
	create and install unsyncronized buffers.
5256
	* testsuite/27_io/objects/char/10.cc:  New test.
5257
	* testsuite/27_io/objects/char/9.cc:  New test.
5258
	* testsuite/27_io/objects/char/9661-1.cc:  New test.
5259
	* testsuite/27_io/objects/char/9661-2_xin.cc:  New test.
5260
	* testsuite/27_io/objects/char/9661-2_xin.in:  New.
5261
	* testsuite/27_io/objects/wchar_t/1.cc:  New test.
5262
	* testsuite/27_io/objects/wchar_t/10.cc:  New test.
5263
	* testsuite/27_io/objects/wchar_t/2.cc:  New test.
5264
	* testsuite/27_io/objects/wchar_t/2523-1_xin.cc:  New test.
5265
	* testsuite/27_io/objects/wchar_t/2523-1_xin.in:  New.
5266
	* testsuite/27_io/objects/wchar_t/2523-2_xin.cc:  New test.
5267
	* testsuite/27_io/objects/wchar_t/2523-2_xin.in:  New.
5268
	* testsuite/27_io/objects/wchar_t/3045.cc:  New test.
5269
	* testsuite/27_io/objects/wchar_t/3647.cc:  New test.
5270
	* testsuite/27_io/objects/wchar_t/3_xin.cc:  New test.
5271
	* testsuite/27_io/objects/wchar_t/3_xin.in:  New.
5272
	* testsuite/27_io/objects/wchar_t/4_xin.cc:  New test.
5273
	* testsuite/27_io/objects/wchar_t/4_xin.in:  New.
5274
	* testsuite/27_io/objects/wchar_t/5.cc:  New test.
5275
	* testsuite/27_io/objects/wchar_t/5268.cc:  New test.
5276
	* testsuite/27_io/objects/wchar_t/5280_xin.cc:  New test.
5277
	* testsuite/27_io/objects/wchar_t/5280_xin.in:  New.
5278
	* testsuite/27_io/objects/wchar_t/6.cc:  New test.
5279
	* testsuite/27_io/objects/wchar_t/6548_xin.cc:  New test.
5280
	* testsuite/27_io/objects/wchar_t/6548_xin.in:  New.
5281
	* testsuite/27_io/objects/wchar_t/6648-1_xin.cc:  New test.
5282
	* testsuite/27_io/objects/wchar_t/6648-1_xin.in:  New.
5283
	* testsuite/27_io/objects/wchar_t/6648-2_xin.cc:  New test.
5284
	* testsuite/27_io/objects/wchar_t/6648-2_xin.in:  New.
5285
	* testsuite/27_io/objects/wchar_t/7.cc:  New test.
5286
	* testsuite/27_io/objects/wchar_t/7744_xin.cc:  New test.
5287
	* testsuite/27_io/objects/wchar_t/7744_xin.in:  New.
5288
	* testsuite/27_io/objects/wchar_t/8.cc:  New test.
5289
	* testsuite/27_io/objects/wchar_t/9_xin.cc:  New test.
5290
	* testsuite/27_io/objects/wchar_t/9_xin.in:  New.
5291
	* testsuite/27_io/objects/wchar_t/9520.cc:  New test.
5292
	* testsuite/27_io/objects/wchar_t/9661-1.cc:  New test.
5293
	* testsuite/27_io/objects/wchar_t/9661-2_xin.cc:  New test.
5294
	* testsuite/27_io/objects/wchar_t/9661-2_xin.in:  New.
5295
	* testsuite/27_io/objects/wchar_t/9662.cc:  New test.
5296
	* testsuite/ext/stdiobuf_char.cc:  New test.
5297
	* testsuite/ext/stdiobuf_wchar_t.cc:  New test.
5298
 
5299
2003-05-10  Paolo Carlini  
5300
 
5301
	* testsuite/27_io/basic_filebuf/close/char/3.cc: Remove
5302
	unnecessary includes and unused string literals.
5303
	* testsuite/27_io/basic_filebuf/in_avail/char/1.cc: Likewise.
5304
 
5305
2003-05-08  Paolo Carlini  
5306
 
5307
	* include/std/std_streambuf.h (setg, setp): Don't touch _M_mode.
5308
 
5309
2003-05-07  Richard Henderson  
5310
 
5311
	PR c++/10570
5312
	* libsupc++/eh_catch.cc (__cxa_begin_catch): Handle foreign exceptions.
5313
	(__cxa_end_catch): Likewise.
5314
	* libsupc++/eh_throw.cc (__cxa_rethrow): Likewise.  Use
5315
	_Unwind_Resume_or_Rethrow.
5316
	* libsupc++/eh_personality.cc (empty_exception_spec): New.
5317
	(PERSONALITY_FUNCTION): Don't ignore terminate or catch-all
5318
	for _UA_FORCE_UNWIND.  Honor empty filter spec for foreign
5319
	exceptions.  Don't push terminate/unexpected to cxa functions.
5320
	(__cxa_call_unexpected): Remove foreign exception fixmes.
5321
 
5322
2003-05-07  Benjamin Kosnik  
5323
 
5324
	* testsuite/27_io/ios_base/cons: New.
5325
	* testsuite/27_io/ios_base/cons/assign_neg.cc: New.
5326
	* testsuite/27_io/ios_base/cons/copy_neg.cc: New.
5327
 
5328
2003-05-07  Paolo Carlini  
5329
 
5330
	* include/std/std_fstream.h (_M_is_indeterminate): Remove.
5331
	* src/fstream.cc
5332
	(basic_filebuf::_M_underflow): Simplify: either
5333
	there is no buffer or __testget == !__testinit.
5334
 
5335
	* src/fstream.cc
5336
	(basic_filebuf::_M_underflow): _M_set_determinate()
5337
	automatically sets, if appropriate, _M_out_cur == _M_in_cur.
5338
 
5339
	* include/std/std_fstream.h (_M_destroy_pback): Don't set
5340
	unnecessarily _M_pback_cur_save and _M_pback_end_save.
5341
 
5342
	* include/std/std_fstream.h (_M_set_determinate): Minor tweak.
5343
 
5344
	* include/std/std_sstream.h (_M_sync): Minor tweak.
5345
 
5346
	* include/bits/fstream.tcc (close): No need to call
5347
	_M_destroy_pback, setting _M_pback_init to false suffices
5348
	to clean up.
5349
 
5350
2003-05-06  Benjamin Kosnik  
5351
 
5352
	* include/bits/stl_algo.h: Enums as _S_.
5353
	* include/bits/stl_tree.h: Same.
5354
	* include/bits/stl_bvector.h: Same.
5355
	* include/bits/ios_base.h: Same.
5356
	* include/bits/stl_alloc.h: Same.
5357
	* include/ext/stl_hashtable.h: Same.
5358
	* src/ios.cc: And here.
5359
 
5360
	* include/std/std_sstream.h: Replace _M_really_sync to _M_sync.
5361
	* include/bits/sstream.tcc: Same.
5362
 
5363
	* include/bits/basic_ios.h: Correct spacing for '< ctype'.
5364
 
5365
	* include/bits/locale_facets.tcc: Replace __temp to __tmp.
5366
 
5367
	* include/bits/locale_facets.h (__num_base): Remove protected.
5368
	Use _S_[io]* names for enumerations.
5369
	(_S_format_int): Remove.
5370
	* include/bits/locale_facets.tcc: Same.
5371
	* src/locale.cc: Same.
5372
 
5373
	* include/std/std_sstream.h (stringbuf::str): Tweak formatting.
5374
 
5375
2003-05-06  Phil Edwards  
5376
 
5377
	* docs/html/faq/index.html (3.10):  Add note about mips atomicity.h.
5378
	* docs/html/faq/index.txt:  Regenerated.
5379
 
5380
2003-05-06  Michael Ritzert 
5381
	    Matt Kraai 
5382
 
5383
	* include/ext/stl_rope.h (_Rope_RopeRep<>::_M_c_string_lock): Tweak.
5384
	And retweak.
5385
 
5386
2003-05-06  Richard Sandiford  
5387
 
5388
	* configure.target (mips*): Use the generic atomicity.h by default.
5389
 
5390
2003-05-05  Loren J. Rittle  
5391
	    (Inspired by an alternate patch from Danny Smith.)
5392
 
5393
	* include/bits/stl_threads.h (_Atomic_swap): Kill it...
5394
	(_Swap_lock_struct<>): ...and the horse it rode in on.
5395
	* src/globals.cc (_Swap_lock_struct<>): Likewise.
5396
	* include/ext/stl_rope.h (_Rope_RopeRep<>::_M_c_string_lock): New
5397
	member to support...
5398
	* include/ext/ropeimpl.h (rope<>::c_str): Follow *all* memory
5399
	visibility rules related to POSIX threads.
5400
	* testsuite/thread/pthread7-rope.cc: New test.
5401
 
5402
2003-05-04  Paolo Carlini  
5403
 
5404
	* testsuite/21_strings/basic_string/find/char/3.cc: New
5405
	file, testing basic_string::find_first_not_of.
5406
	* testsuite/21_strings/basic_string/find/wchar_t/3.cc:
5407
	Likewise for basic_string.
5408
 
5409
2003-05-03  Loren J. Rittle  
5410
 
5411
	* testsuite/thread/pthread1.cc: Remove special case for FreeBSD.
5412
 
5413
2003-05-02  Benjamin Kosnik  
5414
 
5415
	* include/Makefile.am (CLEANFILES): Remove PCH files in target
5416
	directory.
5417
	* include/Makefile.in: Regenerate.
5418
 
5419
2003-05-02  Paolo Carlini  
5420
 
5421
	* include/std/std_sstream.h (str()): Tidy.
5422
 
5423
2003-05-02  Nathan Myers  
5424
	    Paolo Carlini  
5425
 
5426
	* include/bits/streambuf.tcc (__copy_streambufs): Rewrote.
5427
 
5428
2003-05-02  Jonathan Wakely  
5429
 
5430
	* include/bits/basic_string.h (swap): Remove redundant template
5431
	parameters from declaration of non-template member function.
5432
 
5433
2003-05-01  Phil Edwards  
5434
 
5435
	* acconfig.h (_GLIBCPP_USE_NLS):  New symbol.
5436
	* configure.in:  Move libintl.h header test...
5437
	* acinclude.m4 (GLIBCPP_ENABLE_CLOCALE):  ...to here.  Gather all
5438
	the NLS-related test results into one symbol.
5439
	* src/functexcept.cc:  Use it here.
5440
	* aclocal.m4, config.h.in, configure:  Regenerated.
5441
 
5442
2003-05-01  Paolo Carlini  
5443
 
5444
	* include/bits/sstream.tcc (overflow): Instead of calling
5445
	str(), then _M_string.reserve, thus copying the contents
5446
	of the current buffer two times, just copy the latter in
5447
	a temporary, then use the 'swap trick'.
5448
 
5449
2003-05-01  Paolo Carlini  
5450
 
5451
	* include/std/std_sstream.h (str()): Revert the best of the
5452
	previous 'improvement', incorrect due to the COW nature of
5453
	v3 basic_string; simplify.
5454
 
5455
2003-05-01  Paolo Carlini  
5456
 
5457
	* include/bits/streambuf.tcc (__copy_streambufs): Adjust the
5458
	type of __avail to ptrdiff_t to avoid signed-unsigned warning.
5459
 
5460
2003-05-01  Benjamin Kosnik  
5461
 
5462
	* testsuite/abi_check.cc (check_version): Update known versions.
5463
	Check added symbols for version_name != base version. Add missing
5464
	symbols to incompatible list.
5465
 
5466
2003-05-01  Benjamin Kosnik  
5467
 
5468
	* acinclude.m4 (GLIBCPP_EXPORT_FLAGS): Remove -Winline.
5469
	* aclocal.m4: Regenerated.
5470
	* configure: Regenerated.
5471
 
5472
2003-05-01  Paolo Carlini  
5473
 
5474
	* include/bits/streambuf.tcc (basic_streambuf::xsgetn):
5475
	Const-ify some variables.
5476
	(basic_streambuf::xsputn): Likewise; change the type of some
5477
	variables to size_t.
5478
	(__copy_streambufs): Change some variables to size_t.
5479
 
5480
2003-05-01  Paolo Carlini  
5481
 
5482
	* include/std/std_sstream.h (str()): Avoid constructing
5483
	a basic_string temporary not only when it would turn out
5484
	to be zero-sized but also when identical to the current
5485
	_M_string buffer.
5486
 
5487
2003-05-01  Paolo Carlini  
5488
 
5489
	* include/ext/stdio_filebuf.h
5490
	(stdio_filebuf(int, std::ios_base::openmode, bool, size_t),
5491
	stdio_filebuf(std::__c_file*, std::ios_base::openmode, size_t)):
5492
	Shorten a bit (-10 lines) by factoring out some code.
5493
 
5494
2003-04-30  Phil Edwards  
5495
 
5496
	* acinclude.m4:  Add bit missing from previous patch.
5497
	* aclocal.m4, configure:  Regenerated.
5498
 
5499
2003-04-29  Phil Edwards  
5500
 
5501
	* docs/doxygen/mainpage.html:  Bring up to date.
5502
	* docs/doxygen/run_doxygen:  Cosmetic tweaks.  Work around a bug
5503
	in Doxygen.
5504
	* docs/doxygen/user.cfg.in:  Scanning the precompiled headers
5505
	breaks everything.  Don't scan them.
5506
	* docs/html/documentation.html:  Point to "Write after approval"
5507
	notes.
5508
 
5509
2003-04-29  Phil Edwards  
5510
 
5511
	* acinclude.m4 (GLIBCPP_ENABLE_CLOCALE):  Search for gettext outside
5512
	of libc if message translations are being used.  Fix info text in
5513
	xieee_1003.1-2001 case.
5514
	* aclocal.m4, configure:  Regenerate.
5515
 
5516
2003-04-29 Joel Sherrill  
5517
	   Loren J. Rittle 
5518
	   Martin v. Löwis  
5519
 
5520
	* config/cpu/i386/atomicity.h: New file.
5521
 
5522
2003-04-29  Paolo Carlini  
5523
 
5524
	* include/bits/fstream.tcc (open): Change to single return.
5525
 
5526
2003-04-29  Paolo Carlini  
5527
 
5528
	* include/std/std_sstream.h (underflow): Change to single return.
5529
 
5530
2003-04-28  Paolo Carlini  
5531
 
5532
	* include/std/std_streambuf.h (_M_buf): is currently
5533
	used only for basic_filebuf, therefore move it there.
5534
	(basic_streambuf(), ~basic_streambuf()): Adjust.
5535
	* include/std/std_fstream.h (_M_buf): Moved here.
5536
	* include/std/std_sstream.h (setbuf): Don't set _M_buf,
5537
	is actually redundant for basic_stringbuf.
5538
	(_M_really_sync): Likewise.
5539
	* include/bits/fstream.tcc (basic_filebuf()): Adjust.
5540
	* include/bits/sstream.tcc (seekoff): Adjust.
5541
 
5542
2003-04-28  Benjamin Kosnik  
5543
 
5544
	* src/localename.cc: Standardize exception strings.
5545
	* src/locale.cc: Same.
5546
	* src/ios.cc: Same.
5547
	* include/bits/basic_string.tcc: Same.
5548
	* include/bits/basic_ios.tcc: Same.
5549
	* include/std/std_bitset.h: Same.
5550
	* include/ext/ropeimpl.h: Same.
5551
	* include/bits/stl_vector.h: Same.
5552
	* include/bits/stl_deque.h: Same.
5553
	* include/bits/stl_bvector.h: Same.
5554
	* config/locale/generic/c_locale.cc: Same.
5555
	* config/locale/gnu/c_locale.cc: Same.
5556
	* config/locale/ieee_1003.1-2001/codecvt_specializations.h: Same.
5557
 
5558
	* testsuite/testsuite_hooks.cc (__gnu_cxx_test): Modify.
5559
 
5560
2003-04-28  Paolo Carlini  
5561
 
5562
	* include/std/std_streambuf.h (_M_buf_size): is currently
5563
	used only for basic_filebuf, therefore move it there.
5564
	(basic_streambuf(), ~basic_streambuf()): Adjust.
5565
	* include/std/std_fstream.h (_M_buf_size): Moved here.
5566
	* include/bits/fstream.tcc (basic_filebuf()): Adjust.
5567
 
5568
2003-04-28  Paolo Carlini  
5569
 
5570
	* include/bits/streambuf.tcc (__copy_streambufs): Don't use
5571
	_M_buf_size (synced input is now correctly dealt with
5572
	elsewhere); when the output buffer is full don't fall back
5573
	to a snextc-sputc loop, call overflow instead.
5574
 
5575
2003-04-28  Paolo Carlini  
5576
 
5577
	* include/bits/sstream.tcc (pbackfail): Shorten a bit (6 lines)
5578
	the innermost 'if' by factoring out some code.
5579
 
5580
2003-04-28  Phil Edwards  
5581
 
5582
	* configure.in:  Test for libintl.h.
5583
	* include/bits/c++config:  Define __N for everybody.
5584
	* include/bits/basic_string.h, include/bits/stl_bvector.h,
5585
	include/bits/stl_deque.h, include/bits/stl_vector.h,
5586
	include/std/std_bitset.h:  Wrap all __throw* text with __N.
5587
	* po/Makefile.am (pot):  New rule, mostly working.
5588
	* src/functexcept.cc:  Call gettext on all __throw* arguments when
5589
	-fexceptions is in effect.
5590
	* po/Makefile.in, config.h.in, configure:  Regenerate.
5591
 
5592
2003-04-28  Petur Runolfsson  
5593
 
5594
	PR libstdc++/9523
5595
	* include/bits/ios_base.h (Init::_S_ios_create,
5596
	Init::_S_ios_destroy):  Remove declarations.
5597
	(Init::_S_create_buffers,
5598
	Init::_S_destroy_buffers):  Declare
5599
	* src/ios.cc (Init::_S_ios_create):  Remove
5600
	(Init::_S_create_buffers):  Create buffers and add to streams.
5601
	(Init::_S_ios_destroy):  Rename to...
5602
	(Init::_S_destroy_buffers):  this.
5603
	(Init::Init):  Only construct streams once.
5604
	(Init::~Init):  Flush streams, don't destroy them.
5605
	(ios_base::sync_with_stdio):  Don't destroy streams, only buffers.
5606
	* testsuite/27_io/ios_base/sync_with_stdio/9523.cc:  New test.
5607
	* testsuite/27_io/objects/char/5.cc:  New test.
5608
	* testsuite/27_io/objects/char/5268.cc:  Avoid undefined behavior.
5609
	* testsuite/27_io/objects/char/6.cc:  New test.
5610
	* testsuite/27_io/objects/char/7.cc:  New test.
5611
 
5612
2003-04-28  Benjamin Kosnik  
5613
 
5614
	* testsuite/27_io/objects/char/8.cc:  New test.
5615
 
5616
2003-04-28  Benjamin Kosnik  
5617
 
5618
	* testsuite/22_locale/codecvt/unicode/char.cc: Remove bom usage.
5619
	* testsuite/22_locale/codecvt/unicode/wchar_t.cc: Same.
5620
 
5621
2003-04-27  Benjamin Kosnik  
5622
 
5623
	* include/std/std_fstream.h (basic_filebuf): _M_pback_destroy to
5624
	_M_destroy_pback. _M_pback_create to
5625
	_M_create_pback. _M_underflow_common to
5626
	_M_underflow. _M_really_overflow to _M_overflow.
5627
	* include/bits/fstream.tcc: Same.
5628
	* src/fstream.cc: Same.
5629
	* include/std/std_streambuf.h (basic_streambuf): _M_in_cur_move to
5630
	_M_move_in_cur.  _M_out_cur_move to _M_move_out_cur.
5631
	* include/bits/streambuf.tcc: Same.
5632
	* include/bits/fstream.tcc: Same.
5633
	* include/bits/sstream.tcc: Same.
5634
 
5635
2003-04-27  Benjamin Kosnik  
5636
 
5637
	* include/bits/locale_classes.h (locale::_Impl): Change _M_names
5638
	from fixed size array.
5639
	(locale): Change _S_categories as well.
5640
	Formatting tweaks.
5641
	* include/bits/locale_facets.tcc: Tweak.
5642
	* config/locale/gnu/c_locale.cc: Assign _S_categories.
5643
	* config/locale/generic/c_locale.cc: Same.
5644
	* src/locale.cc: Tweak.
5645
	* src/globals.cc: Change facet_name to name_vec, add names_c.
5646
	* src/localename.cc: Use them.
5647
	(locale::_Impl::~_Impl): Destroy _M_names.
5648
	(locale::_Impl::_Impl): Create _M_names.
5649
 
5650
2003-04-27  Andreas Schwab  
5651
 
5652
	* config/locale/ieee_1003.1-2001/codecvt_specializations.h
5653
	(__enc_traits): Use __ibom and __ebom instead of ignoring them.
5654
 
5655
2003-04-27  Nathan Myers  
5656
 
5657
	Move some basic_string members out of line because
5658
	they are too big to reasonably be inline.
5659
	* include/bits/basic_string.h
5660
	(assign(const basic_string&, size_type, size_type),
5661
	assign(const _CharT*, size_type),
5662
	insert(size_type, const basic_string&, size_type, size_type),
5663
	insert(size_type, const _CharT*, size_type),
5664
	replace(size_type, size_type, const _CharT*, size_type)):
5665
	Move from here to...
5666
	* include/bits/basic_string.tcc: ...here.
5667
 
5668
2003-04-26  Paolo Carlini  
5669
 
5670
	* include/bits/fstream.tcc (pbackfail): Shorten a bit (10 lines)
5671
	the innermost 'if' by factoring out some code.
5672
 
5673
2003-04-26  Paolo Carlini  
5674
 
5675
	* include/bits/streambuf.tcc (__copy_streambufs): Don't
5676
	use in_avail(), simplify.
5677
 
5678
2003-04-26  Paolo Carlini  
5679
 
5680
	* include/std/std_sstream.h (setbuf): don't set _M_buf_size,
5681
	in basic_stringbuf it's unused.
5682
 
5683
	* include/std/std_sstream.h (underflow): consistently use
5684
	_M_in_cur, not gptr().
5685
 
5686
2003-04-25  Ranjit Mathew  
5687
	    Phil Edwards  
5688
 
5689
	* testsuite_flags.in: Guard against the possibility
5690
	of having "xgcc" as a part of a folder name in the
5691
	path to the GCC build folder.
5692
	* testsuite/Makefile.am: Likewise.
5693
	* testsuite/Makefile.in: Regenerated.
5694
 
5695
2003-04-25  Benjamin Kosnik  
5696
 
5697
	PR libstdc++/10132
5698
	* include/std/std_fstream.h (basic_filebuf::is_open): Add throw()
5699
	exception specifications.
5700
	(basic_filebuf::close): Same.
5701
	(basic_filebuf::_M_pback_destroy): Same.
5702
	(basic_filebuf::_M_destroy_internal_buffer): Same.
5703
	(basic_filebuf): Remove __res_type typedef.
5704
	* src/fstream.cc: Same.
5705
	* include/bits/fstream.tcc
5706
	(basic_filebuf::_M_convert_to_external): Simplify.
5707
	(basic_filebuf::seekoff): Use has_facet	before use_facet.
5708
	(basic_filebuf::close): Add exception specification of throw().
5709
	* testsuite/27_io/basic_filebuf/cons: New.
5710
	* testsuite/27_io/basic_filebuf/cons/wchar_t: New.
5711
	* testsuite/27_io/basic_filebuf/cons/wchar_t/10132-1.cc: New.
5712
	* testsuite/27_io/basic_filebuf/seekoff/10132-2.cc: New.
5713
	* testsuite/27_io/basic_filebuf/seekpos/10132-3.cc: New.
5714
 
5715
2003-04-25  Benjamin Kosnik  
5716
 
5717
	* include/bits/locale_classes.h
5718
	(locale::_S_extra_categories_size): Remove.
5719
	* src/locale.cc: Remove _S_extra_categories_size.
5720
	* src/localename.cc: Same.
5721
	* config/locale/gnu/c_locale.cc: Same.
5722
	* config/locale/generic/c_locale.cc: Same.
5723
 
5724
2003-04-24  Richard Sandiford  
5725
 
5726
	* src/localename.cc (__gnu_cxx::facet_vec): Correct types.
5727
 
5728
2003-04-24  Phil Edwards  
5729
 
5730
	* docs/html/17_intro/howto.html:  Update some links.
5731
	* docs/html/18_support/howto.html:  Link doxygen numeric_limits notes.
5732
	* docs/html/27_io/howto.html:  Link doxygen stdio_filebuf notes.
5733
	* docs/html/ext/howto.html:  Link to demangler notes and API.
5734
	* docs/html/faq/index.html:  Remove trailing whitespace.
5735
	(1.4, 2.4, 3.8, 4.1):  Bring up to date.
5736
	(5.6):  Change to a bulleted list.
5737
 
5738
	* docs/html/faq/index.txt, docs/html/documentation.html,
5739
	docs/html/17_intro/porting.html:  Regenerate.
5740
 
5741
2003-04-23  Paolo Carlini  
5742
 
5743
	* testsuite/27_io/basic_filebuf/3.cc: _S_pback_size now
5744
	belongs to basic_filebuf.
5745
	* testsuite/27_io/basic_fstream/3.cc: Likewise.
5746
	* testsuite/27_io/basic_ifstream/3.cc: Likewise.
5747
	* testsuite/27_io/basic_ios/3.cc: Remove _S_pback_size
5748
	instantiation (now belongs to basic_filebuf).
5749
	* testsuite/27_io/basic_iostream/3.cc: Likewise.
5750
	* testsuite/27_io/basic_istream/3.cc: Likewise.
5751
	* testsuite/27_io/basic_istream/sentry/char/3983-fstream.cc:
5752
	_S_pback_size now belongs to basic_filebuf.
5753
	* testsuite/27_io/basic_istringstream/3.cc: Remove _S_pback_size
5754
	instantiation (now belongs to basic_filebuf).
5755
	* testsuite/27_io/basic_ofstream/3.cc: _S_pback_size now
5756
	belongs to basic_filebuf.
5757
	* testsuite/27_io/basic_ostream/3.cc: Remove _S_pback_size
5758
	instantiation (now belongs to basic_filebuf).
5759
	* testsuite/27_io/basic_ostream/sentry/char/3983-fstream.cc:
5760
	_S_pback_size now belongs to basic_filebuf.
5761
	* testsuite/27_io/basic_ostringstream/3.cc: Remove _S_pback_size
5762
	instantiation (now belongs to basic_filebuf).
5763
	* testsuite/27_io/basic_streambuf/3.cc: _S_pback_size now belongs
5764
	to basic_filebuf.
5765
	* testsuite/27_io/basic_stringbuf/3.cc: Remove _S_pback_size
5766
	instantiation (now belongs to basic_filebuf).
5767
	* testsuite/27_io/basic_stringstream/3.cc: Likewise.
5768
 
5769
2003-04-23  Benjamin Kosnik  
5770
 
5771
	* configure.in: Move GLIBCPP_CHECK_PCH before native/cross conditions.
5772
	* configure: Regenerated.
5773
 
5774
2003-04-23  Benjamin Kosnik  
5775
 
5776
	* config/locale/generic/c_locale.h (__convert_from_v): Use
5777
	attribute unused.
5778
 
5779
2003-04-23  Phil Edwards  
5780
 
5781
	* docs/html/ext/howto.html ('LWG Issues'):  Add issue 60, partial
5782
	implementation only.
5783
	* include/bits/istream.tcc (putback, unget, sync, tellg, seekg):
5784
	Comment and change to comply with DR 60 and the effect on gcount().
5785
	* include/std/std_istream.h:  Update comments.
5786
	* testsuite/27_io/basic_istream/putback/char/1.cc (test01):  Add
5787
	comments about reasons for tests.  Test sync() against gcount().
5788
	* testsuite/27_io/basic_istream/seekg/char/2.cc:  New file, test
5789
	for effect on gcount().
5790
	* testsuite/27_io/basic_istream/tellg/char/2.cc:  New file, test
5791
	for effect on gcount().
5792
 
5793
2003-04-22  Loren J. Rittle  
5794
 
5795
	* testsuite/27_io/basic_filebuf/close/char/9964.cc (test_07):
5796
	Adjust timing.
5797
 
5798
2003-04-22  Paolo Carlini  
5799
 
5800
	* include/std/std_streambuf.h (_S_pback_size, _M_pback,
5801
	_M_pback_cur_save, _M_pback_end_save, _M_pback_init,
5802
	_M_pback_create(), _M_pback_destroy()): Move to basic_filebuf.
5803
	(basic_streambuf::basic_streambuf()): Adjust.
5804
	* include/std/std_fstream.h (_S_pback_size, _M_pback,
5805
	_M_pback_cur_save, _M_pback_end_save, _M_pback_init,
5806
	_M_pback_create(), _M_pback_destroy()): Moved here
5807
	from basic_streambuf.
5808
	* include/bits/fstream.tcc (basic_filebuf::basic_filebuf()):
5809
	Adjust.
5810
	(basic_filebuf::_S_pback_size): Add declaration.
5811
	* include/bits/streambuf.tcc (basic_streambuf::_S_pback_size):
5812
	Remove declaration.
5813
 
5814
2003-04-21  Paolo Carlini  
5815
 
5816
	Consistently use _M_in_beg instead of eback(), _M_in_cur
5817
	instead of gptr(), and so on.
5818
	* include/bits/fstream.tcc (pbackfail, imbue): Here.
5819
	* include/bits/sstream.tcc (pbackfail, seekoff, seekpos): Ditto.
5820
	* include/bits/streambuf.tcc (sbumpc, sputbackc,
5821
	__copy_streambufs): Ditto.
5822
	* include/std/std_streambuf.h (sgetc): Ditto.
5823
 
5824
2003-04-21  Paolo Carlini  
5825
 
5826
	* include/bits/sstream.tcc (pbackfail, overflow):
5827
	Formatting fixes.
5828
 
5829
2003-04-21  Paolo Carlini  
5830
 
5831
	* include/std/std_streambuf.h (uflow()): It's used only by
5832
	basic_stringbuf (i.e., basic_filebuf provide its own uflow()),
5833
	therefore do not consider the _M_buf_unified == true case.
5834
 
5835
	* include/std/std_streambuf.h (sgetc()): Restore __ret variable.
5836
 
5837
2003-04-20  Paolo Carlini  
5838
 
5839
	* docs/html/ext/howto.html ('LWG Issues'):
5840
	Add issues 19, 90, 171, 231, 271.
5841
 
5842
2003-04-20  Paolo Carlini  
5843
 
5844
	* include/bits/sstream.tcc (pbackfail): Remove redundant
5845
	NULL pointer check from test involving _M_in_*.
5846
	(overflow, seekoff, seekpos): Const qualify bool variables.
5847
	* include/std/std_sstream.h (underflow): Remove redundant
5848
	NULL pointer check from test involving _M_in_*.
5849
	(_M_really_sync): Const qualify bool variables.
5850
	* src/fstream.cc (_M_underflow_common): Remove redundant
5851
	NULL pointer check from test involving _M_in_*, const qualify
5852
	bool variables.
5853
 
5854
	* include/std/std_streambuf.h (sgetc): Remove redundant
5855
	variable.
5856
 
5857
2003-04-18  Paolo Carlini  
5858
 
5859
	According to 5.9 para 2 (second bullet) for pointers p, q
5860
	pointing to the same type, with  p == 0 and q == 0, (p < q)
5861
	is false.
5862
	* include/bits/fstream.tcc (close, overflow, _M_really_overflow,
5863
	seekoff): Remove redundant NULL pointer checks from tests
5864
	involving _M_out_* and _M_in_*, const qualify bool variables.
5865
	(showmanyc, pbackfail, _M_convert_to_external, imbue): Const
5866
	qualify bool variables.
5867
	* include/bits/streambuf.tcc (sbumpc, sputbackc, sungetc, sputc):
5868
	Remove redundant NULL pointer checks from tests involving
5869
	_M_out_* and _M_in_*, const qualify bool variables.
5870
	* include/std/std_fstream.h (sync): Likewise.
5871
	(_M_is_indeterminate): Const qualify bool variables.
5872
	* include/std/std_streambuf.h (sgetc, uflow): Remove redundant
5873
	NULL pointer checks from tests involving _M_out_* and _M_in_*,
5874
	const qualify bool variables.
5875
	(_M_in_cur_move, _M_out_cur_move, uflow): Const qualify bool
5876
	variables.
5877
 
5878
2003-04-18  Loren J. Rittle  
5879
 
5880
	* include/c_std/std_cmath.h (C99 FP capture): Only undefine said
5881
	C99 FP macros, if actually captured.
5882
 
5883
	* docs/html/17_intro/porting.texi (_GLIBCPP_USE_C99_CHECK): New macro.
5884
	(_GLIBCPP_USE_C99_DYNAMIC): New macro.
5885
	(_GLIBCPP_USE_C99_LONG_LONG_CHECK): New macro.
5886
	(_GLIBCPP_USE_C99_LONG_LONG_DYNAMIC): New macro.
5887
	* config/os/bsd/freebsd/os_defines.h (_GLIBCPP_USE_C99_CHECK):
5888
	New macro.
5889
	(_GLIBCPP_USE_C99_DYNAMIC): New macro.
5890
	(_GLIBCPP_USE_C99_LONG_LONG_CHECK): New macro.
5891
	(_GLIBCPP_USE_C99_LONG_LONG_DYNAMIC): New macro.
5892
	* include/c_std/std_cstdlib.h: Use new macros.
5893
	* include/c_std/std_cstdio.h: Use new macros.
5894
	* include/c_std/std_cwchar.h: Use new macros.
5895
 
5896
2003-04-17  Benjamin Kosnik  
5897
 
5898
	PR libstdc++/9555
5899
	* include/bits/ostream.tcc: Catch all exceptions for formatted
5900
	output, instead of std::exception and derivatives.
5901
	* include/bits/istream.tcc: Same.
5902
	* testsuite/27_io/basic_ostream/inserters_arithmetic/char/9555-oa.cc:
5903
	* testsuite/27_io/basic_ostream/inserters_character/char/9555-oc.cc:
5904
	* testsuite/27_io/basic_ostream/inserters_other/char/9555-oo.cc:
5905
	* testsuite/27_io/basic_istream/extractors_arithmetic/char/9555-ia.cc:
5906
	* testsuite/27_io/basic_istream/extractors_character/char/9555-ic.cc:
5907
	* testsuite/27_io/basic_istream/extractors_other/char/9555-io.cc:
5908
	New.
5909
 
5910
2003-04-17  Phil Edwards  
5911
 
5912
	* include/bits/c++config:  Minor cosmetic tweaks.
5913
 
5914
2003-04-17  Loren J. Rittle  
5915
 
5916
	* testsuite_flags.in (PCHFLAGS): Find PCH in new home.
5917
	* include/Makefile.am (pch_input): Find in ${target_builddir}.
5918
	(pch_output): Rename to...
5919
	(pch_output_builddir): ..this.  Find in ${target_builddir}.
5920
	(pch_source): Tweak.
5921
	(pch_build): Key off a built file.
5922
	(pch_output rule): Rename to...
5923
	(pch_input rule): ...this.  Produce ${pch_output_builddir}
5924
	instead of ${pch_output}.
5925
	(install-pch rule): Install ${pch_output_builddir}.
5926
	* include/Makefile.in: Regenerated.
5927
 
5928
2003-04-17  Paolo Carlini  
5929
 
5930
	* include/std/std_streambuf.h (setp): _M_out_lim, being
5931
	the end limit of used put area, is set equal to _M_out_beg.
5932
 
5933
2003-04-16  Benjamin Kosnik  
5934
 
5935
	* acinclude.m4 (GLIBCPP_CHECK_PCH): New.
5936
	* aclocal.m4: Regenerated.
5937
	* configure.in: Remove old demangler bits.
5938
	Call pch checks.
5939
	* configure: Regenerate.
5940
	* config.h.in: Regenerate.
5941
	* include/Makefile.am (allstamps): Now allstamped.
5942
	(allcreated): Define this.
5943
	(all-local): Use 'em.
5944
	Conditionally define pch_build, pch_install based on
5945
	GLIBCPP_BUILD_PCH.
5946
	(${pch_output}): New rule.
5947
	(install-pch): New rule.
5948
	(install-headers): New rule.
5949
	(install-data-local): Install headers and conditionally pch.
5950
	* include/Makefile.in: Regenerate.
5951
	* testsuite_flags.in (--build-cxx): Use pch file.
5952
 
5953
2003-04-16  Jonathan Wakely  
5954
 
5955
	* docs/html/ext/sgiexts.html: Fix path to stylesheet.
5956
 
5957
2003-04-15  Benjamin Kosnik  
5958
	    Paolo Carlini  
5959
 
5960
	PR libstdc++/9423
5961
	* docs/html/27_io/howto.html
5962
	('The buffering is screwing up my program!'): Explain that
5963
	opening counts as an I/O operation.
5964
 
5965
2003-04-15  Andreas Tobler  
5966
 
5967
	* testsuite/thread/pthread1.cc: Enable for darwin test.
5968
	* testsuite/thread/pthread2.cc: Same.
5969
	* testsuite/thread/pthread3.cc: Same.
5970
	* testsuite/thread/pthread4.cc: Same.
5971
	* testsuite/thread/pthread5.cc: Same.
5972
	* testsuite/thread/pthread6.cc: Same.
5973
 
5974
2003-04-15  Loren J. Rittle  
5975
 
5976
	libstdc++/7680
5977
	* include/c_std/std_cmath.h (__gnu_cx::__c99_binding): New namespace.
5978
	Populate it with multiple legal ways to obtain the C99 float
5979
	transcendentals.  Use them instead of direct global reference.
5980
	(C99 FP capture): Guard usage with _GLIBCPP_USE_C99_FP_MACROS_DYNAMIC.
5981
	* docs/html/17_intro/porting.texi
5982
	(_GLIBCPP_USE_C99_FLOAT_TRANSCENDENTALS_CHECK): New macro.
5983
	(_GLIBCPP_USE_C99_FLOAT_TRANSCENDENTALS_DYNAMIC): New macro.
5984
	(_GLIBCPP_USE_C99_FP_MACROS_DYNAMIC): New macro.
5985
	* config/os/bsd/freebsd/os_defines.h
5986
	(_GLIBCPP_USE_C99_FLOAT_TRANSCENDENTALS_CHECK): New macro.
5987
	(_GLIBCPP_USE_C99_FLOAT_TRANSCENDENTALS_DYNAMIC): New macro.
5988
	* testsuite/26_numerics/c_math_dynamic.cc: New file.
5989
 
5990
2003-04-14  Andreas Tobler  
5991
	    Benjamin Kosnik  
5992
 
5993
	* config/os/generic/ctype_inline.h: Fix.
5994
 
5995
2003-04-14  Benjamin Kosnik  
5996
 
5997
	* testsuite/testsuite_hooks.h
5998
	(__gnu_cxx_test::run_test_wrapped_generic_locale_exception_catcher):
5999
	Change to try_named_locale.
6000
	* testsuite/testsuite_hooks.cc (__gnu_cxx_test): Same.
6001
 
6002
	* testsuite/22_locale/codecvt/always_noconv/wchar_t/2.cc: Use
6003
	try_named_locale.
6004
	* testsuite/22_locale/codecvt/always_noconv/wchar_t/3.cc: Same.
6005
	* testsuite/22_locale/codecvt/always_noconv/wchar_t/4.cc: Same.
6006
	* testsuite/22_locale/codecvt/encoding/wchar_t/2.cc: Same.
6007
	* testsuite/22_locale/codecvt/encoding/wchar_t/3.cc: Same.
6008
	* testsuite/22_locale/codecvt/encoding/wchar_t/4.cc: Same.
6009
	* testsuite/22_locale/codecvt/in/wchar_t/2.cc: Same.
6010
	* testsuite/22_locale/codecvt/in/wchar_t/3.cc: Same.
6011
	* testsuite/22_locale/codecvt/in/wchar_t/4.cc: Same.
6012
	* testsuite/22_locale/codecvt/in/wchar_t/7.cc: Same.
6013
	* testsuite/22_locale/codecvt/in/wchar_t/8.cc: Same.
6014
	* testsuite/22_locale/codecvt/in/wchar_t/9.cc: Same.
6015
	* testsuite/22_locale/codecvt/length/wchar_t/2.cc: Same.
6016
	* testsuite/22_locale/codecvt/length/wchar_t/3.cc: Same.
6017
	* testsuite/22_locale/codecvt/length/wchar_t/4.cc: Same.
6018
	* testsuite/22_locale/codecvt/length/wchar_t/7.cc: Same.
6019
	* testsuite/22_locale/codecvt/max_length/wchar_t/2.cc: Same.
6020
	* testsuite/22_locale/codecvt/max_length/wchar_t/3.cc: Same.
6021
	* testsuite/22_locale/codecvt/max_length/wchar_t/4.cc: Same.
6022
	* testsuite/22_locale/codecvt/out/wchar_t/2.cc: Same.
6023
	* testsuite/22_locale/codecvt/out/wchar_t/3.cc: Same.
6024
	* testsuite/22_locale/codecvt/out/wchar_t/4.cc: Same.
6025
	* testsuite/22_locale/codecvt/out/wchar_t/7.cc: Same.
6026
	* testsuite/22_locale/codecvt/unshift/wchar_t/2.cc: Same.
6027
	* testsuite/22_locale/codecvt/unshift/wchar_t/3.cc: Same.
6028
	* testsuite/22_locale/codecvt/unshift/wchar_t/4.cc: Same.
6029
	* testsuite/22_locale/collate/compare/char/1.cc: Same.
6030
	* testsuite/22_locale/collate/compare/char/2.cc: Same.
6031
	* testsuite/22_locale/collate/compare/char/3.cc: Same.
6032
	* testsuite/22_locale/collate/compare/wchar_t/1.cc: Same.
6033
	* testsuite/22_locale/collate/compare/wchar_t/2.cc: Same.
6034
	* testsuite/22_locale/collate/compare/wchar_t/3.cc: Same.
6035
	* testsuite/22_locale/collate/hash/char/2.cc: Same.
6036
	* testsuite/22_locale/collate/hash/wchar_t/2.cc: Same.
6037
	* testsuite/22_locale/collate/transform/char/2.cc: Same.
6038
	* testsuite/22_locale/collate/transform/char/3.cc: Same.
6039
	* testsuite/22_locale/collate/transform/wchar_t/2.cc: Same.
6040
	* testsuite/22_locale/collate/transform/wchar_t/3.cc: Same.
6041
	* testsuite/22_locale/collate_byname/1.cc: Same.
6042
	* testsuite/22_locale/ctype/is/char/2.cc: Same.
6043
	* testsuite/22_locale/ctype/is/wchar_t/2.cc: Same.
6044
	* testsuite/22_locale/ctype/narrow/wchar_t/3.cc: Same.
6045
	* testsuite/22_locale/ctype/widen/wchar_t/2.cc: Same.
6046
	* testsuite/22_locale/ctype/widen/wchar_t/3.cc: Same.
6047
	* testsuite/22_locale/facet/2.cc: Same.
6048
	* testsuite/22_locale/locale/cons/2.cc: Same.
6049
	* testsuite/22_locale/locale/cons/4.cc: Same.
6050
	* testsuite/22_locale/locale/cons/5.cc: Same.
6051
	* testsuite/22_locale/locale/cons/7.cc: Same.
6052
	* testsuite/22_locale/locale/cons/7222-c.cc: Same.
6053
	* testsuite/22_locale/locale/cons/7222-env.cc: Same.
6054
	* testsuite/22_locale/locale/global_locale_objects/2.cc: Same.
6055
	* testsuite/22_locale/messages/members/char/1.cc: Same.
6056
	* testsuite/22_locale/messages/members/char/2.cc: Same.
6057
	* testsuite/22_locale/messages/members/char/3.cc: Same.
6058
	* testsuite/22_locale/messages_byname/1.cc: Same.
6059
	* testsuite/22_locale/money_get/get/char/1.cc: Same.
6060
	* testsuite/22_locale/money_get/get/char/2.cc: Same.
6061
	* testsuite/22_locale/money_get/get/char/3.cc: Same.
6062
	* testsuite/22_locale/money_get/get/char/4.cc: Same.
6063
	* testsuite/22_locale/money_get/get/wchar_t/1.cc: Same.
6064
	* testsuite/22_locale/money_get/get/wchar_t/2.cc: Same.
6065
	* testsuite/22_locale/money_get/get/wchar_t/3.cc: Same.
6066
	* testsuite/22_locale/money_get/get/wchar_t/4.cc: Same.
6067
	* testsuite/22_locale/money_put/put/char/1.cc: Same.
6068
	* testsuite/22_locale/money_put/put/char/2.cc: Same.
6069
	* testsuite/22_locale/money_put/put/char/3.cc: Same.
6070
	* testsuite/22_locale/money_put/put/wchar_t/1.cc: Same.
6071
	* testsuite/22_locale/money_put/put/wchar_t/2.cc: Same.
6072
	* testsuite/22_locale/money_put/put/wchar_t/3.cc: Same.
6073
	* testsuite/22_locale/moneypunct/members/char/2.cc: Same.
6074
	* testsuite/22_locale/moneypunct/members/wchar_t/2.cc: Same.
6075
	* testsuite/22_locale/moneypunct_byname/1.cc: Same.
6076
	* testsuite/22_locale/num_get/get/char/1.cc: Same.
6077
	* testsuite/22_locale/num_get/get/char/2.cc: Same.
6078
	* testsuite/22_locale/num_get/get/char/3.cc: Same.
6079
	* testsuite/22_locale/num_get/get/char/5.cc: Same.
6080
	* testsuite/22_locale/num_get/get/char/6.cc: Same.
6081
	* testsuite/22_locale/num_get/get/wchar_t/1.cc: Same.
6082
	* testsuite/22_locale/num_get/get/wchar_t/2.cc: Same.
6083
	* testsuite/22_locale/num_get/get/wchar_t/3.cc: Same.
6084
	* testsuite/22_locale/num_get/get/wchar_t/5.cc: Same.
6085
	* testsuite/22_locale/num_get/get/wchar_t/6.cc: Same.
6086
	* testsuite/22_locale/num_put/put/char/1.cc: Same.
6087
	* testsuite/22_locale/num_put/put/char/2.cc: Same.
6088
	* testsuite/22_locale/num_put/put/char/3.cc: Same.
6089
	* testsuite/22_locale/num_put/put/char/5.cc: Same.
6090
	* testsuite/22_locale/num_put/put/wchar_t/1.cc: Same.
6091
	* testsuite/22_locale/num_put/put/wchar_t/2.cc: Same.
6092
	* testsuite/22_locale/num_put/put/wchar_t/3.cc: Same.
6093
	* testsuite/22_locale/num_put/put/wchar_t/5.cc: Same.
6094
	* testsuite/22_locale/numpunct/members/char/1.cc: Same.
6095
	* testsuite/22_locale/numpunct/members/char/2.cc: Same.
6096
	* testsuite/22_locale/numpunct/members/wchar_t/1.cc: Same.
6097
	* testsuite/22_locale/numpunct/members/wchar_t/2.cc: Same.
6098
	* testsuite/22_locale/numpunct_byname/1.cc: Same.
6099
	* testsuite/22_locale/numpunct_byname/2.cc: Same.
6100
	* testsuite/22_locale/time_get/date_order/char/1.cc: Same.
6101
	* testsuite/22_locale/time_get/date_order/wchar_t/1.cc: Same.
6102
	* testsuite/22_locale/time_get/get_date/char/1.cc: Same.
6103
	* testsuite/22_locale/time_get/get_date/char/2.cc: Same.
6104
	* testsuite/22_locale/time_get/get_date/wchar_t/1.cc: Same.
6105
	* testsuite/22_locale/time_get/get_date/wchar_t/2.cc: Same.
6106
	* testsuite/22_locale/time_get/get_monthname/char/1.cc: Same.
6107
	* testsuite/22_locale/time_get/get_monthname/char/2.cc: Same.
6108
	* testsuite/22_locale/time_get/get_monthname/wchar_t/1.cc: Same.
6109
	* testsuite/22_locale/time_get/get_monthname/wchar_t/2.cc: Same.
6110
	* testsuite/22_locale/time_get/get_time/char/1.cc: Same.
6111
	* testsuite/22_locale/time_get/get_time/char/2.cc: Same.
6112
	* testsuite/22_locale/time_get/get_time/wchar_t/1.cc: Same.
6113
	* testsuite/22_locale/time_get/get_time/wchar_t/2.cc: Same.
6114
	* testsuite/22_locale/time_get/get_weekday/char/1.cc: Same.
6115
	* testsuite/22_locale/time_get/get_weekday/char/2.cc: Same.
6116
	* testsuite/22_locale/time_get/get_weekday/wchar_t/1.cc: Same.
6117
	* testsuite/22_locale/time_get/get_weekday/wchar_t/2.cc: Same.
6118
	* testsuite/22_locale/time_get/get_year/char/1.cc: Same.
6119
	* testsuite/22_locale/time_get/get_year/wchar_t/1.cc: Same.
6120
	* testsuite/22_locale/time_put/put/char/1.cc: Same.
6121
	* testsuite/22_locale/time_put/put/char/2.cc: Same.
6122
	* testsuite/22_locale/time_put/put/char/3.cc: Same.
6123
	* testsuite/22_locale/time_put/put/char/4.cc: Same.
6124
	* testsuite/22_locale/time_put/put/char/5.cc: Same.
6125
	* testsuite/22_locale/time_put/put/char/6.cc: Same.
6126
	* testsuite/22_locale/time_put/put/char/7.cc: Same.
6127
	* testsuite/22_locale/time_put/put/char/8.cc: Same.
6128
	* testsuite/22_locale/time_put/put/wchar_t/1.cc: Same.
6129
	* testsuite/22_locale/time_put/put/wchar_t/2.cc: Same.
6130
	* testsuite/22_locale/time_put/put/wchar_t/3.cc: Same.
6131
	* testsuite/22_locale/time_put/put/wchar_t/4.cc: Same.
6132
	* testsuite/22_locale/time_put/put/wchar_t/5.cc: Same.
6133
	* testsuite/22_locale/time_put/put/wchar_t/6.cc: Same.
6134
	* testsuite/22_locale/time_put/put/wchar_t/7.cc: Same.
6135
	* testsuite/22_locale/time_put/put/wchar_t/8.cc: Same.
6136
	* testsuite/27_io/basic_filebuf/imbue/char/9322.cc: Same.
6137
	* testsuite/27_io/basic_ios/copyfmt/char/2.cc: Same.
6138
	* testsuite/27_io/basic_ostream/inserters_arithmetic/char/2.cc: Same.
6139
	* testsuite/27_io/basic_streambuf/imbue/char/9322.cc: Same.
6140
	* testsuite/27_io/basic_stringbuf/imbue/char/9322.cc: Same.
6141
 
6142
2003-04-14  Andreas Tobler  
6143
 
6144
	* configure.target (_cpu_incdir_fullpath): Solaris 2.9 uses
6145
	solaris includes, not generic.
6146
 
6147
2003-04-14  Loren J. Rittle  
6148
 
6149
	* testsuite/26_numerics/c99_classification_macros_c.cc: Add XFAIL.
6150
 
6151
	* include/std/std_bitset.h (_M_do_find_next): Fix -Wall nit.
6152
	* include/bits/concept_check.h: Fix multi-line comment.
6153
	* testsuite/17_intro/headers.cc (dg-options): Add -Wall -Wsystem-header
6154
	when target is *-*-freebsd*.
6155
 
6156
2003-04-14  Nathan Myers  
6157
	    Paolo Carlini  
6158
 
6159
	PR libstdc++/9701 (in_avail())
6160
	* include/std/std_streambuf.h (in_avail): Simplify, in_avail
6161
	doesn't care if there is anything in some putback cell.
6162
	* testsuite/27_io/basic_streambuf/in_avail/char/9701-3.cc: Add.
6163
 
6164
	* testsuite/27_io/basic_filebuf/in_avail/char/1.cc: Remove some
6165
	unused string literals.
6166
 
6167
2003-04-14  Paolo Carlini  
6168
 
6169
	* include/bits/fstream.tcc (basic_filebuf::setbuf): Don't set
6170
	_M_out_end, _M_set_indeterminate() does it.
6171
 
6172
2003-04-12  John David Anglin  
6173
 
6174
	* os/hpux/ctype_inline.h: Replace with gnu-linux version.
6175
 
6176
2003-04-12  David Edelsohn  
6177
 
6178
	* testsuite/27_io/basic_istream/sentry/char/3983-fstream.cc:
6179
	Change basic_streambuf instantiation to "unsigned char".
6180
	* testsuite/27_io/basic_ostream/sentry/char/3983-fstream.cc: Same.
6181
 
6182
2003-04-12  Paolo Carlini  
6183
 
6184
	Remove _M_buf_size_opt, use directly _M_buf_size instead.
6185
	* include/bits/fstream.tcc
6186
	(basic_filebuf::_M_allocate_internal_buffer, setbuf): Remove
6187
	references to _M_buf_size_opt.
6188
	* include/bits/sstream.tcc (basic_stringbuf::overflow): Likewise.
6189
	* include/bits/streambuf.tcc (__copy_streambufs): Likewise, rename
6190
	__bufsize to __in_avail and __size_opt to __buf_size.
6191
	* include/ext/stdio_filebuf.h (stdio_filebuf::stdio_filebuf): Likewise.
6192
	* include/std/std_sstream.h (_M_stringbuf_init, setbuf): Likewise.
6193
	* include/std/std_streambuf.h (~basic_streambuf(),
6194
	basic_streambuf()): Likewise, remove _M_buf_size_opt member.
6195
	* testsuite/27_io/basic_filebuf/close/char/3.cc: Set _M_buf_size.
6196
	* testsuite/27_io/basic_filebuf/in_avail/char/1.cc: Likewise.
6197
	* testsuite/27_io/basic_filebuf/sbumpc/char/1.cc: Likewise.
6198
	* testsuite/27_io/basic_filebuf/seekoff/char/1.cc: Likewise.
6199
	* testsuite/27_io/basic_filebuf/seekpos/char/1.cc: Likewise.
6200
	* testsuite/27_io/basic_filebuf/sgetc/char/1.cc: Likewise.
6201
	* testsuite/27_io/basic_filebuf/sgetn/char/1.cc: Likewise.
6202
	* testsuite/27_io/basic_filebuf/snextc/char/1.cc: Likewise.
6203
	* testsuite/27_io/basic_filebuf/sputbackc/char/1.cc: Likewise.
6204
	* testsuite/27_io/basic_filebuf/sputc/char/1.cc: Likewise.
6205
	* testsuite/27_io/basic_filebuf/sputn/char/1.cc: Likewise.
6206
	* testsuite/27_io/basic_filebuf/sungetc/char/1.cc: Likewise.
6207
 
6208
2003-04-12  Paolo Carlini  
6209
 
6210
	* include/ext/stdio_filebuf.h
6211
	(stdio_filebuf::stdio_filebuf(int, openmode, bool, size_t),
6212
	stdio_filebuf::stdio_filebuf(__c_file*, openmode, size_t):
6213
	_M_buf_size_opt == 0 only means "not to use an allocated buffer"
6214
	since a stack-based buffer is used for small values of the size_t
6215
	parameter.
6216
	* include/bits/fstream.tcc (basic_filebuf::_M_really_overflow).
6217
	If _M_buf_size != 0 flush out the buffer (any kind, stack-based too).
6218
	* testsuite/ext/stdio_filebuf_2.cc: New testfile.
6219
 
6220
2003-04-12  Paolo Carlini  
6221
 
6222
	PR libstdc++/9533
6223
	* testsuite/27_io/basic_filebuf/showmanyc/char/9533-1.cc: New.
6224
	* testsuite/27_io/basic_filebuf/showmanyc/char/9533-2.cc: Ditto.
6225
 
6226
2003-04-11  Benjamin Kosnik  
6227
 
6228
	* testsuite/22_locale/locale/cons/3.cc: Split.
6229
	* testsuite/22_locale/locale/cons/7222-c.cc: New.
6230
	* testsuite/22_locale/locale/cons/7222-env.cc: New.
6231
	Check before trying to create a locale from the environment.
6232
	* testsuite/27_io/ios_base/state/1.cc (test02): Use "C" locale.
6233
	* testsuite/27_io/basic_istream/extractors_arithmetic/char/12.cc:
6234
	Adjust includes.
6235
 
6236
2003-04-11  Benjamin Kosnik  
6237
 
6238
	* testsuite/22_locale/ctype/is/char/3.cc (test03): Use the classic
6239
	locale to construct this hybrid locale, not the global locale.
6240
 
6241
2003-04-11  Benjamin Kosnik  
6242
 
6243
	* testsuite/27_io/basic_istream/sentry/char/3983-fstream.cc: Add
6244
	instantiation for AIX.
6245
	* testsuite/27_io/basic_ostream/sentry/char/3983-fstream.cc: Same.
6246
	* testsuite/25_algorithms/min_max.cc: Same.
6247
 
6248
2003-04-10  John David Anglin  
6249
 
6250
	* basic_file_stdio.cc (__basic_file::close): Don't flush stream
6251
	twice.  Always set _M_cfile to 0 when stream was open.
6252
 
6253
2003-04-09  Benjamin Kosnik  
6254
 
6255
	Reshuffle 27_io testsuite.
6256
	* testsuite/27_io/filebuf.cc,
6257
	filebuf_members-1.tst, filebuf_members-1.txt, filebuf_members.cc,
6258
	filebuf_virtuals-1.tst, filebuf_virtuals-1.txt,
6259
	filebuf_virtuals-2.tst, filebuf_virtuals-3.tst,
6260
	filebuf_virtuals.cc, fpos.cc, fstream.cc, fstream_members.cc,
6261
	ifstream.cc, ifstream_members-1.tst, ifstream_members-1.txt,
6262
	ifstream_members.cc, instantiations.cc, ios.cc,
6263
	ios_base_callbacks.cc, ios_base_members_static-1.tst,
6264
	ios_base_members_static.cc, ios_base_storage.cc,
6265
	ios_base_types.cc, ios_ctor.cc, ios_init.cc,
6266
	ios_manip_basefield.cc, ios_manip_fmtflags.cc, ios_members.cc,
6267
	iostream.cc, iostream_members.cc, istream.cc,
6268
	istream_exception.cc, istream_extractor_char.cc,
6269
	istream_extractor_other-1.tst, istream_extractor_other-1.txt,
6270
	istream_extractor_other-2.tst, istream_extractor_other.cc,
6271
	istream_manip.cc, istream_seeks-1.tst, istream_seeks-1.txt,
6272
	istream_seeks-2.tst, istream_seeks-3.tst, istream_seeks.cc,
6273
	istream_sentry.cc, istream_unformatted-1.tst,
6274
	istream_unformatted-1.txt, istream_unformatted.cc,
6275
	istringstream.cc, istringstream_members.cc,
6276
	narrow_stream_objects.cc, ofstream.cc, ofstream_members-1.tst,
6277
	ofstream_members.cc, ostream.cc, ostream_exception.cc,
6278
	ostream_fail.cc, ostream_inserter_arith.cc,
6279
	ostream_inserter_char-1.tst, ostream_inserter_char-1.txt,
6280
	ostream_inserter_char.cc, ostream_inserter_other-1.tst,
6281
	ostream_inserter_other-2.tst, ostream_inserter_other.cc,
6282
	ostream_manip.cc, ostream_seeks-1.tst, ostream_seeks.cc,
6283
	ostream_sentry.cc, ostream_unformatted.cc, ostringstream.cc,
6284
	ostringstream_members.cc, standard_manipulators.cc, streambuf.cc,
6285
	streambuf_members.cc, stringbuf.cc, stringbuf_members.cc,
6286
	stringbuf_virtuals.cc, stringstream.cc, stringstream_members.cc,
6287
	wide_stream_objects.cc, istream_extractor_arith/01.cc,
6288
	istream_extractor_arith/02.cc, istream_extractor_arith/03.cc,
6289
	istream_extractor_arith/06.cc, istream_extractor_arith/07.cc,
6290
	istream_extractor_arith/08.cc, istream_extractor_arith/09.cc,
6291
	istream_extractor_arith/10.cc, istream_extractor_arith/11.cc,
6292
	istream_extractor_arith/12.cc, istream_extractor_arith/13.cc:
6293
	Split into...
6294
	* 27_io/basic_filebuf/1.cc: New.
6295
	* 27_io/basic_filebuf/2.cc: New.
6296
	* 27_io/basic_filebuf/3.cc: New.
6297
	* 27_io/basic_filebuf/4.cc: New.
6298
	* 27_io/basic_filebuf/close/char/1.cc: New.
6299
	* 27_io/basic_filebuf/close/char/2.cc: New.
6300
	* 27_io/basic_filebuf/close/char/3.cc: New.
6301
	* 27_io/basic_filebuf/close/char/4879.cc: New.
6302
	* 27_io/basic_filebuf/close/char/9964.cc: New.
6303
	* 27_io/basic_filebuf/imbue/char/1.cc: New.
6304
	* 27_io/basic_filebuf/imbue/char/9322.cc: New.
6305
	* 27_io/basic_filebuf/in_avail/char/1.cc: New.
6306
	* 27_io/basic_filebuf/is_open/char/1.cc: New.
6307
	* 27_io/basic_filebuf/open/char/1.cc: New.
6308
	* 27_io/basic_filebuf/open/char/2.cc: New.
6309
	* 27_io/basic_filebuf/open/char/3.cc: New.
6310
	* 27_io/basic_filebuf/open/char/9507.cc: New.
6311
	* 27_io/basic_filebuf/overflow/char/1.cc: New.
6312
	* 27_io/basic_filebuf/overflow/char/3599.cc: New.
6313
	* 27_io/basic_filebuf/overflow/char/9169.cc: New.
6314
	* 27_io/basic_filebuf/overflow/char/9182-2.cc: New.
6315
	* 27_io/basic_filebuf/overflow/char/9988.cc: New.
6316
	* 27_io/basic_filebuf/sbumpc/char/1.cc: New.
6317
	* 27_io/basic_filebuf/sbumpc/char/9825.cc: New.
6318
	* 27_io/basic_filebuf/seekoff/char/1.cc: New.
6319
	* 27_io/basic_filebuf/seekoff/char/2.cc: New.
6320
	* 27_io/basic_filebuf/seekpos/char/1.cc: New.
6321
	* 27_io/basic_filebuf/seekpos/char/2.cc: New.
6322
	* 27_io/basic_filebuf/setbuf/char/1.cc: New.
6323
	* 27_io/basic_filebuf/setbuf/char/2.cc: New.
6324
	* 27_io/basic_filebuf/setbuf/char/3.cc: New.
6325
	* 27_io/basic_filebuf/sgetc/char/1.cc: New.
6326
	* 27_io/basic_filebuf/sgetn/char/1.cc: New.
6327
	* 27_io/basic_filebuf/sgetn/char/2.cc: New.
6328
	* 27_io/basic_filebuf/snextc/char/1.cc: New.
6329
	* 27_io/basic_filebuf/sputbackc/char/1.cc: New.
6330
	* 27_io/basic_filebuf/sputbackc/char/9425.cc: New.
6331
	* 27_io/basic_filebuf/sputc/char/1.cc: New.
6332
	* 27_io/basic_filebuf/sputc/char/1057.cc: New.
6333
	* 27_io/basic_filebuf/sputc/char/9701-2.cc: New.
6334
	* 27_io/basic_filebuf/sputn/char/1.cc: New.
6335
	* 27_io/basic_filebuf/sputn/char/1057.cc: New.
6336
	* 27_io/basic_filebuf/sputn/char/9701-1.cc: New.
6337
	* 27_io/basic_filebuf/sungetc/char/1.cc: New.
6338
	* 27_io/basic_filebuf/sync/char/1057.cc: New.
6339
	* 27_io/basic_filebuf/sync/char/9182-1.cc: New.
6340
	* 27_io/basic_filebuf/underflow/char/10097.cc: New.
6341
	* 27_io/basic_fstream/1.cc: New.
6342
	* 27_io/basic_fstream/2.cc: New.
6343
	* 27_io/basic_fstream/3.cc: New.
6344
	* 27_io/basic_fstream/4.cc: New.
6345
	* 27_io/basic_fstream/rdbuf/char/2832.cc: New.
6346
	* 27_io/basic_ifstream/1.cc: New.
6347
	* 27_io/basic_ifstream/2.cc: New.
6348
	* 27_io/basic_ifstream/3.cc: New.
6349
	* 27_io/basic_ifstream/4.cc: New.
6350
	* 27_io/basic_ifstream/cons/char/1.cc: New.
6351
	* 27_io/basic_ifstream/open/char/1.cc: New.
6352
	* 27_io/basic_ifstream/rdbuf/char/2832.cc: New.
6353
	* 27_io/basic_ios/1.cc: New.
6354
	* 27_io/basic_ios/2.cc: New.
6355
	* 27_io/basic_ios/3.cc: New.
6356
	* 27_io/basic_ios/4.cc: New.
6357
	* 27_io/basic_ios/clear/char/1.cc: New.
6358
	* 27_io/basic_ios/cons/char/1.cc: New.
6359
	* 27_io/basic_ios/cons/char/2.cc: New.
6360
	* 27_io/basic_ios/cons/char/3.cc: New.
6361
	* 27_io/basic_ios/copyfmt/char/1.cc: New.
6362
	* 27_io/basic_ios/copyfmt/char/2.cc: New.
6363
	* 27_io/basic_ios/exceptions/char/1.cc: New.
6364
	* 27_io/basic_ios/locales/char/1.cc: New.
6365
	* 27_io/basic_iostream/1.cc: New.
6366
	* 27_io/basic_iostream/2.cc: New.
6367
	* 27_io/basic_iostream/3.cc: New.
6368
	* 27_io/basic_iostream/4.cc: New.
6369
	* 27_io/basic_istream/1.cc: New.
6370
	* 27_io/basic_istream/2.cc: New.
6371
	* 27_io/basic_istream/3.cc: New.
6372
	* 27_io/basic_istream/4.cc: New.
6373
	* 27_io/basic_istream/exceptions/char/9561.cc: New.
6374
	* 27_io/basic_istream/extractors_arithmetic/char/01.cc: New.
6375
	* 27_io/basic_istream/extractors_arithmetic/char/02.cc: New.
6376
	* 27_io/basic_istream/extractors_arithmetic/char/03.cc: New.
6377
	* 27_io/basic_istream/extractors_arithmetic/char/06.cc: New.
6378
	* 27_io/basic_istream/extractors_arithmetic/char/07.cc: New.
6379
	* 27_io/basic_istream/extractors_arithmetic/char/08.cc: New.
6380
	* 27_io/basic_istream/extractors_arithmetic/char/09.cc: New.
6381
	* 27_io/basic_istream/extractors_arithmetic/char/10.cc: New.
6382
	* 27_io/basic_istream/extractors_arithmetic/char/11.cc: New.
6383
	* 27_io/basic_istream/extractors_arithmetic/char/12.cc: New.
6384
	* 27_io/basic_istream/extractors_arithmetic/char/13.cc: New.
6385
	* 27_io/basic_istream/extractors_character/char/1.cc: New.
6386
	* 27_io/basic_istream/extractors_character/char/2.cc: New.
6387
	* 27_io/basic_istream/extractors_character/char/3.cc: New.
6388
	* 27_io/basic_istream/extractors_character/char/9826.cc: New.
6389
	* 27_io/basic_istream/extractors_other/char/1.cc: New.
6390
	* 27_io/basic_istream/extractors_other/char/2.cc: New.
6391
	* 27_io/basic_istream/extractors_other/char/3.cc: New.
6392
	* 27_io/basic_istream/extractors_other/char/9318-in.cc: New.
6393
	* 27_io/basic_istream/extractors_other/char/9424-in.cc: New.
6394
	* 27_io/basic_istream/get/char/1.cc: New.
6395
	* 27_io/basic_istream/get/char/2.cc: New.
6396
	* 27_io/basic_istream/getline/char/1.cc: New.
6397
	* 27_io/basic_istream/getline/char/2.cc: New.
6398
	* 27_io/basic_istream/getline/char/3.cc: New.
6399
	* 27_io/basic_istream/ignore/char/1.cc: New.
6400
	* 27_io/basic_istream/ignore/char/6360.cc: New.
6401
	* 27_io/basic_istream/ignore/char/7220.cc: New.
6402
	* 27_io/basic_istream/peek/char/1.cc: New.
6403
	* 27_io/basic_istream/peek/char/6414.cc: New.
6404
	* 27_io/basic_istream/putback/char/1.cc: New.
6405
	* 27_io/basic_istream/read/char/1.cc: New.
6406
	* 27_io/basic_istream/read/char/2.cc: New.
6407
	* 27_io/basic_istream/read/char/3.cc: New.
6408
	* 27_io/basic_istream/readsome/char/6746-1.cc: New.
6409
	* 27_io/basic_istream/readsome/char/6746-2.cc: New.
6410
	* 27_io/basic_istream/readsome/char/8258.cc: New.
6411
	* 27_io/basic_istream/seekg/char/2346-fstream.cc: New.
6412
	* 27_io/basic_istream/seekg/char/2346-sstream.cc: New.
6413
	* 27_io/basic_istream/seekg/char/8348-1.cc: New.
6414
	* 27_io/basic_istream/seekg/char/8348-2.cc: New.
6415
	* 27_io/basic_istream/seekg/char/fstream.cc: New.
6416
	* 27_io/basic_istream/seekg/char/sstream.cc: New.
6417
	* 27_io/basic_istream/sentry/char/1.cc: New.
6418
	* 27_io/basic_istream/sentry/char/2.cc: New.
6419
	* 27_io/basic_istream/sentry/char/3.cc: New.
6420
	* 27_io/basic_istream/sentry/char/3983-fstream.cc: New.
6421
	* 27_io/basic_istream/sentry/char/3983-sstream.cc: New.
6422
	* 27_io/basic_istream/tellg/char/1.cc: New.
6423
	* 27_io/basic_istream/tellg/char/8348.cc: New.
6424
	* 27_io/basic_istream/tellg/char/fstream.cc: New.
6425
	* 27_io/basic_istream/tellg/char/sstream.cc: New.
6426
	* 27_io/basic_istream/ws/char/1.cc: New.
6427
	* 27_io/basic_istringstream/1.cc: New.
6428
	* 27_io/basic_istringstream/2.cc: New.
6429
	* 27_io/basic_istringstream/3.cc: New.
6430
	* 27_io/basic_istringstream/4.cc: New.
6431
	* 27_io/basic_istringstream/rdbuf/char/2832.cc: New.
6432
	* 27_io/basic_istringstream/str/char/1.cc: New.
6433
	* 27_io/basic_ofstream/1.cc: New.
6434
	* 27_io/basic_ofstream/2.cc: New.
6435
	* 27_io/basic_ofstream/3.cc: New.
6436
	* 27_io/basic_ofstream/4.cc: New.
6437
	* 27_io/basic_ofstream/cons/char/2.cc: New.
6438
	* 27_io/basic_ofstream/open/char/1.cc: New.
6439
	* 27_io/basic_ofstream/rdbuf/char/2832.cc: New.
6440
	* 27_io/basic_ostream/1.cc: New.
6441
	* 27_io/basic_ostream/2.cc: New.
6442
	* 27_io/basic_ostream/3.cc: New.
6443
	* 27_io/basic_ostream/4.cc: New.
6444
	* 27_io/basic_ostream/cons/char/9827.cc: New.
6445
	* 27_io/basic_ostream/endl/char/1.cc: New.
6446
	* 27_io/basic_ostream/ends/char/1.cc: New.
6447
	* 27_io/basic_ostream/ends/char/2.cc: New.
6448
	* 27_io/basic_ostream/exceptions/char/9561.cc: New.
6449
	* 27_io/basic_ostream/flush/char/1.cc: New.
6450
	* 27_io/basic_ostream/inserters_arithmetic/char/1.cc: New.
6451
	* 27_io/basic_ostream/inserters_arithmetic/char/2.cc: New.
6452
	* 27_io/basic_ostream/inserters_arithmetic/char/3.cc: New.
6453
	* 27_io/basic_ostream/inserters_arithmetic/char/4.cc: New.
6454
	* 27_io/basic_ostream/inserters_arithmetic/char/4402.cc: New.
6455
	* 27_io/basic_ostream/inserters_arithmetic/char/5.cc: New.
6456
	* 27_io/basic_ostream/inserters_arithmetic/char/6.cc: New.
6457
	* 27_io/basic_ostream/inserters_arithmetic/wchar_t/1.cc: New.
6458
	* 27_io/basic_ostream/inserters_character/char/1.cc: New.
6459
	* 27_io/basic_ostream/inserters_character/char/2.cc: New.
6460
	* 27_io/basic_ostream/inserters_character/char/3.cc: New.
6461
	* 27_io/basic_ostream/inserters_character/char/4.cc: New.
6462
	* 27_io/basic_ostream/inserters_character/char/5.cc: New.
6463
	* 27_io/basic_ostream/inserters_character/char/6.cc: New.
6464
	* 27_io/basic_ostream/inserters_character/char/8.cc: New.
6465
	* 27_io/basic_ostream/inserters_character/wchar_t/7.cc: New.
6466
	* 27_io/basic_ostream/inserters_character/wchar_t/8.cc: New.
6467
	* 27_io/basic_ostream/inserters_other/char/1.cc: New.
6468
	* 27_io/basic_ostream/inserters_other/char/2.cc: New.
6469
	* 27_io/basic_ostream/inserters_other/char/3.cc: New.
6470
	* 27_io/basic_ostream/inserters_other/char/4.cc: New.
6471
	* 27_io/basic_ostream/inserters_other/char/9318-out.cc: New.
6472
	* 27_io/basic_ostream/inserters_other/char/9424-out.cc: New.
6473
	* 27_io/basic_ostream/sentry/char/1.cc: New.
6474
	* 27_io/basic_ostream/sentry/char/2.cc: New.
6475
	* 27_io/basic_ostream/sentry/char/3983-fstream.cc: New.
6476
	* 27_io/basic_ostream/sentry/char/3983-sstream.cc: New.
6477
	* 27_io/basic_ostream/tellp/char/1.cc: New.
6478
	* 27_io/basic_ostream/tellp/char/2.cc: New.
6479
	* 27_io/basic_ostringstream/1.cc: New.
6480
	* 27_io/basic_ostringstream/2.cc: New.
6481
	* 27_io/basic_ostringstream/3.cc: New.
6482
	* 27_io/basic_ostringstream/4.cc: New.
6483
	* 27_io/basic_ostringstream/cons/char/3.cc: New.
6484
	* 27_io/basic_ostringstream/rdbuf/char/2832.cc: New.
6485
	* 27_io/basic_ostringstream/str/char/1.cc: New.
6486
	* 27_io/basic_ostringstream/str/char/2.cc: New.
6487
	* 27_io/basic_streambuf/1.cc: New.
6488
	* 27_io/basic_streambuf/2.cc: New.
6489
	* 27_io/basic_streambuf/3.cc: New.
6490
	* 27_io/basic_streambuf/cons/char/1.cc: New.
6491
	* 27_io/basic_streambuf/imbue/char/1.cc: New.
6492
	* 27_io/basic_streambuf/imbue/char/9322.cc: New.
6493
	* 27_io/basic_streambuf/overflow/char/1.cc: New.
6494
	* 27_io/basic_streambuf/overflow/char/2.cc: New.
6495
	* 27_io/basic_streambuf/overflow/char/3599.cc: New.
6496
	* 27_io/basic_streambuf/sgetc/char/1.cc: New.
6497
	* 27_io/basic_streambuf/sgetn/char/1.cc: New.
6498
	* 27_io/basic_streambuf/sputbackc/char/9538.cc: New.
6499
	* 27_io/basic_streambuf/sputc/char/1057.cc: New.
6500
	* 27_io/basic_streambuf/sputn/char/1.cc: New.
6501
	* 27_io/basic_streambuf/sputn/char/1057.cc: New.
6502
	* 27_io/basic_streambuf/sync/char/1057.cc: New.
6503
	* 27_io/basic_stringbuf/1.cc: New.
6504
	* 27_io/basic_stringbuf/2.cc: New.
6505
	* 27_io/basic_stringbuf/3.cc: New.
6506
	* 27_io/basic_stringbuf/4.cc: New.
6507
	* 27_io/basic_stringbuf/5.cc: New.
6508
	* 27_io/basic_stringbuf/imbue/char/1.cc: New.
6509
	* 27_io/basic_stringbuf/imbue/char/9322.cc: New.
6510
	* 27_io/basic_stringbuf/in_avail/char/1.cc: New.
6511
	* 27_io/basic_stringbuf/overflow/char/2.cc: New.
6512
	* 27_io/basic_stringbuf/overflow/char/3599.cc: New.
6513
	* 27_io/basic_stringbuf/overflow/char/9988.cc: New.
6514
	* 27_io/basic_stringbuf/sbumpc/char/1.cc: New.
6515
	* 27_io/basic_stringbuf/sbumpc/char/9825.cc: New.
6516
	* 27_io/basic_stringbuf/seekoff/char/1.cc: New.
6517
	* 27_io/basic_stringbuf/seekoff/char/2.cc: New.
6518
	* 27_io/basic_stringbuf/seekpos/char/1.cc: New.
6519
	* 27_io/basic_stringbuf/seekpos/char/2.cc: New.
6520
	* 27_io/basic_stringbuf/setbuf/char/1.cc: New.
6521
	* 27_io/basic_stringbuf/setbuf/char/2.cc: New.
6522
	* 27_io/basic_stringbuf/setbuf/char/3.cc: New.
6523
	* 27_io/basic_stringbuf/sgetc/char/1.cc: New.
6524
	* 27_io/basic_stringbuf/sgetn/char/1.cc: New.
6525
	* 27_io/basic_stringbuf/snextc/char/1.cc: New.
6526
	* 27_io/basic_stringbuf/sputbackc/char/1.cc: New.
6527
	* 27_io/basic_stringbuf/sputbackc/char/9425.cc: New.
6528
	* 27_io/basic_stringbuf/sputc/char/1.cc: New.
6529
	* 27_io/basic_stringbuf/sputc/char/1057.cc: New.
6530
	* 27_io/basic_stringbuf/sputc/char/9404-1.cc: New.
6531
	* 27_io/basic_stringbuf/sputn/char/1.cc: New.
6532
	* 27_io/basic_stringbuf/sputn/char/1057.cc: New.
6533
	* 27_io/basic_stringbuf/sputn/char/9404-2.cc: New.
6534
	* 27_io/basic_stringbuf/str/char/1.cc: New.
6535
	* 27_io/basic_stringbuf/str/char/2.cc: New.
6536
	* 27_io/basic_stringbuf/str/char/3.cc: New.
6537
	* 27_io/basic_stringbuf/str/char/3955.cc: New.
6538
	* 27_io/basic_stringbuf/sungetc/char/1.cc: New.
6539
	* 27_io/basic_stringbuf/sync/char/1057.cc: New.
6540
	* 27_io/basic_stringstream/1.cc: New.
6541
	* 27_io/basic_stringstream/2.cc: New.
6542
	* 27_io/basic_stringstream/3.cc: New.
6543
	* 27_io/basic_stringstream/4.cc: New.
6544
	* 27_io/basic_stringstream/rdbuf/char/2832.cc: New.
6545
	* 27_io/basic_stringstream/str/char/1.cc: New.
6546
	* 27_io/basic_stringstream/str/char/2.cc: New.
6547
	* 27_io/basic_stringstream/str/char/3.cc: New.
6548
	* 27_io/basic_stringstream/str/char/4.cc: New.
6549
	* 27_io/fpos/1.cc: New.
6550
	* 27_io/fpos/2.cc: New.
6551
	* 27_io/fpos/3.cc: New.
6552
	* 27_io/ios_base/callbacks/1.cc: New.
6553
	* 27_io/ios_base/state/1.cc: New.
6554
	* 27_io/ios_base/storage/1.cc: New.
6555
	* 27_io/ios_base/storage/2.cc: New.
6556
	* 27_io/ios_base/storage/3.cc: New.
6557
	* 27_io/ios_base/sync_with_stdio/1.cc: New.
6558
	* 27_io/ios_base/sync_with_stdio/2.cc: New.
6559
	* 27_io/manipulators/adjustfield/char/1.cc: New.
6560
	* 27_io/manipulators/adjustfield/char/2.cc: New.
6561
	* 27_io/manipulators/basefield/char/1.cc: New.
6562
	* 27_io/manipulators/standard/char/1.cc: New.
6563
	* 27_io/manipulators/standard/char/2.cc: New.
6564
	* 27_io/objects/char/1.cc: New.
6565
	* 27_io/objects/char/2.cc: New.
6566
	* 27_io/objects/char/2523-1_xin.cc: New.
6567
	* 27_io/objects/char/2523-1_xin.in: New.
6568
	* 27_io/objects/char/2523-2_xin.cc: New.
6569
	* 27_io/objects/char/2523-2_xin.in: New.
6570
	* 27_io/objects/char/3045.cc: New.
6571
	* 27_io/objects/char/3647.cc: New.
6572
	* 27_io/objects/char/3_xin.cc: New.
6573
	* 27_io/objects/char/3_xin.in: New.
6574
	* 27_io/objects/char/4_xin.cc: New.
6575
	* 27_io/objects/char/4_xin.in: New.
6576
	* 27_io/objects/char/5268.cc: New.
6577
	* 27_io/objects/char/5280_xin.cc: New.
6578
	* 27_io/objects/char/5280_xin.in: New.
6579
	* 27_io/objects/char/6548_xin.cc: New.
6580
	* 27_io/objects/char/6548_xin.in: New.
6581
	* 27_io/objects/char/6648-1_xin.cc: New.
6582
	* 27_io/objects/char/6648-1_xin.in: New.
6583
	* 27_io/objects/char/6648-2_xin.cc: New.
6584
	* 27_io/objects/char/6648-2_xin.in: New.
6585
	* 27_io/objects/char/7744_xin.cc: New.
6586
	* 27_io/objects/char/7744_xin.in: New.
6587
	* 27_io/objects/wchar_t/1.cc: New.
6588
	* 27_io/types/1.cc: New.
6589
	* 27_io/types/2.cc: New.
6590
	* data/filebuf_members-1.tst: New.
6591
	* data/filebuf_members-1.txt: New.
6592
	* data/filebuf_virtuals-1.tst: New.
6593
	* data/filebuf_virtuals-1.txt: New.
6594
	* data/filebuf_virtuals-2.tst: New.
6595
	* data/filebuf_virtuals-3.tst: New.
6596
	* data/ifstream_members-1.tst: New.
6597
	* data/ifstream_members-1.txt: New.
6598
	* data/ios_base_members_static-1.tst: New.
6599
	* data/istream_extractor_other-1.tst: New.
6600
	* data/istream_extractor_other-1.txt: New.
6601
	* data/istream_extractor_other-2.tst: New.
6602
	* data/istream_seeks-1.tst: New.
6603
	* data/istream_seeks-1.txt: New.
6604
	* data/istream_seeks-2.tst: New.
6605
	* data/istream_seeks-3.tst: New.
6606
	* data/istream_unformatted-1.tst: New.
6607
	* data/istream_unformatted-1.txt: New.
6608
	* data/ofstream_members-1.tst: New.
6609
	* data/ostream_inserter_char-1.tst: New.
6610
	* data/ostream_inserter_char-1.txt: New.
6611
	* data/ostream_inserter_other-1.tst: New.
6612
	* data/ostream_inserter_other-2.tst: New.
6613
	* data/ostream_seeks-1.tst: New.
6614
 
6615
2003-04-09  Benjamin Kosnik  
6616
 
6617
	* include/bits/sstream.tcc (basic_stringbuf::seekpos): Remove
6618
	requirement that __mode must be strict input or output.
6619
 
6620
	* include/std/std_streambuf.h (basic_streambuf::setp): Set
6621
	_M_out_lim.
6622
 
6623
	* include/std/std_sstream.h (basic_strinbuf::str): Zero length
6624
	output string shouldn't core.
6625
	(basic_stringbuf::_M_really_sync): Add base argument. Remove rturn
6626
	type.
6627
	* include/bits/sstream.tcc: Adjust _M_really_sync bits here.
6628
 
6629
	* include/bits/istream.tcc (basic_istream::putback): Set gcount to
6630
	zero.
6631
 
6632
2003-04-09  Benjamin Kosnik  
6633
 
6634
	* testsuite/data: New directory.
6635
	* testsuite/lib/libstdc++-v3-dg.exp (libstdc++-v3-init): Modify
6636
	to copy files from the testsuite data directory.
6637
	(libstdc++-v3-list-sourcefiles): Add another test list filter, for
6638
	testfiles containing _xin, which now means this is an interactive
6639
	test and should be run with the interactive dejagnu hooks.
6640
	* testsuite/Makefile.am: Remove testsuite_* files.
6641
	* testsuite/Makefile.in: Regenerate.
6642
 
6643
2003-04-09  Zack Weinberg  
6644
 
6645
	* docs/html/install.html: Document complete list of locales
6646
	required by test suite.  Document procedure for installing
6647
	said locales under Debian.  Solicit instructions for other
6648
	operating systems.
6649
 
6650
2003-04-08  Alexandre Oliva  
6651
 
6652
	* include/bits/sstream.tcc (overflow): Make sure operands of min
6653
	and max have the same type.
6654
 
6655
2003-04-04  Jerry Quinn  
6656
 
6657
	PR libstdc++/10276
6658
	* src/ios.cc (ios_base::_M_init): Remove _M_callbacks
6659
	initialization.
6660
 
6661
2003-03-31  Paolo Carlini  
6662
 
6663
	* include/std/std_streambuf.h (_M_out_buf_size()): Remove.
6664
	* include/bits/fstream.tcc (_M_allocate_internal_buffer):
6665
	Don't set _M_out_end.
6666
	(basic_filebuf::overflow): Replace _M_out_buf_size() with
6667
	this->_M_out_cur && this->_M_out_cur < this->_M_out_end.
6668
	* include/bits/sstream.tcc (basic_stringbuf::overflow):
6669
	Replace _M_out_buf_size() with this->_M_out_cur < this->_M_out_end;
6670
	* include/bits/streambuf.tcc (basic_streambuf::sputc):
6671
	Replace _M_out_buf_size() with _M_out_cur && _M_out_cur < _M_out_end.
6672
	(basic_streambuf::xsputn): Replace _M_out_buf_size() with
6673
	_M_out_end - _M_out_cur.
6674
	(__copy_streambufs): Likewise.
6675
	* include/std/std_fstream.h (_M_set_determinate): Set
6676
	_M_out_end here.
6677
 
6678
2003-03-30  Paolo Carlini  
6679
 
6680
	* include/bits/fstream.tcc (basic_filebuf::showmanyc,
6681
	_M_convert_to_external, _M_really_overflow, seekoff): Fix
6682
	test for synced buffer.
6683
	* include/std/std_fstream.h (sync): Likewise.
6684
	* src/fstream.cc (basic_filebuf::_M_underflow_common,
6685
	basic_filebuf::_M_underflow_common): Likewise.
6686
 
6687
2003-03-28  Benjamin Kosnik  
6688
 
6689
	* include/std/std_sstream.h (basic_istringstream): Adjust
6690
	initialization.
6691
	(basic_ostringstream): Same.
6692
	(basic_stringstream): Same.
6693
	* include/std/std_fstream.h (basic_ifstream): Adjust initialization.
6694
	(basic_ofstream): Same.
6695
	(basic_fstream): Same.
6696
	* include/std/std_ostream.h (basic_ostrem): Add protected ctor
6697
	that does not call init.
6698
	* include/std/std_istream.h (basic_istream): Same.
6699
	(basic_iostream): Construct istream, ostream uninitialized, use
6700
	init to initialize just once. Add protected ctor that does not
6701
	call init.
6702
 
6703
2003-03-28  Paolo Carlini  
6704
	    Nathan Myers  
6705
 
6706
	PR libstdc++/9533
6707
	* include/bits/fstream.tcc (basic_filebuf<>::open): Don't
6708
	call underflow().
6709
	(basic_filebuf<>::showmanyc): Use the information provided
6710
	by codecvt and __basic_file<>::showmanyc_helper to implement
6711
	a non-trivial showmanyc.
6712
	* config/io/basic_file_stdio.h
6713
	(__basic_file<>::showmanyc_helper): New, declare.
6714
	* config/io/basic_file_stdio.cc
6715
	(__basic_file<>::showmanyc_helper): Define.
6716
	(__basic_file<>::_M_open_mode): Don't set O_NONBLOCK.
6717
	(__basic_file::open): Don't call fcntl().
6718
	* acinclude.m4 (GLIBCPP_CHECK_S_ISREG_OR_S_IFREG,
6719
	GLIBCPP_CHECK_POLL): New macros.
6720
	* configure.in: Call here.
6721
	* acconfig.h: Add #undefs for the corresponding symbols.
6722
	* aclocal.m4: Regenerate.
6723
	* configure: Regenerate.
6724
	* config.h.in: Regenerate.
6725
 
6726
2003-03-24  Benjamin Kosnik  
6727
 
6728
	* config/linker-map.gnu: Remove string export restrictions.
6729
 
6730
2003-03-24  Paolo Carlini  
6731
 
6732
	* testsuite/21_strings/basic_string/find/char/1.cc: Remove
6733
	find_first_of, find_last_of and find_last_not_of tests.
6734
	* testsuite/21_strings/basic_string/find/char/2.cc: find_first_of
6735
	tests here, new file.
6736
	* testsuite/21_strings/basic_string/find/wchar_t/1.cc: Likewise,
6737
	remove wchar_t find_first_of, find_last_of and find_last_not_of tests.
6738
	* testsuite/21_strings/basic_string/find/wchar_t/2.cc: Likewise,
6739
	wchar_t find_first_of tests here, new file.
6740
	* testsuite/21_strings/basic_string/rfind/char/2.cc: find_last_of
6741
	tests here.
6742
	* testsuite/21_strings/basic_string/rfind/char/3.cc: find_last_not_of
6743
	tests here.
6744
	* testsuite/21_strings/basic_string/rfind/wchar_t/2.cc: likewise,
6745
	wchar_t find_last_of tests here.
6746
	* testsuite/21_strings/basic_string/rfind/wchar_t/3.cc: likewise,
6747
	wchar_t find_last_not_of tests here.
6748
 
6749
2003-03-22  Loren J. Rittle  
6750
 
6751
	* config/os/hpux/ctype_noninline.h (ctype::classic_table):
6752
	Correct return value.
6753
 
6754
2003-03-21  Jerry Quinn  
6755
 
6756
	PR libstdc++/5730
6757
	* include/bits/c++config (_GLIBCPP_FAST_MATH): Define.
6758
	* include/std/std_complex.h (norm):  Use faster,
6759
	less accurate computation for builtin float types under --fast-math.
6760
 
6761
2003-03-21  Magnus Fromreide  
6762
 
6763
	* testsuite/testsuite_hooks.h: Fix warning nits.
6764
 
6765
2003-03-19  Alexandre Oliva  
6766
 
6767
	* config/cpu/mips/atomicity.h (__exchange_and_add, __atomic_add):
6768
	Only .set mips2 for the o32 ABI.
6769
 
6770
2003-03-19  Paolo Carlini  
6771
 
6772
	* testsuite/21_strings/char_traits/requirements/char/1.cc:
6773
	Test char not wchar_t.
6774
 
6775
2003-03-18  Paolo Carlini  
6776
 
6777
	* testsuite/21_strings/basic_string/append/wchar_t/1.cc:
6778
	Correct size, taking into account sizeof(wchar_t).
6779
 
6780
2003-03-18  Paolo Carlini  
6781
 
6782
	Reshuffle 21_strings testsuite.
6783
	* testsuite/21_strings/append.cc, c_strings.cc, invariants.cc,
6784
	assign.cc, ctor_copy_dtor.cc, nonmember.cc, capacity.cc,
6785
	element_access.cc, operations.cc, char_traits_requirements.cc,
6786
	find.cc, replace.cc, char_traits_typedefs.cc, insert.cc, rfind.cc,
6787
	compare.cc, inserters_extractors.cc, substr.cc: Split up, add
6788
	wchar_t tests as follows.
6789
	* 21_strings/basic_string/append/char/1.cc: New.
6790
	* 21_strings/basic_string/append/wchar_t/1.cc: New.
6791
	* 21_strings/basic_string/assign/char/1.cc: New.
6792
	* 21_strings/basic_string/assign/char/2.cc: New.
6793
	* 21_strings/basic_string/assign/char/3.cc: New.
6794
	* 21_strings/basic_string/assign/wchar_t/1.cc: New.
6795
	* 21_strings/basic_string/assign/wchar_t/2.cc: New.
6796
	* 21_strings/basic_string/assign/wchar_t/3.cc: New.
6797
	* 21_strings/basic_string/capacity/1.cc: New.
6798
	* 21_strings/basic_string/capacity/char/1.cc: New.
6799
	* 21_strings/basic_string/capacity/char/2.cc: New.
6800
	* 21_strings/basic_string/capacity/wchar_t/1.cc: New.
6801
	* 21_strings/basic_string/capacity/wchar_t/2.cc: New.
6802
	* 21_strings/basic_string/compare/char/1.cc: New.
6803
	* 21_strings/basic_string/compare/wchar_t/1.cc: New.
6804
	* 21_strings/basic_string/cons/char/1.cc: New.
6805
	* 21_strings/basic_string/cons/char/2.cc: New.
6806
	* 21_strings/basic_string/cons/char/3.cc: New.
6807
	* 21_strings/basic_string/cons/char/4.cc: New.
6808
	* 21_strings/basic_string/cons/char/5.cc: New.
6809
	* 21_strings/basic_string/cons/wchar_t/1.cc: New.
6810
	* 21_strings/basic_string/cons/wchar_t/2.cc: New.
6811
	* 21_strings/basic_string/cons/wchar_t/3.cc: New.
6812
	* 21_strings/basic_string/cons/wchar_t/4.cc: New.
6813
	* 21_strings/basic_string/cons/wchar_t/5.cc: New.
6814
	* 21_strings/basic_string/element_access/char/1.cc: New.
6815
	* 21_strings/basic_string/element_access/char/2.cc: New.
6816
	* 21_strings/basic_string/element_access/char/3.cc: New.
6817
	* 21_strings/basic_string/element_access/wchar_t/1.cc: New.
6818
	* 21_strings/basic_string/element_access/wchar_t/2.cc: New.
6819
	* 21_strings/basic_string/element_access/wchar_t/3.cc: New.
6820
	* 21_strings/basic_string/find/char/1.cc: New.
6821
	* 21_strings/basic_string/find/wchar_t/1.cc: New.
6822
	* 21_strings/basic_string/insert/char/1.cc: New.
6823
	* 21_strings/basic_string/insert/char/2.cc: New.
6824
	* 21_strings/basic_string/insert/wchar_t/1.cc: New.
6825
	* 21_strings/basic_string/insert/wchar_t/2.cc: New.
6826
	* 21_strings/basic_string/inserters_extractors/char/1.cc: New.
6827
	* 21_strings/basic_string/inserters_extractors/char/4.cc: New.
6828
	* 21_strings/basic_string/inserters_extractors/char/5.cc: New.
6829
	* 21_strings/basic_string/inserters_extractors/char/6.cc: New.
6830
	* 21_strings/basic_string/inserters_extractors/char/7.cc: New.
6831
	* 21_strings/basic_string/inserters_extractors/char/8.cc: New.
6832
	* 21_strings/basic_string/inserters_extractors/char/9.cc: New.
6833
	* 21_strings/basic_string/inserters_extractors/wchar_t/1.cc: New.
6834
	* 21_strings/basic_string/inserters_extractors/wchar_t/4.cc: New.
6835
	* 21_strings/basic_string/inserters_extractors/wchar_t/5.cc: New.
6836
	* 21_strings/basic_string/inserters_extractors/wchar_t/6.cc: New.
6837
	* 21_strings/basic_string/inserters_extractors/wchar_t/7.cc: New.
6838
	* 21_strings/basic_string/inserters_extractors/wchar_t/8.cc: New.
6839
	* 21_strings/basic_string/inserters_extractors/wchar_t/9.cc: New.
6840
	* 21_strings/basic_string/operators/char/1.cc: New.
6841
	* 21_strings/basic_string/operators/char/2.cc: New.
6842
	* 21_strings/basic_string/operators/wchar_t/1.cc: New.
6843
	* 21_strings/basic_string/operators/wchar_t/2.cc: New.
6844
	* 21_strings/basic_string/replace/char/1.cc: New.
6845
	* 21_strings/basic_string/replace/char/2.cc: New.
6846
	* 21_strings/basic_string/replace/char/3.cc: New.
6847
	* 21_strings/basic_string/replace/char/4.cc: New.
6848
	* 21_strings/basic_string/replace/char/5.cc: New.
6849
	* 21_strings/basic_string/replace/wchar_t/1.cc: New.
6850
	* 21_strings/basic_string/replace/wchar_t/2.cc: New.
6851
	* 21_strings/basic_string/replace/wchar_t/3.cc: New.
6852
	* 21_strings/basic_string/replace/wchar_t/4.cc: New.
6853
	* 21_strings/basic_string/replace/wchar_t/5.cc: New.
6854
	* 21_strings/basic_string/rfind/char/1.cc: New.
6855
	* 21_strings/basic_string/rfind/char/2.cc: New.
6856
	* 21_strings/basic_string/rfind/char/3.cc: New.
6857
	* 21_strings/basic_string/rfind/wchar_t/1.cc: New.
6858
	* 21_strings/basic_string/rfind/wchar_t/2.cc: New.
6859
	* 21_strings/basic_string/rfind/wchar_t/3.cc: New.
6860
	* 21_strings/basic_string/substr/char/1.cc: New.
6861
	* 21_strings/basic_string/substr/wchar_t/1.cc: New.
6862
	* 21_strings/c_strings/char/1.cc: New.
6863
	* 21_strings/c_strings/char/2.cc: New.
6864
	* 21_strings/c_strings/wchar_t/1.cc: New.
6865
	* 21_strings/c_strings/wchar_t/2.cc: New.
6866
	* 21_strings/char_traits/requirements/char/1.cc: New.
6867
	* 21_strings/char_traits/requirements/wchar_t/1.cc: New.
6868
	* 21_strings/char_traits/typedefs/char/1.cc: New.
6869
 
6870
2003-03-17  Paolo Carlini  
6871
	    Petur Runolfsson  
6872
 
6873
	PR libstdc++/10097
6874
	* src/fstream.cc (basic_filebuf::_M_underflow_common,
6875
	basic_filebuf::_M_underflow_common):
6876
	if (gptr() < egptr()) return *gptr().
6877
	* testsuite/27_io/filebuf_virtuals.cc (test16): Add.
6878
 
6879
	* testsuite/27_io/filebuf_members.cc (test_04): Minor
6880
	changes: unlink fifo before making it, fix spelling error.
6881
 
6882
2003-03-17  Benjamin Kosnik  
6883
 
6884
	* testsuite/Makefile.am (CLEANFILES): Add tmp*.
6885
	* testsuite/Makefile.in: Regenerate.
6886
	* testsuite/27_io/filebuf_members.cc: Consistently name tmp files.
6887
	Cleanups.
6888
 
6889
2003-03-17  Petur Runolfsson  
6890
 
6891
	PR libstdc++/9964
6892
	* include/bits/fstream.tcc (basic_filebuf::close):
6893
	Always close file, even when write fails.
6894
	* testsuite/27_io/filebuf_members.cc (test_07):  New test.
6895
 
6896
2003-03-17  Danny Smith  
6897
 
6898
	* libsupc++/Makefile.am (C_COMPILE): Remove.
6899
	(LTCOMPILE): Likewise.
6900
	* libsupc++/Makefile.in: Regenerate.
6901
 
6902
2003-03-14  Benjamin Kosnik  
6903
 
6904
	* testsuite/23_containers/bitset_members.cc: Add test variable.
6905
	* testsuite/23_containers/map_insert.cc: Same.
6906
	* testsuite/22_locale/ctype/cons/char/1.cc: Same.
6907
	* testsuite/22_locale/codecvt/max_length/wchar_t/1.cc: Same.
6908
	* testsuite/22_locale/codecvt/max_length/wchar_t/2.cc: Same.
6909
	* testsuite/22_locale/codecvt/max_length/wchar_t/3.cc: Same.
6910
	* testsuite/22_locale/codecvt/max_length/wchar_t/4.cc: Same.
6911
	* testsuite/22_locale/codecvt/always_noconv/wchar_t/1.cc: Same.
6912
	* testsuite/22_locale/codecvt/always_noconv/wchar_t/2.cc: Same.
6913
	* testsuite/22_locale/codecvt/always_noconv/wchar_t/3.cc: Same.
6914
	* testsuite/22_locale/codecvt/always_noconv/wchar_t/4.cc: Same.
6915
	* testsuite/27_io/istream_exception.cc: Same.
6916
	* testsuite/27_io/filebuf_virtuals.cc: Same.
6917
	* testsuite/27_io/stringbuf_virtuals.cc: Same.
6918
	* testsuite/27_io/ostream_inserter_arith.cc: Same.
6919
	* testsuite/26_numerics/valarray_operators.cc: Same.
6920
	* testsuite/26_numerics/slice.cc: Same.
6921
	* testsuite/26_numerics/slice_array_assignment.cc: Same.
6922
	* testsuite/24_iterators/istream_iterator.cc: Same.
6923
	* mkcheck.in (TESTS_FILE): Use dejagnu-generated file if possible.
6924
 
6925
2003-03-14  Petur Runolfsson  
6926
 
6927
	PR libstdc++/9581
6928
	PR libstdc++/9870
6929
	* config/locale/generic/ctype_members.cc,
6930
	* config/locale/gnu/ctype_members.cc
6931
	(ctype::do_widen(char)):  Cast argument to
6932
	unsigned char before passing to btowc.
6933
	(ctype::do_widen(const char*, const char*, wchar_t*)):
6934
	Convert characters with btowc instead of mbsrtowcs.
6935
	(ctype::do_narrow(const wchar_t*, const wchar_t*,
6936
	char, char*):
6937
	Convert characters with wctob instead of wcsrtombs.
6938
	* testsuite/22_locale/ctype/narrow/wchar_t/3.cc:  New test.
6939
	* testsuite/22_locale/ctype/widen/wchar_t/2.cc:  New test.
6940
	* testsuite/22_locale/ctype/widen/wchar_t/3.cc:  New test.
6941
 
6942
2003-03-14  Benjamin Kosnik  
6943
 
6944
	* include/stdc++.h: New.
6945
	* libsupc++/exception_defines.h (__EXCEPTION_DEFINES_H): Add guard.
6946
	* include/Makefile.am (stamp-std-precompile): Generate stdc++.h.gch
6947
	* include/Makefile.in: Regenerate.
6948
	* testsuite_flags.in (--build-cxx): Add, but don't use PCHFLAGS.
6949
	(--cxxflags): Put -g -O2 here.
6950
	* testsuite/libstdc++-v3.dg/dg.exp: Remove -g -O2 here.
6951
 
6952
2003-03-14  Loren J. Rittle  
6953
 
6954
	* testsuite/testsuite_hooks.h: Suppress runtime exception thrown by
6955
	missing named locale.
6956
 
6957
2003-03-14  Andreas Schwab  
6958
 
6959
	* configure.in: Only append to makefiles that are newly created to
6960
	avoid multiple multi-do/multi-clean rules.
6961
	* configure: Rebuilt.
6962
 
6963
2003-03-13  Jonathan Wakely  
6964
 
6965
	* docs/html/configopts.html, docs/html/documentation.html,
6966
	docs/html/explanations.html, docs/html/install.html,
6967
	docs/html/19_diagnostics/howto.html, docs/html/faq/index.html: Fix
6968
	invalid XHTML and make page header style consistent.
6969
 
6970
2003-03-12  Jonathan Wakely  
6971
 
6972
	* docs/html/faq/index.html: Explain memory "leaks" due to allocators.
6973
	* docs/html/faq/index.txt: Regenerate.
6974
	* docs/html/debug.html: Add a bit to allocator text and fix XHTML.
6975
 
6976
2003-03-12  Andreas Schwab  
6977
 
6978
	* acinclude.m4 (GLIBCPP_EXPORT_INSTALL_INFO): Avoid trailing /. in
6979
	glibcpp_toolexeclibdir.
6980
	* aclocal.m4, configure: Rebuilt.
6981
 
6982
2003-03-11  Jonathan Wakely  
6983
 
6984
	* docs/html/faq/index.html: Update text about location of headers.
6985
	* docs/html/faq/index.txt: Regenerate.
6986
 
6987
2003-03-11  Carlo Wood  
6988
 
6989
	* include/bits/demangle.h: Prepend accessors of
6990
	class qualifier with 'get_' in order to fix warnings
6991
	when compiling with -Wshadow.
6992
 
6993
2003-03-11  Loren J. Rittle  
6994
 
6995
	* config/os/bsd/freebsd/ctype_inline.h:  Support _M_table
6996
	when so installed.
6997
	* testsuite/22_locale/ctype/cons/char/1.cc: Fix typo.
6998
 
6999
	* testsuite/testsuite_hooks.h (run_tests_wrapped_env): Do not
7000
	report lack of setenv().
7001
 
7002
2003-03-09  Paolo Carlini  
7003
 
7004
	* config/io/basic_file_stdio.cc: include .
7005
 
7006
2003-03-09  Paolo Carlini  
7007
	    Nathan Myers  
7008
 
7009
	PR libstdc++/7744
7010
	* config/io/basic_file_stdio.h (__basic_file<>::xsgetn, xsputn,
7011
	seekoff, seekpos): Add a boolean parameter __stdio.
7012
	* config/io/basic_file_stdio.cc (__basic_file<>::xsgetn, xsputn,
7013
	seekoff, seekpos): If __stdio == true, use fread (fwrite, fseek/ftell,
7014
	fseek/ftell, respectively), otherwise read (write, lseek, lseek,
7015
	respectively).
7016
	* include/bits/fstream.tcc (basic_filebuf<>::_M_convert_to_external,
7017
	_M_really_overflow, seekoff): Use the boolean parameter in the calls.
7018
	* include/std/std_fstream.h (sync): Likewise.
7019
	* src/fstream.cc (basic_filebuf<>::_M_underflow_common): Likewise.
7020
	* src/ios.cc (ios_base::Init::_S_ios_create(bool)): Revert
7021
	libstdc++/8399 commit involving isatty(0).
7022
	* acinclude.m4 (GLIBCPP_CHECK_UNISTD_DECL_AND_LINKAGE_1): Remove.
7023
	(GLIBCPP_CHECK_UNISTD_SUPPORT): Remove
7024
	* configure.in: Remove call.
7025
	* aclocal.m4: Regenerate.
7026
	* config.h.in: Regenerate.
7027
	* configure: Regenerate.
7028
	* testsuite/27_io/narrow_stream_objects.cc (test11): Add.
7029
 
7030
2003-03-09  Paolo Carlini  
7031
 
7032
	PR libstdc++/9988
7033
	* include/bits/fstream.tcc (overflow): don't write EOF to file.
7034
	* testsuite/27_io/filebuf_virtuals.cc (test15): Add.
7035
 
7036
2003-03-08  Jerry Quinn  
7037
 
7038
	PR libstdc++/9561
7039
	* include/bits/basic_ios.h (_M_setstate): New.
7040
	* include/bits/ostream.tcc (operator<<): Use it.
7041
	* include/bits/istream.tcc (operator>>): Use it.
7042
	* include/std/std_ostream.h (operator<<): Make friends.
7043
	* include/std/std_istream.h (operator>>): Make friends.
7044
	* testsuite/27_io/ostream_exception.cc,
7045
	testsuite/27_io/istream_exception.cc: New tests.
7046
 
7047
2003-03-08  Benjamin Kosnik  
7048
 
7049
	* include/bits/locale_facets.tcc: Fix typo.
7050
 
7051
2003-03-08  Loren J. Rittle  
7052
 
7053
	* testsuite/26_numerics/c99_classification_macros_c.cc: Tweak test.
7054
 
7055
	* config/locale/generic/c_locale.cc
7056
	(locale::facet::_S_create_c_locale): Throw runtime exception when
7057
	unsupported language is specified.
7058
	* testsuite/testsuite_hooks.h
7059
	(run_test_wrapped_generic_locale_exception_catcher): New function.
7060
	* testsuite/testsuite_hooks.cc (run_tests_wrapped_locale):
7061
	Suppress runtime exception thrown by generic implementation.
7062
	(run_tests_wrapped_env): Likewise.
7063
	(run_test_wrapped_generic_locale_exception_catcher): New function.
7064
	* testsuite/22_locale/collate/compare/char/1.cc: New test wrap.
7065
	* testsuite/22_locale/collate/compare/char/2.cc: New test wrap.
7066
	* testsuite/22_locale/collate/compare/char/3.cc: New test wrap.
7067
	* testsuite/22_locale/collate/hash/char/2.cc: New test wrap.
7068
	* testsuite/22_locale/collate/transform/char/2.cc: New test wrap.
7069
	* testsuite/22_locale/collate/transform/char/3.cc: New test wrap.
7070
	* testsuite/22_locale/collate_byname/1.cc: New test wrap.
7071
	* testsuite/22_locale/ctype/is/char/2.cc: New test wrap.
7072
	* testsuite/22_locale/facet/2.cc: New test wrap.
7073
	* testsuite/22_locale/locale/cons/4.cc: New test wrap.
7074
	* testsuite/22_locale/locale/cons/5.cc: New test wrap.
7075
	* testsuite/22_locale/locale/cons/7.cc: New test wrap.
7076
	* testsuite/22_locale/messages/members/char/1.cc: New test wrap.
7077
	* testsuite/22_locale/messages/members/char/2.cc: New test wrap.
7078
	* testsuite/22_locale/messages/members/char/3.cc: New test wrap.
7079
	* testsuite/22_locale/messages_byname/1.cc: New test wrap.
7080
	* testsuite/22_locale/money_get/get/char/1.cc: New test wrap.
7081
	* testsuite/22_locale/money_get/get/char/2.cc: New test wrap.
7082
	* testsuite/22_locale/money_get/get/char/3.cc: New test wrap.
7083
	* testsuite/22_locale/money_get/get/char/4.cc: New test wrap.
7084
	* testsuite/22_locale/money_put/put/char/1.cc: New test wrap.
7085
	* testsuite/22_locale/money_put/put/char/2.cc: New test wrap.
7086
	* testsuite/22_locale/money_put/put/char/3.cc: New test wrap.
7087
	* testsuite/22_locale/moneypunct/members/char/2.cc: New test wrap.
7088
	* testsuite/22_locale/moneypunct_byname/1.cc: New test wrap.
7089
	* testsuite/22_locale/num_get/get/char/1.cc: New test wrap.
7090
	* testsuite/22_locale/num_get/get/char/2.cc: New test wrap.
7091
	* testsuite/22_locale/num_get/get/char/3.cc: New test wrap.
7092
	* testsuite/22_locale/num_get/get/char/5.cc: New test wrap.
7093
	* testsuite/22_locale/num_get/get/char/6.cc: New test wrap.
7094
	* testsuite/22_locale/num_put/put/char/1.cc: New test wrap.
7095
	* testsuite/22_locale/num_put/put/char/2.cc: New test wrap.
7096
	* testsuite/22_locale/num_put/put/char/3.cc: New test wrap.
7097
	* testsuite/22_locale/num_put/put/char/5.cc: New test wrap.
7098
	* testsuite/22_locale/numpunct/members/char/1.cc: New test wrap.
7099
	* testsuite/22_locale/numpunct/members/char/2.cc: New test wrap.
7100
	* testsuite/22_locale/numpunct_byname/1.cc: New test wrap.
7101
	* testsuite/22_locale/numpunct_byname/2.cc: New test wrap.
7102
	* testsuite/22_locale/time_get/date_order/char/1.cc: New test wrap.
7103
	* testsuite/22_locale/time_get/get_date/char/1.cc: New test wrap.
7104
	* testsuite/22_locale/time_get/get_date/char/2.cc: New test wrap.
7105
	* testsuite/22_locale/time_get/get_monthname/char/1.cc: New test wrap.
7106
	* testsuite/22_locale/time_get/get_monthname/char/2.cc: New test wrap.
7107
	* testsuite/22_locale/time_get/get_time/char/1.cc: New test wrap.
7108
	* testsuite/22_locale/time_get/get_time/char/2.cc: New test wrap.
7109
	* testsuite/22_locale/time_get/get_weekday/char/1.cc: New test wrap.
7110
	* testsuite/22_locale/time_get/get_weekday/char/2.cc: New test wrap.
7111
	* testsuite/22_locale/time_get/get_year/char/1.cc: New test wrap.
7112
	* testsuite/22_locale/time_put/put/char/1.cc: New test wrap.
7113
	* testsuite/22_locale/time_put/put/char/2.cc: New test wrap.
7114
	* testsuite/22_locale/time_put/put/char/3.cc: New test wrap.
7115
	* testsuite/22_locale/time_put/put/char/4.cc: New test wrap.
7116
	* testsuite/22_locale/time_put/put/char/5.cc: New test wrap.
7117
	* testsuite/22_locale/time_put/put/char/6.cc: New test wrap.
7118
	* testsuite/22_locale/time_put/put/char/7.cc: New test wrap.
7119
	* testsuite/22_locale/time_put/put/char/8.cc: New test wrap.
7120
	* testsuite/27_io/filebuf_virtuals.cc: New test wrap.
7121
	* testsuite/27_io/ios_members.cc: New test wrap.
7122
	* testsuite/27_io/ostream_inserter_arith.cc (test02): Make void.
7123
	New test wrap.
7124
	* testsuite/27_io/streambuf_members.cc: New test wrap.
7125
	* testsuite/27_io/stringbuf_virtuals.cc: New test wrap.
7126
 
7127
2003-03-08  Paolo Carlini 
7128
	    Petur Runolfsson  
7129
 
7130
	PR libstdc++/9424
7131
	* include/bits/streambuf.tcc (__copy_streambufs): Use
7132
	sgetn-sputn only when sputn cannot fail, otherwise fall back
7133
	to safe snextc-sputc.
7134
	* testsuite/27_io/streambuf_members.cc (test11, test12): Add.
7135
 
7136
2003-03-08  Jerry Quinn  
7137
 
7138
	* include/bits/locale_facets.tcc (num_put::do_put(bool)): Use
7139
	locale cache for truename and falsename.
7140
 
7141
2003-03-08  Jerry Quinn  
7142
 
7143
	* src/ios.cc (ios_base::ios_base): Correct order of _M_word and
7144
	_M_word_size initialization.
7145
 
7146
2003-03-07  Paolo Carlini  
7147
 
7148
	* include/bits/fstream.tcc (_M_convert_to_external):
7149
	Set __elen to zero if codecvt::out eventually fails.
7150
 
7151
2003-03-07  Paolo Carlini  
7152
 
7153
	PR libstdc++/9182
7154
	* include/bits/fstream.tcc (_M_really_overflow): Check
7155
	for _M_convert_to_external possible failures.
7156
	* include/std/std_fstream.h (sync): Check _M_really_overflow
7157
	return value and return -1 in case of failure.
7158
	* testsuite/27_io/filebuf_virtuals.cc (test13, test14): Add.
7159
 
7160
2003-03-07  Paolo Carlini  
7161
 
7162
	PR libstdc++/9826
7163
	* include/bits/istream.tcc (operator>>(_CharT*),
7164
	operator>>(basic_string&), ws): Pass a char_type to __ctype.is.
7165
	* testsuite/27_io/stringstream.cc (test02): Add.
7166
 
7167
	* include/bits/istream.tcc (operator>>(_CharT*)):
7168
	Assign a char_type to *__s.
7169
 
7170
2003-03-07  Petur Runolfsson  
7171
 
7172
	PR libstdc++/9817
7173
	* include/bits/locale_facets.tcc
7174
	(collate::do_compare, collate::do_transform):
7175
	Handle nul characters in input.
7176
	* testsuite/22_locale/collate/compare/char/3.cc:  New test.
7177
	* testsuite/22_locale/collate/compare/wchar_t/3.cc:  New test.
7178
	* testsuite/22_locale/collate/transform/char/3.cc:  New test.
7179
	* testsuite/22_locale/collate/transform/wchar_t/3.cc:  New test.
7180
 
7181
2003-03-07  Jerry Quinn  
7182
 
7183
	* include/bits/streambuf_iterator.h (_M_put): Set _M_failed if
7184
	sputn fails.
7185
	* testsuite/27_io/ostream_fail.cc: New test.
7186
 
7187
2003-03-07  Matthias Klose  
7188
 
7189
	* Makefile.am (AM_MAKEFLAGS): Also pass gxx_include_dir.
7190
	FLAGS_TO_PASS: Set to AM_MAKEFLAGS
7191
	* Makefile.in: Regenerate.
7192
	* libsupc++/Makefile.am: Express glibcppinstalldir in terms
7193
	of gxx_include_dir.
7194
	AM_MAKEFLAGS: Pass gxx_include_dir.
7195
	* libsupc++/Makefile.in: Regenerate.
7196
 
7197
2003-03-06  Jerry Quinn  
7198
 
7199
	* testsuite/27_io/ios_base_storage.cc (test02): Set exception
7200
	mask.  Test setting small-numbered pword and iword slots.  Test
7201
	behavior at limit of numeric_limits::max.  Check that values are
7202
	still good after failures.
7203
 
7204
2003-03-06  Jerry Quinn  
7205
 
7206
	* src/ios.cc (ios_base::_M_init): Remove _M_word_size.
7207
	(ios_base::ios_base): Set _M_word, _M_word_size.
7208
	(ios_base::~ios_base): Remove redundant test.
7209
	* testsuite/27_io/ios_base_storage.cc (test03): New.
7210
 
7211
2003-03-04  Alexandre Oliva  
7212
 
7213
	* src/strstream.cc, include/bits/basic_string.tcc: Remove
7214
	incorrect whitespace added in my previous change.
7215
 
7216
2003-03-05  Carlo Wood  
7217
 
7218
	* include/bits/ios_base.h(ios_base::Init::_S_initialized()): Added
7219
	_S_initialized() in order to allow debugging libraries to detect
7220
	when the std streams are initialized from an overloaded operator
7221
	new.
7222
 
7223
2003-03-05  Benjamin Kosnik  
7224
 
7225
	* libsupc++/demangle.h: Move to..
7226
	* include/bits/demangle.h: ...here.
7227
	* src/demangle.cc: Adjust include.
7228
	* include/Makefile.am (bits_headers): Add.
7229
	* include/Makefile.in: Regenerate.
7230
 
7231
2003-03-04  Benjamin Kosnik  
7232
 
7233
	* src/globals.cc: Clarify comments, remove c_locale_imp_compat.
7234
 
7235
	* config/linker-map.gnu: Filter typeinfo and vtable info.
7236
 
7237
2003-03-04  Jerry Quinn  
7238
 
7239
	* src/ios.cc (ios_base::_M_grow_words): Don't delete _M_word on
7240
	new failure.  Throw exception if badbit and exception mask when ix
7241
	>= numeric_limits::max().
7242
 
7243
2003-03-04  Alexandre Oliva  
7244
 
7245
	* src/strstream.cc (strstreambuf::overflow): Make sure operands of
7246
	min and max have the same type.
7247
	* include/bits/basic_string.tcc (append, rfind, compare): Likewise.
7248
 
7249
2003-03-04  Benjamin Kosnik  
7250
 
7251
	* include/Makefile.am (allstamps): Remove stamp-std-precompile.
7252
	* include/Makefile.in: Regenerate.
7253
 
7254
2003-03-03  Benjamin Kosnik  
7255
 
7256
	* testsuite/abi_check.cc (report_symbol_info): Add version info.
7257
 
7258
	* config/linker-map.gnu: Hide more stuff.
7259
	* include/Makefile.am: Cleanups.
7260
	* include/Makefile.in: Regenerate.
7261
 
7262
2003-02-27  Jerry Quinn  
7263
 
7264
	* config/locale/generic/messages_members.h (messages::messages):
7265
	Remove name from unused parameter.
7266
 
7267
2003-02-27  Benjamin Kosnik  
7268
 
7269
	* src/Makefile.am (sources): Add demangle.cc.
7270
	(demangle.o): Add.
7271
	(demangle.lo): Add.
7272
	* src/Makefile.in: Regenerate.
7273
	* libsupc++/Makefile.am: Remove old __cxa_demangle bits.
7274
	* libsupc++/Makefile.in: Regenerate.
7275
 
7276
	* testsuite/testsuite_hooks.h
7277
	(__gnu_cxx_test::verify_demangle): New.
7278
	* testsuite/testsuite_hooks.cc: Define.
7279
 
7280
2003-02-27  Carlo Wood  
7281
 
7282
	* src/demangle.cc: New.
7283
	* libsupc++/demangle.h: New.
7284
 
7285
2003-02-27  Benjamin Kosnik  
7286
	    Carlo Wood  
7287
 
7288
	* testsuite/demangle/abi_examples/01.cc: New.
7289
	* testsuite/demangle/abi_examples/02.cc: New.
7290
	* testsuite/demangle/abi_examples/03.cc: New.
7291
	* testsuite/demangle/abi_examples/04.cc: New.
7292
	* testsuite/demangle/abi_examples/05.cc: New.
7293
	* testsuite/demangle/abi_examples/06.cc: New.
7294
	* testsuite/demangle/abi_examples/07.cc: New.
7295
	* testsuite/demangle/abi_examples/08.cc: New.
7296
	* testsuite/demangle/abi_examples/09.cc: New.
7297
	* testsuite/demangle/abi_examples/10.cc: New.
7298
	* testsuite/demangle/abi_examples/11.cc: New.
7299
	* testsuite/demangle/abi_examples/12.cc: New.
7300
	* testsuite/demangle/abi_examples/13.cc: New.
7301
	* testsuite/demangle/abi_examples/14.cc: New.
7302
	* testsuite/demangle/abi_examples/15.cc: New.
7303
	* testsuite/demangle/abi_examples/16.cc: New.
7304
	* testsuite/demangle/abi_examples/17.cc: New.
7305
	* testsuite/demangle/abi_examples/18.cc: New.
7306
	* testsuite/demangle/abi_examples/19.cc: New.
7307
	* testsuite/demangle/abi_examples/20.cc: New.
7308
	* testsuite/demangle/abi_examples/21.cc: New.
7309
	* testsuite/demangle/abi_examples/22.cc: New.
7310
	* testsuite/demangle/abi_examples/23.cc: New.
7311
	* testsuite/demangle/abi_examples/24.cc: New.
7312
	* testsuite/demangle/abi_examples/25.cc: New.
7313
	* testsuite/demangle/abi_examples/26.cc: New.
7314
	* testsuite/demangle/abi_text/01.cc: New.
7315
	* testsuite/demangle/abi_text/02.cc: New.
7316
	* testsuite/demangle/abi_text/03.cc: New.
7317
	* testsuite/demangle/abi_text/04.cc: New.
7318
	* testsuite/demangle/abi_text/05.cc: New.
7319
	* testsuite/demangle/abi_text/06.cc: New.
7320
	* testsuite/demangle/abi_text/07.cc: New.
7321
	* testsuite/demangle/abi_text/08.cc: New.
7322
	* testsuite/demangle/abi_text/09.cc: New.
7323
	* testsuite/demangle/abi_text/10.cc: New.
7324
	* testsuite/demangle/abi_text/11.cc: New.
7325
	* testsuite/demangle/abi_text/12.cc: New.
7326
	* testsuite/demangle/abi_text/13.cc: New.
7327
	* testsuite/demangle/abi_text/14.cc: New.
7328
	* testsuite/demangle/regression/3111-1.cc: New.
7329
	* testsuite/demangle/regression/3111-2.cc: New.
7330
	* testsuite/demangle/regression/7986-01.cc: New.
7331
	* testsuite/demangle/regression/7986-02.cc: New.
7332
	* testsuite/demangle/regression/7986-03.cc: New.
7333
	* testsuite/demangle/regression/7986-04.cc: New.
7334
	* testsuite/demangle/regression/7986-05.cc: New.
7335
	* testsuite/demangle/regression/7986-06.cc: New.
7336
	* testsuite/demangle/regression/7986-07.cc: New.
7337
	* testsuite/demangle/regression/7986-08.cc: New.
7338
	* testsuite/demangle/regression/7986-09.cc: New.
7339
	* testsuite/demangle/regression/7986-10.cc: New.
7340
	* testsuite/demangle/regression/7986-11.cc: New.
7341
	* testsuite/demangle/regression/7986-12.cc: New.
7342
	* testsuite/demangle/regression/7986.cc: New.
7343
	* testsuite/demangle/regression/8897.cc: New.
7344
	* testsuite/demangle/regression/cw-01.cc: New.
7345
	* testsuite/demangle/regression/cw-02.cc: New.
7346
	* testsuite/demangle/regression/cw-03.cc: New.
7347
	* testsuite/demangle/regression/cw-04.cc: New.
7348
	* testsuite/demangle/regression/cw-05.cc: New.
7349
	* testsuite/demangle/regression/cw-06.cc: New.
7350
	* testsuite/demangle/regression/cw-07.cc: New.
7351
	* testsuite/demangle/regression/cw-08.cc: New.
7352
	* testsuite/demangle/regression/cw-09.cc: New.
7353
	* testsuite/demangle/regression/cw-10.cc: New.
7354
	* testsuite/demangle/regression/cw-11.cc: New.
7355
	* testsuite/demangle/regression/cw-12.cc: New.
7356
	* testsuite/demangle/regression/cw-13.cc: New.
7357
	* testsuite/demangle/regression/cw-14.cc: New.
7358
	* testsuite/demangle/regression/old.cc: New.
7359
 
7360
2003-02-25  Phil Edwards  
7361
 
7362
	* docs/doxygen/Intro.3:  Update with new (proper) names.
7363
	* docs/doxygen/TODO:  Update.
7364
	* docs/doxygen/run_doxygen:  More comments, fix up man pages.
7365
	Fake entries for standard typedefs.
7366
	* docs/doxygen/user.cfg.in:  Turn INLINE_INHERITED_MEMB back on.
7367
	* docs/html/documentation.html:  Top-level man page is now called
7368
	C++Intro.
7369
	* include/std/std_limits.h:  Doxygenate.
7370
 
7371
2003-02-25  Scott Snyder  
7372
 
7373
	PR libstdc++/9811
7374
	* include/bits/stl_map.h (lower_bound, upper_bound, equal_range):
7375
	Correct documentation.
7376
	* include/bits/stl_multimap.h (lower_bound, upper_bound,
7377
	equal_range): Likewise.
7378
 
7379
2003-02-24  Paolo Carlini  
7380
 
7381
	PR libstdc++/9825
7382
	* src/fstream.cc
7383
	(basic_filebuf::_M_underflow_common): When
7384
	__bump is true (uflow), always increment the read pointer
7385
	(_M_in_cur) before returning successfully.
7386
	* testsuite/27_io/filebuf_virtuals.cc (test12): Add.
7387
 
7388
2003-02-24  Paolo Carlini 
7389
	    Nathan Myers 
7390
 
7391
	PR libstdc++/9404, PR libstdc++/9701 (partial)
7392
	(aka pptr == epptr implies overflow)
7393
	* include/bits/fstream.tcc (_M_allocate_internal_buffer):
7394
	Consistently, _M_out_end points to the end of the buffer just
7395
	created.
7396
	(overflow): Tweak to use _M_out_buf_size().
7397
	(_M_convert_to_external): The role of the old _M_out_end is
7398
	now played by _M_out_lim.
7399
	(_M_really_overflow): Likewise.
7400
	(seekoff): Likewise.
7401
	(setbuf): _M_out_end points to the end of the external buffer.
7402
	* include/bits/sstream.tcc (overflow): Rewrote, taking into
7403
	account the resolution of DR 169 (TC).
7404
	(seekoff): Use _M_string.capacity(); ios_base::end is now _M_out_lim.
7405
	(seekpos): Use _M_string.capacity(); tweak.
7406
	* include/bits/streambuf.tcc (sputc, xsputn): Remove comments.
7407
	* include/std/std_fstream.h (sync): The role of the old
7408
	_M_out_end is now played by _M_out_lim.
7409
	(_M_set_indeterminate): Use _M_set_determinate.
7410
	(_M_set_determinate): _M_out_end is now _M_out_lim.
7411
	(_M_is_indeterminate): Likewise.
7412
	* include/std/std_sstream.h (str()): _M_out_end is now _M_out_lim.
7413
	(_M_stringbuf_init): Don't set _M_buf_size, unused for sstreams,
7414
	which have the information readily available as _M_string.capacity();
7415
	for ate and app modes, pass the string size to _M_really_sync.
7416
	(_M_really_sync): Consistently set _M_out_end and _M_out_lim, to
7417
	point to the end of the buffer (i.e., epptr) and to the string end,
7418
	respectively.
7419
	* include/std/std_streambuf.h: tweak comments, add _M_out_lim,
7420
	which points to the right limit of the used put area.
7421
	(_M_out_cur_move): The role of the old _M_out_end is now played
7422
	by _M_out_lim.
7423
	(_M_out_buf_size): Simplify: now (when _M_out_cur) return simply
7424
	_M_out_end  - _M_out_cur (i.e., pptr), _very_ close to the letter
7425
	of the standard.
7426
	(basic_streambuf()): Initialize _M_out_lim too.
7427
	* testsuite/27_io/filebuf_virtuals.cc (test10): Trivial tweak.
7428
	* testsuite/27_io/filebuf_virtuals.cc (test11): Add.
7429
	* testsuite/27_io/stringbuf_virtuals.cc (test09): Add.
7430
 
7431
2003-02-24  Benjamin Kosnik  
7432
 
7433
	* testsuite/27_io/ios_base_storage.cc (main): Call
7434
	set_memory_limits.
7435
 
7436
2003-02-21  Jerry Quinn  
7437
 
7438
	* include/bits/locale_facets.tcc (_M_convert_float): Replace
7439
	numpunct facet accesses with data from __locale_cache.
7440
 
7441
2003-02-20  Phil Edwards  
7442
 
7443
	* docs/html/faq/index.html (3.9):  New note, wchar_t on FreeBSD.
7444
	* docs/html/faq/index.txt:  Regenerate.
7445
 
7446
2003-02-20  Phil Edwards  
7447
 
7448
	* config/linker-map.gnu:  Also export locking symbols needed for the
7449
	generic atomicity.h case.
7450
 
7451
2003-02-20  Alexandre Oliva  
7452
 
7453
	* configure.in: Propagate ORIGINAL_LD_FOR_MULTILIBS to
7454
	config.status.
7455
	* configure: Rebuilt.
7456
 
7457
2003-02-19  Paolo Carlini  
7458
 
7459
	* include/bits/sstream.tcc (overflow): According to
7460
	27.7.1.3, p5, actual output is performed by sputc(c).
7461
 
7462
2003-02-19  Phil Edwards  
7463
 
7464
	PR libstdc++/9582
7465
	* include/bits/stl_alloc.h:  Remove all traces of assert().
7466
 
7467
2003-02-18  Paolo Carlini  
7468
 
7469
	* include/std/std_sstream.h (str()): the size of the
7470
	current string may be different from the initial one
7471
	whenever _M_out_end > _M_out_beg.
7472
	* testsuite/27_io/stringbuf_members.cc (test07): Add.
7473
 
7474
2003-02-18  Paolo Carlini  
7475
 
7476
	PR libstdc++/9582
7477
	* include/bits/stl_alloc.h (__pool_alloc::allocate): Remove assert.
7478
 
7479
2003-02-17  Benjamin Kosnik  
7480
 
7481
	* include/bits/basic_ios.tcc (copyfmt): Copy locale data as well.
7482
	* testsuite/27_io/ios_members.cc (test03): New.
7483
 
7484
2003-02-17  Jerry Quinn  
7485
 
7486
	* include/bits/basic_ios.h (basic_ios::_M_cache_locale): Declare.
7487
	(basic_ios::_M_cache_facets): Move into above.
7488
	* include/bits/basic_ios.tcc (basic_ios::copyfmt): Rebuild locale
7489
	cache.
7490
	(basic_ios::imbue): Force locale cache to be built.
7491
	(basic_ios::_M_init): Create and initialize locale cache.
7492
	* include/bits/ios_base.h (__locale_cache_base): Declare.
7493
	(ios_base::_M_locale_cache): New.
7494
	(ios_base::_M_cache): Define.
7495
	* include/bits/locale_facets.h:	(__num_base): Fix comment.  Add
7496
	_S_end.
7497
	(__locale_cache_base,__locale_cache<_CharT>):  New classes.
7498
	(__locale_cache, __locale_cache): New specializations.
7499
	* include/bits/locale_facets.tcc (num_put::_M_convert_int): Use locale
7500
	cache literal string, grouping flag, thousands separator.
7501
	(__locale_cache<_CharT>::__locale_cache): New.
7502
	(__locale_cache<_CharT>::_M_init): New.
7503
	* src/ios.cc: Clear _M_locale_cache in constructor.
7504
	* src/locale-inst.cc (__locale_cache, __locale_cache<_char_t>):
7505
	New.
7506
 
7507
2003-02-17  Paolo Carlini  
7508
 
7509
	* src/locale-inst.cc: Do not include .
7510
	* src/locale.cc: Likewise.
7511
 
7512
2003-02-17  Paolo Carlini  
7513
 
7514
	PR libstdc++/9580
7515
	* include/std/std_fstream.h: Declare underflow and uflow
7516
	specializations, change generic definitions to do nothing.
7517
	* src/fstream.cc: Add underflow and uflow specializations.
7518
 
7519
2003-02-17  Paolo Carlini  
7520
 
7521
	PR libstdc++/9169
7522
	* include/bits/fstream.tcc (_M_convert_to_external):
7523
	Deal correctly with noconv, as prescribed by 27.8.1.4,p8.
7524
	* testsuite/27_io/filebuf_virtuals.cc (test10): Add.
7525
 
7526
2003-02-13  Benjamin Kosnik  
7527
 
7528
	* include/bits/c++config (_GLIBCPP_EXTERN_TEMPLATE): Define.
7529
	* include/bits/basic_ios.tcc: Guard use of extern template.
7530
	* include/std/std_iomanip.h: Same.
7531
	* include/bits/streambuf.tcc: Same.
7532
	* include/bits/stl_alloc.h: Same.
7533
	* include/bits/locale_facets.tcc: Same.
7534
	* include/bits/ostream.tcc: Same.
7535
	* include/bits/istream.tcc: Same.
7536
	* include/bits/fstream.tcc: Same.
7537
	* include/bits/basic_string.tcc: Same.
7538
 
7539
2003-02-13  Paolo Carlini  
7540
 
7541
	* include/bits/ostream.tcc (sentry::sentry): Improve
7542
	performance-wise the fix for libstdc++/9563.
7543
 
7544
2003-02-12  Phil Edwards  
7545
 
7546
	* config/cpu/generic/atomicity.h (_Atomic_add_mutex):  Fix declaration.
7547
	(_GLIBCPP_NEED_GENERIC_MUTEX):  Define for this file.
7548
	(_Atomic_add_mutex_once, __gthread_atomic_add_mutex_once):  Declare
7549
	when we don't have static mutex initialization.
7550
	(__exchange_and_add):  Use _Atomic_add_mutex_once.
7551
	* src/misc-inst.cc:  Definitions of all the above.
7552
 
7553
2003-02-12  Paolo Carlini  
7554
 
7555
	PR libstdc++/9563
7556
	* include/bits/ostream.tcc (sentry::sentry): Check
7557
	the state of the stream after the preparation.
7558
	* testsuite/27_io/ostream_sentry.cc (test02): Add.
7559
 
7560
2003-02-11  Benjamin Kosnik  
7561
 
7562
	* include/Makefile.am (stamp-std-precompile): Add rule.
7563
	* include/Makefile.in: Regenerated.
7564
 
7565
2003-02-11 Jerry Quinn  
7566
	   Benjamin Kosnik  
7567
 
7568
	* include/bits/locale_facets.h (__num_base): Add _S_atoms_out.
7569
	Add indexes into this array.
7570
	(__num_base::_S_atoms): To _S_atoms_in.
7571
	(num_put::_M_insert): Rename to _M_pad.
7572
	(num_put::_M_convert_int): Adjust remove __mod, __modl arguments.
7573
	(num_put::_M_widen_int): Rename to _M_group_int.
7574
	(num_put::_M_widen_float): Rename to _M_group_float.
7575
	* include/bits/locale_facets.tcc (__int_to_char): New inline
7576
	function and adapter functions.
7577
	(num_put::_M_group_int): Streamline.
7578
	(num_put::_M_group_float): Streamline.
7579
	(num_put::_M_convert_int): Remove unused parameter names. Choose
7580
	large enough buffer for text.  Use __int_to_char instead of
7581
	__convert_from_v.  Formatted text is now at the end of the buffer.
7582
	(num_put::_M_convert_float): Preliminary fixups.
7583
	* src/locale-inst.cc (__convert_from_v): Add ifdef.
7584
	(__int_to_char): Same.
7585
	(__int_to_char): New.
7586
	(__int_to_char): New.
7587
	(__int_to_char): New.
7588
	(__int_to_char): New.
7589
 
7590
2003-02-11  Scott Snyder  
7591
 
7592
	PR libstdc++/9659
7593
	* include/bits/fstream.tcc (seekoff): Avoid operator+
7594
	for pos_type.
7595
 
7596
2003-02-11  Paolo Carlini  
7597
 
7598
	PR libstdc++/9320
7599
	* include/ext/stdio_filebuf.h
7600
	(stdio_filebuf(int, std::ios_base::openmode, bool, int_type),
7601
	stdio_filebuf(std::__c_file*, std::ios_base::openmode, int_type)):
7602
	Change to take a __size parameter of type size_t, not
7603
	of type (template parameter dependent) int_type.
7604
	* src/ios.cc (ios_base::Init::_S_ios_create): Change type of
7605
	size vars to size_t.
7606
	* testsuite/ext/stdio_filebuf.cc: Add.
7607
 
7608
2003-02-11  Paolo Carlini  
7609
	    Petur Runolfsson  
7610
 
7611
	PR libstdc++/9318
7612
	* include/bits/streambuf.tcc (__copy_streambufs):
7613
	Don't conditionalize the copy to __testput.
7614
	* testsuite/27_io/streambuf_members.cc (test09, test10): Add.
7615
 
7616
2002-02-11  DJ Delorie  
7617
 
7618
	* acinclude.m4: Check for native targets that can't link at
7619
	this point in the build.
7620
	* aclocal.m4: Regenerate.
7621
	* configure: Regenerate.
7622
 
7623
2003-02-08  John David Anglin  
7624
 
7625
	* hppa/atomicity.h (__Atomicity_lock<__inst>::_S_atomicity_lock):
7626
	Correct alignment.
7627
	(__exchange_and_add, __atomic_add): Use PA 2.0 ordered store to reset
7628
	lock.
7629
 
7630
2003-02-07  Paolo Carlini  
7631
 
7632
	* testsuite/27_io/filebuf_virtuals.cc (test08): Fix for
7633
	unsigned char platforms.
7634
 
7635
2003-02-06  Paolo Carlini  
7636
 
7637
	PR libstdc++/9562
7638
	* include/std/std_istream.h
7639
	(basic_istream::sentry::operator bool()): Make const.
7640
	* include/std/std_ostream.h
7641
	(basic_ostream::sentry::operator bool()): Likewise.
7642
	* testsuite/27_io/istream_sentry.cc (test03): Add.
7643
	* testsuite/27_io/ostream_sentry.cc: Add.
7644
 
7645
2003-02-06  Paolo Carlini  
7646
 
7647
	PR libstdc++/9548
7648
	Implement resolution of DR 231 (Ready)
7649
	* include/bits/locale_facets.h (__num_base::_S_format_float):
7650
	Change declaration: return void, remove __prec parameter.
7651
	* src/locale.cc (__num_base::_S_format_float): Implement
7652
	resolution of DR 231.
7653
	* include/bits/locale_facets.tcc (num_put::_M_convert_float):
7654
	Tweak uses. Check for negative precision.
7655
	* testsuite/22_locale/num_put/put/char/6.cc: Add
7656
	* testsuite/22_locale/num_put/put/wchar_t/6.cc: Likewise.
7657
 
7658
2003-02-06  Peter Soetens  
7659
 
7660
	* config/io/basic_file_libio.h: Fixups.
7661
	* config/io/c_io_libio.h: Same.
7662
	* libio/Makefile.am: Same.
7663
	* libio/Makefile.in: Regenerated.
7664
 
7665
2003-02-06  Benjamin Kosnik  
7666
 
7667
	* testsuite/22_locale/codecvt/encoding/wchar_t/1.cc (test01):
7668
	Explicitly use the "C" locale.
7669
	* testsuite/22_locale/codecvt/max_length/wchar_t/1.cc (test01): Same.
7670
 
7671
2003-02-06  Petur Runolfsson  
7672
 
7673
	DR 75
7674
	DR 305
7675
	PR libstdc++/9028 (partial)
7676
	PR libstdc++/9224
7677
	PR libstdc++/9246
7678
	PR libstdc++/9247
7679
 
7680
	* src/codecvt.cc
7681
	(codecvt::do_encoding,
7682
	codecvt::do_length,
7683
	codecvt::do_max_length):
7684
	Move...
7685
	* config/locale/generic/codecvt_members.cc:  ...here.
7686
	* config/locale/gnu/codecvt_members.cc:  ...and here.
7687
 
7688
	* config/locale/generic/codecvt_members.cc,
7689
	* config/locale/gnu/codecvt_members.cc
7690
	(codecvt::do_encoding
7691
	codecvt::do_in,
7692
	codecvt::do_length,
7693
	codecvt::do_max_length,
7694
	codecvt::do_out):
7695
	New implementation that handles stateless encodings,
7696
	including UTF-8.
7697
 
7698
	* config/locale/generic/codecvt_members.cc,
7699
	* config/locale/gnu/codecvt_members.cc,
7700
	* config/locale/ieee_1003.1-2001/codecvt_specializations.h,
7701
	* include/bits/codecvt.h,
7702
	* src/codecvt.cc
7703
	(codecvt::length, codecvt::do_length):
7704
	Change type of first argument of length and do_length from
7705
	'const state_type&' to 'state_type&' according to DR 75.
7706
 
7707
	* testsuite/22_locale/codecvt/always_noconv/wchar_t/1.cc:  Cleanup.
7708
	* testsuite/22_locale/codecvt/always_noconv/wchar_t/2.cc:  New test.
7709
	* testsuite/22_locale/codecvt/always_noconv/wchar_t/3.cc:  New test.
7710
	* testsuite/22_locale/codecvt/always_noconv/wchar_t/4.cc:  New test.
7711
	* testsuite/22_locale/codecvt/encoding/wchar_t/1.cc:
7712
	Cleanup and check for correct return value from encoding
7713
	for "C" locale.
7714
	* testsuite/22_locale/codecvt/encoding/wchar_t/2.cc:  New test.
7715
	* testsuite/22_locale/codecvt/encoding/wchar_t/3.cc:  New test.
7716
	* testsuite/22_locale/codecvt/encoding/wchar_t/4.cc:  New test.
7717
	* testsuite/22_locale/codecvt/in/wchar_t/1.cc:  Cleanup.
7718
	* testsuite/22_locale/codecvt/in/wchar_t/2.cc:  New test.
7719
	* testsuite/22_locale/codecvt/in/wchar_t/3.cc:  New test.
7720
	* testsuite/22_locale/codecvt/in/wchar_t/4.cc:  New test.
7721
	* testsuite/22_locale/codecvt/in/wchar_t/5.cc:  New test.
7722
	* testsuite/22_locale/codecvt/in/wchar_t/6.cc:  New test.
7723
	* testsuite/22_locale/codecvt/in/wchar_t/7.cc:  New test.
7724
	* testsuite/22_locale/codecvt/in/wchar_t/8.cc:  New test.
7725
	* testsuite/22_locale/codecvt/in/wchar_t/9.cc:  New test.
7726
	* testsuite/22_locale/codecvt/length/char/1.cc:  Cleanup.
7727
	* testsuite/22_locale/codecvt/length/char/2.cc:  New test.
7728
	* testsuite/22_locale/codecvt/length/wchar_t/1.cc:  Cleanup.
7729
	* testsuite/22_locale/codecvt/length/wchar_t/2.cc:  New test.
7730
	* testsuite/22_locale/codecvt/length/wchar_t/3.cc:  New test.
7731
	* testsuite/22_locale/codecvt/length/wchar_t/4.cc:  New test.
7732
	* testsuite/22_locale/codecvt/length/wchar_t/5.cc:  New test.
7733
	* testsuite/22_locale/codecvt/length/wchar_t/6.cc:  New test.
7734
	* testsuite/22_locale/codecvt/length/wchar_t/7.cc:  New test.
7735
	* testsuite/22_locale/codecvt/max_length/wchar_t/1.cc:  Cleanup.
7736
	* testsuite/22_locale/codecvt/max_length/wchar_t/2.cc:  New test.
7737
	* testsuite/22_locale/codecvt/max_length/wchar_t/3.cc:  New test.
7738
	* testsuite/22_locale/codecvt/max_length/wchar_t/4.cc:  New test.
7739
	* testsuite/22_locale/codecvt/out/wchar_t/1.cc:  Cleanup.
7740
	* testsuite/22_locale/codecvt/out/wchar_t/2.cc:  New test.
7741
	* testsuite/22_locale/codecvt/out/wchar_t/3.cc:  New test.
7742
	* testsuite/22_locale/codecvt/out/wchar_t/4.cc:  New test.
7743
	* testsuite/22_locale/codecvt/out/wchar_t/5.cc:  New test.
7744
	* testsuite/22_locale/codecvt/out/wchar_t/6.cc:  New test.
7745
	* testsuite/22_locale/codecvt/out/wchar_t/7.cc:  New test.
7746
	* testsuite/22_locale/codecvt/unicode/1.cc:  New test.
7747
	* testsuite/22_locale/codecvt/unshift/wchar_t/1.cc:  Cleanup.
7748
	* testsuite/22_locale/codecvt/unshift/wchar_t/2.cc:  New test.
7749
	* testsuite/22_locale/codecvt/unshift/wchar_t/3.cc:  New test.
7750
	* testsuite/22_locale/codecvt/unshfit/wchar_t/4.cc:  New test.
7751
 
7752
2003-02-05  Benjamin Kosnik  
7753
 
7754
	* include/bits/locale_facets.tcc (time_put::do_put): Use __write.
7755
	(money_put::do_put): Same.
7756
 
7757
2003-02-05  Jerry Quinn  
7758
 
7759
	* include/bits/ios_base.h (ios_base): Document reserved storage.
7760
 
7761
	* include/bits/locale_facets.h:	(struct __pad): Comment on
7762
	implementation.
7763
	(__verify_grouping): Same.
7764
	(__add_grouping): Same.
7765
	* include/bits/locale_facets.tcc (__verify_grouping): Move
7766
	comments to declaration.
7767
	(__add_grouping): Same.
7768
 
7769
	* include/bits/locale_facets.tcc:
7770
	(__write<_CharT, _OutIter>): New function.
7771
	(__write<_CharT>): New function specialization.
7772
	(num_put::_M_insert): Remove explicit loop over iterator.  Use
7773
	__write.
7774
	(num_put::_M_widen_float): Remove __basefield.
7775
	(num_put::_M_widen_int): Move __basefield to within grouping block.
7776
 
7777
	* include/bits/streambuf_iterator.h: Include .
7778
	(ostreambuf_iterator::_M_put): Add.
7779
 
7780
2003-02-05  Paolo Carlini  
7781
 
7782
	* testsuite/26_numerics/valarray_name_lookup.cc: Fix typo.
7783
 
7784
2003-02-04  Nathan Myers  
7785
 
7786
	* testsuite/25_algorithms/min_max.cc (test02): Add.
7787
 
7788
2003-02-04  Paolo Carlini  
7789
 
7790
	PR libstdc++/9439, PR libstdc++/9425
7791
	* config/io/basic_file_stdio.cc
7792
	(__basic_file::seekoff, seekpos): Return -1L if
7793
	fseek fails.
7794
	* include/bits/fstream.tcc (basic_filebuf::seekoff):
7795
	Check _M_file.seekoff return value; always return
7796
	pos_type(off_type(-1)) in case of failure.
7797
	(basic_filebuf::pbackfail): Check this->seekoff return
7798
	value and return traits_type::eof() in case of failure.
7799
	* testsuite/27_io/filebuf_virtuals.cc (test09): Add.
7800
 
7801
2003-02-04  Jerry Quinn  
7802
 
7803
	* include/std/std_ostream.h (ostream::_M_write): Declare.
7804
	* ostream.tcc (ostream::_M_write): Define.
7805
	(basic_ostream::write): Use it.
7806
	(operator<<(basic_ostream, _CharT)): Ditto.
7807
	(operator<<(basic_ostream, char)): Ditto.
7808
	(operator<<(basic_ostream, _CharT*)): Ditto.
7809
	(operator<<(basic_ostream, char*)): Ditto.
7810
	(operator<<(basic_ostream, basic_string)): Ditto.
7811
 
7812
2003-02-04  Benjamin Kosnik  
7813
 
7814
	* testsuite/26_numerics/valarray_name_lookup.cc: Fix.
7815
 
7816
2002-02-04  Jonathan Wakely  
7817
 
7818
	* docs/html/27_io/howto.html: Link to Dietmar Kuehl's IOStream page,
7819
	add HTML comment about updating links if numbering changes.
7820
 
7821
2003-02-04  Paolo Carlini  
7822
 
7823
	PR libstdc++/9538
7824
	* include/bits/streambuf.tcc (sputbackc): Access
7825
	this->gptr()[-1] only if _M_in_beg < _M_in_cur.
7826
	* testsuite/27_io/filebuf_virtuals.cc (test08): Add.
7827
 
7828
2003-02-04  Paolo Carlini  
7829
 
7830
	PR libstdc++/9507
7831
	* include/bits/fstream.tcc (open): If the 'ate' repositioning
7832
	operation fails, calls close _and_ returns a null pointer
7833
	to indicate failure (27.8.1.3,4).
7834
	* testsuite/27_io/filebuf_members.cc (test_06): Add.
7835
 
7836
2003-02-04  Petur Runolfsson  
7837
 
7838
	* testsuite/27_io/filebuf_members.cc (test_04): Remove exit(0).
7839
 
7840
2002-02-04  Jonathan Wakely  
7841
 
7842
	* docs/html/27_io/howto.html: New section on stdio_filebuf.
7843
	* docs/html/ext/howto.html: Move stdio_filebuf notes to 27_io.
7844
	* docs/html/documentation.html: Regenerate.
7845
 
7846
2003-02-04  Joseph S. Myers  
7847
 
7848
	* docs/html/17_intro/porting.texi: Update to GFDL 1.2.
7849
	* docs/html/17_intro/porting.html: Regenerate.
7850
 
7851
2003-02-03  Falk Hueffner  
7852
	    Phil Edwards  
7853
 
7854
	* include/std/std_bitset.h:  Replace CHAR_BIT with __CHAR_BIT__, use
7855
	numeric_limits for bits-per-word values.
7856
	(_Base_bitset::_M_do_count, _Base_bitset<1>::_M_do_count):
7857
	Use __builtin_popcountl instead.
7858
	(_Base_bitset::_M_do_find_first, _Base_bitset::_M_do_find_next,
7859
	_Base_bitset<1>::_M_do_find_first, _Base_bitset<1>::_M_do_find_next):
7860
	Use __builtin_ctzl instead.
7861
	(_S_bit_count, _S_first_one):  Remove.
7862
	* config/linker-map.gnu (GLIBCPP_3.4):  Remove std::_S_bit_count.
7863
	* src/Makefile.am (sources):  Remove bitset.cc.
7864
	* src/bitset.cc:  Delete file.
7865
	* src/Makefile.in:  Regenerate.
7866
 
7867
2003-02-03  Phil Edwards  
7868
 
7869
	PR libstdc++/9527, PR libstdc++/8713
7870
	* docs/html/install.html:  Mention glibc version requirement.
7871
	* docs/html/faq/index.html (3.8):  New note, glibc 2.2.5+ is needed
7872
	with 3.2.1+ (formatting bugfixes).
7873
	* docs/html/faq/index.txt:  Regenerate.
7874
 
7875
2003-02-03  Volker Reichelt  
7876
 
7877
	PR libstdc++/9234
7878
	* include/bits/valarray_before.h (_UnBase::operator[]): Apply unary
7879
	operator.
7880
 
7881
	* include/bits/valarray_before.h (__not_equal_to): Use != instead
7882
	of ==.
7883
 
7884
	* testsuite/26_numerics/valarray_operators.cc: New test.
7885
 
7886
2003-02-01  Phil Edwards  
7887
 
7888
	* docs/html/faq/index.html:  Correct link to libg++ information.
7889
	* docs/html/faq/index.txt:  Regenerated.
7890
 
7891
2003-02-01  Paolo Carlini  
7892
	    Benjamin Kosnik  
7893
 
7894
	Const correctness issue:
7895
	http://gcc.gnu.org/ml/libstdc++/2003-01/msg00370.html
7896
	* include/bits/locale_classes.h
7897
	(locale::_Impl::_M_facets): Change type to const facet**.
7898
	(locale::_Impl::_M_install_facet): Change declaration to
7899
	take const facet*.
7900
	(locale::facet::_M_references): Make mutable.
7901
	(locale::facet::_M_add_reference): Declare const.
7902
	(locale::facet::_M_remove_reference): Likewise.
7903
	* include/bits/locale_facets.tcc
7904
	(use_facet(const locale&)): Tweak for const facet** _M_facets.
7905
	(has_facet(const locale&)): Likewise.
7906
	* src/locale.cc
7907
	(locale::facet::_M_add_reference): Adjust definition.
7908
	(locale::facet::_M_remove_reference): Likewise.
7909
	* src/localename.cc
7910
	(locale::_Impl::_Impl(const _Impl&, size_t)): Tweak for
7911
	const facet** _M_facets.
7912
	(locale::_Impl::_Impl(const char*, size_t)): Likewise.
7913
	(locale::_Impl::_Impl(facet**, size_t, bool)): Likewise.
7914
	(locale::_Impl::_M_install_facet): Adjust definition to take
7915
	const facet* and for const facet** _M_facets.
7916
	* testsuite/22_locale/locale/cons/8.cc: Add.
7917
 
7918
2003-01-29  Mark Mitchell  
7919
 
7920
	* include/std/std_limits.h (numeric_limits::has_infinity):
7921
	Use __FLT_HAS_INIFINITY__ to initialize.
7922
	(numeric_limits::has_quiet_NaN): Likewise.
7923
	(numeric_limits::has_infinity): Use __DBL_HAS_INIFINITY__
7924
	to initialize.
7925
	(numeric_limits::has_quiet_NaN): Likewise.
7926
	(numeric_limits::has_infinity): Use
7927
	__LDBL_HAS_INIFINITY__ to initialize.
7928
	(numeric_limits::has_quiet_NaN): Likewise.
7929
 
7930
2003-01-28  Nathan Sidwell  
7931
 
7932
	PR c++/9433
7933
	* libsupc++/tinfo.cc (__vmi_class_type_info::__do_dyncast): Cope
7934
	with bases which are very ambiguous.
7935
 
7936
2003-01-28  Danny Smith  
7937
 
7938
	* src/Makefile.am (CONFIG_CXXFLAGS): Reverse order of
7939
	@EXTRA_CXX_FLAGS@ @SECTION_FLAGS@.
7940
	* libsupc++/Makefile.am (CONFIG_CXXFLAGS): Likewise.
7941
	* src/Makefile.in: Regenerate.
7942
	* libsupc++/Makefile.in: Regenerate.
7943
 
7944
2003-01-27  Alexandre Oliva  
7945
 
7946
	* acinclude.m4 (glibcpp_toolexeclibdir): Instead of
7947
	$(MULTISUBDIR), use `$CC -print-multi-os-directory`, unless
7948
	version_specific_libs is enabled.
7949
	* aclocal.m4, configure: Rebuilt.
7950
 
7951
2003-01-24  Nathan Sidwell  
7952
 
7953
	* include/bits/valarray_meta.h: Remove, split into ...
7954
	* include/bits/valarray_before.h: ... this, and ...
7955
	* include/bits/valarray_after.h: ... this.
7956
	* include/std/std_valarray.h: Adjust.
7957
	* include/Makefile.am (bits_headers): Adjust.
7958
	* include/Makefile.in: Regenerate.
7959
 
7960
2003-01-24  Andreas Schwab  
7961
 
7962
	* config/linker-map.gnu: Fix for size_t variance.
7963
 
7964
2003-01-23  Petur Runolfsson  
7965
 
7966
	PR libstdc++/9322
7967
	* include/std/std_streambuf.h
7968
	(basic_streambuf::basic_streambuf,
7969
	basic_streambuf::~basic_streambuf,
7970
	basic_streambuf::getloc, basic_streambuf::imbue):
7971
	Remove _M_buf_locale_init
7972
	* include/bits/fstream.tcc (basic_filebuf::imbue):  Likewise
7973
	* testsuite/27_io/filebuf_virtuals.cc (test08):  Add.
7974
	* testsuite/27_io/streambuf_members.cc (test08):  Add.
7975
	* testsuite/27_io/stringbuf_virtuals.cc (test08):  Add.
7976
 
7977
2003-01-23  Benjamin Kosnik  
7978
 
7979
	Revert include ordering.
7980
	* config/locale/generic/c_locale.h: Add include guards.
7981
	* config/locale/gnu/c_locale.h: Same.
7982
	* include/bits/locale_classes.h: Remove cctype include.
7983
	* include/std/std_iosfwd.h: Add c++locale.h, cctype includes.
7984
	* include/std/std_fstream.h: Remove streambuf include.
7985
	* include/std/std_sstream.h: Remove streambuf include.
7986
 
7987
2003-01-23  Benjamin Kosnik  
7988
 
7989
	* configure.in (libtool_VERSION): To 6:0:0.
7990
	* configure: Regenerated.
7991
	* config/linker-map.gnu: Clean.
7992
 
7993
	* src/misc-inst.cc: Remove instantiations.
7994
 
7995
	* include/bits/stl_alloc.h (__malloc_alloc_template):
7996
	To __malloc_alloc.
7997
	(__default_alloc_template): To __pool_alloc.
7998
	* src/stl-inst.cc: Same.
7999
	* include/backward/alloc.h: Update.
8000
	* testsuite/ext/allocators.cc: Update.
8001
 
8002
	* src/globals.cc (__gnu_cxx): Remove _GLIBCPP_ASM_SYMVER. Should
8003
	really try to remove these if possible.
8004
	* src/locale.cc (std): Same.
8005
 
8006
	* testsuite/abi_check.cc (check_version): Add.
8007
 
8008
2003-01-22  Benjamin Kosnik  
8009
	    Sysoltsev Slawa  
8010
	    Mark Mitchell  
8011
 
8012
	PR libstdc++/9269
8013
	* include/std/std_fstream.h (basic_filebuf::uflow): Declare.
8014
	(basic_filebuf::underflow): Declare.
8015
	Move definitions.
8016
 
8017
2003-01-22  Benjamin Kosnik  
8018
 
8019
	* include/bits/locale_facets.h: Move non-facet classes requiring
8020
	 to...
8021
	* include/bits/locale_classes.h: New.
8022
	* include/bits/Makefile.am (bits_headers_src): Add locale_classes.h.
8023
	* include/bits/Makefile.in: Regenerate.
8024
 
8025
	* include/bits/locale_facets.tcc (__convert_from_v): Move to...
8026
	* config/locale/gnu/c_locale.h: ...here.
8027
	* config/locale/generic/c_locale.h: Same.
8028
 
8029
	* include/bits/locale_facets.tcc: Move declarations to...
8030
	* include/bits/locale_facets.h: ...here.
8031
	* include/bits/basic_ios.h: Tweak includes accordingly.
8032
	* include/std/std_sstream.h: Add streambuf include.
8033
	* include/std/std_fstream.h: Ditto.
8034
	* include/std/std_locale.h: Add locale_classes.h include.
8035
	* include/std/std_iosfwd.h: Tweak.
8036
	* src/concept-inst.cc: Add iterator include.
8037
 
8038
	* config/linker-map.gnu: Specify __cxa functions, mark __cxa_dyn_*
8039
	bits as unexported in the future.
8040
 
8041
2003-01-21  Benjamin Kosnik  
8042
 
8043
	Reshuffle 22_locale testsuite.
8044
	* 22_locale/(codecvt.cc money_get.cc
8045
	codecvt_members_char_char.cc money_get_members_char.cc
8046
	codecvt_members_unicode_char.cc money_get_members_wchar_t.cc
8047
	codecvt_members_unicode_wchar_t.cc moneypunct_byname.cc
8048
	codecvt_members_wchar_t_char.cc moneypunct.cc collate_byname.cc
8049
	moneypunct_members_char.cc collate.cc moneypunct_members_wchar_t.cc
8050
	collate_members_char.cc money_put.cc collate_members_wchar_t.cc
8051
	money_put_members_char.cc ctor_copy_dtor.cc
8052
	money_put_members_wchar_t.cc ctype.cc num_get.cc ctype_is_char.cc
8053
	num_get_members_char.cc ctype_is_wchar_t.cc num_get_members_wchar_t.cc
8054
	ctype_members_char.cc numpunct_byname.cc ctype_members_wchar_t.cc
8055
	numpunct.cc ctype_narrow_char.cc numpunct_members_char.cc
8056
	ctype_narrow_wchar_t.cc numpunct_members_wchar_t.cc ctype_scan_char.cc
8057
	num_put.cc ctype_scan_wchar_t.cc num_put_members_char.cc
8058
	ctype_to_char.cc num_put_members_wchar_t.cc ctype_to_wchar_t.cc
8059
	operators.cc ctype_widen_char.cc static_members.cc
8060
	ctype_widen_wchar_t.cc time_get.cc facet.cc time_get_members_char.cc
8061
	global_templates.cc time_get_members_wchar_t.cc, members.cc,
8062
	time_put.cc, messages_byname.cc, time_put_members_char.cc,
8063
	messages.cc, time_put_members_wchar_t.cc, messages_members_char.cc):
8064
	Split up into individual test cases...
8065
	* 22_locale/codecvt/1.cc: New.
8066
	* 22_locale/codecvt/2.cc: New.
8067
	* 22_locale/codecvt/always_noconv/char/1.cc: New.
8068
	* 22_locale/codecvt/always_noconv/char/wrapped_env.cc: New.
8069
	* 22_locale/codecvt/always_noconv/char/wrapped_locale.cc: New.
8070
	* 22_locale/codecvt/always_noconv/wchar_t/1.cc: New.
8071
	* 22_locale/codecvt/always_noconv/wchar_t/wrapped_env.cc: New.
8072
	* 22_locale/codecvt/always_noconv/wchar_t/wrapped_locale.cc: New.
8073
	* 22_locale/codecvt/encoding/char/1.cc: New.
8074
	* 22_locale/codecvt/encoding/char/wrapped_env.cc: New.
8075
	* 22_locale/codecvt/encoding/char/wrapped_locale.cc: New.
8076
	* 22_locale/codecvt/encoding/wchar_t/1.cc: New.
8077
	* 22_locale/codecvt/encoding/wchar_t/wrapped_env.cc: New.
8078
	* 22_locale/codecvt/encoding/wchar_t/wrapped_locale.cc: New.
8079
	* 22_locale/codecvt/in/char/1.cc: New.
8080
	* 22_locale/codecvt/in/char/wrapped_env.cc: New.
8081
	* 22_locale/codecvt/in/char/wrapped_locale.cc: New.
8082
	* 22_locale/codecvt/in/wchar_t/1.cc: New.
8083
	* 22_locale/codecvt/in/wchar_t/wrapped_env.cc: New.
8084
	* 22_locale/codecvt/in/wchar_t/wrapped_locale.cc: New.
8085
	* 22_locale/codecvt/length/char/1.cc: New.
8086
	* 22_locale/codecvt/length/char/wrapped_env.cc: New.
8087
	* 22_locale/codecvt/length/char/wrapped_locale.cc: New.
8088
	* 22_locale/codecvt/length/wchar_t/1.cc: New.
8089
	* 22_locale/codecvt/length/wchar_t/wrapped_env.cc: New.
8090
	* 22_locale/codecvt/length/wchar_t/wrapped_locale.cc: New.
8091
	* 22_locale/codecvt/max_length/char/1.cc: New.
8092
	* 22_locale/codecvt/max_length/char/wrapped_env.cc: New.
8093
	* 22_locale/codecvt/max_length/char/wrapped_locale.cc: New.
8094
	* 22_locale/codecvt/max_length/wchar_t/1.cc: New.
8095
	* 22_locale/codecvt/max_length/wchar_t/wrapped_env.cc: New.
8096
	* 22_locale/codecvt/max_length/wchar_t/wrapped_locale.cc: New.
8097
	* 22_locale/codecvt/out/char/1.cc: New.
8098
	* 22_locale/codecvt/out/char/wrapped_env.cc: New.
8099
	* 22_locale/codecvt/out/char/wrapped_locale.cc: New.
8100
	* 22_locale/codecvt/out/wchar_t/1.cc: New.
8101
	* 22_locale/codecvt/out/wchar_t/wrapped_env.cc: New.
8102
	* 22_locale/codecvt/out/wchar_t/wrapped_locale.cc: New.
8103
	* 22_locale/codecvt/unicode/char.cc: New.
8104
	* 22_locale/codecvt/unicode/wchar_t.cc: New.
8105
	* 22_locale/codecvt/unshift/char/1.cc: New.
8106
	* 22_locale/codecvt/unshift/char/wrapped_env.cc: New.
8107
	* 22_locale/codecvt/unshift/char/wrapped_locale.cc: New.
8108
	* 22_locale/codecvt/unshift/wchar_t/1.cc: New.
8109
	* 22_locale/codecvt/unshift/wchar_t/wrapped_env.cc: New.
8110
	* 22_locale/codecvt/unshift/wchar_t/wrapped_locale.cc: New.
8111
	* 22_locale/collate/1.cc: New.
8112
	* 22_locale/collate/2.cc: New.
8113
	* 22_locale/collate/compare/char/1.cc: New.
8114
	* 22_locale/collate/compare/char/2.cc: New.
8115
	* 22_locale/collate/compare/char/wrapped_env.cc: New.
8116
	* 22_locale/collate/compare/char/wrapped_locale.cc: New.
8117
	* 22_locale/collate/compare/wchar_t/1.cc: New.
8118
	* 22_locale/collate/compare/wchar_t/2.cc: New.
8119
	* 22_locale/collate/compare/wchar_t/wrapped_env.cc: New.
8120
	* 22_locale/collate/compare/wchar_t/wrapped_locale.cc: New.
8121
	* 22_locale/collate/hash/char/1.cc: New.
8122
	* 22_locale/collate/hash/char/2.cc: New.
8123
	* 22_locale/collate/hash/char/wrapped_env.cc: New.
8124
	* 22_locale/collate/hash/char/wrapped_locale.cc: New.
8125
	* 22_locale/collate/hash/wchar_t/1.cc: New.
8126
	* 22_locale/collate/hash/wchar_t/2.cc: New.
8127
	* 22_locale/collate/hash/wchar_t/wrapped_env.cc: New.
8128
	* 22_locale/collate/hash/wchar_t/wrapped_locale.cc: New.
8129
	* 22_locale/collate/transform/char/2.cc: New.
8130
	* 22_locale/collate/transform/char/wrapped_env.cc: New.
8131
	* 22_locale/collate/transform/char/wrapped_locale.cc: New.
8132
	* 22_locale/collate/transform/wchar_t/2.cc: New.
8133
	* 22_locale/collate/transform/wchar_t/wrapped_env.cc: New.
8134
	* 22_locale/collate/transform/wchar_t/wrapped_locale.cc: New.
8135
	* 22_locale/collate_byname/1.cc: New.
8136
	* 22_locale/ctype/1.cc: New.
8137
	* 22_locale/ctype/2.cc: New.
8138
	* 22_locale/ctype/cons/char/1.cc: New.
8139
	* 22_locale/ctype/cons/char/wrapped_env.cc: New.
8140
	* 22_locale/ctype/cons/char/wrapped_locale.cc: New.
8141
	* 22_locale/ctype/is/char/1.cc: New.
8142
	* 22_locale/ctype/is/char/2.cc: New.
8143
	* 22_locale/ctype/is/char/3.cc: New.
8144
	* 22_locale/ctype/is/char/wrapped_env.cc: New.
8145
	* 22_locale/ctype/is/char/wrapped_locale.cc: New.
8146
	* 22_locale/ctype/is/wchar_t/1.cc: New.
8147
	* 22_locale/ctype/is/wchar_t/2.cc: New.
8148
	* 22_locale/ctype/is/wchar_t/wrapped_env.cc: New.
8149
	* 22_locale/ctype/is/wchar_t/wrapped_locale.cc: New.
8150
	* 22_locale/ctype/narrow/char/1.cc: New.
8151
	* 22_locale/ctype/narrow/char/2.cc: New.
8152
	* 22_locale/ctype/narrow/char/wrapped_env.cc: New.
8153
	* 22_locale/ctype/narrow/char/wrapped_locale.cc: New.
8154
	* 22_locale/ctype/narrow/wchar_t/1.cc: New.
8155
	* 22_locale/ctype/narrow/wchar_t/2.cc: New.
8156
	* 22_locale/ctype/narrow/wchar_t/wrapped_env.cc: New.
8157
	* 22_locale/ctype/narrow/wchar_t/wrapped_locale.cc: New.
8158
	* 22_locale/ctype/scan/char/1.cc: New.
8159
	* 22_locale/ctype/scan/char/wrapped_env.cc: New.
8160
	* 22_locale/ctype/scan/char/wrapped_locale.cc: New.
8161
	* 22_locale/ctype/scan/wchar_t/1.cc: New.
8162
	* 22_locale/ctype/scan/wchar_t/wrapped_env.cc: New.
8163
	* 22_locale/ctype/scan/wchar_t/wrapped_locale.cc: New.
8164
	* 22_locale/ctype/to/char/1.cc: New.
8165
	* 22_locale/ctype/to/char/wrapped_env.cc: New.
8166
	* 22_locale/ctype/to/char/wrapped_locale.cc: New.
8167
	* 22_locale/ctype/to/wchar_t/1.cc: New.
8168
	* 22_locale/ctype/to/wchar_t/wrapped_env.cc: New.
8169
	* 22_locale/ctype/to/wchar_t/wrapped_locale.cc: New.
8170
	* 22_locale/ctype/widen/char/1.cc: New.
8171
	* 22_locale/ctype/widen/char/wrapped_env.cc: New.
8172
	* 22_locale/ctype/widen/char/wrapped_locale.cc: New.
8173
	* 22_locale/ctype/widen/wchar_t/1.cc: New.
8174
	* 22_locale/ctype/widen/wchar_t/wrapped_env.cc: New.
8175
	* 22_locale/ctype/widen/wchar_t/wrapped_locale.cc: New.
8176
	* 22_locale/facet/1.cc: New.
8177
	* 22_locale/facet/2.cc: New.
8178
	* 22_locale/global_templates/1.cc: New.
8179
	* 22_locale/locale/cons/1.cc: New.
8180
	* 22_locale/locale/cons/2.cc: New.
8181
	* 22_locale/locale/cons/3.cc: New.
8182
	* 22_locale/locale/cons/4.cc: New.
8183
	* 22_locale/locale/cons/5.cc: New.
8184
	* 22_locale/locale/cons/6.cc: New.
8185
	* 22_locale/locale/cons/7.cc: New.
8186
	* 22_locale/locale/global_locale_objects/1.cc: New.
8187
	* 22_locale/locale/global_locale_objects/2.cc: New.
8188
	* 22_locale/locale/global_locale_objects/3.cc: New.
8189
	* 22_locale/locale/operations/1.cc: New.
8190
	* 22_locale/locale/operations/2.cc: New.
8191
	* 22_locale/messages/1.cc: New.
8192
	* 22_locale/messages/2.cc: New.
8193
	* 22_locale/messages/members/char/1.cc: New.
8194
	* 22_locale/messages/members/char/2.cc: New.
8195
	* 22_locale/messages/members/char/3.cc: New.
8196
	* 22_locale/messages/members/char/wrapped_env.cc: New.
8197
	* 22_locale/messages/members/char/wrapped_locale.cc: New.
8198
	* 22_locale/messages_byname/1.cc: New.
8199
	* 22_locale/money_get/1.cc: New.
8200
	* 22_locale/money_get/2.cc: New.
8201
	* 22_locale/money_get/get/char/1.cc: New.
8202
	* 22_locale/money_get/get/char/2.cc: New.
8203
	* 22_locale/money_get/get/char/3.cc: New.
8204
	* 22_locale/money_get/get/char/4.cc: New.
8205
	* 22_locale/money_get/get/char/5.cc: New.
8206
	* 22_locale/money_get/get/char/6.cc: New.
8207
	* 22_locale/money_get/get/char/7.cc: New.
8208
	* 22_locale/money_get/get/char/8.cc: New.
8209
	* 22_locale/money_get/get/char/wrapped_env.cc: New.
8210
	* 22_locale/money_get/get/char/wrapped_locale.cc: New.
8211
	* 22_locale/money_get/get/wchar_t/1.cc: New.
8212
	* 22_locale/money_get/get/wchar_t/2.cc: New.
8213
	* 22_locale/money_get/get/wchar_t/3.cc: New.
8214
	* 22_locale/money_get/get/wchar_t/4.cc: New.
8215
	* 22_locale/money_get/get/wchar_t/5.cc: New.
8216
	* 22_locale/money_get/get/wchar_t/6.cc: New.
8217
	* 22_locale/money_get/get/wchar_t/7.cc: New.
8218
	* 22_locale/money_get/get/wchar_t/8.cc: New.
8219
	* 22_locale/money_get/get/wchar_t/wrapped_env.cc: New.
8220
	* 22_locale/money_get/get/wchar_t/wrapped_locale.cc: New.
8221
	* 22_locale/money_put/1.cc: New.
8222
	* 22_locale/money_put/2.cc: New.
8223
	* 22_locale/money_put/put/char/1.cc: New.
8224
	* 22_locale/money_put/put/char/2.cc: New.
8225
	* 22_locale/money_put/put/char/3.cc: New.
8226
	* 22_locale/money_put/put/char/4.cc: New.
8227
	* 22_locale/money_put/put/char/5.cc: New.
8228
	* 22_locale/money_put/put/char/6.cc: New.
8229
	* 22_locale/money_put/put/char/wrapped_env.cc: New.
8230
	* 22_locale/money_put/put/char/wrapped_locale.cc: New.
8231
	* 22_locale/money_put/put/wchar_t/1.cc: New.
8232
	* 22_locale/money_put/put/wchar_t/2.cc: New.
8233
	* 22_locale/money_put/put/wchar_t/3.cc: New.
8234
	* 22_locale/money_put/put/wchar_t/4.cc: New.
8235
	* 22_locale/money_put/put/wchar_t/5.cc: New.
8236
	* 22_locale/money_put/put/wchar_t/6.cc: New.
8237
	* 22_locale/money_put/put/wchar_t/wrapped_env.cc: New.
8238
	* 22_locale/money_put/put/wchar_t/wrapped_locale.cc: New.
8239
	* 22_locale/moneypunct/1.cc: New.
8240
	* 22_locale/moneypunct/2.cc: New.
8241
	* 22_locale/moneypunct/3.cc: New.
8242
	* 22_locale/moneypunct/members/char/1.cc: New.
8243
	* 22_locale/moneypunct/members/char/2.cc: New.
8244
	* 22_locale/moneypunct/members/char/wrapped_env.cc: New.
8245
	* 22_locale/moneypunct/members/char/wrapped_locale.cc: New.
8246
	* 22_locale/moneypunct/members/wchar_t/1.cc: New.
8247
	* 22_locale/moneypunct/members/wchar_t/2.cc: New.
8248
	* 22_locale/moneypunct/members/wchar_t/wrapped_env.cc: New.
8249
	* 22_locale/moneypunct/members/wchar_t/wrapped_locale.cc: New.
8250
	* 22_locale/moneypunct_byname/1.cc: New.
8251
	* 22_locale/num_get/1.cc: New.
8252
	* 22_locale/num_get/2.cc: New.
8253
	* 22_locale/num_get/get/char/1.cc: New.
8254
	* 22_locale/num_get/get/char/2.cc: New.
8255
	* 22_locale/num_get/get/char/3.cc: New.
8256
	* 22_locale/num_get/get/char/4.cc: New.
8257
	* 22_locale/num_get/get/char/5.cc: New.
8258
	* 22_locale/num_get/get/char/6.cc: New.
8259
	* 22_locale/num_get/get/char/wrapped_env.cc: New.
8260
	* 22_locale/num_get/get/char/wrapped_locale.cc: New.
8261
	* 22_locale/num_get/get/wchar_t/1.cc: New.
8262
	* 22_locale/num_get/get/wchar_t/2.cc: New.
8263
	* 22_locale/num_get/get/wchar_t/3.cc: New.
8264
	* 22_locale/num_get/get/wchar_t/4.cc: New.
8265
	* 22_locale/num_get/get/wchar_t/5.cc: New.
8266
	* 22_locale/num_get/get/wchar_t/6.cc: New.
8267
	* 22_locale/num_get/get/wchar_t/wrapped_env.cc: New.
8268
	* 22_locale/num_get/get/wchar_t/wrapped_locale.cc: New.
8269
	* 22_locale/num_put/1.cc: New.
8270
	* 22_locale/num_put/2.cc: New.
8271
	* 22_locale/num_put/put/char/1.cc: New.
8272
	* 22_locale/num_put/put/char/2.cc: New.
8273
	* 22_locale/num_put/put/char/3.cc: New.
8274
	* 22_locale/num_put/put/char/4.cc: New.
8275
	* 22_locale/num_put/put/char/5.cc: New.
8276
	* 22_locale/num_put/put/char/wrapped_env.cc: New.
8277
	* 22_locale/num_put/put/char/wrapped_locale.cc: New.
8278
	* 22_locale/num_put/put/wchar_t/1.cc: New.
8279
	* 22_locale/num_put/put/wchar_t/2.cc: New.
8280
	* 22_locale/num_put/put/wchar_t/3.cc: New.
8281
	* 22_locale/num_put/put/wchar_t/4.cc: New.
8282
	* 22_locale/num_put/put/wchar_t/5.cc: New.
8283
	* 22_locale/num_put/put/wchar_t/wrapped_env.cc: New.
8284
	* 22_locale/num_put/put/wchar_t/wrapped_locale.cc: New.
8285
	* 22_locale/numpunct/1.cc: New.
8286
	* 22_locale/numpunct/2.cc: New.
8287
	* 22_locale/numpunct/members/char/1.cc: New.
8288
	* 22_locale/numpunct/members/char/2.cc: New.
8289
	* 22_locale/numpunct/members/char/wrapped_env.cc: New.
8290
	* 22_locale/numpunct/members/char/wrapped_locale.cc: New.
8291
	* 22_locale/numpunct/members/wchar_t/1.cc: New.
8292
	* 22_locale/numpunct/members/wchar_t/2.cc: New.
8293
	* 22_locale/numpunct/members/wchar_t/wrapped_env.cc: New.
8294
	* 22_locale/numpunct/members/wchar_t/wrapped_locale.cc: New.
8295
	* 22_locale/numpunct_byname/1.cc: New.
8296
	* 22_locale/numpunct_byname/2.cc: New.
8297
	* 22_locale/time_get/1.cc: New.
8298
	* 22_locale/time_get/2.cc: New.
8299
	* 22_locale/time_get/date_order/char/1.cc: New.
8300
	* 22_locale/time_get/date_order/char/wrapped_env.cc: New.
8301
	* 22_locale/time_get/date_order/char/wrapped_locale.cc: New.
8302
	* 22_locale/time_get/date_order/wchar_t/1.cc: New.
8303
	* 22_locale/time_get/date_order/wchar_t/wrapped_env.cc: New.
8304
	* 22_locale/time_get/date_order/wchar_t/wrapped_locale.cc: New.
8305
	* 22_locale/time_get/get_date/char/1.cc: New.
8306
	* 22_locale/time_get/get_date/char/2.cc: New.
8307
	* 22_locale/time_get/get_date/char/3.cc: New.
8308
	* 22_locale/time_get/get_date/char/wrapped_env.cc: New.
8309
	* 22_locale/time_get/get_date/char/wrapped_locale.cc: New.
8310
	* 22_locale/time_get/get_date/wchar_t/1.cc: New.
8311
	* 22_locale/time_get/get_date/wchar_t/2.cc: New.
8312
	* 22_locale/time_get/get_date/wchar_t/3.cc: New.
8313
	* 22_locale/time_get/get_date/wchar_t/wrapped_env.cc: New.
8314
	* 22_locale/time_get/get_date/wchar_t/wrapped_locale.cc: New.
8315
	* 22_locale/time_get/get_monthname/char/1.cc: New.
8316
	* 22_locale/time_get/get_monthname/char/2.cc: New.
8317
	* 22_locale/time_get/get_monthname/char/3.cc: New.
8318
	* 22_locale/time_get/get_monthname/char/wrapped_env.cc: New.
8319
	* 22_locale/time_get/get_monthname/char/wrapped_locale.cc: New.
8320
	* 22_locale/time_get/get_monthname/wchar_t/1.cc: New.
8321
	* 22_locale/time_get/get_monthname/wchar_t/2.cc: New.
8322
	* 22_locale/time_get/get_monthname/wchar_t/3.cc: New.
8323
	* 22_locale/time_get/get_monthname/wchar_t/wrapped_env.cc: New.
8324
	* 22_locale/time_get/get_monthname/wchar_t/wrapped_locale.cc: New.
8325
	* 22_locale/time_get/get_time/char/1.cc: New.
8326
	* 22_locale/time_get/get_time/char/2.cc: New.
8327
	* 22_locale/time_get/get_time/char/3.cc: New.
8328
	* 22_locale/time_get/get_time/char/wrapped_env.cc: New.
8329
	* 22_locale/time_get/get_time/char/wrapped_locale.cc: New.
8330
	* 22_locale/time_get/get_time/wchar_t/1.cc: New.
8331
	* 22_locale/time_get/get_time/wchar_t/2.cc: New.
8332
	* 22_locale/time_get/get_time/wchar_t/3.cc: New.
8333
	* 22_locale/time_get/get_time/wchar_t/wrapped_env.cc: New.
8334
	* 22_locale/time_get/get_time/wchar_t/wrapped_locale.cc: New.
8335
	* 22_locale/time_get/get_weekday/char/1.cc: New.
8336
	* 22_locale/time_get/get_weekday/char/2.cc: New.
8337
	* 22_locale/time_get/get_weekday/char/3.cc: New.
8338
	* 22_locale/time_get/get_weekday/char/wrapped_env.cc: New.
8339
	* 22_locale/time_get/get_weekday/char/wrapped_locale.cc: New.
8340
	* 22_locale/time_get/get_weekday/wchar_t/1.cc: New.
8341
	* 22_locale/time_get/get_weekday/wchar_t/2.cc: New.
8342
	* 22_locale/time_get/get_weekday/wchar_t/3.cc: New.
8343
	* 22_locale/time_get/get_weekday/wchar_t/wrapped_env.cc: New.
8344
	* 22_locale/time_get/get_weekday/wchar_t/wrapped_locale.cc: New.
8345
	* 22_locale/time_get/get_year/char/1.cc: New.
8346
	* 22_locale/time_get/get_year/char/3.cc: New.
8347
	* 22_locale/time_get/get_year/char/wrapped_env.cc: New.
8348
	* 22_locale/time_get/get_year/char/wrapped_locale.cc: New.
8349
	* 22_locale/time_get/get_year/wchar_t/1.cc: New.
8350
	* 22_locale/time_get/get_year/wchar_t/3.cc: New.
8351
	* 22_locale/time_get/get_year/wchar_t/wrapped_env.cc: New.
8352
	* 22_locale/time_get/get_year/wchar_t/wrapped_locale.cc: New.
8353
	* 22_locale/time_put/1.cc: New.
8354
	* 22_locale/time_put/2.cc: New.
8355
	* 22_locale/time_put/put/char/1.cc: New.
8356
	* 22_locale/time_put/put/char/10.cc: New.
8357
	* 22_locale/time_put/put/char/2.cc: New.
8358
	* 22_locale/time_put/put/char/3.cc: New.
8359
	* 22_locale/time_put/put/char/4.cc: New.
8360
	* 22_locale/time_put/put/char/5.cc: New.
8361
	* 22_locale/time_put/put/char/6.cc: New.
8362
	* 22_locale/time_put/put/char/7.cc: New.
8363
	* 22_locale/time_put/put/char/8.cc: New.
8364
	* 22_locale/time_put/put/char/9.cc: New.
8365
	* 22_locale/time_put/put/char/wrapped_env.cc: New.
8366
	* 22_locale/time_put/put/char/wrapped_locale.cc: New.
8367
	* 22_locale/time_put/put/wchar_t/1.cc: New.
8368
	* 22_locale/time_put/put/wchar_t/10.cc: New.
8369
	* 22_locale/time_put/put/wchar_t/2.cc: New.
8370
	* 22_locale/time_put/put/wchar_t/3.cc: New.
8371
	* 22_locale/time_put/put/wchar_t/4.cc: New.
8372
	* 22_locale/time_put/put/wchar_t/5.cc: New.
8373
	* 22_locale/time_put/put/wchar_t/6.cc: New.
8374
	* 22_locale/time_put/put/wchar_t/7.cc: New.
8375
	* 22_locale/time_put/put/wchar_t/8.cc: New.
8376
	* 22_locale/time_put/put/wchar_t/9.cc: New.
8377
	* 22_locale/time_put/put/wchar_t/wrapped_env.cc: New.
8378
	* 22_locale/time_put/put/wchar_t/wrapped_locale.cc: New.
8379
 
8380
2003-01-16  Jeffrey D. Oldham  
8381
 
8382
	* config/locale/generic/messages_members.h
8383
	(messages_byname<_CharT>::messages_byname): Use this-> to refer to
8384
	unqualified members of base clasess.
8385
 
8386
2003-01-16  Mark Mitchell  
8387
	    Jeffrey Oldham 
8388
 
8389
	* config/locale/gnu/messages_members.h: Use this-> to refer to
8390
	unqualified members of base clasess.
8391
	* config/locale/ieee_1003.1-2001/codecvt_specializations.h: Likewise.
8392
	* include/bits/codecvt.h: Likewise.
8393
	* include/bits/deque.tcc: Likewise.
8394
	* include/bits/fstream.tcc: Likewise.
8395
	* include/bits/istream.tcc: Likewise.
8396
	* include/bits/list.tcc: Likewise.
8397
	* include/bits/locale_facets.h: Likewise.
8398
	* include/bits/ostream.tcc: Likewise.
8399
	* include/bits/sstream.tcc: Likewise.
8400
	* include/bits/stl_bvector.h: Likewise.
8401
	* include/bits/stl_deque.h: Likewise.
8402
	* include/bits/stl_list.h: Likewise.
8403
	* include/bits/stl_tree.h: Likewise.
8404
	* include/bits/stl_vector.h: Likewise.
8405
	* include/bits/vector.tcc: Likewise.
8406
	* include/ext/ropeimpl.h: Likewise.
8407
	* include/ext/stdio_filebuf.h: Likewise.
8408
	* include/ext/stl_rope.h: Likewise.
8409
	* include/std/std_fstream.h: Likewise.
8410
	* include/std/std_sstream.h: Likewise.
8411
 
8412
2003-01-15  Phil Edwards  
8413
 
8414
	* include/bits/basic_string.tcc (_S_string_copy): Unused, remove.
8415
 
8416
2003-01-15  Benjamin Kosnik  
8417
 
8418
	* acinclude.m4 (GLIBCPP_CHECK_WCHAR_T_SUPPORT): Substitute
8419
	GLIBCPP_TEST_WCHAR_T if building wchar_t bits in the library.
8420
	* aclocal.m4: Regenerate.
8421
	* configure: Regenerate.
8422
	* testsuite/Makefile.am (all-local): Add conditional rule to
8423
	generate testsuite_wchar_t.
8424
	* testsuite/Makefile.in: Regenerate.
8425
	* testsuite/lib/libstdc++-v3-dg.exp
8426
	(libstdc++-v3-list-sourcefiles): Remove wchar_t files if
8427
	testsuite_wchar_t is not present in the build directory.
8428
	* testsuite/libstdc++-v3.dg/dg.exp: Add -g -O2 to DEFAULT_CXXFLAGS.
8429
	Remove setulimit bits.
8430
	* testsuite/26_numerics/complex_value.cc: Set to noopts.
8431
	* testsuite/Makefile.am (CLEANFILES): Add.
8432
	* testsuite/Makefile.in: Regenerate.
8433
 
8434
2003-01-15  John David Anglin  
8435
 
8436
	* config/os/hpux/os_defines.h (_GLIBCPP_GTHREAD_USE_WEAK): Define for
8437
	__hppa__.
8438
 
8439
2003-01-14  Jeffrey D. Oldham  
8440
 
8441
	Further conform g++'s __vmi_class_type_info to the C++ ABI
8442
	specification.
8443
	* libsupc++/cxxabi.h
8444
	(__vmi_class_type_info::__flags_masks): Remove enumerations not
8445
	required by the specification.
8446
 
8447
2003-01-12  Benjamin Kosnik  
8448
 
8449
	Renames, namespaces for testsuite utilities.
8450
	* testsuite/testsuite_hooks.h: Put into namespace __gnu_cxx_test.
8451
	(gnu_allocator_tracker): Rename to allocation_tracker.
8452
	(gnu_new_allocator): Rename to tracker_alloc.
8453
	(__set_testsuite_memlimit): Rename to set_memory_limits.
8454
	(gnu_assignment_operator): Rename to assignment_operator.
8455
	(gnu_destructor): Rename to destructor.
8456
	(gnu_copy_tracker): Rename to copy_tracker.
8457
	(gnu_char, gnu_int, gnu_long): Rename to pod_char, pod_int, pod_long.
8458
	(run_tests_wrapped_locale): New.
8459
	(run_tests_wrapped_env): New.
8460
	* testsuite/testsuite_hooks.cc: Same.
8461
	(class locale_data): Add.
8462
	(class enviornment_variable): Add.
8463
	(class not_found): Add.
8464
	* testsuite/testsuite_allocator.h: Same.
8465
	* testsuite/testsuite_allocator.cc: Same.
8466
	* testsuite/23_containers/deque_ctor.cc
8467
	(test_copy_ctor_exception_safety): Change gnu_allocator_tracker to
8468
	allocation_tracker.
8469
	Change gnu_new_allocator to tracker_alloc.
8470
	Change gnu_counting_struct to counter.
8471
	Change gnu_copy_tracker to copy_tracker.
8472
	Change gnu_copy_constructor to copy_constructor.
8473
	Change gnu_assignment_operator to assignment_operator.
8474
	Inject.
8475
	* testsuite/23_containers/vector_capacity.cc: Same.
8476
	* testsuite/23_containers/vector_ctor.cc (test01): Same.
8477
	* testsuite/23_containers/list_modifiers.cc: Change
8478
	gnu_copy_tracker to copy_tracker.
8479
	* testsuite/21_strings/ctor_copy_dtor.cc (main): Change
8480
	__set_testsuite_memlimit to set_memory_limits.
8481
	* testsuite/21_strings/insert.cc (main): Same.
8482
	* testsuite/27_io/filebuf.cc: Change gnu_char to pod_char.
8483
	* testsuite/27_io/stringstream.cc: Same.
8484
	* testsuite/27_io/stringbuf.cc: Same.
8485
	* testsuite/27_io/streambuf.cc: Same.
8486
	* testsuite/27_io/ostream.cc: Same.
8487
	* testsuite/27_io/istream.cc: Same.
8488
	* testsuite/27_io/fstream.cc: Same.
8489
	* testsuite/lib/libstdc++-v3-dg.exp
8490
	(libstdc++-v3-list-sourcefiles): Additionally handle files two and
8491
	three levels deeper in glob patterns.
8492
 
8493
2003-01-11  Phil Edwards  
8494
 
8495
	* docs/doxygen/tables.html:  Finished now.
8496
	* docs/doxygen/user.cfg.in:  Update to latest version of Doxygen.
8497
	* include/bits/basic_ios.h (basic_ios::rdbuf):  Add example to
8498
	comments.
8499
 
8500
	* include/bits/deque.tcc, include/bits/stl_alloc.h,
8501
	include/bits/stl_deque.h, include/bits/stl_list.h,
8502
	include/bits/stl_vector.h:  Remove _GLIBCPP_DEPRECATED bits scheduled
8503
	for 3.4 removal.
8504
 
8505
2003-01-09  Benjamin Kosnik  
8506
 
8507
	* configure.in: Revert.
8508
	* configure: Regenerate.
8509
 
8510
2003-01-09  Christian Cornelssen  
8511
 
8512
	* include/Makefile.am (install-data-local): Prepend
8513
	$(DESTDIR) to destination paths in all (un)installation
8514
	commands.  Use ${c_base_builddir} and ${std_builddir}
8515
	as destination subdirectories to achieve consistency with
8516
	preceding mkinstalldirs commands.  No effect because both
8517
	variables contain "." only.
8518
	* include/Makefile.in: Regenerate.
8519
 
8520
2003-01-08  Benjamin Kosnik  
8521
 
8522
	* include/Makefile.am (stamp-*): Add checks for existing stamps.
8523
	* include/Makefile.in: Regenerate.
8524
 
8525
	* acinclude.m4 (GLIBCPP_ENABLE_DEBUG): Correct comment.
8526
	* aclocal.m4: Regenerate.
8527
 
8528
	* configure.in: Don't add new multi-do rules every time the
8529
	directory is reconfigured.
8530
	* configure: Regenerate.
8531
 
8532
2003-01-08  Brad Spencer  
8533
	    Nathan Myers  
8534
 
8535
	* src/Makefile.am (stamp-debug): Clean.
8536
	* src/Makefile.in: Regenerate.
8537
 
8538
2003-01-07  Benjamin Kosnik  
8539
 
8540
	PR libstdc++/8707
8541
	* Makefile.am (distclean-multi): Fix.
8542
	* Makefile.in: Regenerate.
8543
 
8544
2003-01-06  Benjamin Kosnik  
8545
 
8546
	* include/bits/locale_facets.h (messages): Move ctor, dtor
8547
	definitions to..
8548
	(__timepunct): Same.
8549
	* config/locale/gnu/messages_members.h (messages): Add dtor, ctor
8550
	definitions. Conditionalize for GNU systems.
8551
	* config/locale/generic/messages_members.h (messages): Add dtor, ctor
8552
	definitions.
8553
	* config/locale/gnu/time_members.h (messages): New. Add dtor, ctor
8554
	definitions. Conditionalize for GNU systems.
8555
	* config/locale/generic/time_members.h (messages): New. Add dtor, ctor
8556
	definitions.
8557
	* include/bits/localefwd.h (locale::facet::_S_c_name): Add.
8558
	* src/locale.cc: Define.
8559
	* src/localename.cc (locale::_Impl::_Impl(facet**, size_t, bool):
8560
	Use it.
8561
	* config/locale/gnu/time_members.h: Use it.
8562
	* config/locale/gnu/messages_members.h: Use it.
8563
	* config/linker-map.gnu: Add locale::facets details.
8564
	* include/Makefile.am (target_headers_extra): Add time_members.h.
8565
	* include/Makefile.in: Regenerate.
8566
	* acinclude.m4: Export CTIME_H.
8567
	* aclocal.m4: Regenerate.
8568
	* configure: Regnerate.
8569
 
8570
2003-01-06  Paolo Carlini  
8571
 
8572
	* src/codecvt.cc
8573
	(codecvt::do_in, do_out):
8574
	Tweak parameters to avoid unused parameter warnings.
8575
 
8576
2003-01-06  Paolo Carlini  
8577
 
8578
	PR libstdc++/9151
8579
	* include/bits/locale_facets.cc (num_put::_M_convert_float):
8580
	Limit __prec to digits10 + 2, not digits10 + 1, taking into
8581
	account the possibility of %{g,G} conversion specifiers
8582
	inside _S_format_float.
8583
	* testsuite/27_io/ostream_inserter_arith.cc (test06): Add.
8584
 
8585
2003-01-06  Kaveh R. Ghazi  
8586
 
8587
	* testsuite/lib/libstdc++-v3-dg.exp (libstdc++-v3-init,
8588
	libstdc++-v3-list-sourcefiles): Additionally handle files one
8589
	level deeper in glob patterns.
8590
 
8591
	* testsuite/27_io/istream_extractor_arith.cc: Delete, split...
8592
	* testsuite/27_io/istream_extractor_arith/01.cc,
8593
	testsuite/27_io/istream_extractor_arith/02.cc,
8594
	testsuite/27_io/istream_extractor_arith/03.cc,
8595
	testsuite/27_io/istream_extractor_arith/06.cc,
8596
	testsuite/27_io/istream_extractor_arith/07.cc,
8597
	testsuite/27_io/istream_extractor_arith/08.cc,
8598
	testsuite/27_io/istream_extractor_arith/09.cc,
8599
	testsuite/27_io/istream_extractor_arith/10.cc,
8600
	testsuite/27_io/istream_extractor_arith/11.cc,
8601
	testsuite/27_io/istream_extractor_arith/12.cc,
8602
	testsuite/27_io/istream_extractor_arith/13.cc: ... to new files.
8603
	* testsuite/27_io/istream_extractor_arith/12.cc: Add XFAIL for
8604
	sparc*-*-solaris2*.
8605
 
8606
2003-01-05  Paolo Carlini 
8607
 
8608
	PR libstdc++/9168
8609
	* src/codecvt.cc
8610
	(codecvt::do_in, do_out):
8611
	Implement the resolution of DR19 (TC).
8612
	* testsuite/22_locale/codecvt_members_char_char.cc
8613
	(test01): Tweak.
8614
 
8615
2003-01-02  Jason Merrill  
8616
 
8617
	* config/cpu/i486/atomicity.h (__exchange_and_add, __atomic_add):
8618
	*__mem is also an output.
8619
	* config/cpu/m68k/atomicity.h (__exchange_and_add): Likewise.
8620
 
8621
Copyright (C) 2003 Free Software Foundation, Inc.
8622
 
8623
Copying and distribution of this file, with or without modification,
8624
are permitted in any medium without royalty provided the copyright
8625
notice and this notice are preserved.