]> git.ipfire.org Git - thirdparty/gcc.git/blame - libstdc++-v3/ChangeLog
std_cwctype.h: Clean.
[thirdparty/gcc.git] / libstdc++-v3 / ChangeLog
CommitLineData
3840fa2a
BK
12000-06-01 Benjamin Kosnik <bkoz@gnu.org>
2
3 * bits/std_cwctype.h: Clean.
4 * bits/std_cwchar.h: Clean, remove cruft.
5
6 * acinclude.m4 (GLIBCPP_CHECK_WCHAR_T_SUPPORT): Re-work, add bits
7 for beginning iconv support.
8 Remove _GLIBCPP_HAS_WCHAR_MIN_MAX, roll into _GLIBCPP_USE_WCHAR_T
9 macro.
10 * acconfig.h: Remove _GLIBCPP_HAS_WCHAR_MIN_MAX.
11 * bits/limits_generic.h: Remove.
12 * src/gen-num-limits.cc: Same.
13
14 * src/locale.cc: Tweaks.
15
16 * bits/char_traits.h: Tweaks.
17
64cdd351
BK
182000-05-31 Russell Davidson <russell@ehess.cnrs-mrs.fr>
19
20 * bits/locale_facets.tcc (num_get<char>::_M_extract): Fix signage,
21 exponent, scientific formatting issues.
22 * testsuite/27_io/istream_extractor_arith.cc (test09): Add tests.
23
b2c62b3c
BC
242000-05-31 Branko Cibej <branko.cibej@hermes.si>
25
26 * bits/limits_generic.h (numeric_limits<wchar_t>): Use WCHAR_MIN
27 and WCHAR_MAX instead of WCHART_MIN and WCHART_MAX.
28
149a0abf
NM
292000-05-31 Nathan Myers <ncm@cantrip.org>
30
31 * docs/thanks.html: edit own credits
32
30ff6342
BK
332000-05-31 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
34
83bcda1e
BK
35 * bits/generic_shadow.h: Remaining _C_Shadow -> _C_shadow fix.
36
30ff6342
BK
37 * acinclude.m4 (GLIBCPP_ENABLE_LONG_LONG): Add strtoull checks...
38
64cdd351
BK
39 * mkcheck.in (SH_FLAG): Add in -Wl,--rpath -Wl,$LIB_PATH. Tweaks.
40
30ff6342
BK
412000-05-31 Steven King <sxking@uswest.net>
42
43 * shadow/time.h: fix typo
44 * shadow/wchar.h: ifdef __USE_GNU for wcsdup
45 * shadow/bits/std_cwchar.h: ditto
46 * shadow/bits/std_cstdlib.h: add overloads of abs and div for long
47 and long long.
48
0137be2d
PE
492000-05-26 Phil Edwards <pme@sourceware.cygnus.com>
50
51 * acinclude.m4 (GLIBCPP_ENABLE_LONG_LONG): If strtoll isn't
52 available, force --disable. Need to flesh this out; make smarter.
53 * aclocal.m4: Regenerate.
54 * configure: Regenerate.
55
56 * mkcheck.in: Minor tweaks.
57 * docs/download.html: Fix typo.
58
5b80666b
BK
592000-05-25 Benjamin Kosnik <bkoz@milou.soma.redhat.com>
60
61 * inclosure: Change to...
62 * mkinclosure: This.
63 Fix paths to bash.
64 * mkcshadow: Fix paths to bash.
65
66 * src/Makefile.am: Tweaks. Do cshadow header trickery at build time.
67 * src/Makefile.in: Regnerate.
68 * acinclude.m4 (GLIBCPP_COMPILER_VERSION): Fix typo.
69 (GLIBCPP_ENABLE_SHADOW): Do a less gross hack.
70 * aclocal.m4: Regenerate.
39e09fba 71 * mkcheck.in (INC_PATH): Tweak.
5b80666b
BK
72
73 * configure.in: Enable long long by default.
74 * configure: Regenerate.
75
76 * mkcheck.in (LIB_PATH): Revert.
77
bf93f43b
BK
782000-05-24 Nathan "I don't write ChangeLog Entries" Myers <ncm@cantrip.org>
79
80 * config/cpu/i486: New directory.
81 * config/cpu/i486/bits: New directory.
82 * config/cpu/i486/bits/atomicity.h: New file.
83 * config/cpu/i386/bits/atomicity.h (__compare_and_swap): Delete
84 'cmpxchgl' asm.
85 * acinclude.m4 (GLIBCPP_CHECK_CPU): Enable i386.
86
872000-05-24 Loren J. Rittle <ljrittle@acm.org>
88
89 * backward/alloc.h (__default_alloc_template): Only expose
90 implementation-specific symbol, if it exists in the
91 configuration.
92 * backward/iostream.h (ends): Expose symbol.
93 * backward/strstream.h: New file.
94 * backward/stream.h: New file.
95 * backward/ostream.h: New file.
96 * backward/istream.h: New file.
97 * backward/fstream.h: New file.
98 * backward/complex.h: New file.
99 * backward/iomanip.h: New file.
100
101 * mkcheck.in (LIB_PATH): Add -R bits.
102
103 * math/carg.c (carg): Replace __atan2 with atan2.
104
d3a12960
BK
1052000-05-24 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
106
d94611f1
BK
107 * Makefile.am (TAGS): Construct.
108 * Makefile.in: Rengerate.
109 * src/Makefile.am: Tweak.
110 * src/Makefile.in: Tweak.
111 * configure.in: Tweak.
112
113 * bits/c++config.h: Rename to ...
114 * bits/c++config: This.
115 * mkc++config: Adjust.
116
af9fe0d1
BK
117 * m4: Remove.
118 * m4/lc_message.m4: Merge into acinclude.m4.
119 * m4/mathfcts.m4: Same.
120 * m4/stringfcts.m4: Same.
121 * acinclude.m4: Add here.
122 * configure: Regnerate.
123
d3a12960
BK
124 * acinclude.m4 (GLIBCPP_CHECK_COMPILER_VERSION): Remove
125 OPTLEVEL. Add FMTFLAGS.
126 * aclocal.m4: Regenerate.
af9fe0d1
BK
127 * src/Makefile.am (AC_CXXFLAGS): Take out OPTLEVEL, as this has
128 been disabled due to higher-level Makefiles running amuck over
d3a12960
BK
129 this bit, and add in FMTFLAGS so that formatting is clear.
130 * src/Makefile.in: Regenerate.
131 * configure: Regenerate.
132
bf93f43b 133 * src/ios.cc (ios_base::sync_with_stdio): Clean up buffers from
d3a12960
BK
134 initialization.
135
136 * docs/download.html: Remove references to Cygwin-specific bits,
137 as this can now be built natively.
138 Update with current information.
139
a4e99046
PE
1402000-05-24 Phil Edwards <pme@sourceware.cygnus.com>
141
142 * acinclude.m4 (GLIBCPP_CHECK_COMPILER_VERSION): If we can use
143 -fdiagnostics-show-location=once, do so. Expand AC_LANG_* to
144 enclose other tests in this macro, including future ones.
145 * aclocal.m4: Regenerate.
146 * configure: Regenerate.
147
148 * docs/faq/index.html: Update location of libg++ FAQ.
149 * docs/faq/index.txt: Regenerate.
150
d3a12960 1512000-05-22 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
6f5ed736
BK
152
153 * docs/17_intro/libstdc++-assign.txt: Change Cygnus to FSF.
154
276c771b
PE
1552000-05-22 Phil Edwards <pme@sourceware.cygnus.com>
156
157 * mkcheck.in: Tweak for Solaris 8. Additional minor output comment.
158
11a6e9a7
PE
1592000-05-22 Phil Edwards <pme@sourceware.cygnus.com>
160
161 * acinclude.m4: If the new pragma isn't supported, don't kill -Werror;
162 keep -Werror and add -Wno-unknown-pragma. -Werror Is Good.
163 * aclocal.m4: Regenerate.
164 * configure: Regenerate.
165
0d9a68e8
NM
1662000-05-19 Nathan C. Myers <ncm@cantrip.org>
167
168 * bits/generic_shadow.h: s/swamp/legacy/
169
8bd636c5
PE
1702000-05-19 Phil Edwards <pme@sourceware.cygnus.com>
171
172 * acinclude.m4: Clean up comments on newer checks.
173 (GLIBCPP_CHECK_COMPILER_VERSION): Check for system_header
174 pragma support. Remove WERRORSUPPRESS variable, add WERROR.
175 * aclocal.m4: Regenerate.
176 * configure: Regenerate.
177 * Makefile.in: Regenerate.
178 * libio/Makefile.in: Regenerate.
179 * math/Makefile.in: Regenerate.
180 * src/Makefile.am: Tell make's WERROR to depend on configure's WERROR.
181 * src/Makefile.in: Regenerate.
182 * docs/configopts.html: Document changes to --enable names.
183
6dad70df
BK
1842000-05-18 Chip Salzenberg <chip@valinux.com>
185
186 * bits/ostream.tcc (_S_pad_char): Function template should not be
187 static.
188 * bits/streambuf.tcc (_S_copy_streambufs): Likewise.
189 * src/string-inst.cc (__destroy_aux): Instantiate for string*.
190
1912000-05-18 Nathan C. Myers <ncm@cantrip.org>
192
193 * mkcshadow: Change C_Swamp to C_legacy.
194 * shadow/*: Same.
195 * shadow/bits/*: Same.
196 s/C_Swamp/C_legacy/g
197 s/SWAMP/LEGACY/g
198 s/_Shadow/_shadow/g
199
2002000-05-18 Anthony Williams <anthony@anthonyw.cjb.net>
201
202 * bits/locale_facets.tcc (num_get::_M_extract): Change char* to
203 const char*.
204 * src/string-inst.cc (string::_S_find): Same.
205
d0d88ce3
BK
2062000-05-18 Benjamin Kosnik <bkoz@gnu.org>
207
208 * acinclude.m4 (GLIBCPP_ENABLE_SHADOW): Change to
209 --enable-cshadow-headers. Add output messages.
210 (GCC_ENABLE_LONG_LONG): Change to --enable-long-long, no
211 underscores (like the rest of the enable options.) Add output messages.
212 * aclocal.m4: Regenerate.
213 * configure: Regenerate.
214 * configure.in: Touch.
215
a51ef160
BK
2162000-05-17 Benjamin Kosnik <bkoz@cygnus.com>
217
218 * mkcheck.in: Enable shared library testing.
219
811e551b
BK
2202000-05-17 Nathan C. Myers <ncm@cantrip.org>
221
222 * bits/std_cmath.h: fix sqrt(float)
223
2242000-05-16 Loren J. Rittle <ljrittle@acm.org>
225
226 * bits/std_cassert.h: Use system_header pragma.
227 * bits/std_cctype.h: Likewise.
228 * bits/std_cerrno.h: Likewise.
229 * bits/std_cfloat.h: Likewise.
230 * bits/std_climits.h: Likewise.
231 * bits/std_clocale.h: Likewise.
232 * bits/std_cmath.h: Likewise.
233 * bits/std_csetjmp.h: Likewise.
234 * bits/std_csignal.h: Likewise.
235 * bits/std_cstdarg.h: Likewise.
236 * bits/std_cstddef.h: Likewise.
237 * bits/std_cstdio.h: Likewise.
238 * bits/std_cstdlib.h: Likewise.
239 * bits/std_cstring.h: Likewise.
240 * bits/std_ctime.h: Likewise.
241 * bits/std_cwchar.h: Likewise.
242 * bits/std_cwctype.h: Likewise.
243 * bits/std_exception.h: Likewise.
244 * bits/std_new.h: Likewise.
245 * bits/std_typeinfo.h: Likewise.
246 * shadow/bits/std_cassert.h: Likewise.
247 * shadow/bits/std_cctype.h: Likewise.
248 * shadow/bits/std_cerrno.h: Likewise.
249 * shadow/bits/std_cfloat.h: Likewise.
250 * shadow/bits/std_climits.h: Likewise.
251 * shadow/bits/std_clocale.h: Likewise.
252 * shadow/bits/std_cmath.h: Likewise.
253 * shadow/bits/std_csetjmp.h: Likewise.
254 * shadow/bits/std_csignal.h: Likewise.
255 * shadow/bits/std_cstdarg.h: Likewise.
256 * shadow/bits/std_cstddef.h: Likewise.
257 * shadow/bits/std_cstdio.h: Likewise.
258 * shadow/bits/std_cstdlib.h: Likewise.
259 * shadow/bits/std_cstring.h: Likewise.
260 * shadow/bits/std_ctime.h: Likewise.
261 * shadow/bits/std_cwchar.h: Likewise.
262 * shadow/bits/std_cwctype.h: Likewise.
263 * shadow/bits/wrap_libio.h: Likewise.
264 * shadow/bits/wrap_unistd.h: Likewise.
265 * shadow/sys/cdefs.h: Likewise.
266
2672000-05-16 Nathan C. Myers <ncm@cantrip.org>
268
269 It appears that gcc-2.96 supports the keyword "and" now.
270 * bits/std_ciso646.h: remove.
271 * std/ciso646: gut.
272 * testsuite/17_intro/header_ciso646.c: enable testing.
273 * src/Makefile.am, src/Makefile.in: remove mention of
274 bits/std_ciso646.h
275
a5c0553d
NM
2762000-05-16 Nathan C. Myers <ncm@cantrip.org>
277
278 * mkcshadow: fix typo s/_C_Swamp_/_C_Swamp/.
279
032cc955
PE
2802000-05-16 Phil Edwards <pme@sourceware.cygnus.com>
281
282 * acinclude.m4: Fix typo, switch to decaf...
283 * aclocal.m4: Regenerate.
284 * configure: Regenerate.
285
99246c90
PE
2862000-05-16 Phil Edwards <pme@sourceware.cygnus.com>
287
288 * acinclude.m4 (GLIBCPP_ENABLE_SHADOW): New macro, stub.
289 * aclocal.m4: Regenerate.
290 * configure.in: Call.
291 * configure: Regenerate.
292 * docs/configopts.html: Stub documentation.
293
6ad50467
BK
2942000-05-14 Nathan Myers <ncm@cantrip.org>
295
296 * mkcshadow: build in more-correct directory, create cshadow/
297 directory if needed, report progress.
298
2992000-05-14 LLeweLLyn Reese <llewelly@dbritsch.dsl.xmission.com>
300
301 * src/Makefile.am: Fix tr commands.
302 * src/Makefile.am: Remove references to [w]stringCTORDUPAL.[lo,cc]
303 * src/string-inst.cc: Remove extra instantiation of
304 S::basic_string(S::size_type, C, S::allocator_type const&);
305 * src/string-inst.cc: Remove extra template keyword.
306
3072000-05-14 Loren J. Rittle <ljrittle@acm.org>
308
309 * config/bsd/bits/ctype_base.h: Add support for plain BSD4.4.
310 * acinclude.m4 (GLIBCPP_CHECK_CTYPE): Enhance bsd tests.
311 * aclocal.m4: Regenerate.
312 * configure: Regenerate.
313 * */Makefile.in: Regenerate.
314
32a4595e
PE
3152000-05-11 Phil Edwards <pme@sourceware.cygnus.com>
316
317 * acinclude.m4: Fix minor typo with ctypes, add more sanity to
318 enable-cxx-flags, and remove GLIBCPP_ENABLE_NAMESPACES altogether.
319 * aclocal.m4: Regenerate.
320 * configure.in: Non-blank arguments break fewer Linuxes.
321 * configure: Regenerate.
322 * src/Makefile.am: Re-order AC_CXXFLAGS components.
323 * src/Makefile.in: Regenerate.
324
f035fae1
BK
3252000-05-10 Benjamin Kosnik <bkoz@redhat.com>
326
991a40fc
BK
327 * bits/std_cmath.h: Tweaks.
328 * math/mathconf.h: Tweaks and fixes for HP-UX 11.
329 (sqrtf): Define away iff !builtin and !in <math.h>.
330 (sinf): Same.
331 (cosf): Same.
332 (fabsf): Same.
333 At some point this directory should be converted to c++, the
334 autoconf tests should be run by the c++ compiler (not c), and
335 <cmath> should be used instead of math.h.
336 Move declaration of nan() here.
337 * math/complex-stub.h (cabsl): Remove nan() declaration.
338
f035fae1
BK
339 Finish up FreeBSD4.0 support.
340 * config/bsd/ctype.cc: Scope out toupper, tolower calls.
341 * config/generic/ctype.cc: And here.
342 * testsuite/21_strings/char_traits.cc (test02): Guard with
343 _GLIBCPP_USE_WCHAR_T.
344
991a40fc
BK
345 via Phil Edwards <pme@sourceware.cygnus.com>
346 * bits/std_cctype.h: Remove _GLIBCPP_USE_NAMESPACES.
347 * acconfig.h: And here.
348 * acinclude.m4: Same.
349 * testsuite/27_io/istream.cc: And here.
350 * testsuite/27_io/ostream.cc: And here.
351
7b267e3e
BK
3522000-05-09 Benjamin Kosnik <bkoz@gnu.org>
353
354 * acinclude.m4 (GLIBCPP_CHECK_CPU): Change powerpc bits to
355 -mcpu=powerpc.
9e9ada45
BK
356 * src/Makefile.am: Disable ENABLE_CXX_FLAGS stuff for the moment.
357
7b267e3e
BK
358 * config/generic/bits/ctype_specializations.h (ctype<char>::is):
359 Make more generic.
360
361 * config/bsd: New directory.
362 * config/bsd/ctype.cc: New.
363 * config/bsd/bits/ctype_base.h (ctype_base): New.
364 * config/bsd/bits/ctype_specializations.h: New.
365 * acinclude.m4 (GLIBCPP_CHECK_CTYPE): Add bsd tests.
366
dcfa0bc8
PE
3672000-05-09 Phil Edwards <pme@sourceware.cygnus.com>
368
369 * acinclude.m4: New macro, GLIBCPP_ENABLE_CXX_FLAGS.
370 * configure.in: Call.
371 * src/Makefile.am: Append results of macro to AC_CXXFLAGS.
372 * aclocal.m4: Regenerate.
373 * configure: Ditto.
374 * src/Makefile.in: Ditto.
375 * docs/configopts.html: Document.
376 * docs/download.html: Fix typo (close quote).
377 * docs/footer.html: Update.
378
55718a0b
BK
3792000-05-09 Loren J. Rittle <ljrittle@acm.org>
380
381 * backward/iostream.h: Expose endl. Guard wide types.
382 * src/Makefile.am (headers): Update list to match files.
383 * src/Makefile.in: Regenerate.
384
3852000-05-09 Vadim Egorov <egorovv@mailandnews.com>
c0b84d79
VE
386 Benjamin Kosnik <bkoz@gnu.org>
387 Nathan Myers <ncm@cantrip.org>
388 Dietmar Kuehl <dietmar_kuehl@yahoo.com>
389
390 * bits/streambuf.tcc (basic_streambuf::xsgetn): Fix uflow case.
391 (basic_streambuf::xsputn): Make consistent.
392 * testsuite/27_io/filebuf.cc: Add tests.
393
943ff2a0 3942000-05-08 Steven King <sxking@uswest.net>
8445e42a 395
55718a0b 396 * bits/char_traits.h: Use wchar_t utility functions for
8445e42a
SK
397 char_traits<wchar_t> methods.
398 * testsuite/21_string/char_traits.cc: New (test02): test
399 char_traits<wchar_t>
400
d207c3f7
BK
4012000-05-08 Benjamin Kosnik <bkoz@cygnus.com>
402
8445e42a
SK
403 * acinclude.m4 (GLIBCPP_CXXFLAGS): Add bits for solaris2.8.
404
d207c3f7
BK
405 * bits/fstream.tcc (filebuf::_M_init_filebuf): Don't set
406 _M_buf_size based on macro, instead use _M_buf_size_opt.
407 * bits/std_streambuf.h (basic_streambuf): Add _M_buf_size_opt.
408 (basic_streambuf()): Set _M_buf_size_opt.
409 * testsuite/27_io/filebuf.cc (filebuf): Use _M_buf_size_opt
410 instead of _M_buf_size.
411
bfe5c121
BC
4122000-05-04 Branko Cibej <branko.cibej@hermes.si>
413
414 * src/complex_io.cc: Don't instantiate inserters and extractors
415 for wide-character streams unless _GLIBCPP_USE_WCHAR_T is defined.
416
754ac8f7
PE
4172000-05-03 Phil Edwards <pme@sourceware.cygnus.com>
418 Felix Natter <fnatter@gmx.net>
419
420 * docs/footer.html: Update to see if it takes effect.
421 * docs/thanks.html: More people.
422 * docs/17_intro/headers_cc.txt: Copy from testsuite, since that can't
423 be seen from the web pages. Rename for browser-friendliness...
424 * docs/17_intro/howto.html: ...and update here.
425 * docs/17_intro/porting-howto.html: Changes from Felix.
426 * docs/gccrebuild.html: Mention v3->egcs move.
427 * docs/faq/index.html: Ditto. Also misc tweaks and URL updates.
428 * docs/faq/index.txt: Regenerate.
429
e704c6bf
BK
4302000-05-01 Benjamin Kosnik <bkoz@redhat.com>
431
432 * config/cpu/powerpc/bits/atomicity.h (__exchange_and_add): More
433 fixes.
434
8fd05cb0
VE
4352000-05-01 Vadim Egorov <egorovv@@mailandnews.com>
436
437 * bits/char_traits.h: Fix parameter types.
438 * bits/string.tcc: Avoid traits_type::move.
439
cde28f0d
BK
4402000-05-01 Benjamin Kosnik <bkoz@haight.constant.com>
441
442 * src/Makefile.am (AC_CXXFLAGS): Add CPUFLAGS here.
443 * src/Makefile.in: Regenerate.
444 * acinclude.m4 (GLIBCPP_ENABLE_DEBUG): Revert.
445
53a6ca29
SK
4462000-04-30 Steven King <sxking@uswest.net>
447
448 * bits/locale_facets.h: Fix syntax error.
449 * bits/std_fstream.h: ditto
450
6dd4c3fd
BK
4512000-04-30 Benjamin Kosnik <bkoz@gnu.org>
452
b7fe530c
BK
453 * config/cpu/powerpc/bits/atomicity.h (__compare_and_swap): Fix typo.
454
6dd4c3fd
BK
455 * mknumeric_limits (trait_name): Fix copyright notice.
456 * src/gen-num-limits.cc: Explicitly instantiate epsilon and
457 round_error data members of struct value. This works around
458 weak-linking issues on AIX, HPUX.
459
0bf0f027
PE
4602000-04-29 Phil Edwards <pme@sourceware.cygnus.com>
461
462 * docs/download.html: Add link to list of mirror sites.
463
3f49b842
BK
4642000-04-28 Loren J. Rittle <ljrittle@acm.org>
465
466 * mkcheck.in: Rely on exit status instead of the presence of a
467 core file. Added comments on how/where to save core and exe
468 files. Move shell wildcards outside quotes and fix core path.
469
4702000-04-27 scott snyder <snyder@fnal.gov>
471
472 * src/misc-inst.cc: Explicitly instantiate ifstream and ofstream
473 classes.
474
f3b004d8
BK
4752000-04-26 Nathan C. Myers <ncm@cantrip.org>
476
477 * bits/basic_string.h: include <bits/atomicity.h> instead
478 of <atomicity.h>, and use the uglified names.
479 * config/cpu/*/atomicity.h: replace with bits/atomicity.h;
480 uglify names, eliminate dependence on <inttypes.h>.
481 * src/Makefile.in, src/Makefile.am: refer to correct place
482 for atomicity.h header.
483
4842000-04-25 Steven King <sxking@uswest.net>
485
486 * bits/basic_string.h: Fix syntax error.
487
4882000-04-25 Benjamin Kosnik <bkoz@redhat.com>
489
490 * acinclude.m4 (GLIBCPP_CHECK_MATH_SUPPORT): Improve checks for
491 USE_LONG_DOUBLE.
492 (GLIBCPP_ENABLE_DEBUG): If alpha, use -gdwarf-2.
493 * math/Makefile.am (EXTRA_LONG_DOUBLE_yes): Add all the long
494 versions to this as copysignl is needed anyway for these targets.
495 * math/Makefile.in: Regenerate.
496
497 * bits/streambuf.tcc (streambuf::xsgetn): Tweak.
498 * bits/fstream.tcc (underflow): Cast to libio types.
499 * bits/basic_file.h (seekoff): Fixes for alpha: use __c_streamoff.
500 * config/c_io_libio.cc (seekoff): And here.
501
f7f8b180
LR
5022000-04-24 Loren J. Rittle <ljrittle@acm.org>
503
504 * mkcheck.in: Report compiler version used for test. Find
505 the built _G_config.h instead of any old installed version.
506
f4dad842
LR
5072000-04-24 Loren J. Rittle <ljrittle@acm.org>
508
509 * config/generic/ctype.cc (do_toupper): Remove dependence on
510 non-portable/non-existent lookup table.
511 (do_tolower): Same.
512
5d89258a
BK
5132000-04-24 Nathan Myers <ncm@cantrip.org>
514
515 * src/string-inst.cc: More fixing.
516
5172000-04-24 Benjamin Kosnik <bkoz@gnu.org>
518
519 * bits/stl_iterator.h: Pedantic fixing.
520 * bits/std_sstream.h: And here.
521 * bits/string.tcc: And here.
522
5232000-04-24 Felix Natter <fnatter@gmx.net>
524
525 * docs/17_intro/howto.html: Add bits.
526 * docs/17_intro/porting-howto.html: New file.
527
5282000-04-24 Branko Cibej <branko.cibej@hermes.si>
529
530 * acinclude.m4(GLIBCPP_CHECK_WCHAR_T_SUPPORT): Expand
531 @libinst_wstring_la@ to libinst-wstring.la when specializing for
532 wchar_t, to empty string otherwise.
533 * src/Makefile.am: (EXTRA_LTLIBRARIES): New.
534 (sources): Remove $(string_sources) and $(wstring_sources).
535 (libstdc___la_LIBADD): Add libinst-string.la and @libinst_wstring_la@.
536 (libstdc___la_DEPENDENCIES): New.
537 (libinst_string_la_SOURCES, libinst_wstring_la_SOURCES): New.
538
b2dad0e3
BK
5392000-04-20 Benjamin Kosnik <bkoz@redhat.com>
540
541 * bits/std_sstream.h: Tweak formatting.
542 * bits/std_fstream.h: Make types public.
543
544 * testsuite/27_io/streambuf.cc: Fix for alpha.
545
546 Brad Garcia <bgarcia@laurelnetworks.com>
547 * bits/locale_facets.h (numpunct::numpunct(size_t)): Fix bool
548 initialization.
549 * testsuite/27_io/ios_manip_fmtflags.cc (test02): Add test for
550 bool formatting.
551
5522000-04-19 Nathan Myers <ncm@cantrip.org>
553
554 * src/string-inst: consolidate _S_create,
555 destroy, leak, clone members into stringMAIN and stringMUTATE
556 object files.
557 * src/Makefile.am: Above, and eliminate dependence on
558 wstring-inst.cc.
559 * src/wstring-inst.cc: Remove.
560
5612000-04-18 Benjamin Kosnik <bkoz@redhat.com>
562
563 * src/Makefile.am (AC_CXXFLAGS): Activate debugging code, again.
564 Add flags for specialized rules dealing with instantiations.
565
566 * src/string-inst.cc: Add instantiations missing from shared
567 libraries--see stringEQ, stringCONSC.
568 * src/Makefile.am (wstring_sources): Add.
569 (string_sources): Same.
570 * src/Makefile.in: Regenerate.
571
572 * stl/*: Integrate contents of this directory into top-level
573 directories.
574 * ext/bvector hash_map hash_set rope ropeimpl.h slist
575 stl_bvector.h stl_hash_fun.h stl_hashtable.h stl_rope.h tree: Add.
576 * bits/pthread_allocimpl.h std_algorithm.h std_bitset.h
577 std_deque.h std_functional.h std_iterator.h std_list.h std_map.h
578 std_memory.h std_numeric.h std_queue.h std_set.h std_stack.h
579 std_stdexcept.h std_strstream.h std_utility.h std_vector.h
580 stl_algo.h stl_algobase.h stl_alloc.h stl_config.h stl_construct.h
581 stl_deque.h stl_function.h stl_heap.h stl_iterator.h
582 stl_iterator_base.h stl_list.h stl_map.h stl_multimap.h
583 stl_multiset.h stl_numeric.h stl_pair.h stl_pthread_alloc.h
584 stl_queue.h stl_range_errors.h stl_raw_storage_iter.h stl_relops.h
585 stl_set.h stl_stack.h stl_string_fwd.h stl_tempbuf.h stl_threads.h
586 stl_tree.h stl_uninitialized.h stl_vector.h type_traits.h: Add.
587 * backward/algo.h algobase.h alloc.h bvector.h defalloc.h deque.h
588 function.h hash_map.h hash_set.h hashtable.h heap.h iterator.h
589 list.h map.h multimap.h multiset.h pair.h rope.h set.h slist.h
590 stack.h tempbuf.h tree.h vector.h: Add.
591 * README (file): Update.
592 * docs/documentation.html: README not being found.
593 * src/Makefile.am (sources): Take out stl directory.
594 * mkcheck.in (SRC_DIR): And here.
595 * src/Makefile.in: Regenerate.
596
5972000-04-18 Levente Farkas <lfarkas@mindmaker.hu>
598
599 * stl/bits/stl_function.h: Add bits so that const and non-const
600 both work.
601
6022000-04-18 scott snyder <snyder@fnal.gov>
603
604 * stl/bits/stl_map.h (class map): Fix default for _Alloc template
605 parameter. Get rid of use of __STL_DEFAULT_ALLOCATOR and
606 __STL_LIMITED_DEFAULT_TEMPLATES macros.
607 * stl/bits/stl_multimap.h (class multimap): Likewise. Get rid of
608 use of __STL_DEPENDENT_DEFAULT_TMPL macro.
609
6102000-04-18 scott snyder <snyder@fnal.gov>
611
612 * stl/bits/stl_config.h (__STL_DEPENDENT_DEFAULT_TMPL): Deleted
613 this macro.
614
615 * stl/ext/hash_map (class hash_map, class hash_multimap): Get rid
616 of use of __STL_DEPENDENT_DEFAULT_TMPL macro.
617 * stl/ext/hash_set (class hash_set, class hash_multiset):
618 Likewise.
619 * stl/bits/stl_function.h (struct constant_unary_fun, struct
620 constant_binary_fun): Likewise.
621 * stl/bits/stl_queue.h (class queue, class priority_queue): Likewise.
622 * stl/bits/stl_stack.h (class stack): Likewise.
623 * stl/bits/stl_set.h (class set): Likewise.
624 * stl/bits/stl_multiset.h (class multiset): Likewise.
625
626 * stl/bits/stl_iterator.h (class reverse_bidirectional_iterator,
627 class reverse_iterator): Get rid of use of
628 __STL_LIMITED_DEFAULT_TEMPLATES macro.
629
630 * stl/bits/stl_config.h (__STL_DEFAULT_ALLOCATOR): Deleted this
631 macro.
632
633 * stl/bits/stl_deque.h (class deque): Get rid of use of
634 __STL_DEFAULT_ALLOCATOR macro.
635 * stl/bits/stl_list.h (class list): Likewise.
636 * stl/bits/stl_multiset.h (class multiset): Likewise.
637 * stl/bits/stl_set.h (class set): Likewise.
638 * stl/bits/stl_string_fwd.h (class basic_string): Likewise.
639 * stl/bits/stl_tree.h (class _Rb_tree, class rb_tree): Likewise.
640 * stl/bits/stl_vector.h (class vector): Likewise.
641 * stl/ext/ropeimpl.h (rotate): Likewise.
642 * stl/ext/hash_map (class hash_map, class hash_multimap):
643 Likewise.
644 * stl/ext/hash_set (class hash_set, class hash_multiset):
645 Likewise.
646 * stl/ext/slist (class slist): Likewise.
647 * stl/ext/stl_bvector.h (class bit_vector): Likewise.
648 * stl/ext/stl_rope.h (class rope): Likewise.
649 * src/locale.cc (_Impl): Likewise.
650 * src/localename.cc (_Impl): Likewise.
651 * bits/localefwd.h (_Impl): Likewise.
652
6532000-04-18 Phil Edwards <pme@sourceware.cygnus.com>
654
655 * docs/install.html: Cleanup, minor changes.
656 * docs/17_intro/howto.html: Ditto.
657
6582000-04-18 Nathan Myers <ncm@cantrip.org>
659
660 * bits/basic_string.h: Remove "inline" from member _S_find.
661
662 * src/string-inst.cc: Rewrite to reflect non-inline template
663 instantiations in string.tcc.
664
665 * src/stringADDCS.cc, stringADDPS.cc, stringADDSC.cc, stringADDSP.cc,
666 stringADDSS.cc, stringBIST.cc, stringBOST.cc, stringCHTR.cc,
667 stringEQPS.cc, stringEQSP.cc, stringEQSS.cc, stringEXTRA.cc,
668 stringGEPS.cc, stringGESP.cc, stringGESS.cc, stringGETLI.cc,
669 stringGTPS.cc, stringGTPS.cc, stringGTSP.cc, stringGTSS.cc,
670 stringINSER.cc, stringLEPS.cc, stringLESP.cc, stringLESS.cc,
671 stringLESP.cc, stringLTPS.cc, stringLTPS.cc, stringLTSP.cc,
672 stringLTSS.cc, stringMAIN.cc, stringNEPS.cc, stringNESP.cc,
673 stringNESS.cc, stringSCOPY.cc: Remove.
674 * src/wstringADDCS.cc, etc: Remove.
675
676 Benjamin Kosnik <bkoz@haight.constant.com>
677 * src/Makefile.am: Modify to reflect above.
678 * src/Makefile.in: Regenerate.
679
6802000-04-17 Benjamin Kosnik <bkoz@cygnus.com>
681
682 * docs/install.html (--enable-libstdcxx-v3): Clean up install docs.
683
6842000-04-13 Benjamin Kosnik <bkoz@haight.cygnus.com>
685
686 * bits/std_fstream.h (filebuf::sync): Need to use the abstracted
687 io interface here instead of the libio particulars.
688
689 * config/threads-posix.h: Consistency with stl_config.h.
690
691 * mkcheck.in (CXX_FLAG): Add DDEBUG_ASSERT back in.
692
6932000-04-13 Loren J. Rittle <ljrittle@acm.org>
694
695 * mknumeric_limits: Rename generic type template parameter name
696 '_T' to '_Tp'.
697 * stl/bits/type_traits.h: Ditto.
698
6992000-04-06 Benjamin Kosnik <bkoz@decepticon.cygnus.com>
700
701 * mkcheck.in (SRC_DIR): Change default mkcheck behavior, so that
702 it is more useful for --enable-libstdcxx-v3. Use the built
703 compilers with v3, instead of compilers in PATH, and don't
704 re-include include directories for checking the install.
705
7062000-04-05 Benjamin Kosnik <bkoz@cygnus.com>
707
708 * src/Makefile.am (AM_CXXFLAGS): Disable NAMESPACES, as this is on
709 by default when using --enable-libstdcxx-v3.
710 * src/Makefile.in: Regenerate.
711 * configure.in: Disable GLIBCPP_ENABLE_NAMESPACES,
712 GLIBCPP_ENABLE_RELIBGCC for --enable-libstdcxx-v3 flag.
713 * configure: Regenerate.
714 * mkcheck.in: Deal with NAMESPACES.
715
7162000-04-05 Petter Urkedal <petter@matfys.lth.se>
717
718 * src/cmath.cc: New file...
719 (pow(*, int)): Define functions...
720 * src/Makefile.am (sources): ...register file.
721 * src/Makefile.in: Regenerate.
722 * bits/std_cmath.h (pow): ...declare functions here, and remove
723 old definitions.
724
7252000-04-04 Benjamin Kosnik <bkoz@redhat.com>
726
727 * acinclude.m4 (GCC_OBJDIR): Tweaks
728
7292000-04-03 Benjamin Kosnik <bkoz@redhat.com>
730
731 * acinclude.m4 (GLIBCPP_CHECK_CPU): Add arm configure bits.
732 * config/cpu/arm: New directory.
733
734 Jesper Skov <jskov@redhat.com>
735 * config/cpu/arm/atomicity.h: New file.
736
7372000-03-31 Benjamin Kosnik <bkoz@redhat.com>
738
739 * stl/bits/stl_config.h: Make _STL_THREADS depend on _REENTRANT.
740 Remove unused bits. Clean.
741
7422000-03-29 Benjamin Kosnik <bkoz@cygnus.com>
743
744 * testsuite/25_algorithms: New directory.
745 * testsuite/25_algorithms/min_max.cc: New file.
746
7472000-03-29 scott snyder <snyder@fnal.gov>
748
749 * bits/locale_facets.tcc (do_put): Allow a couple extra digits of
750 precision beyond that which we get from numeric_limits::digits10.
751
752 * stl/bits/stl_algobase.h (max, min): Don't use comparison
753 operator.
754
755 * testsuite/23_containers/bitset_shift.cc: Fix.
756
757 * testsuite/27_io/ios_manip_fmtflags.cc (test01): Don't give a
758 temporary to imbue().
759
760 * bits/std_fstream.h (sync): Resync libio's idea of the current
761 file position with the external file.
762
7632000-03-28 Benjamin Kosnik <bkoz@cygnus.com>
764
765 * testsuite/27_io/istream_extractor_arith.cc.cvs: Fix merge
766 mistake.
767
768 * bits/std_fstream.h (filebuf::is_open): Check for _M_file before
769 attempting calls to it.
770 * bits/fstream.tcc (ctors): Don't call _M_init_filebuf in
771 ctors. Instead, call _M_init_filebuf ...
772 (open): Here, as suggested by 27.8.1.3.
773 * src/ios.cc (ios_base::Init::Init()): Clean up default filebufs
774 properly when initializing cout/cin/cerr.
775
7762000-03-27 Russell Davidson <russell@ehess.cnrs-mrs.fr>
777
778 * testsuite/23_containers/multiset.cc (main): Clean up for namespaces.
779 * testsuite/22_locale/ctype_char_members.cc: And here.
780 * testsuite/27_io/streambuf.cc (streambuf): And here.
781 * testsuite/27_io/ostream_inserter_char.cc (test06): And here.
782 * testsuite/27_io/istream_unformatted.cc (test05): And here.
783 * testsuite/27_io/istream_extractor_arith.cc: And here.
784 * testsuite/27_io/ios_manip_basefield.cc (test02): And here.
785 * testsuite/27_io/ios_base_members_static.cc: And here.
786 * bits/std_climits.h (_CPP_CLIMITS): Fix typo.
787
7882000-03-27 Chris Faylor <cgf@cygnus.com>
789
790 * configure.in: Remove setting of CXX if canadian cross.
791 * configure: Regenerate.
792
7932000-03-27 Nathan Myers <ncm@zembu.com>
794
795 * bits/sstream.tcc: Optimize.
796 * bits/basic_string.h(string::append): Don't inline.
797 * bits/string.tcc: Move out-of-line.
798
7992000-03-27 Phil Edwards <pme@sourceware.cygnus.com>
800
801 * acinclude.m4: (GLIBCPP_CHECK_COMPILER_VERSION) When using <2.96,
802 define WERRORSUPPRESS so that the inlining warnings won't kill us.
803 * aclocal.m4: Regenerate.
804 * configure: Regenerate.
805 * src/Makefile.am: Use WERRORSUPPRESS for the files that need it.
806 * src/Makefile.in: Regenerate.
807
808 * docs/install.html: Almost complete rewrite.
809
8102000-03-25 Phil Edwards <pme@sourceware.cygnus.com>
811
812 * docs/install.html: Explain -Werror problem at "#Werror" mark.
813 * docs/faq/index.html: Testsuite will die horribly if new libgcc.a
814 not installed.
815 * docs/faq/index.txt: Regenerate.
816
8172000-03-24 Alexandre Oliva <oliva@lsd.ic.unicamp.br>
818
819 * src/Makefile.am (libio_headers_install): Fix.
820 * src/Makefile.in: Regenerate.
821
8222000-03-24 Benjamin Kosnik <bkoz@cygnus.com>
823
824 * docs/17_intro/RELEASE-NOTES: Fix typos.
825 * docs/index.html: Update.
826 * docs/17_intro/BUGS: Update.
827 * docs/status.html: Update for 2.90.8 release.
828
8292000-03-23 Phil Edwards <pme@sourceware.cygnus.com>
830
831 * Makefile.am: Better error message when missing libgcc2.ready.
832 * Makefile.in: Regenerate.
833 * acinclude.m4: Fastidious nitpicking reformatting.
834 * aclocal.m4: Regenerate.
835 * configure: Regenerate.
836 * mkcheck.in: Must use same namespace settings as the library being
837 tested. Also log ST_FLAG, since it's being passed.
838 * docs/install.html: Add brief chunk on configuration.
839 * docs/17_intro/RELEASE-NOTES: Fix minor Cygwin typo.
840 * docs/23_containers/howto.html: Mention MT-safe string.
841 * docs/faq/index.html: Minor updates.
842 * docs/faq/index.txt: Regerarate.
843
8442000-03-22 Benjamin Kosnik <bkoz@cygnus.com>
845
846 * bits/sstream.tcc (seekoff): Fix for gptr() null cases.
847 Return newoff.
848 * bits/fstream.tcc (seekoff): Sync.
849 (seekpos): Sync.
850 * testsuite/27_io/ostream_unformatted.cc: New file.
851 * testsuite/27_io/stringbuf.cc: Fix.
852 * testsuite/27_io/istream_unformatted.cc (test04): Fix.
853
854 * config/newlib/bits/ctype_base.h (ctype_base): Fix.
855 * config/newlib/ctype.cc (ctype): Change __ctype -> _ctype_.
856
857 * src/complex_io.cc (operator>>complex): Tweak.
858
859 * config/cpu/alpha/atomicity.h: Explicitly typedef uint32_t, int32_t if
860 <inttypes.h> does not exist.
861 * config/cpu/sparc/sparc64/atomicity.h: Same.
862 * config/cpu/sparc/sparc32/atomicity.h: Same.
863 * config/cpu/powerpc/atomicity.h: Same.
864 * config/cpu/i386/atomicity.h: Same.
865 * config/cpu/generic/atomicity.h: Same.
866 * configure.in: Check for inttypes.h.
867 * configure: Regnerate.
868
8692000-03-21 Benjamin Kosnik <bkoz@cygnus.com>
870
871 * bits/std_sstream.h (_M_init_stringbuf): Set initial ate position
872 correctly.
873 * testsuite/27_io/ostream_inserter_char.cc (test06): Add tests for ate.
874
875 * docs/17_intro/RELEASE-NOTES (New): Add bits.
876
877 * configure.in: Move AC_CHECK_HEADERS to a point where we know we
878 are compiling natively.
879
880 * libio/*: Update to CVS libio from egcs.
881
8822000-03-21 Phil Edwards <pme@sourceware.cygnus.com>
883
884 * docs/download.html: Document use of -z9 for CVS.
885 * docs/index.html: Add target date (no link) for future snapshot.
886
8872000-03-21 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
888
889 * bits/slice_array.h: Rename generic type template parameter name
890 '_T' to '_Tp'.
891 * bits/mask_array.h: Ditto
892
8932000-03-20 Benjamin Kosnik <bkoz@cygnus.com>
894
895 * *: Change copyright holder from "Cygnus Solutions" to "Free
896 Software Foundation, Inc."
897
898 * docs/configopts.html: Explain what "hella versions" means.
899 * docs/install.html: Some tweaks--nice job on this Phil.
900 * docs/documentation.html: Add a direct link to configuration options.
901
902 * src/Makefile.am (OPTIMIZE_CXXFLAGS): Add in extras.
903 * docs/17_intro/RELEASE-NOTES (New): Add.
904 * bits/c++config.h (__GLIBCPP__): Bump version.
905
906 * config/c_io_libio.cc (__basic__file(__c_lock*)): Change argument
907 type to match prototype.
908
9092000-03-20 Phil Edwards <pme@sourceware.cygnus.com>
910
911 * docs/install.html: Update for new funky build procedure. Move
912 description of 'configure' options to...
913 * docs/configopts.html: ...here. New file.
914 * docs/17_intro/howto.html: Updates for new snapshot.
915 * docs/20_util/howto.html: Ditto.
916 * docs/21_strings/howto.html: Ditto.
917 * docs/21_strings/stringtok_std_h.txt: Fix example typos.
918 * docs/22_locale/howto.html: Ditto.
919 * docs/23_containers/howto.html: Ditto.
920 * docs/faq/index.html: Ditto.
921
9222000-03-18 Petter Urkedal <petter@matfys.lth.se>
923 Benjamin Kosnik <bkoz@gnu.org>
924
925 * acinclude.m4 (GLIBCPP_CHECK_COMPLEX_SUPPORT): Move code for main
926 to the right place.
927 * aclocal.m4: Regenerate.
928 * configure: Regenerate.
929
9302000-03-16 Benjamin Kosnik <bkoz@cygnus.com>
931 scott snyder <sss@karma.fnal.gov>
932
933 * config/c_io_libio.h: Add __c_lock.
934 * config/threads-no.h: Same here.
935 * config/threads-posix.h: Add __mutext_type typedef.
936 * config/c_io_libio.cc: basic_file ctor takes lock arg.
937 * bits/basic_file.h: Ctor takes lock arg.
938 * bits/std_fstream.h: Add _M_lock.
939 * bits/fstream.tcc: Supply it to basic_file ctor.
940
941 * mkcheck.in (resultstext): Change [[ to [.
942
943 * testsuite/27_io/ostream_inserter_char.cc (test06): Tweak.
944
945 * bits/locale_facets.h: Tweak.
946
947 * stl/bits/stl_config.h: Fix defines.
948
9492000-03-16 Benjamin Kosnik <bkoz@cygnus.com>
950
951 * mkcheck.in (INC_PATH): Add paths from cpu_include_dir to find
952 atomicity.h
953 * configure: Regenerate.
954 * aclocal.m4: Regnerate.
955
9562000-03-16 Nathan Myers <ncm@zembu.com>
957
958 * bits/string.tcc: Add MT support.
959 * bits/basic_string.h: Same.
960
9612000-03-16 Phil Edwards <pme@sourceware.cygnus.com>
962
963 * configure.in: Make --enable-namespaces and -libgcc-rebuild=../..
964 the defaults.
965 * configure: Regenerate.
966
967 * config/solaris/solaris2.7/ctype.cc: Fix unsigned/signed comparison.
968
9692000-03-16 Phil Edwards <pme@sourceware.cygnus.com>
970
971 * acinclude.m4 (GLIBCPP_CHECK_CTYPE): If Sol2.5 ctype is found, keep
972 checking for 2.[67]. (GLIBCPP_ENABLE_RELIBGCC): No longer ignore
973 any defaults passed in.
974 * aclocal.m4: Regenerate.
975
9762000-03-16 Phil Edwards <pme@sourceware.cygnus.com>
977
978 * mkcheck.in: Report total successes and failures.
979
9802000-03-15 Benjamin Kosnik <bkoz@cygnus.com>
981
982 * config/cpu: New directory, intended to be used to provide
983 cpu-specific configuration files. In particular, assembly language
984 primitives for thread safety.
985 * config/cpu/alpha: Populate.
986 * config/cpu/alpha/atomicity.h: New file.
987 * config/cpu/arm: Populate.
988 * config/cpu/generic: Populate.
989 * config/cpu/generic/atomicity.h: New file.
990 * config/cpu/hppa: Populate.
991 * config/cpu/i386: Populate.
992 * config/cpu/i386/atomicity.h: New file, take from i486.
993 * config/cpu/m68k: Populate.
994 * config/cpu/mips: Populate.
995 * config/cpu/powerpc: Populate.
996 * config/cpu/powerpc/atomicity.h: New file.
997 * config/cpu/sparc: Populate.
998 * config/cpu/sparc/sparc32: Populate.
999 * config/cpu/sparc/sparc64: Populate.
1000 * config/cpu/sparc/sparc32/atomicity.h: New file.
1001 * config/cpu/sparc/sparc64/atomicity.h: New file.
1002
1003 * src/Makefile.am (myinstallheaders): Add install routines.
1004 * acinclude.m4 (GLIBCPP_CHECK_CPU):Add configuration for the
1005 cpu dir.
1006 * configure.in: Add.
1007
1008 * config/default: Adopt glibc naming conventions, and so move to
1009 * config/generic: Here.
1010 * acinclude.m4 (GLIBCPP_CHECK_CTYPE): Modify default case to generic.
1011
10122000-03-15 Bill Thompson <billt@toast.net>
1013
1014 * testsuite/27_io/ostream_inserter_char.cc (test06): Add test.
1015
10162000-03-14 Phil Edwards <pme@sourceware.cygnus.com>
1017
1018 * docs/17_intro/howto.html: Add missing "TOC" entry, and new section.
1019
1020 * acinclude.m4 (GLIBCPP_CHECK_CTYPE): Fixup.
1021 * aclocal.m4: Regenerate.
1022 * configure: Regenerate.
1023
10242000-03-13 scott snyder <snyder@fnal.gov>
1025 Jason Merrill <jason@cygnus.com>
1026
1027 * bits/locale_facets.h (class ctype, class ctype<char>, class
1028 ctype<wchar_t>): More mask fixes.
1029 * testsuite/22_locale/ctype.cc: Test for the problem.
1030
10312000-03-13 Benjamin Kosnik <bkoz@cygnus.com>
1032
1033 * acconfig.h: Add bits.
1034 * configure.in: Move AM_PROG_LIBTOOL up in file.
1035 Tweak cross compiling info.
1036 * configure: Regenerate.
1037
1038 * mknumeric_limits (XCOMPILE): Echo compilation line for
1039 gen-num-limits.cc
1040
1041 * acinclude.m4 (GLIBCPP_CHECK_CTYPE): Add aix checks.
1042 * aclocal.m4: Regenerate.
1043 * configure: Regenerate.
1044 * config/aix/ctype.cc (ctype): Tweak.
1045 * config/aix/bits/ctype_base.h (ctype_base): Tweak.
1046 * config/aix/bits/ctype_specializations.h: New file.
1047
10482000-03-10 scott snyder <snyder@fnal.gov>
1049
1050 * stl/bits/stl_vector.h (_M_assign_aux): Fix for __normal_iterator
1051 conversions.
1052 * testsuite/23_containers/vector_modifiers.cc (test01): Add a
1053 regression test for the problem.
1054
10552000-03-09 Benjamin Kosnik <bkoz@fidel.cygnus.com>
1056
1057 * testsuite/27_io/streambuf.cc (class testbuf): Same here.
1058 * bits/fpos.h: And here.
1059 * bits/std_ostream.h: Same here.
1060 * bits/std_istream.h: Same here.
1061 * bits/basic_ios.h: Same here.
1062 * bits/std_fstream.h: Same here.
1063 * bits/sbuf_iter.h (std): Here too.
1064 * bits/std_sstream.h: Make types public.
1065
1066 * src/misc-inst.cc: Use size_t instead of unsigned int.
1067 * bits/locale_facets.tcc (_S_format): For now, cast to char. I
1068 suppose this should be ctype::narrow... all the ctype<wchar_t>
1069 stuff needs to be cleaned up.
1070
10712000-03-09 Phil Edwards <pme@sourceware.cygnus.com>
1072
1073 * docs/gentop: Remove entire directory, finally.
1074
10752000-03-09 scott snyder <snyder@fnal.gov>
1076
1077 * bits/std_cmath.h (modf): Fix pointer overrun.
1078 * testsuite/26_numerics/c_math.cc (test04, main): Add a regression
1079 test for the problem.
1080
10812000-03-09 Phil Edwards <pme@sourceware.cygnus.com>
1082
1083 Looks like changes to the #include'd files must be followed by a
1084 change to the #include'ing files to take effect. Caveat emptor.
1085 * docs/header.html: New file, for server-side include.
1086 * docs/footer.html: New file, for server-side include.
1087 * docs/documentation.html: Change to use SSI.
1088 * docs/download.html: Ditto.
1089 * docs/index.html: Ditto.
1090 * docs/mail.html: Ditto.
1091 * docs/status.html: Ditto.
1092 * docs/thanks.html: Ditto, plus minor updates.
1093 * docs/how.html: Remove.
1094
10952000-03-09 Benjamin Kosnik <bkoz@gnu.org>
1096
1097 Preliminary alpha-linux support.
1098 * src/locale.cc (ctype<wchar_t>): Use correct types...
1099 * bits/locale_facets.h (ctype<char>): Add __table_type typedef.
1100 (ctype<wchar_t>): Same.
1101 * bits/locale_facets.h (ctype<wchar_t>): Have char and wchar_t
1102 types match for table_size (size_t).
1103
1104 * config/gnu-linux/ctype.cc (ctype): Change char_type to wchar_t
1105 as per char specialization.
1106 * config/*/ctype.cc: Same.
1107
11082000-03-09 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
1109
1110 * bits/locale_facets.h (_Ctype<>::mask): Import from base class
1111 _Ctype_nois<>. Template base classes are never examinated in
1112 first-phase name-lookup.
1113
11142000-03-08 Benjamin Kosnik <bkoz@gnu.org>
1115
1116 Add Solaris 2.5.1 support.
1117 * config/solaris/solaris2.5/bits/ctype_base.h (ctype_base): And here.
1118 * config/solaris/solaris2.5/ctype.cc: Fixup.
1119 * config/solaris/solaris2.5/bits/ctype_specializations.h: Add.
1120 * acinclude.m4 (GLIBCPP_CHECK_CTYPE): Add bits for solaris2.5.1.
1121 * aclocal.m4: Regenerate.
1122 * configure: Regenerate.
1123
1124 * config/default/ctype.cc (ctype): Fixup.
1125
11262000-03-07 Benjamin Kosnik <bkoz@blues.cygnus.com>
1127
1128 * testsuite/27_io/filebuf.cc: Activate init code from yesterday...
1129 * testsuite/27_io/ostream_inserter_arith.cc (testcases): Fix for
1130 non-wchar_t case.
1131
11322000-03-07 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
1133
1134 * bits/cpp_type_traits.h: Expand on this file purpose.
1135
11362000-03-06 Benjamin Kosnik <bkoz@gnu.org>
1137
1138 * bits/locale_facets.h (ctype<char>): Remove static members, and
1139 re-work initialization code.
1140 (ctype<wchar_t>): Same.
1141 Move _S_touppper to _M_toupper and initialize in ctor.
1142 Move _S_tolower to _M_tolower and initialize in ctor.
1143 Move _S_table to _M_ctable and intialize in ctor.
1144 * bits/locale_facets.h (std): And here.
1145 * src/locale.cc (std): Tweak.
1146 * config/gnu-linux/ctype.cc: Change initialization here.
1147 * config/newlib/ctype.cc: And here.
1148 * config/solaris/solaris2.7/ctype.cc: And here.
1149 * config/solaris/solaris2.6/ctype.cc: And here.
1150
1151 * bits/localefwd.h: Tweak.
1152 * bits/std_streambuf.h: Tweak formatting.
1153
1154 * testsuite/27_io/filebuf.cc: Remove BUFSIZ dependancies.
1155
11562000-03-05 Chip Salzenberg <chip@valinux.com>
1157
1158 * src/misc-inst.cc (basic_iostream<>): Instantiate.
1159
11602000-03-02 Phil Edwards <pme@sourceware.cygnus.com>
1161 Kevin Atkinson <kevinatk@home.com>
1162
1163 Initial grab of SGI's strstream implementation with minor
1164 modifications.
1165 * src/strstream.cc: New file.
1166 * std/strstream: New file.
1167 * stl/bits/std_strstream.h: New file.
1168 * bits/std_streambuf.h: Add public access.
1169 * src/Makefile.am: Add strstream sources to list of dependancies.
1170 * src/Makefile.in: Regenerate.
1171
11722000-03-03 2000 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
1173
1174 * bits/valarray_meta.h: Fix typo.
1175
11762000-03-02 Alexandre Oliva <oliva@lsd.ic.unicamp.br>
1177 Chip Salzenberg <chip@valinux.com>
1178 Petter Urkedal <petter@matfys.lth.se>
1179
1180 * src/Makefile.am (myinstallheaders): Hack to avoid
1181 `for i in ; do'.
1182 * src/Makefile.in: Regenerate.
1183
11842000-03-02 Chip Salzenberg <chip@valinux.com>
1185
1186 * libio/Makefile.an, math/Makefile.an, src/Makefile.am
1187 (LINK): Put quotes around "$(CC)" for libtool link mode,
1188 so libtool will use "-B" options during GCC bootstrap.
1189 * */Makefile.in: Regenerate.
1190
11912000-03-02 Petter Urkedal <petter@matfys.lth.se>
1192
1193 * config/c_io_libio.h: Enclose it all in ::std.
1194 * bits/basic_string.h (basic_string<>): Make types and
1195 `npos' public.
1196 * mkc++config: Truncate output file before writing.
1197
11982000-03-01 Benjamin Kosnik <bkoz@gnu.org>
1199
1200 * math/cabsf.c (__mycabsf): Rename to cabsf.
1201 * math/cabs.c (__mycabs): Rename to cabs.
1202
12032000-02-29 LLeweLLyn Reese <llewelly@198.dsl.xmission.com>
1204
1205 * bits/basic_string.h: Move declarations of __out_of_range(),
1206 __length_error() and accompanying macros ...
1207 * bits/exception_support.h: here. (Newly created file).
1208 * bits/basic_string.h: #include <bits/exception_support.h>
1209 * stl/bits/stl_vector.h: #include <bits/exception_support.h>
1210 * src/Makefile.am (headers): Add.
1211 * src/Makefile.in: Regenerate.
1212
12132000-02-29 Benjamin Kosnik <bkoz@cygnus.com>
1214
1215 * bits/cpp_type_traits.h: Rename structs so they don't clash with
1216 type_traits.h.
1217 * bits/valarray_array.h: Synch. Fix typos.
1218
1219 * libio/Makefile.am: Change to only compile source files that
1220 config/c_io_libio.cc actually needs.
1221 * libio/Makefile.in: Regnerate.
1222 * libio/PlotFile.hes SFile.h builtinbuf.h editbuf.h floatconv.c
1223 floatio.h fstream.h indstream.h iofclose.c iofdopen.c iofeof.c
1224 ioferror.c iofflush.c iofgetpos.c iofgets.c iofopen.c iofprintf.c
1225 iofputs.c iofread.c iofscanf.c iofsetpos.c ioftell.c iofwrite.c
1226 iogetc.c iogetdelim.c iogetline.c iogets.c ioignore.c iomanip.h
1227 iopadn.c ioperror.c iopopen.c ioprims.c ioprintf.c ioputc.c
1228 ioputs.c ioscanf.c ioseekoff.c ioseekpos.c iosetbuffer.c
1229 iosetvbuf.c iosprintf.c iosscanf.c iostream.h iostrerror.c
1230 ioungetc.c iovfprintf.c iovfscanf.c iovsprintf.c iovsscanf.c
1231 istream.h list.out ostream.h outfloat.c parsestream.h peekc.c
1232 pfstream.h procbuf.h stdiostream.h stream.h streambuf.h strfile.h
1233 strops.c strstream.h: Delete.
1234
1235 * bits/basic_file.h: Stub out or delete unused bits in this
1236 interface.
1237 (filepos_beg): Remove.
1238 (filepos_cur): Remove.
1239 (filepos_valid): Remove.
1240 * config/c_io_libio.cc: Resynch with the changes to basic_file.
1241
12422000-02-29 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
1243
1244 * bits/cpp_type_traits.h: Correct typo.
1245
12462000-02-29 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
1247
1248 * bits/cpp_type_traits.h: New file.
1249
1250 * bits/valarray_array.h: Tweak. #include <bits/cpp_type_traits.h>
1251 Improve array construction.
1252 (_Array_default_ctor): New dispatcher class.
1253 (__valarray_default_construct): New function.
1254 (_Array_copy_ctor): New dispatcher class.
1255 (__valarray_copy_construct): New function.
1256 (_Array<>::free_data): Remove.
1257
1258 * src/Makefile.am (headers): Add cpp_type_traits.h
1259 * src/Makefile.in: Regenerate.
1260
12612000-02-28 Benjamin Kosnik <bkoz@cygnus.com>
1262
1263 Prune libio directory to match files in libio/Makefile.
1264 * libio/PlotFile.cc,indstream.cc, isgetsb.cc, sbform.cc,
1265 stream.cc, SFile.cc, ioassign.cc, isscan.cc, sbgetline.cc,
1266 streambuf.cc, builtinbuf.cc, ioextend.cc, osform.cc, sbscan.cc,
1267 strstream.cc, editbuf.cc, iomanip.cc, parsestream.cc,
1268 stdiostream.cc, filebuf.cc, iostream.cc, pfstream.cc,
1269 stdstrbufs.cc, fstream.cc, isgetline.cc, procbuf.cc,
1270 stdstreams.cc: Remove.
1271 * libio/floatio.h, iolibio.h, iostdio.h, iostreamP.h: Remove.
1272 * libio/iofflush_u.c: Remove.
1273
1274 * libio/dbz: Remove.
1275 * libio/include: Remove.
1276 * libio/stdio: Remove.
1277 * libio/tests: Remove.
1278 * libio/testsuite: Remove.
1279
1280 * config/c_io_libio.cc: Add fcntl.h include for Solaris.
1281
1282 * acinclude.m4 (GLIBCPP_ENABLE_CSTDIO): Add bits.
1283 * configure.in: Replace 'grep -e' with 'grep' for Solaris.
1284 * configure: Regenerate.
1285
12862000-02-25 Benjamin Kosnik <bkoz@gnu.org>
1287
1288 Abstract out the underlying "C" io bits.
1289 * bits/std_new.h: Remove <stl_config> include, as well as <cstddef>.
1290 * stl/bits/stl_string_fwd.h: Remove <stddef> include.
1291 * bits/std_cwchar.h: Wrap with _GLIBCPP_USE_WCHAR_T guards. Don't
1292 include <cstddef>.
1293 * stl/bits/stl_config.h: Don't include _G_config.h.
1294
1295 * bits/basic_file.h: Allow for non-inheritance based __basic_files.
1296 * config/c_io_libio.h (_GLIBCPP_BASIC_FILE_INHERITANCE): Define.
1297 * config/c_io_libio.cc: Tweak.
1298
1299 * src/Makefile.am (TOPLEVEL_INCLUDES): Add includedir.
1300 * src/Makefile.in: Regenerate.
1301 * Makefile.am (AM_MAKEFLAGS): Define includedir so that
1302 prefix/include files will be picked up.
1303 * Makefile.in: Regenerate.
1304 * math/Makefile.am (TOPLEVEL_INCLUDES): And here.
1305 * libio/Makefile.am (TOPLEVEL_INCLUDES): And here.
1306
1307 * bits/std_ios.h: Include <bits/c++io.h> instead of libio.
1308 * bits/fpos.h: And here.
1309 * bits/basic_file.h (get_fileno): Move definition from ...
1310 * src/basic_file.cc (std): To here.
1311 * bits/fpos.h: Move types for streamoff, streampos to..
1312 * bits/basic_file.h: Move __c_file_type and fpos typedefs to...
1313 * config/c_io_libio.h: ...here.
1314 (_GLIBCPP_[BOOLALPHA, HEX, DEC, FIXED, INTERNAL, LEFT, OCT, RIGHT,
1315 SCIENTIFIC, SHOWBASE, SHOWPOINT, SHOWPOS, SKIPWS, UNITBUF,
1316 UPPERCASE, ADJUSTFIELD, BASEFIELD, FLOATFIELD, BADBIT, EOFBIT,
1317 FAILBIT, GOODBIT, APP, ATE, BINARY, IN, OUT, TRUNC): New macros to
1318 abstract out bits in ios_base.
1319 * bits/ios_base.h: Re-macrofy.
1320 * src/basic_file.cc : Rename, move to
1321 * config/c_io_libio.cc: Here.
1322 * config/c_io_libio.h: New file. Include libio.
1323 * bits/c++config.h: Don't define _GLIBCPP_USE_LIBIO.
1324 * configure.in (blddir): Add enabling bits for GLIBCPP_ENABLE_CSTDIO.
1325 * configure: Regenerate.
1326 * src/Makefile.am (sources): Take out basic_file.cc and add c++io.cc.
1327 (generated_headers): Add c++io.h
1328 * acinclude.m4 (GLIBCPP_ENABLE_CSTDIO): New function to select
1329 underlying "C" io library.
1330 * acinclude.m4 (GLIBCPP_CHECK_LIBIO): Roll functionality into
1331 GLIBCPP_ENABLE_CSTDIO.
1332
1333 * configure.in: Add configure bits for cross compiling non-newlib
1334 targets. .
1335 GLIBCPP_CHECK_COMPILER_VERSION: Take out this test for this
1336 target, as we assume g++ support is not the limiting factor.
1337 GLIBCPP_CHECK_LIBIO: Same, know we don't need libio.
1338 * configure: Regenerate.
1339
13402000-02-22 Benjamin Kosnik <bkoz@cygnus.com>
1341
1342 * Makefile.am (INTERFACE): Define.
1343 * Makefile.in: Regenerate.
1344 * libio/ChangeLog: Add entry.
1345
13462000-02-21 Benjamin Kosnik <bkoz@cygnus.com>
1347
1348 * docs/install.html: Update install directions.
1349
1350 * docs/status.html: Fix sidebar to be consistent.
1351 * docs/thanks.html: Same.
1352 * docs/links.html: Same.
1353 * docs/mail.html: Same.
1354 * docs/download.html: Same.
1355
1356 * testsuite/27_io/filebuf.cc: Change BUFSIZ to buffer_size, and
1357 kill the macro BUFSIZ. I think the solaris fails lie elsewhere
1358 however, in the ctype_char_members.cc fail (for instance.)
1359 * testsuite/17_intro/headers.cc: Remove extraneous fails for hosts
1360 that do not have wchar_t enabled.
1361 * testsuite/27_io/ostream_inserter_arith.cc (struct _TestCase):
1362 Same here.
1363 * testsuite/27_io/iostream_objects.cc: And here.
1364
1365 * libio/gen-params (CONFIG_NM): Specifically add in nm as the
1366 default CONFIG_NM.
1367
13682000-02-18 Benjamin Kosnik <bkoz@haight.constant.com>
1369 Tom Tromey <tromey@cygnus.com>
1370
1371 * configure.in: Manually add MULTISUBDIR.
1372 * configure: Regenerate.
1373 * src/Makefile.am (MULTISUBDIR): Add the lesser evil of Tom's two
1374 "Eww" hacks to get multilib installs working correctly.
1375 ($(headers): Test for MULTISUBDIR before installing.
1376 * Makefile.am (AM_MAKEFLAGS): Don't define MULTISUBDIR, instead
1377 have configure hack it in.
1378 * Makefile.in: Regenerate.
1379 * acinclude.m4 (GLIBCPP_CXXFLAGS): Tweak wording.
1380 Add enabling bits for native Cygwin ctypes, and other newlib-based
1381 Oses.
1382
13832000-02-17 Benjamin Kosnik <bkoz@decepticon.cygnus.com>
1384
1385 * mkc++config (OUT_H): Remove EOF in cygwin.
1386 * acinclude.m4 (LIBS): Tweaks to allow cygwin to configure.
1387
1388 Tom Tromey <tromey@cygnus.com>
1389 * src/Makefile.am: Tweaks for installing multilibs.
1390
13912000-02-17 Benjamin Kosnik <bkoz@cygnus.com>
1392
1393 * src/Makefile.am:
1394 (toolexeclib_LTLIBRARIES): Use this instead of lib_LTLIBRARIES.
1395 Add USE_LIBDIR bits here, not...
1396 * src/Makefile.in: Regenerate.
1397 * Makefile.am: ...here.
1398 * Makefile.in: Regenerate.
1399
14002000-02-17 Benjamin Kosnik <bkoz@gnu.org>
1401
1402 * acinclude.m4 (LIBS): Fix typos.
1403 * configure.in: _GLIBCPP_BUGGY_FLOAT_COMPLEX,
1404 _GLIBCPP_BUGGY_COMPLEX for crosses.
1405 * src/Makefile.am (std_headers): Add libio.h as install include,
1406 as with _G_config.h
1407 * src/Makefile.in: Regenerate.
1408
1409 * mkcheck.in: Add bits to set CXX to cross compiler.
1410
1411 * src/complex_io.cc: Tweak.
1412 * configure.in: _GLIBCPP_BUGGY_COMPLEX for crosses.
1413 * configure: Regenerate.
1414
1415 * config/newlib/ctype.cc: Tweaks.
1416 * config/newlib/bits/ctype_base.h (ctype_base): Set mask to char,
1417 not const char.
1418 * src/complex_io.cc (operator>>(istream, complex): Define out if
1419 BUGGY_COMPLEX.
1420
14212000-02-16 Benjamin Kosnik <bkoz@cygnus.com>
1422
1423 * config/newlib/bits/ctype_base.h: Correct _S_table.
1424
1425 Reconfigure ctype support for "C" libraries that don't use arrays.
1426 * testsuite/22_locale/ctype_char_members.cc: New file. Test for
1427 basic ctype<char> functionality.
1428 * src/locale.cc: Move host-specific ctype functions that are not
1429 inlines to config/*/ctype.cc files.
1430 (ctype<char>::do_tolower): For instance.
1431 (ctype<char>::do_toupper): For instance.
1432 (ctype<wchar_t>::do_tolower): For instance.
1433 (ctype<wchar_t>::do_toupper): For instance.
1434 * config/gnu-linux/ctype.cc: Modify.
1435 * config/default/ctype.cc: Modify.
1436 * config/newlib/ctype.cc: Modify.
1437 * config/solaris/solaris2.6/ctype.cc: Modify.
1438 * config/solaris/solaris2.7/ctype.cc: Modify.
1439
1440 * bits/locale_facets.h (ctype<char>::is): Mark inline, move
1441 out-of-line.
1442 (ctype<char>::scan_is): Here too.
1443 (ctype<char>::scan_not): Here too.
1444 Move out of line defs to config/*/bits/ctype_specializations.h.
1445 * config/gnu-linux/bits/ctype_specializations.h: ...here. New file.
1446 * config/default/bits/ctype_specializations.h: ...here. New file.
1447 * config/newlib/bits/ctype_specializations.h: ...here. New file.
1448 * config/solaris/solaris2.6/bits/ctype_specializations.h: New file.
1449 * config/solaris/solaris2.7/bits/ctype_specializations.h: New file.
1450 * src/Makefile.am (headers): Add ctype_specializations.h.
1451 * src/Makefile.in: Regenerate.
1452
1453 Aaron Weiss <weiss@clearway.com>
1454 * Makefile.am (AM_MAKEFLAGS): Add NM_FOR_BUILD, NM_FOR_TARGET, and
1455 CONFIG_NM for Solaris builds.
1456 * Makefile.in: Regenerate.
1457
1458 * src/locale.cc: Tweak formatting.
1459
14602000-02-15 Benjamin Kosnik <bkoz@cygnus.com>
1461
1462 Jim Parsons <parsons@clearway.com>
1463 * testsuite/27_io/istream_unformatted.cc (test06): Add test.
1464 * bits/istream.tcc (read): Set failbit if !good(). Don't increment
1465 gcount if eof.
1466 (readsome): Same.
1467
1468 Michel Decima <michel.decima@cnet.francetelecom.fr>
1469 * testsuite/27_io/streambuf.cc: Add test.
1470 * bits/streambuf.tcc (xsgetn): Don't test for valid mode.
1471 (xsputn): Same.
1472
1473 * src/Makefile.am (AM_CXXFLAGS): Pass down AC_CXXFLAGS,
1474 OPTIMIZE_CXXFLAGS, etc. So --enable-debug and --enable-namespaces
1475 will work correctly, for instance.
1476 * src/Makefile.in: Regenerate.
1477
1478 * bits/locale_facets.h: Fix merge error.
1479 (num_put::put(unsigned long long): And here.
1480 * mknumeric_limits (trait_name): Same.
1481
14822000-02-15 Chip Salzenberg <chip@valinux.com>
1483
1484 Support 'configure --enable-long-long'.
1485 * bits/c++config.h (_GLIBCPP_USE_LONG_LONG): Remove.
1486 * stl/bits/stl_config.h (__STL_LONG_LONG): Remove '#if 0'.
1487 * acconfig.h (_GLIBCPP_USE_LONG_LONG): Add. Default to undef.
1488 * acinclude.m4 (GLIBCPP_ENABLE_LONG_LONG): Define flag macro.
1489 * configure.in (GLIBCPP_ENABLE_LONG_LONG): Use it.
1490
1491 * aclocal.m4: Regenerate.
1492 * config.h.in: Regenerate.
1493 * configure: Regenerate.
1494
14952000-02-15 Chip Salzenberg <chip@valinux.com>
1496
1497 Improve (complete?) 'long long' support.
1498 * mknumeric_limits: Call $CXX with $CPPFLAGS. Define statics
1499 for {,unsigned} long long if the limits header declares them.
1500 * src/gen-num-limits.cc: Include <bits/c++config.h> early.
1501 (__USE_GNU, _GNU_SOURCE): Define if _GLIBC_USE_LONG_LONG.
1502 (long long, unsigned long long): Gen limits if _GLIBC_USE_LONG_LONG.
1503 * bits/locale_facets.h (num_get<>::get(..., long long &)): Define.
1504 (num_put<>::put(..., long long)): Likewise.
1505 (num_put<>::put(..., unsigned long long)): Likewise.
1506 * bits/locale_facets.tcc (_S_format): Rename from _S_format_long.
1507 Templatize last parameter to support 'long long'.
1508 (num_put<>::put(...)): Call _S_format with new name.
1509 (num_put<>::put(..., long long)): Define.
1510 (num_put<>::put(..., unsigned long long)): Likewise.
1511 * src/locale-inst.cc (_S_format): Instantiate under new name.
1512
15132000-02-15 Petter Urkedal <petter@matfys.lth.se>
1514
1515 * src/complex.cc (operator<<, operator>>): Moved from here...
1516 * src/complex_io.cc: ...to new file.
1517 (operator>>): Stub replaced by the real thing.
1518 * src/Makefile.am (sources): Inserted complex_io.cc.
1519 * src/Makefile.in: Regenerate.
1520 * testsuite/26_numerics/complex_inserters_extractors.cc: Check it.
1521
15222000-02-14 Benjamin Kosnik <bkoz@gnu.org>
1523
1524 Add in ctype information for newlib "C" libraries.
1525 * config/newlib: New directory
1526 * config/newlib/bits/ctype_base.h: New file.
1527 * config/newlib/ctype.cc: New file.
1528
1529 * ctype/config/linux/*: Rename, move to...
1530 * ctype/config/gnu-linux/*: Here.
1531
1532 Finish off multilib work.
1533 * configure.in: Don't set CXX if not Canadian cross.
1534 * configure: Regenerate.
1535 * acinclude.m4 (GLIBCPP_CHECK_LIBIO): Tweak messages.
1536 * aclocal.m4: Regenerate.
1537 * config.h.in: Regenerate.
1538
1539 * install-sh: Remove, as AC_CONFIG_AUX_DIR(..) picks this out of
1540 the top-level gcc directory now.
1541 * mkinstalldirs: Remove.
1542 * missing: Remove
1543 * ltconfig: Remove.
1544 * ltmain.sh: Remove.
1545 * config.guess: Remove.
1546 * config.sub: Remove.
1547
15482000-02-13 Benjamin Kosnik <bkoz@cygnus.com>
1549
1550 * configure.in (glibcpp_basedir): Add glibcpp_basedir.
1551 * Makefile.am: Move mutlilib stuff to src/Makefile.am.
1552 * Makefile.in: Regenerate.
1553 * src/Makefile.am: Add multilib bits.
1554 * src/Makefile.in: Regenerate.
1555
15562000-02-12 Benjamin Kosnik <bkoz@cygnus.com>
1557
1558 * configure.in: Clean, add some multilib support.
1559 * configure: Regenerate.
1560 * configure.host: New file.
1561
1562 * acinclude.m4: GLIBCPP_CHECK_LIBIO. Take bits from configure.in and
1563 roll a new function, checks for presence of libio.
1564 GLIBCPP_CHECK_COMPILER_VERSION: Same.
1565 GLIBCPP_CHECK_BUILTIN_MATH_SUPPORT: Same.
1566 GLIBCPP_CHECK_MATH_SUPPORT: Same.
1567 GLIBCPP_CHECK_WCHAR_T_SUPPORT: Same.
1568 GLIBCPP_CHECK_LIBIO: Same.
1569 GLIBCPP_CHECK_CTYPE: Same.
1570 * aclocal.m4: Regenerate.
1571 * config.h.in: Regenerate.
1572
1573 * Makefile.am: Tweaks.
1574 * Makefile.in: Regenerate.
1575
15762000-02-11 Benjamin Kosnik <bkoz@cygnus.com>
1577
1578 * configure.in: Make outputing the libio/Makefile
1579 conditional. Haha, yeah right. Anyway, we instead do this thing
1580 where if libio is found, then we build a null library, as there is
1581 no point in duplicating the found libio.
1582 * Makefile.am: Tweak.
1583 * Makefile: Regenerate.
1584 * libio/Makefile.am: Add _G_config.h stuff. Now cross compilers
1585 are happy happy happy.
1586 * libio/Makefile.am: Regenerate.
1587 * libio/gen-params: New file.
1588 * src/Makefile.am: Make libio.la non-conditional, as it is now a
1589 null library if it's not needed. At least we are being consistent,
1590 if not as elegant as we could be.
1591 * src/Makefile: Regenerate.
1592
15932000-02-10 Benjamin Kosnik <bkoz@gnu.org>
1594
1595 * Makefile.am (SUBDIRS): Add libio again.
1596 * Makefile.in: Regenerate.
1597 * configure.in (BUILD_LIBIO_INCLUDE): And here.
1598 (AC_OUTPUT): Generate libio/Makefile again.
1599 * configure: Regnerate.
1600 * src/Makefile.am (libstdc___la_LIBADD): Change path so that
1601 libio.la is referring back to the libio subdir again.
1602 (LIBIO_INCLUDES): And here.
1603 * src/Makefile.in: Regenerate.
1604
16052000-02-09 Benjamin Kosnik <bkoz@decepticon.cygnus.com>
1606
1607 * math/complex-stub.h: Missed one. Change __mycabs* to cabs*.
1608
16092000-02-09 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
1610
1611 * bits/valarray_array.h (<bits/std_new.h>): #include.
1612 (__valarray_get_memory): New function.
1613 (__valarray_release_memory): Likewise.
1614 (__valarray_default_construct): New functions.
1615 (__valarray_fill_construct): New function.
1616 (__valarray_copy_construct): New funstions.
1617 (__valarray_destroy_elements): New function.
1618
1619 * bits/valarray_array.tcc (__valarray_copy_construct): New
1620 functions.
1621
1622 * bits/std_valarray.h (valarray<>::valarray): Use
1623 __valarray_get_memory and __valarray_fill_construct,
1624 __valarray_copy_construct, __valarray_default_construct to
1625 properly construct valarrays.
1626 (valarray<>::~valarray): Use __valarray_destroy_elements to
1627 destroy elements and __valarray_release_memory to return memory.
1628 (valarray<>::shift): Tweak.
1629 (valarray<>::cshift): Likewise.
1630 (valarray<>::resize): Robustify.
1631
16322000-02-09 Benjamin Kosnik <bkoz@cygnus.com>
1633
1634 * mknumeric_limits (XCOMPILE): Add support for cross compiling.
1635 * bits/limits_generic.h: New file, defaults.
1636 * src/limits_generic.cc: New file, defaults.
1637 * configure.in (LIBS): Run mknumeric_limits at configure time.
1638 * acconfig.h: Remove PACKAGE VERSION HAVE_COMPLEX
1639 HAVE_LC_MESSAGES, tidy, clean, etc.
1640 * src/Makefile.am (geberated_sources): Remove.
1641
1642 * bits/fpos.h: Use _GLIBCPP_USE_LIBIO guards for libio typenames
1643 (_IO_off_t, _IO_ssize_t)
1644
1645 * src/complex.cc: Use glibc's <complex.h> if
1646 possible. . . apparently this was not being done before. Include
1647 tweaks.
1648 (abs): Enable cabs if it's around, instead of mycabs.
1649 * src/complexf.cc (FCT): Add global scope to match complex.cc.
1650 * src/complexl.cc (FCT): Same.
1651 * math/Makefile.am (EXTRA_LONG_DOUBLE_yes): Change mycabsl to cabsl.
1652 (libmath_la_SOURCES): And here.
1653 * math/(mycabs.c, mycabsf.c, mycabsl.c): Move to. . .
1654 * math/(cabs.c, cabsf.c, cabsl.c): . . . Here.
1655 * math/complex-stub.h: Move c_log declarations into. . .
1656 * math/mathconf.h: Here. This is because glibc's <complex.h>
1657 declares cclog, not c_log. The case of the dueling standards. . .
1658 * math/mathconf.h: Add _GLIBCPP_HAVE_* to macros.
1659 * math/Makefile.am: Change.
1660 * math/nan.c (nan): Change signature.
1661 * math/mathconf.h (NAN): Same.
1662 * math/complex-stub.h (nan): And here.
1663
1664 * Makefile.am (rebuild-stamp): Remove libio and libio
1665 dependancies. Plan to take out libio subdir and just merge with
1666 libio in top level gcc directory. Of course, this assumes there is
1667 a libio in the top level directory (ie ../src_dir). This will
1668 probably change the way this library is configured by default.
1669 * libio/*: Remove.
1670
16712000-02-09 Chip Salzenberg <chip@valinux.com>
1672
1673 * localefwd.h (locale): Make public: facet, id, category.
1674
16752000-02-09 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
1676
1677 * testsuite/26_numerics/buggy_complex.cc: Fix Origin:.
1678
1679 * acinclude.m4: Patch only once!
1680
16812000-02-09 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
1682
1683 * testsuite/26_numerics/buggy_complex.cc: New file.
1684
16852000-02-05 Petter Urkedal <petter@matfys.lth.se>
1686
1687 * acinclude.m4: New GLIBCPP_CHECK_COMPLEX_SUPPORT macro. Based
1688 on the 1999-11-21 entries by Mumit Khan.
1689 * configure.in: Use.
1690 * acconfig.h: New _GLIBCPP_BUGGY_COMPLEX macro.
1691 * bits/std_complex.h: Use.
1692
16932000-02-04 Philip Martin <pm@corris.dircon.co.uk>
1694
1695 * stl/bits/stl_algobase.h: Add traits based dispatch for
1696 __normal_iterator in the copy_backward()algorithm
1697 * stl/bits/stl_vector.h: Reduce use of __normal_iterator
1698 base() function.
1699
17002000-02-04 Mumit Khan <khan@xraylith.wisc.edu>
1701
1702 * src/gen-num-limits.cc (signal_handler): Work around signal
1703 handling problem on Cygwin.
1704 Thanks to Chris Faylor <cgf@cygnus.com>.
1705
17062000-02-03 Benjamin Kosnik <bkoz@cygnus.com>
1707
1708 * configure.in: Add (preliminary) support for cross compiles and
1709 multilibs.
1710 Remove AC_C_BIGENDIAN tests. Why is this necessary? Cross
1711 compilation freaks on this.
1712 * configure: Regenerate.
1713 * src/Makefile.am: Add support for cross compiles.
1714 * src/Makefile: Regenerate.
1715 * Makefile.am: Add support for cross compiles.
1716 * Makefile.in: Regenerate.
1717
17182000-02-02 Benjamin Kosnik <bkoz@cygnus.com>
1719
1720 * configure.in (LIBS): Remove unused subdirs.
1721 * configure: Regenerate.
1722 * Makefile.am (SUBDIRS): And here.
1723 * Makefile.in: Regenerate.
1724 * src/Makefile.am (sources): And here.
1725 * src/Makefile.in: Regenerate.
1726 * string/*: Remove.
1727 * amm1/*: Remove.
1728 * generic/*: Remove.
1729 * glibc/*: Remove.
1730 * mkcheck.in (INC_PATH): Include $BUILD_DIR before any source dirs.
1731
1732 * libtool: Update to libtool-1.3.4.
1733 * ltconfig: Same
1734 * ltmain.sh: Same
1735 * config.sub: Same.
1736 * config.guess: Same.
1737
17382000-02-02 Benjamin Kosnik <bkoz@cygnus.com>
1739 Alexandre Petit-Bianco <apbianco@cygnus.com>
1740
1741 * mkc++config: New file. Put autoconf macros into _GLIBCPP_
1742 namespace instead of polluting global namespace with duplicate
1743 autoconf output.
1744 * configure.in (AC_OUTPUT): Don't need to generate bits/config.h
1745 here anymore. . .
1746 (AC_OUTPUT_COMMANDS): Make it here.
1747 * configure: Regenerate.
1748 * bits/c++config.h.in (_CPP_CPPCONFIG): Change. Tweak. Remove
1749 endif, as now we will add it manually.
1750 Move to this file. . .
1751 * bits/c++config.h: New file. Same as old c++config.h.in except
1752 the ending macro guard is now appended manually.
1753
1754 * bits/locale_facets.tcc: Change HAVE_* macros to _GLIBCPP_HAVE_*.
1755 * bits/std_cmath.h: Same here.
1756 * bits/std_cwchar.h: And here.
1757 * src/locale.cc: And here.
1758 * src/complexl.cc: And here.
1759 * math/mathconf.h: Change to include "config.h" instead of
1760 bits/c++config.h.
1761
17622000-02-01 Benjamin Kosnik <bkoz@gnu.org>
1763
1764 * configure.in: Add support for threads. Try a model closer to
1765 libjava, as hopefully if the thread bits are added carefully
1766 enough, the source code will not have gross hacks. Besides, the
1767 libstdc++-v2 model could be easily emulated without the necessity
1768 of linking files in (as currently done)--all that needs to be done
1769 is AC_DEFINE(-D_PTHREADS) etc. However, let's try something
1770 new. . . and see if we arrive at a more elegant solution.
1771 * configure: Regenerated.
1772 * config/threads-no.h: New file.
1773 * config/threads-posix.h: New file.
1774 * src/Makefile.am (myinstallheaders): Install c++threads.h.
1775 * src/Makefile.in: Regenerated.
1776
17772000-01-31 Benjamin Kosnik <bkoz@gnu.org>
1778
1779 META-QUESTION: Can we just make a "header.html" file and a
1780 "footer.html" and just include them in all the doc sub-pages. The
1781 duplication of the header info is kind of gross, and weak
1782 considering that if you change order or layout then all this stuff
1783 has to be changed in all the sub-files.
1784
1785 * docs/17_intro/contribute.html: Take out duplicate file info.
1786 * README: Should just contain a link to the docs/index.html
1787 page. Duplicate information removed.
1788 * docs/faq/index.html: Remove indexes into HOWTOS.
1789 * docs/17_intro/howto.html: Make intro and docs part more
1790 centralized. Move intro stuff to documentation.html.
1791 * docs/how.html: Tweak. Does this file need to exist? What calls it?
1792 * docs/README.html: Move documentation files to
1793 documentation.html. Should this file be renamed
1794 "config_and_install.html" as that is what is apparently covered
1795 here. . .
1796 * docs/install.html: Yes. New file, moved and renamed README.html.
1797 * docs/documentation.html: New file. This is the index file for
1798 the documentation.
1799 * docs/index.html: Edit sidebar order. Insert new link to new
1800 documentation spine, documentation.html.
1801
18022000-01-31 Scott Snyder <snyder@fnal.gov>
1803
1804 * bits/istream.tcc (operator>>(istream&, string&)): Set failbit if
1805 we don't extract any characters.
1806 * testsuite/21_strings/inserters_extractors.cc (main): New tests.
1807
18082000-01-31 Anders Widell <awl@hem.passagen.se>
1809
1810 * stl/bits/std_bitset.h (_M_do_left_shift): Handle case when shift
1811 step is a multiple of the word size.
1812 (_M_do_right_shift): Same.
1813 * testsuite/23_containers/bitset_shift.cc: New file.
1814
18152000-01-31 Nathan Myers <ncm@zembu.com>
1816
1817 * README (Documentation): Add path info, fix typos.
1818
18192000-01-26 Benjamin Kosnik <bkoz@redhat.com>
1820
1821 * bits/locale_facets.tcc (num_get::_M_extract): Add the freaking
1822 crazy group checking for numpunct, for real this time. At some
1823 point, the local variable __grp should probably get replaced a
1824 char array, or something a bit more lightweight.
1825 (num_get::do_get(bool)): Simplify. Don't set bool reference to
1826 parsed value unless err isn't failbit.
1827 (num_get::do_get(*)): Same, make consistent.
1828
1829 Nathan Myers <ncm@zembu.com>
1830 Jim Parsons <parsons@clearway.com>
1831 * testsuite/27_io/istream_extractor_arith.cc (test08): Add
1832 more grouping tests, tweak, scold, wine.
1833
18342000-01-24 Benjamin Kosnik <bkoz@gnu.org>
1835
1836 * testsuite/27_io/istream_extractor_arith.cc (test07): Add
1837 grouping tests.
1838 * bits/locale_facets.tcc (num_get::_M_extract): Change to fix
1839 grouping bugs. Only allow thousands_sep if _M_use_groupings is
1840 true.
1841
1842 via <llewelly@198.dsl.xmission.com>
1843 * stl/bits/stl_vector.h (vector::_M_range_check): Throw
1844 out_of_range instead of range_error.
1845
18462000-01-17 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
1847
1848 * bits/std_iomanip.h (setw): Fix typo.
1849
18502000-01-14 Benjamin Kosnik <bkoz@gnu.org>
1851
1852 * testsuite/27_io/istream_extractor_arith.cc: Fix.
1853 * bits/locale_facets.tcc (do_get(...void)): Change to strtoul.
1854 * testsuite/27_io/istream_unformatted.cc (test04): Tweak.
1855
18562000-01-14 Phil Edwards <pme@sourceware.cygnus.com>
1857
1858 * docs/README.html: Reformat, more installation instructions.
1859 * docs/gccrebuild.html: New file.
1860 * docs/faq/index.html: Update for new testsuite output filenames.
1861 * docs/faq/index.txt: Regenerate.
1862
18632000-01-14 Phil Edwards <pme@sourceware.cygnus.com>
1864
1865 * Makefile.am (rebuild-stamp, all-local): New targets.
1866 * Makefile.in: Regenerated.
1867 * acinclude.m4: New macro, GLIBCPP_ENABLE_RELIBGCC.
1868 * aclocal.m4: Regenerated.
1869 * configure.in: Call new macro. Also do some sanity checks
1870 for combinations of --enable's that may not make sense.
1871 * configure: Regenerated.
1872
18732000-01-13 Benjamin Kosnik <bkoz@cygnus.com>
1874
1875 * testsuite/27_io/istream_extractor_arith.cc: Add checks for void*.
1876 * bits/locale_facets.tcc (do_get::(...void)): Set fmtflags
1877 correctly for hex-formatted input.
1878
1879 * testsuite/27_io/istream_manip.cc (test01): Fix, as per setting
1880 eofbit instead of eofbit | failbit.
1881 * testsuite/27_io/istream_unformatted.cc (test04): Fix, as
1882 ifstreams now are opened or'd with ios_base::in (as is correct).
1883 * bits/fstream.tcc (filebuf::seekoff): Simplify.
1884 * testsuite/27_io/ios_base_members_static.cc (test01): Fix thinko.
1885
18862000-01-12 Benjamin Kosnik <bkoz@gnu.org>
1887
1888 * bits/std_fstream.h: Add ios_base as a friend to basic_filebuf.
1889 * bits/basic_file.h (basic_file::filepos_cur): Remove incorrect
1890 (misleading) code.
1891 (__basic_file::filepos_valid): Same.
1892 (__basic_file::filepos_beg): Same.
1893 (__baseic_file::get_fileno): New function.
1894 * bits/ios_base.h (ios_base::sync_with_stdio): Implement, including
1895 feedback from LWG 49.
1896 * src/ios.cc: Move definition here.
1897 * testsuite/27_io/ios_base_members_static.cc (test01): Add tests.
1898
1899 * bits/std_sstream.h (_M_really_sync): Simplify argument list. Set
1900 output part of internal buffer based on string size, so that
1901 _M_out_end is set consistently with filebufs. Correct comments.
1902 * bits/sstream.tcc (stringbuf::overflow): Update here too.
1903 * testsuite/27_io/stringbuf.cc: Changes.
1904
19052000-01-11 Benjamin Kosnik <bkoz@gnu.org>
1906
1907 * bits/sstream.tcc (seekoff): Set based on end of written buffer,
1908 not buffer size.
1909 * testsuite/27_io/stringbuf.cc: Add tests for seekoff(end).
1910
1911 * bits/std_fstream.h (ifstream::open): Add ios_base::in to openmode.
1912 (ofstream::open): Add ios_base::out to openmode.
1913
1914 * bits/locale_facets.tcc (_M_extract): Have consistency between
1915 istream::sentry and extractors, where failbit | eofbit is
1916 set. Don't change this, but instead change. . (do some formatting
1917 tweaks.)
1918 * bits/istream.tcc (istream::sentry): Only set eofbit.
1919
19202000-01-10 Benjamin Kosnik <bkoz@gnu.org>
1921
1922 * testsuite/27_io/istringstream_members.cc: New file.
1923
19242000-01-09 Benjamin Kosnik <bkoz@gnu.org>
1925
1926 * bits/istream.tcc (istream::sentry): Flush.
1927
1928 * configure.in (AC_OUTPUT_COMMANDS): Simplify.
1929 * configure: Regenerate.
1930 * src/Makefile.am (generated_headers): Remove bits/c++config.h so
1931 that make clean will not delete it.
1932 * src/Makefile: Regenerate.
1933
19342000-01-07 Phil Edwards <pme@sourceware.cygnus.com>
1935
1936 * mkcheck.in: Use host-specific invocation of size(1);
1937 GNU binutils isn't necessarily there (more's the pity).
1938
19392000-01-06 Benjamin Kosnik <bkoz@cygnus.com>
1940
1941 * configure.in (LIBS): Better tests for solaris2.6.
1942 * configure: Regenerate.
1943
1944 <vakatov@ncbi.nlm.nih.gov>
1945 * bits/std_sstream.h: As per libstdc++20.
1946
19472000-01-06 Benjamin Kosnik <bkoz@gnu.org>
1948
1949 Break out configuration on solaris.
1950 * configure.in (ctype_solaris): Add in bits for solaris2.6 and 2.7.
1951 * config/solaris/ctype.cc: Delete and move to proper version.
1952 * config/solaris/bits: Same.
1953 * config/solaris/solaris2.5: Add this directory, with subdir bits
1954 and file ctype.cc. Probably doesn't work.
1955 * config/solaris/solaris2.6: Same.
1956 * config/solaris/solaris2.7: Same, as per specs via Phil Edwards.
1957
1958 * Makefile.am: Change paths to mkcheck.
1959 * Makefile: Regenerate.
1960 * configure.in (AC_OUTPUT_COMMANDS): Build mkcheck here.
1961 * configure: Regenerate.
1962 * src/Makefile.am (generated_headers): Add bits/c++config.h.
1963
1964 * mkcheck: Now autogenerated by configure and renamed. . .
1965 * mkcheck.in (INC_PATH): Add glue for ctype_include_dir.
1966 Have longer-style dates.
1967 Raja R Harinath <harinath@cs.umn.edu>
1968 * mkcheck: Change path to #!/usr/clocal/bin/bash.
1969
1970 * docs/README.html: Correct links, maybe. FAQ, install notes, and
1971 general documentation need to be organized around each other, not
1972 fight against each other. . .
1973
19742000-01-04 Phil Edwards <pme@sourceware.cygnus.com>
1975 Nicolai Josuttis <nicolai.josuttis@braunschweig.netsurf.de>
1976
1977 * README: Add a note referring to README.html.
1978 * docs/README.html: New file from Nicolai.
1979 * docs/faq/index.html: Move "how to get a copy" to here.
1980 * docs/gentop/footchunk.html: Update.
1981 * docs/gentop/headchunk.html: New links according to
1982 bkoz's idea for "How to..." stuff.
1983 * docs/gentop/thanks: Actually put people here.
1984 * docs/download.html: Regenerated.
1985 * docs/index.html, docs/links.html, docs/mail.html,
1986 docs/status.html, docs/thanks.html, docs/faq/index.txt: Ditto.
1987 * docs/how.html: Ditto. (This file should go away soon.)
1988
19891999-12-26 Phil Edwards <pme@sourceware.cygnus.com>
1990
1991 * docs/gentop/status: Add snapshot version column, update
1992 for Solaris 7.
1993 * docs/status.html: Regenerated.
1994
19951999-12-26 Phil Edwards <pme@sourceware.cygnus.com>
1996
1997 * docs/faq/index.html: Turn README and RELEASE-NOTES into links
1998 from installation FAQ, and specify location of text files.
1999 * docs/faq/index.txt: Regenerated.
2000
20011999-12-23 Phil Edwards <pme@sourceware.cygnus.com>
2002
2003 * docs/gentop/download: Add links to prebuilds for Cygwin/Mingw32.
2004 * docs/download.html: Regenerated.
2005
20061999-12-22 Phil Edwards <pme@sourceware.cygnus.com>
2007
2008 * docs/faq/index.html: Update 'what works' for .7 snapshot,
2009 clean up various links.
2010 * docs/faq/index.txt: Regenerated.
2011 * docs/gentop/gentop: Smarter regeneration script.
2012 * docs/gentop/{head,foot}chunk.html: Updated with new
2013 contributors link and mod date.
2014 * docs/gentop/index: Snapshot relase date.
2015 * docs/gentop/thanks: New contributors page added.
2016 * docs/{download,how,index,links,mail,status,thanks}.html:
2017 Regenerated from gentop; thanks.html created.
2018
20191999-12-21 Benjamin Kosnik <bkoz@decepticon.cygnus.com>
2020
2021 * bits/c++config.h.in (__GLIBCPP__): 19991221.
2022 * docs/index.html: Add correct information.
2023
2024 * config/irix: New directory.
2025 * config/irix/ctype.cc: Add irix-6.5 info. Not tested.
2026 * config/irix/bits/ctype_base.h: And here.
2027
2028 * config/aix: New directory.
2029 * config/aix/ctype.cc: Add aix-4.2 info. Not tested.
2030 * config/aix/bits/ctype_base.h: And here.
2031
20321999-12-21 Philip Martin <pm@corris.dircon.co.uk>
2033
2034 * bits/basic_string.h: Add special case handling for integral
2035 "iterators".
2036 * bits/std_string.h: include type_traits.h
2037 * testsuite/21_strings/ctor_copy_dtor.cc: Tweak.
2038
20391999-12-21 Benjamin Kosnik <bkoz@decepticon.cygnus.com>
2040
2041 * bits/fstream.tcc (seekoff): Output buffer based on _M_*_in and
2042 _M_*_end now.
2043 * bits/std_fstream.h (sync): And here.
2044 * testsuite/27_io/filebuf.cc: Revisions.
2045 * testsuite/27_io/filebuf-2.tst: Correct, remove weird character
2046 at the end of the file.
2047 * testsuite/27_io/filebuf-3.tst: Correct.
2048
20491999-12-21 Phil Edwards <pedwards@jaj.com>
2050
2051 * docs/gentop/index: Hold off on .7 announcement date.
2052 * docs/index.html: Regenerate.
2053
20541999-12-21 Benjamin Kosnik <bkoz@kcygnus.com>
2055
2056 * bits/std_fstream.h (sync): Move _M_file->sync() to
2057 _M_really_overflow().
2058 * bits/fstream.tcc (seekoff): Call sync, not _M_really_overflow so
2059 as to get the _M_file->sync action, which forces the external
2060 buffer to update itself.
2061 (underflow): Same here.
2062
20631999-12-21 Phil Edwards <pedwards@jaj.com>
2064
2065 * bits/c++config.h.in: Uncomment _GLIBCPP_USE_NAMESPACES and move...
2066 * acconfig.h: ...to here.
2067 * config.h.in: Regenerate from aclocal.
2068 * acinclude.m4: Add GLIBCPP_ENABLE_DEBUG, GLIBCPP_ENABLE_NAMESPACES.
2069 * aclocal.m4: Regenerate from acinclude.
2070 * configure.in: Use ENABLE macros here.
2071 * configure: Regenerate.
2072 * src/Makefile.am: Use results from ENABLE macros.
2073 * src/Makefile.in: Regenerate.
2074
20751999-12-20 Benjamin Kosnik <bkoz@cygnus.com>
2076
2077 * mkcheck (SRC_DIR): Now have to include config/* dir if "make
2078 check" and not "make check-install." Temporarily hack in linux
2079 support.
2080
2081 * bits/std_streambuf.h: Tweaks.
2082 * bits/streambuf.tcc (xsgetn): Tweaks.
2083 * bits/std_fstream.h (sync): Make _M_really_overflow consistent.
2084 * bits/fstream.tcc (filebuf::underflow): Simplify.
2085 * bits/std_sstream.h (streambuf::underflow): Minor change to make
2086 checks for read position precisely implement the standard.
2087 * bits/basic_file.h (filepos_cur): Base this on _offset.
2088 * testsuite/21_strings/inserters_extractors.cc (test05): Tweaks.
2089 * testsuite/27_io/filebuf.cc: Tweak.
2090
20911999-12-20 Benjamin Kosnik <bkoz@cygnus.com>
2092
2093 * docs/17_intro/RELEASE-NOTES: Fix typos.
2094
2095 * bits/locale_facets.h (ctype): Modify, use __to_type to abstract
2096 out platform-specific bits.
2097 * config/default/ctype.cc: And here.
2098 * config/defaults/bits/ctype_base.h: And here.
2099 * config/linux/ctype.cc: And here.
2100 * config/linux/bits/ctype_base.h (ctype_base): And here.
2101 * config/solaris/bits/ctype_base.h (ctype_base): Add
2102 __to_type. Comment, as it looks like this is for solaris2.6 and
2103 above: solaris2.5.1 doesn't seem to have the same definitions.
2104 * config/solaris/ctype.cc: And here.
2105
21061999-12-19 Benjamin Kosnik <bkoz@cygnus.com>
2107 Ulrich Drepper <drepper@cygnus.com>
2108
2109 * acconfig.h: Remove _GLIBCPP_USE_CTYPE_ISBIT.
2110
2111 * src/locale.cc: Take out platform-specific hacks.
2112 * config/linux/ctype.cc: Put here.
2113 * config/solaris/ctype.cc: Put here.
2114 * config/default/ctype.cc: Put here.
2115
2116 * bits/locale_facets.h: Take out platform-specific hacks.
2117 * config/linux/bits/ctype_base.h: Put here.
2118 * config/solaris/bits/ctype_base.h: Put here.
2119 * config/default/bits/ctype_base.h: Put here.
2120
2121 * configure.in: Bump version.
2122 Add tests for top-level config directory.
2123 * configure: Regenerated.
2124 * src/Makefile.am (INCLUDES): Add platform-specific dir.
2125 * src/Makefile: Regenerate.
2126
21271999-12-19 Benjamin Kosnik <bkoz@cygnus.com>
2128 Ulrich Drepper <drepper@cygnus.com>
2129
2130 * bits/locale_facets.h: Hack in solaris support.
2131 * src/locale.cc: Here too.
2132
21331999-12-18 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
2134
2135 * docs/17_intro/TODO: Update
2136 * docs/17_intro/RELEASE-NOTES (New): Update.
2137
21381999-12-17 Benjamin Kosnik <bkoz@milou.cygnus.com>
2139
2140 * bits/c++config.h.in (__GLIBCPP__): Bump.
2141 * docs/17_intro/RELEASE-NOTES: Update, Gaby please add your stuff.
2142 * docs/17_intro/TODO: Update.
2143
2144 * bits/locale_facets.h: Touch this too.
2145 * bits/localefwd.h: Add typedefs for loooooong vector names.
2146 * bits/locale_facets.tcc (locale::operator()): Need parens.
2147 (has_facet): Simplify.
2148 * src/locale-inst.cc: Add instantiations.
2149 * src/locale.cc: Tweaks.
2150
2151 * bits/std_streambuf.h: Move indeterminates into. .
2152 * bits/std_fstream.h: Here.
2153 * bits/fstream.tcc (underflow): Rewind just for ios_base::out
2154 streams.
2155 * bits/sstream.tcc: Very minor formatting tweaks.
2156 * bits/std_streambuf.h (_M_set_determinate): If exclusively an
2157 input buffer, set _M_buf to offset.
2158 * bits/istream.tcc (std): Tweaks.
2159 * testsuite/27_io/istream_unformatted.cc (test05): More tweaks,
2160 include fstream.
2161 * testsuite/27_io/filebuf.cc: Tweaks.
2162
21631999-12-17 Phil Edwards <pedwards@jaj.com>
2164
2165 * configure.in: Add OPTLEVEL, -O2 for gcc 2.96+, nothing otherwise.
2166 * configure: Regenerate.
2167 * src/Makefile.am: Use OPTLEVEL in CXXFLAGS.
2168 * src/Makefile.in: Regenerate. Also picks up OTHER_CXXFLAGS rename
2169 to OPTIMIZE_CXXFLAGS from a previous revision (1.96) to Makefile.am.
2170
21711999-12-17 Phil Edwards <pedwards@jaj.com>
2172
2173 * docs/21_strings/stringtok_std_h.txt: New algorithm
2174 suggested by Chris King.
2175 * docs/21_strings/howto.html: Link to new version.
2176
21771999-12-16 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
2178
2179 * bits/valarray_array.h (__valarray_sum): Use operator+=, not
2180 operator+.
2181 * docs/17_intro/TODO: Update.
2182
21831999-12-15 Phil Edwards <pme@sourceware.cygnus.com>
2184
2185 * docs/gentop/footchunk.html: Updated, fixed CRLFs.
2186 * docs/gentop/gentop: Ditto.
2187 * docs/gentop/headchunk.html: Ditto.
2188 * docs/*.html: Regenerated from gentop.
2189 * docs/*/howto.html: Updated as test.
2190 * docs/faq/index.html: Updated, fixed CRLFs.
2191 * docs/faq/index.txt: Regenerated.
2192
21931999-12-15 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
2194
2195 * mknumeric_limits (OUT_C): restart only if $OUT_C is present.
2196
2197 * bits/std_complex.h
2198 (complex<float>::complex(const complex<double>&),
2199 complex<float>::complex(const complex<long double>&)): Define.
2200
2201 * docs/17_intro/TODO: Update.
2202
22031999-12-13 Benjamin Kosnik <bkoz@cygnus.com>
2204
2205 * bits/istream.tcc (seekg): Don't set _M_gcount.
2206 (tellg): Same.
2207 * bits/fstream.tcc (filebuf::underflow): Re-sync
2208 external byte sequence's input buffer only. . .
2209 * testsuite/27_io/istream_unformatted.cc (test04): New tests for
2210 tellg, seekg and filebufs.
2211 (test05): Same for stringbufs.
2212 * testsuite/27_io/istream_unformatted-2.tst: New file.
2213 * testsuite/27_io/istream_unformatted-1.tst: New file.
2214 * testsuite/27_io/istream_unformatted-1.txt: New file.
2215 * testsuite/21_strings/inserters_extractors.cc (test05): Change
2216 output file.
2217
22181999-12-13 Phil Edwards <pedwards@jaj.com>
2219
2220 * docs/gentop/*: New directory, containing bits for the homepages.
2221 * docs/*.html: Regenerated from gentop.
2222 * docs/*/*.html: Entries added and regenerated.
2223
22241999-12-13 Benjamin Kosnik <bkoz@gnu.org>
2225
2226 Efforts to get -O2 to work with -Winline -Werrors.
2227 * bits/valarray_array.h (__valarray_fill(_Tp*, size_t, const
2228 _Tp&): Remove inline declaration, as cannot be inlined and
2229 -Winline -Werror complains. An interesting question is why this
2230 cannot be inlined, as I can see no real reason to disqualify it.
2231 (__valarray_product(const _Tp*, const _Tp*)): Same here.
2232 * bits/std_valarray.h (valarray::operator[](size_t)): Same here.
2233
2234 * docs/17_intro/TODO: Update.
2235
22361999-12-12 Benjamin Kosnik <bkoz@gnu.org>
2237
2238 * bits/std_fstream.h (seekpos): Tweaks, fixes. Move definition to
2239 fstream.tcc.
2240 * bits/basic_file.h (filepos_cur()): Make pointers themselves be
2241 the resultant position.
2242 * bits/fstream.tcc (seekoff): Explicitly set return value to
2243 resultant external byte sequence position, not value returned from
2244 _M_file->seekoff. Need to make
2245 (seekpos): New definition.
2246
2247 * bits/istream.tcc (seekg): As per Library Issues List 136, set to
2248 just istream. Necessary, or else tellg will give an invalid stream
2249 position, but seekg will return a valid stream position, which is
2250 not groovy: see testcase addition.
2251 * bits/ostream.tcc (seekp): Same.
2252
2253 * bits/streambuf.tcc (_S_copy_streambufs): Simplify.
2254 * bits/sstream.tcc: Tweaks.
2255 * bits/locale_facets.tcc: Tweaks.
2256 (num_put::do_put(iter_type, ios_base, char_type, const void*)):
2257 Re-write in a way that is easier for the inliner to work with.
2258 * bits/ios_base.h: Use explicit static_cast<int>(...) notation.
2259
22601999-12-10 Benjamin Kosnik <bkoz@cygnus.com>
2261
2262 * bits/locale_facets.tcc: Tweaks.
2263 * bits/locale_facets.h (use_facet): Can't inline, remove inline
2264 from declaration.
2265 * bits/localefwd.h: And here.
2266 * bits/std_ostream.h: Tweaks, sentry ctor can't be inlined.
2267 * bits/ostream.tcc: Put here.
2268
2269 Frank Ch. Eigler <fche@cygnus.com>
2270 * src/Makefile.am: Adjust CXXFLAGS, add AM_CXXFLAGS.
2271
22721999-12-08 Benjamin Kosnik <bkoz@cygnus.com>
2273
2274 * bits/sstream.tcc (stringbuf::seekoff): Long overdue revamp. Make
2275 in and out buffers update independantly.
2276
2277 * bits/basic_ios.h: Minor formatting.
2278 * bits/fstream.tcc (std): Fix indentation.
2279
22801999-12-08 Chip Salzenberg <chip@valinux.com>
2281
2282 * bits/char_traits.h (char_traits<>): Move not_eof() functions
2283 after corresponding eof() functions, so they're easier for the
2284 compiler to inline.
2285 * bits/locale_facets.h (money_base::__default_pattern): Move
2286 static variable out of inline functions.
2287 (_Moneypunct<>::do_{pos,neg}_format): Use it.
2288 * src/locale-inst.cc (money_base::__default_pattern): Define it.
2289
22901999-12-08 Benjamin Kosnik <bkoz@cygnus.com>
2291
2292 * bits/std_fstream.h (filebuf::open): Tweak.
2293 * bits/fstream.tcc (filebuf::seekoff): Simplify, fix.
2294 * bits/std_ios.h: Minor tweaks for headers.
2295
22961999-12-06 Benjamin Kosnik <bkoz@gnu.org>
2297
2298 * bits/c++config.h.in (_GLIBCPP_FULLY_COMPLIANT_HEADERS): New macro.
2299 * src/string-inst.cc: Add guards . . .
2300 * src/misc-inst.cc: And here.
2301 * bits/std_sstream.h: And here.
2302 * bits/std_fstream.h: And here.
2303 * bits/std_streambuf.h: And here.
2304 * bits/std_istream.h: And here.
2305 * bits/std_ostream.h: And here.
2306
23071999-12-06 Scott Snyder <snyder@fnal.gov>
2308
2309 * bits/istream.tcc (basic_istream::read): Try to handle __n == 0
2310 case.
2311 (basic_istream::readsome): And here as well.
2312 * testsuite/27_io/istream_unformatted.cc: Test a zero-length
2313 read().
2314
23151999-12-06 Mumit Khan <khan@xraylith.wisc.edu>
2316
2317 * bits/istream.tcc (basic_istream::ignore): streamsize is not
2318 necessarily an `int'.
2319
23201999-12-06 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
2321
2322 * mknumeric_limits: Don't use $CXXFLAGS when building
2323 gen-num-limits. It's definitely wrong to use it since $CXXFLAGS
2324 generally instructs the compiler not to emit template
2325 instantiations and we end up with undefined symbols. Sigh.
2326
23271999-12-05 Benjamin Kosnik <bkoz@gnu.org>
2328
2329 * bits/locale_facets.tcc: Tweak.
2330 (_S_format_long): Adjust showpos formatting for hex and oct.
2331 * bits/std_ostream.h (operator<<(short)): Correctly deal with hex
2332 and oct by formatting as unsigned.
2333 (operator<<(int)): Same here.
2334 * bits/ostream.tcc (operator<<(long)): Same.
2335 (operator<<(long long)): Same.
2336 (_S_pad_char): Actually treat ios_base::internal as something
2337 worth doing correctly. Remove const designation on ios argument.
2338 * testsuite/27_io/ios_manip_basefield.cc (test02): Add tests.
2339 * testsuite/27_io/ostream_inserter_arith.cc (test03): Add tests.
2340
23411999-12-04 Benjamin Kosnik <bkoz@gnu.org>
2342
2343 * bits/std_sstream.h (streambuf::underflow): Check for mode == in.
2344
23451999-12-03 Benjamin Kosnik <bkoz@gnu.org>
2346
2347 * bits/locale_facets.tcc (num_put::do_put(bool): Fix.
2348
2349 * bits/sstream.tcc (streambuf::seekoff): Add parens.
2350 * bits/istream.tcc (istream::get(sb)): Handle exceptional events.
2351 (operator>>(istream, _CharT*)): Change streamsize to int_type.
2352 (operator>>(istream, _CharT&)): Fix typedef'd type to be _CharT.
2353 * bits/ostream.tcc (ostream::operator<<(const char*)): Stub out
2354 unused argument.
2355 (ostream::operator<<(_CharT)): Fix.
2356
2357 * bits/std_sstream.h: Temporarily disable including sstream.tcc to
2358 see if this will increase compile speed.
2359 * bits/std_ostream.h: Likewise. . .
2360 * bits/std_istream.h: And here.
2361 * bits/std_fstream.h: And here.
2362 * src/misc-inst.cc: Add relevant header file includes for
2363 instantiation purposes.
2364 * src/string-inst.cc: And here.
2365 * testsuite/27_io/ostream_inserter_arith.cc: Add test case.
2366
23671999-12-02 Benjamin Kosnik <bkoz@gnu.org>
2368
2369 * testsuite/27_io/istream_unformatted.cc (test03): Add tests.
2370 * bits/istream.tcc (get(streambuf)): More fixes.
2371 (istream::ignore): Get specific about numeric_limits<int>::max()
2372 requirements.
2373
2374 * bits/fstream.tcc (filebuf::open): Tweaks for _M_last_overflowed.
2375 (filebuf::close): Same.
2376 * testsuite/27_io/filebuf.cc: Add tests for ios_base::ate.
2377
23781999-12-01 Phil Edwards <pedwards@jaj.com>
2379
2380 * mkcheck: Support for compilation/execution timing.
2381 * testsuite/printnow.c: New file.
2382
23831999-12-01 Phil Edwards <pedwards@jaj.com>
2384
2385 * bits/std_cwchar.h: Test for _GLIBCPP_USE_WCHAR_T.
2386 * configure.in: Test for presence of wchar.h before testing
2387 for any of its features.
2388 * configure: Regenerate.
2389
23901999-11-30 Benjamin Kosnik <bkoz@gnu.org>
2391
2392 Preliminary istream validations complete.
2393 * bits/istream.tcc (istream::getline): Fixes. Tweaks to make
2394 formatting more consistent. Removal of if-statements inside of for
2395 loops.
2396 (ignore): Fix.
2397 (get): Same.
2398 (putback): Same.
2399 * bits/std_istream.h: Same.
2400 * bits/sstream.tcc (stringbuf::pbackfail): Fix.
2401 * testsuite/27_io/stringbuf.cc: Tweak.
2402 * testsuite/27_io/istream_unformatted.cc (test02): Mo' tests.
2403
2404 * bits/ostream.tcc (ostream::operator<<(arith)): Set badbit, not
2405 failbit on failure, as per 27.6.2.5.2.
2406
2407 * stl/bits/std_vector.h: Allow bool specializations. Should move
2408 ext/std_bvector to bits, not ext, maybe.
2409
24101999-11-30 Mumit Khan <khan@xraylith.wisc.edu>
2411
2412 * configure.in: Fix checks for mbstate_t and WCHAR_MIN/MAX.
2413 * configure: Regenerate.
2414
2415999-11-29 Benjamin Kosnik <bkoz@gnu.org>
2416
2417 * bits/istream.tcc (get(streambuf, char)): Fix.
2418 * testsuite/27_io/istream_unformatted.cc (test03): Add tests.
2419
24201999-11-29 Scott Snyder <snyder@fnal.gov>
2421
2422 * bits/basic_string.h (append(const _Char*, size_type)): The
2423 length of the appended string is given exactly by the second arg,
2424 regardless of the data in the character array.
2425 * bits/string.tcc (basic_string(const _CharT*, size_type, const
2426 _Alloc&)): Likewise.
2427 * testsuite/21_strings/append.cc (test01): Remove erroneous test
2428 of basic_string::append.
2429
24301999-11-29 Chip Salzenberg <chip@valinux.com>
2431
2432 * Makefile.in: Tweaks for CXXFLAGS.
2433 * */Makefile.in: Same.
2434
24351999-11-29 Mumit Khan <khan@xraylith.wisc.edu>
2436
2437 * conficd bgure.in: Check for wide character support.
2438 * bits/c++config.h.in (_GLIBC_USE_WCHAR_T): Move from here ...
2439 * acconfig.h (_GLIBC_USE_WCHAR_T): to here.
2440 * bits/string.tcc (wstring::_S_find): Guard wchar_t specialization.
2441
24421999-11-29 Mumit Khan <khan@xraylith.wisc.edu>
2443
2444 * acinclude.m4: Fix typo.
2445 * src/complex.cc: Fix macro line continuation.
2446
24471999-11-29 Petter Urkedal <petter@matfys.lth.se>
2448
2449 * src/Makefile.am (CXXFLAGS): Add -Wno-format to allow non-
2450 string literals in format, as used in locale-facets.tcc.
2451
24521999-11-28 Benjamin Kosnik <bkoz@gnu.org>
2453
2454 * testsuite/27_io/istream_unformatted.cc (test03): Add tests.
2455 * bits/istream.tcc (istream::get): Extract to argument minus one.
2456 Various tweaks and fixes.
2457
24581999-11-22 Mumit Khan <khan@xraylith.wisc.edu>
2459
2460 * bits/locale_facets.tcc: Workaround for compiler crash on
2461 ix86-*-mingw32.
2462
24631999-11-21 Mumit Khan <khan@xraylith.wisc.edu>
2464
2465 * acinclude.m4: New file. New _GLIBCPP_CHECK_FLOAT_SUPPORT macro.
2466 * configure.in: Use.
2467 * acconfig.h: New _GLIBCPP_BUGGY_FLOAT_COMPLEX macro.
2468 * src/complexf.cc: New _GLIBCPP_FLOAT_SPECIALIZATION macro.
2469 * bits/std_complex.h: Use.
2470 * src/complex.cc: Use.
2471
24721999-11-19 Mumit Khan <khan@xraylith.wisc.edu>
2473
2474 * testsuite/18_support/numeric_limits.cc: Add missing std:: prefix.
2475 * testsuite/21_strings/inserters_extractors.cc: Likewise.
2476 * testsuite/22_locale/ctype.cc: Likewise.
2477 * testsuite/23_containers/multiset.cc: Likewise.
2478 * testsuite/23_containers/vector_ctor.cc: Likewise.
2479 * testsuite/26_numerics/binary_closure.cc: Likewise.
2480 * testsuite/27_io/fpos.cc: Likewise.
2481 * testsuite/27_io/ios_base_callbacks.cc: Likewise.
2482 * testsuite/27_io/istream_extractor_arith.cc: Likewise.
2483 * testsuite/27_io/istream_extractor_char.cc: Likewise.
2484 * testsuite/27_io/istream_extractor_other.cc: Likewise.
2485 * testsuite/27_io/istream_sentry.cc: Likewise.
2486 * testsuite/27_io/ostream_inserter_char.cc: Likewise.
2487 * testsuite/27_io/ostream_inserter_other.cc: Likewise.
2488 * testsuite/27_io/streambuf.cc: Likewise.
2489 * testsuite/27_io/stringstream.cc: Likewise.
2490
24911999-11-19 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
2492
2493 * bits/valarray_meta.h: Don't forget to define tanh
2494
24951999-11-18 Philip Martin <pm@corris.dircon.co.uk>
2496
2497 * src/stl-inst.cc: Use typedef to refer to iterator
2498 * stl/bits/stl_algobase.h: Add traits based dispatch for
2499 __normal_iterator in the copy()algorithm
2500 * stl/bits/type_traits.h: Add _Is_normal_iterator trait support
2501
25021999-11-18 Kevin Ediger <kediger@licor.com>
2503
2504 * src/locale.cc (locale::_Imp::_Imp): Use auto_ptr to make
2505 constructors for locale::_Impl exception safe.
2506
25071999-11-18 Scott Snyder <snyder@fnal.gov>
2508
2509 * stl/bits/stl_queue.h: The C++ standard gives the default for the
2510 _Sequence template argument of priority_queue<> as vector<>, not
2511 deque<>.
2512
25131999-11-18 Benjamin Kosnik <bkoz@gnu.org>
2514
2515 * bits/std_sstream.h (stringbuf::_M_really_sync): Add __iend as a
2516 parameter.
2517 * bits/sstream.tcc: Adjust here too.
2518
25191999-11-17 Benjamin Kosnik <bkoz@gnu.org>
2520
2521 * bits/sbuf_iter.h (istreambuf_iter::equal): Tweak.
2522 * bits/istream.tcc (operator>>): Replace iostate(0) with
2523 iostate(ios_base::goodbit), which is the same thing, but hopefully
2524 a bit clearer.
2525 * bits/locale_facets.tcc (do_get(bool)): Streamline, deal with
2526 libraries issue list 17.
2527 (do_gets): Don't set goodbit explicitly, instead only set on
2528 failures as good bit is the default setting.
2529 * bits/ios_base.h (setf): Set correctly.
2530 * bits/fstream.tcc: Tweak.
2531 * bits/std_sstream.h (_M_really_sync): Fix ibuffer positioning for
2532 in|out bufs that are empty. . .
2533 * testsuite/27_io/istream_extractor_arith.cc (test03): Add.
2534
25351999-11-16 Benjamin Kosnik <bkoz@gnu.org>
2536
2537 * testsuite/27_io/streambuf.cc (class testbuf): Don't set _M_buf_size.
2538 * bits/std_streambuf.h (setp): Set _M_buf_size, _M_mode.
2539 Add comments "all about _M_buf."
2540 (setg): Set _M_mode.
2541
25421999-11-16 Kevin Ediger <kediger@licor.com>
2543
2544 * bits/locale_facets.tcc (_S_build_float_format): New function.
2545 (_S_output_float): New function.
2546 (num_put::do_put(double)): Use 'em.
2547 (num_put::do_put(long double)): Use 'em.
2548 * testsuite/27_io/ostream_inserter_arith.cc: New file.
2549
25501999-11-15 Scott Snyder <snyder@fnal.gov>
2551
2552 * bits/basic_file.h: Type of __off parm should be __c_streampos, to
2553 match how libio is calling us.
2554 * src/basic_file.cc (sys_seek): Likewise.
2555 * bits/std_fstream.h (basic_filebuf::sync): Restore sync call.
2556
25571999-11-15 Benjamin Kosnik <bkoz@gnu.org>
2558
2559 * docs/17_intro/contribute.html: Add link to assignment form.
2560 * docs/17_intro/libstdc++-assign.txt: New file.
2561
2562 * mkcheck (TESTS_FILE): Move a copy of test files as well as
2563 output files.
2564
2565 * bits/std_streambuf.h (_M_buf_bump): New function.
2566 * bits/streambuf.tcc: Mods to support _M_buf_bump.
2567 (xsputn): Here. Also add checks for output valid.
2568 (xsgetn): Add checks for input valid.
2569 (sputc): Here.
2570 (sgetc): Set _M_in_end to _M_buf + _M_buf_end.
2571 * bits/std_sstream.h (_M_really_sync): Set _M_buf.
2572 Set _M_out_end to variable-length-end.
2573 * bits/sstream.tcc (overflow): Use _M_buf_bump.
2574 (seekpos): Same.
2575 (seekoff): Same.
2576 * bits/fstream.tcc (std): Tweak formatting.
2577 (filebuf::overflow): Simplify.
2578 (filebuf::showmanyc): Same.
2579 (filebuf::underflow): Same.
2580 * testsuite/27_io/filebuf.cc: Fix.
2581 * testsuite/27_io/ostream_inserter_other.cc: Fix.
2582 * testsuite/27_io/ostream_inserter_other-2.tst: New file.
2583 * testsuite/27_io/stringbuf.cc: Tweak.
2584 * testsuite/27_io/streambuf.cc: Tweak.
2585 * testsuite/27_io/istream_extractor_other.cc: Fix.
2586
25871999-11-11 Matthias Klose <doko@cs.tu-berlin.de>
2588
2589 * stl_deque.h: Use static_casts<size_type>(signed_type).
2590
25911999-11-11 Benjamin Kosnik <bkoz@gnu.org>
2592
2593 Cleanups for callbacks, more regression hunting. Remaining
2594 failures (1) due to last unresolved stringstream issues, not
2595 regressions per se.
2596 * bits/std_fstream.h: Revert. Disable call to _M_file->sync as
2597 killing 27_io/filebuf.cc tests. . . need another solution.
2598
2599 * bits/streambuf.tcc (_S_copy_streambufs): Fix.
2600 * testsuite/27_io/istream_extractor_other.cc: Tweak comments.
2601
2602 * bits/basic_ios.h: Add cached facets here. UGH. The standard
2603 foils all attempts at a graceful, minimal implementation.
2604 * bits/basic_ios.tcc: Tweaks.
2605 * bits/istream.tcc: Fix.
2606 * bits/ostream.tcc: Fix.
2607 * bits/std_istream.h: Fix.
2608 * bits/std_ostream.h: Fix.
2609 * src/ios.cc (ios_base::imbue): Set _M_locale_ios before calling
2610 callbacks.
2611 * bits/locale_facets.tcc (std): Minor, minor formatting tweak.
2612 (_S_pad_numeric): Make comprehensible.
2613
26141999-11-10 Benjamin Kosnik <bkoz@cygnus.com>
2615
2616 * bits/std_ostream.h: Add callbacks for _M_fnumput.
2617 (_S_ostream_fcache): New function.
2618 Move functions out-of-line.
2619 * bits/ostream.tcc: Put here.
2620
2621 * bits/std_istream.h: Add callbacks for _M_fnumget.
2622 (_S_istream_fcache): New function.
2623 Move functions out-of-line.
2624 * bits/istream.tcc: Put here.
2625
2626 * bits/basic_ios.tcc (basic_ios::imbue): Tweaks, remove call to
2627 _M_call_callbacks(), as ios_base::imbue does this already.
2628 * src/ios.cc (register_callback): Clean.
2629 (_M_call_callbacks): Same.
2630 * bits/ios_base.h: Callback work.
2631 * testsuite/27_io/ios_base_callbacks.cc (test01): New file.
2632
26331999-11-10 Benjamin Kosnik <bkoz@cygnus.com>
2634 Matthias Klose <doko@cs.tu-berlin.de>
2635
2636 * stl/ext/stl_rope.h: Fix initialization order.
2637
26381999-11-09 Scott Snyder <snyder@fnal.gov>
2639
2640 * bits/std_fstream.h (basic_filebuf::sync): Unconditionally call
2641 _M_file->sync() so that redirection works correctly.
2642
26431999-11-09 Benjamin Kosnik <bkoz@gnu.org>
2644
2645 * bits/istream.tcc: Re-order.
2646 * bits/std_istream.h: Fix getline problems.
2647 * testsuite/27_io/istream_unformatted.cc: New tests.
2648
2649 Clean up regressions.
2650 * bits/std_sstream.h: Set initial stringbufs correctly.
2651
26521999-11-09 Scott Snyder <snyder@fnal.gov>
2653
2654 * stl_vector.h (_M_range_insert): Fix mixing pointers and
2655 vector::iterator.
2656 * testsuite/23_containers/vector_modifiers.cc (test01): New file,
2657 tests.
2658
26591999-11-09 Benjamin Kosnik <bkoz@cygnus.com>
2660
2661 * src/Makefile.am (CXXFLAGS): Add -Winline.
2662 * src/Makefile.in: Regenerate.
2663
26641999-11-05 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
2665
2666 * bits/valarray_meta.h (_DEFINE_EXPR_UNARY_FUNCTION): When
2667 building meta-expressions don't forget to take the contained
2668 closures.
2669
26701999-11-02 Benjamin Kosnik <benjamin@cygnus.com>
2671
2672 * configure: Regenerate.
2673
26741999-11-02 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
2675
2676 * bits/valarray_meta.h (_Expr<>::sum): Tweak. Use copy-initialization
2677 syntax.
2678 * bits/valarray_meta.h (min): Likewise.
2679 * bits/valarray_meta.h (max): Likewise.
2680
26811999-11-01 Benjamin Kosnik <bkoz@cygnus.com>
2682
2683 * bits/std_sstream.h (_M_really_sync): Take into account in | out bufs.
2684 * bits/std_streambuf.h (_S_copy_streambufs): New function.
2685 * bits/streambuf.tcc: Define.
2686 * bits/istream.tcc (istream::operator>>(streambuf)): Rewrite.
2687 * bits/ostream.tcc (ostream::operator<<(streambuf)): Rewrite.
2688 * testsuite/27_io/ostream_inserter_other.cc: Add tests.
2689 * testsuite/27_io/ostream_inserter_other-1.tst: New file.
2690
2691 * bits/basic_string.h: Explicitly cast npos to unsigned type,
2692 reported by Richard Atterer.
2693 * bits/char_traits.h: For consistency's sake, here too.
2694
2695 * configure.in: Bump version to 2.90.7.
2696
26971999-10-31 Benjamin Kosnik <bkoz@cygnus.com>
2698
2699 * testsuite/27_io/ostream_inserter_char-1.tst: Check file output.
2700 * testsuite/27_io/ostream_inserter_char.cc (test05, test01): Add tests.
2701 * bits/streambuf.tcc (xsputn): Treat--size const char for long loops.
2702 (xsgetn): Same.
2703 * bits/sstream.tcc (seekpos): Tricks, mostly: check _M_mode before
2704 writing into buffer.
2705 (seekoff): Same.
2706
27071999-10-29 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
2708
2709 * bits/valarray_array.h (__valarray_sum): New function.
2710 * bits/valarray_array.h (__valarray_product): Same.
2711
2712 * bits/std_valarray.h (valarray<T>::product): Comment out.
2713 * bits/std_valarray.h (valarray<T>::sum): Use __valarray_sum
2714 instead of accumulate.
2715
2716 * src/valarray-inst.cc: Remove explicit intantiation of
2717 class multiplies<size_t>, accumulate, valarray<size_t>::product.
2718 * src/valarray-inst.cc (__valarray_product): Instantiate
2719 explicitly.
2720 * src/valarray-inst.cc (__valarray_product(const
2721 valarray<size_t>&)): New function.
2722 * src/valarray-inst.cc (gslice::_Indexer::_Indexer): Don't use
2723 valarray<size_t>::product. Use __valarray_product instead.
2724
2725
27261999-10-25 Benjamin Kosnik <bkoz@cygnus.com>
2727
2728 * bits/std_ostream.h (ostream.inserters.char): Correctly pad output.
2729 (_S_pad_char): New function. Not done: ios_base::internal.
2730 * bits/ostream.tcc: Clean for above.
2731 * bits/locale_facets.tcc (_S_fill): Remove ostreambufiterator
2732 specialization that was commented out, as ostreams now have to
2733 correctly deal with padding.
2734 * testsuite/27_io/ostream_inserter_char.cc (main): Add tests.
2735
2736 * testsuite/21_strings/ctor_copy_dtor.cc(test02): Add test case
2737 from mailing list. This is a bug, and should be fixed.
2738 * testsuite/21_strings/inserters_extractors.cc (main): Tweak, fix typo.
2739
27401999-10-22 Petter Urkedal <petter@matfys.lth.se>
2741
2742 * stl/bits/stl_numeric.h (__power): Replaced argument name `__opr'
2743 to avoid conflict with gcc name mangling.
2744 * stl/bits/stl_algo.h (__transform): Same.
2745
27461999-10-21 Benjamin Kosnik <bkoz@cygnus.com>
2747
2748 * bits/ios_base.h: Change argument names.
2749 * docs/17_intro/BADNAMES: Add __opr.
2750
27511999-10-20 Benjamin Kosnik <bkoz@decepticon.cygnus.com>
2752
2753 Work on compilation slowdowns from 10-5 to 10-12, which are
2754 related to the _Callback_list inlining/merge-ifcation, which is
2755 still a pending issue, but this stuff is necessary cleanup anyway.
2756
2757 * src/ios.cc: Re-arrange.
2758 * bits/ios_base.h: Tweak.
2759 * bits/basic_ios.tcc: Move out of line definitions here, move
2760 small out-of-line definitions inline.
2761 * bits/basic_ios.h: From here.
2762
2763 * bits/streambuf.tcc (pbackfail, overflow): Move back inline.
2764 * bits/std_streambuf.h: From here.
2765
27661999-10-19 Benjamin Kosnik <bkoz@cygnus.com>
2767
2768 * testsuite/27_io/istream_extractor_char.cc: Add tests.
2769 * bits/std_istream.h: Tweaks--set eofbit on eof condition.
2770 * bits/istream.tcc (operator>>(istream&, string&): Remove
2771 vestigial issspace hacks and use ctype::is instead.
2772 (getline): Remove unnecessary loops, fortify and pasteurize.
2773 (ws): Same.
2774
27751999-10-18 Benjamin Kosnik <bkoz@cygnus.com>
2776
2777 * bits/istream.tcc (operator>>): Tweak.
2778 * bits/std_istream.h: Fix according to library issues list 68.
2779 Add typedefs.
2780
2781 * bits/locale_facets.h: Fix table_size to be non-zero.
2782
27831999-10-18 Vadim Egorov <egorovv@HotPOP.com>
2784
2785 * src/basic_file.cc: ifdef instead of comment for binary mode
2786
27871999-10-18 Russell Davidson <russell@qed.econ.queensu.ca>
2788
2789 * bits/std_sstream.h: Stringbuf initialization based on actual,
2790 not allocated, size.
2791 * testsuite/21_strings/inserters_extractors.cc (test06): Add test
2792 case.
2793
27941999-10-17 Benjamin Kosnik <bkoz@cygnus.com>
2795
2796 * testsuite/26_numerics/c_math.cc (test03): Tweak.
2797 * testsuite/27_io/istream_manip.cc (test01): Corrections due to
2798 sentry change.
2799 * testsuite/21_strings/inserters_extractors.cc (test01): Same.
2800
28011999-10-14 Benjamin Kosnik <bkoz@cygnus.com>
2802
2803 * bits/std_istream.h: Tweaks.
2804 * bits/istream.tcc (istream::sentry::sentry()): Simplify, correct
2805 as per issues list addition--set failbit, eof on empty buffers.
2806 * testsuite/27_io/istream_sentry.cc: New file.
2807
28081999-10-12 Chris Prince <prince@wcug.wwu.edu>
2809
2810 * bits/std_cstdio.h: Remove Solaris hacks.
2811
28121999-10-12 Phil Edwards <philip.edwards@sn.wpafb.af.mil>
2813
2814 * docs/index.html: Fix minor typos and tweaks.
2815 * docs/17_intro/contribute.html: Ditto.
2816 * docs/*/howto.html: Ditto. More "EGCS"->"GCC" conversion, notes on
2817 thread safety and binary I/O, links to external sites.
2818 * docs/faq/index.html: EGCS/GCC cleanup, new entries for Cygwin
2819 and MT.
2820
28211999-10-12 Petter Urkedal <petter@matfys.lth.se>
2822
2823 * bits/std_cmath.h (abs(float)): When ::absf is not present, call
2824 ::fabs(double) rather than ::abs(int).
2825
28261999-10-11 Benjamin Kosnik <bkoz@milou.cygnus.com>
2827
2828 * bits/std_streambuf.h: Fix minor blip--should explicitly return
2829 *gptr(), not the result of underflow.
2830 (pbackfail): Conform to default behavior.
2831 (overflow): Same.
2832 * bits/streambuf.tcc: Add out-of-line streambuf members.
2833 (xsputn): Tweak.
2834 (xsgetn): Tweak.
2835 * testsuite/27_io/streambuf.cc: New file.
2836 * testsuite/27_io/filebuf.cc: Correct test.
2837
28381999-10-08 Benjamin Kosnik <bkoz@haight.constant.com>
2839
2840 * bits/std_cmath.h: Correctly cast int to double.
2841 * testsuite/26_numerics/c_math.cc: Add test.
2842
2843 * mknumeric_limits (OUT_C): Tweaks.
2844 * src/gen-num-limits.cc: Checks for WCHAR_MIN, WCHAR_MAX before
2845 trying to instantiate type_traits<wchar_t>.
2846 * acconfig.h: Add _GLIBCPP_HAS_WCHAR_MIN_MAX.
2847 * configure.in (LIBS): Plus checks for WCHAR_MIN, WCHAR_MAX.
2848 * configure: Regenerate.
2849
28501999-10-06 Benjamin Kosnik <bkoz@milou.cygnus.com>
2851
2852 * bits/streambuf.tcc (streambuf::xsgetn): Rewrite.
2853 (streambuf::xsputn): Put in break.
2854 Aiming for parity between these two (mostly) similar functions.
2855 Need to re-write tests.
2856
2857 * bits/ios_base.h (ios_base::_M_copy_base): Remove declaration.
2858 Make data members protected, not private.
2859 * src/ios.cc (ios_base::_M_copy_base): Move _Callback_list into
2860 ios_base.h. As called only once, collapse into . . .
2861 * bits/basic_ios.h (basic_ios::copyfmt): Fix.
2862 (basic_ios::clear): Throw ios_base::failure on occasion.
2863 (basic_ios::exceptions): Fix.
2864 * testsuite/27_io/ios_members.cc (test02): Add tests.
2865
2866 * bits/fpos.h: Default initialize.
2867 * testsuite/27_io/fpos.cc (test03): Add test.
2868
28691999-10-04 Russell Davidson <russell@qed.econ.queensu.ca>
2870
2871 * src/basic_file.cc: Fix open modes.
2872
28731999-10-04 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
2874
2875 * bits/locale_facets.tcc (num_get<>::do_get): Fix typo.
2876
28771999-09-23 Benjamin Kosnik <bkoz@milou.cygnus.com>
2878
2879 * bits/streambuf.tcc: Yea. Fix this for real.
2880 * testsuite/27_io/ostream_inserter_other.cc: Add file.
2881 * src/Makefile.*: Regenerate.
2882
28831999-09-22 Benjamin Kosnik <bkoz@milou.cygnus.com>
2884
2885 * bits/std_cstdlib.h: Add more linux-specif hacks to the header
2886 files so that stdtof and strtold will be declared. Some hacks
2887 already exits in bits/std_cctype.h -- these should all be removed
2888 at a later date.
2889 * bits/locale_facets.tcc: Add cstring.h include.
2890 _S_format_long: Use long, not int.
2891 Add std_limits.h include, for numeric_limits.
2892 * testsuite/27_io/istream.cc: Make instantiations work when using
2893 -fhonor-std.
2894 * testsuite/27_io/ostream.cc: Same.
2895
28961999-09-21 Benjamin Kosnik <bkoz@milou.cygnus.com>
2897
2898 * bits/fpos.h (fpos::operator streamoff): Make const, don't return
2899 a reference. Same for operators == and !=.
2900 * testsuite/27_io/fpos.cc: Add tests.
2901
29021999-09-21 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
2903
2904 * bits/valarray_array.h: Fix typo.
2905
2906 * mknumeric_limits: Make sure we are regenerating things from
2907 scratch. Otherwise things get redefined. Not good.
2908
29091999-09-20 Benjamin Kosnik <bkoz@milou.cygnus.com>
2910
2911 * bits/std_ostream.h: Fix typo.
2912 * bits/std_istream.h: Same.
2913 * bits/std_iomanip.h: Same.
2914
2915 * bits/istream.tcc (sentry::sentry()): Remove optional tie with
2916 ostream, as happens with underflow anyway.
2917 * testsuite/27_io/istream.cc (main): New file.
2918 * testsuite/27_io/ostream.cc (main): New file.
2919 * testsuite/27_io/istream_unformatted.cc: Add tests.
2920
2921 * src/Makefile.am (headers): Add new file.
2922 * src/Makefile.in (headers): Regenerated.
2923
2924 * bits/basic_ios.h: Remove local-related files.
2925 * bits/basic_ios.tcc: New file, add locale-related items.
2926 * src/misc-inst.cc: Add include of basic_ios.tcc, as a hack for now.
2927 * testsuite/27_io/ios_members_static.cc: Change to
2928 * testsuite/27_io/ios_base_members_static.cc: This.
2929 * testsuite/27_io/ios_members.cc: New file.
2930 * testsuite/27_io/stdios_basefield_manip: Change to
2931 * testsuite/27_io/ios_manip_basefield.cc: This.
2932 * testsuite/27_io/stdios_fmtflags_manip: Change to
2933 * testsuite/27_io/ios_manip_fmtflags.cc: This.
2934
2935 * bits/fpos.h: Fix discarding qualifiers on this when
2936 using _M_position with a const fpos.
2937 * bits/std_iosfwd.h: Tweak.
2938 * testsuite/27_io/fpos.cc: New file.
2939
29401999-09-17 Benjamin Kosnik <bkoz@milou.cygnus.com>
2941
2942 * bits/streambuf.tcc (streambuf::xsputn): Tweak.
2943 * bits/ostream.tcc: Tweak.
2944 * testsuite/21_strings/inserters_extractors.cc (test04, test05):
2945 Add new regressions.
2946
29471999-09-16 Benjamin Kosnik <bkoz@milou.cygnus.com>
2948
2949 * bits/basic_ios.h: Inline, tweak.
2950 * bits/fstream.tcc (basic_filebuf::_M_really_overflow): Tweak,
2951 pass back accurate return value to basic_filebuf::overflow.
2952 * bits/streambuf.tcc (streambuf::xsputn): Fix overflow accounting.
2953 This fixes sstream problems reported in libstdc++/9, but screws up
2954 filebufs. That solution is pending.
2955
29561999-09-15 Vadim Egorov <egorovv@1c.ru>
2957
2958 * bits/streambuf.tcc (basic_streambuf::xsputn): Add check for
2959 zero count puts.
2960 * testsuite/21_strings/inserters_extractors.cc (test01): Add test.
2961
29621999-09-08 Benjamin Kosnik <bkoz@milou.cygnus.com>
2963
2964 * bits/c++config.h.in: Add emacs hints.
2965
2966 * stl/bits/stl_range_errors.h: Don't define here, for now define
2967 in stdexcept.cc along with string inlines __length_error, etc.
2968 * src/stdexcept.cc: Define here.
2969 * stl/bits/stl_config.h (__STL_CAN_THROW_RANGE_ERRORS): Enable, so
2970 at(size_t) will be declared/defined.
2971 (__STL_THREADS): Fix mess surrounding use of this, enable.
2972
29731999-08-31 Benjamin Kosnik <bkoz@milou.cygnus.com>
2974
2975 * testsuite/27_io/istream_extractor_arith.cc: Fix.
2976 * src/localename.cc: Tweak formatting, fix assignment to
2977 const compiler errors.
2978
29791999-08-25 Benjamin Kosnik <bkoz@cygnus.com>
2980
2981 * acconfig.h: Add absf, cosf.
2982 * configure.in (use_builtin_sinf): Same.
2983 * configure: Regenerate.
2984 * bits/std_cmath.h: Add mess of defines.
2985 * testsuite/26_numerics/modf_float.cc: Change to
2986 * testsuite/26_numerics/c_math.cc: This.
2987
2988 * src/locale.cc: Change.
2989 * bits/locale_facets.h: Fix.
2990 * testsuite/22_locale/ctype.cc: Add temporary tests.
2991
29921999-08-24 Benjamin Kosnik <bkoz@cygnus.com>
2993
2994 * bits/fpos.h: Test.
2995
2996 * docs/index.html: Add powerpc-linux-gnu results with gcc-2.95.1.
2997 Fix database name for "libstdc++".
2998
29991999-08-23 Benjamin Kosnik <bkoz@cygnus.com>
3000
3001 * mknumeric_limits (numeric_limits): Add default definitions to
3002 member functions.
3003 * testsuite/18_support/numeric_limits.cc: New file.
3004
30051999-08-18 Benjamin Kosnik <bkoz@cygnus.com>
3006
3007 * bits/std_istream.h: Correct initialization.
3008 * bits/std_ostream.h: Likewise.
3009 * bits/std_sstream.h: Likewise.
3010 * bits/std_fstream.h: Likewise.
3011 * testsuite/27_io/stringstream.cc: Add test case.
3012
3013 * bits/std_sstream.h: Replace ____string_type with __string_type.
3014 * bits/basic_ios.h (basic_ios::rdbuf(sb*): Call clear(), as required.
3015 * bits/std_ostream.h: Tweak dtor.
3016
30171999-08-17 Benjamin Kosnik <bkoz@decepticon.cygnus.com>
3018
3019 * src/Makefile.am (CXXFLAGS): Add -O2.
3020 * src/Makefile.in: Likewise.
3021
3022 * src/gen-num-limits.cc: Conditionally allow wchar_t. See what
3023 this breaks. . .
3024 * mknumeric_limits (numeric_limits): Uglify.
3025
3026 * bits/std_istream.h: Fix warnings.
3027 * bits/locale_facets.tcc: Collateral damage from
3028 char_traits<char>::int_type change.
3029
3030 * testsuite/27_io/istream_extractor_char.cc: Terminate strings.
3031
30321999-08-17 Benjamin Kosnik <bkoz@decepticon.cygnus.com>
3033
3034 * docs/index.html: Add mailing list form.
3035 * docs/27_io/howto.html: Add link to iostreams_hierarchy.pdf.
3036
30371999-08-16 Benjamin Kosnik <bkoz@cygnus.com>
3038
3039 * bits/streambuf.tcc (streambuf::xsputn): Allow copies to continue
3040 if overflow successfully allocates more space.
3041 * bits/std_sstream.h: Adjust comments.
3042 * bits/sstream.tcc (stringbuf::overflow): Copy buffer into string
3043 before overflow forces a resize.
3044 * testsuite/27_io/ostream_inserter_char.cc: New file.
3045
3046 * bits/std_fstream.h: Remove declaration.
3047 * bits/fstream.tcc: Move uflow.
3048 * bits/std_streambuf.h: To here.
3049 * bits/streambuf.tcc: Make consistent.
3050
3051 * src/Makefile.am (WERROR): Enable.
3052 * src/Makefile.in: Regenerate.
3053 * bits/sbuf_iter.h: Tweak.
3054 * bits/char_traits.h: (char_traits<wchar_t>::eof): Use WEOF.
3055 Use unsigned int as char_traits<char>::int_type.
3056
3057 * bits/ostream.tcc (ostream::putc(char)): Tweak.
3058 * testsuite/27_io/iostream_objects.cc: Terminate string.
3059 Move cin::operator>>(char*) test to extractor_char.cc.
3060 * testsuite/27_io/stringstream.cc: Add stringstream instantiation.
3061 * bits/std_istream.h (basic_iostream): Make explicit definition
3062 for default ctor.
3063 * bits/std_sstream.h: Fix typos.
3064 * bits/fstream.tcc (_M_init_filebuf): Set to indeterminate for
3065 basic_filebuf ctor with fileno open arguments. Thus, filebufs are
3066 initialized in a consistent manner, no matter if the underlying
3067 FILE/bit bucket is a tty or a text file or some other imaginary
3068 construct. This and setting _M_buf_size to 1 for cin allows
3069 istream::get(char) to work in a manner consistent with what others
3070 expect.
3071
3072 * docs/index.html: Link Stroustrup's C++ page.
3073
30741999-08-12 Michael Cook <cook@sightpath.com>
3075
3076 * bits/fstream.tcc: Fix signed/unsigned -Wall warning.
3077 * bits/istream.tcc: ditto.
3078 * bits/sbuf_iter.h: ditto.
3079 * bits/std_istream.h: ditto.
3080 * src/Makefile.am: Add -Wall to CXXFLAGS.
3081 * src/Makefile.in: ditto.
3082
30831999-08-12 Benjamin Kosnik <bkoz@tintin.cygnus.com>
3084 Russell Davidson <russell@ehess.cnrs-mrs.fr>
3085
3086 * bits/locale_facets.tcc (_M_extract): Finish off patch from yesterday.
3087 * src/Makefile.am (myinstallheaders): Tweak, remove PHONY.
3088
30891999-08-11 Benjamin Kosnik <bkoz@tintin.cygnus.com>
3090
3091 * testsuite/27_io/istream_unformatted.cc: New file.
3092
3093 * testsuite/27_io/istream_extractor_arith.cc (test02): Add more
3094 elaborate tests for int types with noskipws.
3095
3096 * testsuite/27_io/istream_extractor_other-1.txt: New file.
3097 * testsuite/27_io/istream_extractor_other-1.tst: New file.
3098 * testsuite/27_io/istream_extractor_other-2.tst: New file.
3099 * testsuite/27_io/istream_extractor_other.cc: Add tests.
3100 * bits/istream.tcc: Fix operator>>(streambuf*).
3101
3102 * testsuite/23_containers/vector_ctor.cc (test01): Add.
3103
3104 * docs/index.html: Remove references to egcs.
3105 * docs/17_intro/DESIGN: Same.
3106 * docs/17_intro/contribute.html: Same.
3107 * docs/17_intro/RELEASE-NOTES: Ditto.
3108 * docs/17_intro/howto.html: Same here.
3109
3110 Russell Davidson <russell@ehess.cnrs-mrs.fr>
3111 * stl/bits/stl_vector.h (_M_insert_aux):
3112 * bits/locale_facets.tcc (_M_extract): Tweaks for preliminary
3113 decimal/floating point support.
3114 * bits/locale_facets.h: Change _M_extract prototype.
3115 * bits/char_traits.h (char_traits::to_int_type): Cast to unsigned.
3116 * bits/std_istream.h (istream::read(char_type, streamsize)): Fix.
3117
31181999-08-10 Michael Cook <cook@sightpath.com>
3119
3120 * bits/fstream.tcc: Fix for unused variable warning (-Wall).
3121 * bits/ios_base.h: ditto.
3122 * bits/istream.tcc: ditto.
3123 * bits/locale_facets.h: ditto.
3124 * bits/locale_facets.tcc: ditto.
3125 * bits/std_streambuf.h: ditto.
3126 * src/basic_file.cc: ditto.
3127 * src/locale.cc: ditto.
3128 * src/localename.cc: ditto.
3129
31301999-08-10 Kirat Singh <singhki@jany.gs.com>
3131
3132 * bits/std_iomanip.h: Inline.
3133
31341999-08-10 Alfred Minarik <a8601248@unet.univie.ac.at>
3135
3136 * bits/std_streambuf.h: Correct member initialization order.
3137 * src/ios.cc: Add definitions for ios_base data members.
3138
31391999-08-06 Phil Edwards <pedwards@ball.com>
3140
3141 * docs/index.html: Seventh snapshot updates. Minor tweaks.
3142 * docs/faq/index.html: Ditto. Removed bugs sections that have
3143 been fixed for a long time... Lots of "egcs" references still
3144 exist.
3145 * docs/faq/index.txt: Regenerated.
3146
31471999-08-05 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
3148 Andreas Amann <amann@physik.tu-berlin.de>
3149
3150 * testsuite/26_numerics/binary_closure.cc (main): new test.
3151
31521999-07-29 Andreas Amann <amann@physik.tu-berlin.de>
3153
3154 * bits/valarray_meta.h: (_BinClos<>::_Binclos): fix typo causing
3155 segmentation fault.
3156
31571999-08-04 Benjamin Kosnik <bkoz@decepticon.cygnus.com>
3158
3159 * docs/index.html (host): Put in testing status.
3160
31611999-08-03 Benjamin Kosnik <bkoz@cygnus.com>
3162
3163 * docs/index.html: Update for libstdc++-2.90.6 release.
3164 * docs/17_intro/RELEASE-NOTES (New): Update.
3165 * docs/17_intro/BUGS: Update.
3166 * bits/c++config.h.in (__GLIBCPP__): Bump version number.
3167 * README (file): Update.
3168
31691999-08-03 Benjamin Kosnik <bkoz@cygnus.com>
3170
3171 * src/Makefile.am (generated_headers): Remove bits/c++config.h as
3172 a target.
3173 ($(generated_headers)): Same.
3174 * src/gen-c++config.cc: Remove, rename to
3175 * bits/c++config.h.in: New file. Bump version number.
3176 * configure.in: Generate bits/c++config.h at configure time.
3177 * math/mathconf.h: include bits/c++config.h, not config.h.
3178
3179 * bits/std_cmath.h: Fix remaining link error for solaris shared
3180 builds. _GLIBCPP_HAS_BUILTIN_SINF has to be disabled for the time
3181 being, as on Solaris this silently calls sinf, which does not
3182 exist.
3183
3184 * src/complex.cc: More tweaks.
3185
31861999-08-03 Benjamin Kosnik <bkoz@cygnus.com>
3187
3188 * src/complex.cc: Same.
3189 * math/complex-stub.h: Change.
3190 * math/c_log10*.c: Change back to clog10*.c.
3191
3192 * configure.in (NEED_C_LOG10): Delete.
3193 * configure: Regenerate.
3194 * math/Makefile.am: Change.
3195
31961999-07-30 Benjamin Kosnik <bkoz@cygnus.com>
3197
3198 * math/Makefile.am: Fix, for real.
3199 * configure.in (use_builtin_sinf): Ok, make autoconf solution.
3200 * math/clog.c: Move to c_log.c.
3201 * math/clog*: Ditto.
3202 * math/c_log10l.c (c_log10l): Change function name.
3203 * math/c_log10f.c (c_log10f): Change function name.
3204 * math/c_log10.c (c_log10): Change function name.
3205
3206 * math/complex-stub.h: Change to c_log* variants.
3207 * src/complex.cc: And here.
3208
32091999-07-29 Benjamin Kosnik <bkoz@cygnus.com>
3210
3211 * testsuite/27_io/istream_extractor_other.cc: Correct last test.
3212 * bits/sstream.tcc (stringbuf::overflow): Don't update the input
3213 sequence, just the output sequence.
3214 * bits/std_sstream.h (stringbuf::str()): Only in stringbufs return
3215 the original string, all others use complicated heuristic.
3216
3217 * src/complex.cc: Assume c_log10.
3218 * math/Makefile.am (EXTRA_yes): Fix c_log/c_logf unresolved
3219 symbols in shared libraries by making c_log/c_log10 part of the
3220 "must cmpile" sources. This may not work on solaris, must check.
3221
32221999-07-29 Benjamin Kosnik <bkoz@cygnus.com>
3223
3224 * bits/istream.tcc (operator>>(streambuf*)): Re-do.
3225 * bits/std_istream.h: Fix char extractors.
3226 * testsuite/27_io/istream_extractor_char.cc: Change.
3227 * testsuite/27_io/istream_extractor_other.cc: Add tests.
3228
32291999-07-28 Benjamin Kosnik <bkoz@cygnus.com>
3230
3231 * bits/std_cctype.h: Fix for solaris2.6 builds.
3232
3233 * bits/istream.tcc: Fix, thanks Alfred.
3234 * bits/std_istream.h: Formatting changes.
3235
3236 * libio/Makefile.am (libio_la_SOURCES): Remove cleanup.c, so that
3237 _IO_cleanup will not be undefined.
3238 * libio/*: Regenerate.
3239
3240 * bits/basic_string.h: More namespace-safety stuff.
3241 * testsuite/27_io/istream_extractor_char.cc: Fix.
3242 * testsuite/27_io/istream_extractor_arith.cc: Fix.
3243 * testsuite/27_io/iostream_objects.cc: Fix.
3244 * testsuite/27_io/ios_ctor.cc: Fix.
3245 * testsuite/27_io/istream_manip.cc: Make namespace safe.
3246 * testsuite/27_io/istream_extractor_other.cc: New file.
3247
3248 * mkcheck (TESTS_FILE): Tweaks.
3249
32501999-07-27 Benjamin Kosnik <bkoz@cygnus.com>
3251
3252 * src/gen-c++config.cc: Note here, change version.
3253 * acconfig.h( _GLIBCPP_USE_CTYPE_ISBIT): New macro.
3254 * src/locale.cc: Used here.
3255 * configure.in (use_builtin_sinf): Check for _ISBit using autoconf.
3256
3257 * aclocal.m4: Regenerate by running `aclocal -I m4.`
3258
3259 * bits/istream.tcc: Fix.
3260 * bits/std_istream.h: More changes to extractors.
3261
3262 * testsuite/27_io/istream_extractor_char.cc: More.
3263 * testsuite/21_strings/inserters_extractors.cc (test01): Fix logic
3264 error in testsuite construction.
3265
3266 * bits/std_istream.h: Partially revert.
3267 * bits/std_ostream.h: Same.
3268 * bits/std_sstream.h: Revert.
3269
32701999-07-26 Benjamin Kosnik <bkoz@cygnus.com>
3271
3272 * bits/std_sstream.h: Change initialization.
3273 * bits/std_ostream.h: Make default ctor/assign/operator= private.
3274 * bits/std_istream.h: Same, also correct sentry args.
3275 * bits/istream.tcc: Add correct sentry args.
3276
3277 * testsuite/27_io/istream_extractor_char.cc: New file.
3278 * testsuite/27_io/istream_extractor_arith.cc: New file, old file,
3279 name changes making me dizzy.
3280
32811999-07-26 Ulrich Drepper <drepper@happy.cygnus.com>
3282 Benjamin Kosnik <bkoz@cygnus.com>
3283
3284 * aclocal.m4, config.guess, config.sub, ltconfig ltmain.sh: Update
3285 to libtool 1.3.3.
3286
32871999-07-26 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
3288
3289 * bits/std_complex.h: Tweak. Make the primary template class
3290 complex work with user-defined numerical types. Provide member
3291 definitions. Restructure.
3292 (class complex<float>): Uglify. Remove __value(). Rename __val
3293 to _M_value. Rename __complex_value_type to _ComplexT. Make it
3294 private. Remove dependency on __value(). Fix various explicit
3295 specialization syntax. Declare a some functions friend. Now the
3296 implementation is nearly comforming.
3297 (class complex<double>): Likewise.
3298 (class complex<long double>): Likewise.
3299
3300 * src/complex.cc: Tweak. Remove dependency on complex::__value().
3301 (sin, sinh, tan, than): Fix call to corresponding C9x function
3302 syntax.
3303
33041999-07-24 Benjamin Kosnik <bkoz@fidel.cygnus.com>
3305
3306 * bits/istream.tcc (ws): Fix error with failbit being set.
3307
3308 Disabled due to egcs/gcc-2_95 internal compiler errors.
3309 * src/Makefile.am (CXXFLAGS): Add -fsquangle -fhonor-std
3310 -fnew-exceptions. Compiling with namespaces enabled will now be
3311 the default.
3312 * mkcheck (CXX_FLAG): Same.
3313 * src/gen-c++config.cc (_GLIBCPP_USE_NAMESPACES): Yup. New macro.
3314 * bits/std_cctype.h: Not enough to just define in namespace std if
3315 ctype-isms are macros. Need to also define in namespace std:: if
3316 the C functions are just plain functions.
3317
3318 * src/gen-num-limits.cc: Fix spelling inconsistencies.
3319
33201999-07-24 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
3321
3322 * docs/18_support/howto.html: Start documentation. Need to keep
3323 track of the ongoing discussion in th LWG reflector.
3324
3325 * src/gen-num-limits.cc: Tweak.
3326 (class predicate): New class.
3327 (class value): Likewise.
3328 Make the whole machinery more flexible. Add comments.
3329
33301999-07-23 Benjamin Kosnik <bkoz@fidel.cygnus.com>
3331
3332 * bits/ios_base.h: Move state/exception functions into basic_ios.
3333 * bits/basic_ios.h: Same.
3334 * src/ios.cc: And here. Callbacks don't attempt to reset
3335 state now.
3336
3337 * bits/std_streambuf.h: Separate ios and streambuf locale data
3338 members and cached facets. Using this convention: _M_locale_buf for
3339 the streambuf-related classes, and _M_locale_ios for the ios
3340 hierarchy.
3341 * bits/fstream.tcc: And here.
3342 * bits/basic_ios.h: And here. Also, add cached ctype.
3343 * src/ios.cc: Ditto.
3344 * bits/ios_base.h: Ditto.
3345 * bits/std_istream.h: Use cached ctype facet.
3346 * docs/27_io/iostreams_hierarchy.pdf: Update for new data member
3347 arraignment.
3348
3349 * testsuite/27_io/ios_ctor.cc: New file.
3350 * src/ios.cc: Move _M_state init to basic_ios::init().
3351 * bits/basic_ios.h: To here.
3352
3353 Attempt for some consistency in naming for testsuite/27_io/*.cc.
3354 * testsuite/27_io/boolfmt.cc: Rename to stdios_fmtflags_manip.cc
3355 * testsuite/27_io/octfmt.cc: Rename to stdios_basefield_manip.cc
3356 * testsuite/27_io/istream_manip.cc: Rename to istringstream_manip.cc.
3357 * testsuite/27_io/ostream_manip.cc: Rename to ostringstream_manip.cc.
3358
33591999-07-22 Benjamin Kosnik <bkoz@fidel.cygnus.com>
3360
3361 * src/ios.cc: Tweak initializations of standard iostream
3362 objects to closely match the standard. Tie cin/wcin, set flags on
3363 cerr/wcerr
3364 * bits/char_traits.h: Change from size_t to int_type, as per
3365 standard. As per wide streams.
3366 * bits/basic_ios.h: Infect with __ctype_type, as a preparation
3367 for caching a bunch of ctype info. For instance, ctype_base::space
3368 info needs to be stored somewhere, somehow.
3369 * bits/std_istream.h: Also here.
3370 * bits/std_ostream.h: Ditto.
3371 * bits/std_istream.h (operator>>(istream, char): Aggh. Fixup.
3372 * testsuite/27_io/iostream_objects.cacc (test01): Oh yeah. Fix
3373 stream states.
3374
3375 * bits/istream.tcc (ws): Fix.
3376 * testsuite/27_io/istream_manip.cc: New file, test ws.
3377 * testsuite/27_io/ostream_manip.cc: New file, test endl, ends, flush.
3378
3379 * bits/basic_string.h: Provide a specialized member function for
3380 _S_find<char> using strchr.
3381 * src/string-inst.cc: Put specializations here.
3382 * bits/string.tcc: Small fix for find, remove typo.
3383 * testsuite/21_strings/find.cc (test01): Add tests to catch this
3384 find bug. . .
3385
33861999-07-20 Benjamin Kosnik <bkoz@decepticon.cygnus.com>
3387
3388 * bits/basic_ios.h: Put into basic_ios namespace.
3389 Tweak widen/narrow.
3390
33911999-07-19 Benjamin Kosnik <bkoz@decepticon.cygnus.com>
3392
3393 * bits/std_sstream.h (stringbuf::sync): Change to _M_really_sync,
3394 adjust _M_*_cur pointers inside the function, so callee doesn't
3395 have to adjust.
3396 * bits/sstream.tcc (stringbuf::overflow): Tweak.
3397
3398 * mkcheck: Tweak. Add execution time field, even though it is not
3399 implemented yet. Simplify pass/fail status notation.
3400
34011999-07-18 Mumit Khan <khan@xraylith.wisc.edu>
3402
3403 * configure.in: Check for float.h and underscored version of
3404 math functions.
3405 * acconfig.h: Add @BOTTOM@ section for handling underscored
3406 math functions.
3407 * configure: Regenerate.
3408 * config.h.in: Regenerate.
3409 * math/mathconf.h (float.h): Include conditionally.
3410 (M_PI): Define conditionally.
3411 (INFINITE_P): Define for Mingw.
3412 * bits/locale_facets.tcc: Workaround for compiler crash on
3413 ix86-*-mingw32.
3414 * bits/std_cwchar.h (bits/std_cstddef.h): Include.
3415 * src/locale.cc (bits/std_istream.h): Include.
3416 (bits/std_ostream.h): Likewise.
3417
34181999-07-18 Phil Edwards <pedwards@ball.com>
3419
3420 * docs/faq/index.html: Updated __black_count notes, fixed typos.
3421 * docs/faq/index.txt: Regenerated.
3422
34231999-07-15 Benjamin Kosnik <bkoz@decepticon.cygnus.com>
3424
3425 * testsuite/27_io/stringbuf.cc: Cccchanges, latent bugs.
3426
3427 * bits/sstream.tcc (stringbuf::overflow): Modify accounting of
3428 newly-allocated buffer.
3429 * bits/streambuf.tcc (streambuf::xsgetn): Aaaaaah. Fix final
3430 overflow condition bits.
3431
34321999-07-14 Benjamin Kosnik <bkoz@cygnus.com>
3433
3434 * bits/std_sstream.h (stringbuf::_M_init_stringbuf): Set
3435 _M_buf_size to initial _M_string.size(), even though for
3436 ostringstreams it is pretty pointless. It's necessary for
3437 istringstreams.
3438 (stringbuf::str()): Adjust.
3439 (stringbuf::str()): Adjust, call _M_init_stringbuf.
3440 * bits/streambuf.tcc (streambuf::xsgetn): Adjust return value for
3441 overflow's possible success.
3442 (streambuf::xsputn): Adjust.
3443
3444 * testsuite/27_io/filebuf.cc: Adjust for the xsgetn re-write from
3445 yesterday.
3446 * testsuite/27_io/stringbuf.cc: Tweak.
3447 * testsuite/21_strings/inserters_extractors.cc (test01): Remove
3448 notes to myself.
3449 * testsuite/23_containers/vector_cons.cc: Rename to be consistent
3450 with other constructor tests to. . .
3451 * testsuite/23_containers/vector_ctor.cc: New file.
3452
34531999-07-14 Alfred Minarik <a8601248@unet.univie.ac.at>
3454
3455 * testsuite/*: Changes to make the testsuit compilable with
3456 -fhonor-std. Contains direct qualification of library names with
3457 std::.
3458
34591999-07-13 Benjamin Kosnik <bkoz@decepticon.cygnus.com>
3460
3461 * bits/streambuf.tcc: Tweaks.
3462 (streambuf::xsputn): Optimize, fix for sstreams.
3463 (streambuf::xsgetn): Same.
3464 * bits/sstream.tcc (stringbuf::overflow): Adjust _M_buf_size
3465 correctly, handle overflow/reallocate conditions correctly.
3466 * bits/std_sstream.h: Fix typo.
3467 _M_init_stringbuf(): Fix _M_buf_size initialization.
3468 (stringbuf::str()): Construct return string if output has occurred.
3469
3470 * bits/basic_string.h: Fix typo from yesterday's patch.
3471
34721999-07-12 Ryszard Kabatek <kabatek@chemie.uni-halle.de>
3473
3474 * bits/string.tcc: _M_mutate - clear _M_state again.
3475 * bits/basic_string.h: In the three functions that return
3476 an iterator set _M_state to -1 before return.
3477 Also optimized two cases of operator+.
3478
34791999-07-12 Phil Edwards <pedwards@ball.com>
3480
3481 * docs/index.html: Expand egcs-1.1.2 notes/links.
3482 * docs/faq/index.html: And here. Add links to LWG issues-list.
3483 * docs/faq/index.txt: Regenerate. (lynx rocks)
3484 * docs/21_strings/howto.html: Fix notes on case conversion.
3485 * docs/21_strings/stringtok_h.txt: Goodly spelling...
3486 * docs/23_containers/howto.html: Stub for bitmasks.
3487 * docs/27_io/howto.html: Add section on buffering, stub binary.
3488
34891999-07-12 Nathan Myers <ncm@cantrip.org>
3490
3491 * stl/bits/stl_tree.h (__black_count): Optimize.
3492
34931999-07-09 Vadim Egorov <egorovv@1c.ru>
3494
3495 * src/basic_file.cc: Cleanup in __basic_file destructor.
3496
34971999-07-08 Benjamin Kosnik <bkoz@cygnus.com>
3498
3499 * bits/std_streambuf.h: Changes. . .
3500 * bits/streambuf.tcc: Merge xsputn from filebuf into xsputn in
3501 basic_streambuf, to be used for both filebufs and streambufs.
3502 * bits/std_fstream.h (_M_init_filebuf): New function.
3503 Take out specialized xsputn, put into basic_streambuf.
3504 * bits/fstream.tcc: Define, call from both ctors.
3505 * bits/std_sstream.h (_M_init_stringbuf): New function.
3506 * bits/sstream.tcc: Tweak.
3507
3508 * docs/27_io/iostreams_heirarchy.pdf: New file.
3509
3510 * docs/17_intro/CHECKLIST (basic_string<char>): Validation and
3511 acceptance. Wooo-hoo!
3512
3513 * bits/char_traits.h: Change int_type for char_traits general
3514 template, so that 21_strings/capacity.cc will compile.
3515 * testsuite/21_strings/capacity.cc: Add operators.
3516
3517 * bits/string.tcc (string::compare): Clean up, re-implement.
3518 * testsuite/21_strings/compare.cc: Tweak.
3519
3520 * bits/string.tcc (string:_M_mutate): Keep leaked value in
3521 _M_state, which means that whenever begin() or end() has been
3522 called, the string is unshareable, period. By doing this, insert
3523 and erase member functions that return iterators can remain
3524 footloose and fancy free.
3525 * testsuite/21_strings/invariants.cc: Update.
3526
3527 * bits/basic_string.h (string::append): Fix self-referential
3528 problems, ie when "this" is also an argument to a member function.
3529 * bits/string.tcc: Tweak, same.
3530 * testsuite/21_strings/append.cc: New file.
3531
35321999-07-07 Benjamin Kosnik <bkoz@cygnus.com>
3533
3534 * bits/char_traits.h: Tweaks.
3535 * bits/basic_string.h: Tweak.
3536 * bits/fstream.tcc: Remove warning for _M_buf_size assignment.
3537
35381999-07-06 Benjamin Kosnik <bkoz@cygnus.com>
3539
3540 * bits/std_streambuf.h: Absorb/acquire data members previously
3541 working in basic_filebuf.
3542 * bits/streambuf.tcc: Tweaks.
3543 * bits/fstream.tcc: Adjust.
3544 * bits/std_fstream.h: Move and rename the following functions:
3545 _M_set_ideterminate, _M_is_indeterminate, _M_set_determinate are
3546 now declared and defined in the base class, basic_streambuf. Oh
3547 fuck it, move data members _M_buf, and _M_buf_size into
3548 basic_streambuf as well.
3549
3550 * bits/ostream.tcc: Tweak.
3551 * bits/locale_facets.tcc: Fix typo in comments.
3552
3553 * testsuite/21_strings/inserters_extractors.cc (test01): Change
3554 state from good to not good, as eof() is set.
3555
35561999-07-05 Benjamin Kosnik <bkoz@cygnus.com>
3557
3558 * bits/char_traits.h (char_traits::compare). Fix.
3559
3560 * config.guess, config.sub: Update.
3561
35621999-07-02 Ryszard Kabatek <kabatek@chemie.uni-halle.de>
3563
3564 * bits/string.tcc: Check the __res_arg for a length error.
3565
35661999-07-01 Benjamin Kosnik <bkoz@nabi.net>
3567
3568 * bits/std_streambuf.h: Tweaks. Need to move _M_is_indeterminate
3569 and related functions into basic_streambuf, from basic_filebuf to
3570 take care of ostringstreams and empty strings. So that's groovy,
3571 or will be groovy.
3572 * bits/std_istream.h: Tweaks.
3573 * bits/istream.tcc: Implement ws, getline, operator>> for string.
3574 * bits/std_ostream.h: And here.
3575 * bits/ostream.tcc: Same.
3576 * src/misc-inst.cc: Add instantiations for ws.
3577
3578 * src/string-inst.cc: Add instantiations for inserters and
3579 extractors (operators << and >>, getline).
3580
3581 * testsuite/21_strings/inserters_extractors.cc: Amazingly enough,
3582 a testcase for getline and operators << and >>. Ostream tests are
3583 failing right now, but istream tests should work. . .
3584
3585 * bits/string.tcc: Change _S_max_size, as GNU malloc won't budge.
3586 * bits/std_sstream.h: Revert.
3587
3588 * testsuite/17_intro: header_[iosfwd, ios, iostream, iomanip,
3589 istream, ostream, streambuf, fstream, sstream].cc: New files.
3590
35911999-06-30 Ryszard Kabatek <kabatek@chemie.uni-halle.de>
3592
3593 * bits/std_sstream.h (stringbuf::sync): Don't use string::begin()
3594 and string::end().
3595
3596 * bits/basic_string.h (basic_string<>::_S_copy_chars): Add
3597 specializations for _CharT*, iterator and const_iterator.
3598 * src/string-inst.cc: Remove explicit instantiation, as
3599 now explicitly specialized.
3600
3601 * bits/basic_string.h: Add a size_type parameter to _M_clone with
3602 a default value set to 0.
3603 * bits/string.tcc: In _M_clone by the call of _S_create add the
3604 value of the new parameter to _M_length. In reserve check
3605 _M_state and use _M_clone instead of _M_mutate.
3606
36071999-06-30 Benjamin Kosnik <bkoz@happy.cygnus.com>
3608
3609 * bits/basic_string.h: Fix _S_max_size.
3610 * bits/string.tcc: Add def here.
3611 * testsuite/21_strings/insert.cc: Fix.
3612
3613 * bits/sbuf_iter.h: Remove detritus.
3614 * testsuite/24_iterators/istreambuf_iterator.cc: Add tests.
3615
3616 * src/locale-inst.cc: Elaborate iterator/locale instantiations
3617 to resolve alpha-osf4 build problems.
3618
36191999-06-29 Benjamin Kosnik <bkoz@happy.cygnus.com>
3620
3621 * bits/string.tcc: Fix signed/unsigned issues in compares.
3622 * stl/bits/stl_deque.h: And here.
3623 * stl/bits/stl_string_fwd.h: Remove __get_c_string.
3624
36251999-06-29 Ryszard Kabatek <kabatek@chemie.uni-halle.de>
3626
3627 * bits/string.tcc: New implementation and interface of _M_mutate.
3628 Adapt the change in all functions that call _M_mutate.
3629 * bits/basic_string.h: And here.
3630
36311999-06-29 Benjamin Kosnik <bkoz@happy.cygnus.com>
3632
3633 * testsuite/21_strings/capacity.cc (test01): Fix.
3634
36351999-06-29 Phil Edwards <pedwards@ball.com>
3636
3637 * mknumeric_limits: Exit script if gen-num-limits isn't built.
3638
36391999-06-29 Andreas Gruenbacher <agruenba@pent224.infosys.tuwien.ac.at>
3640
3641 * stl/bits/stl_vector.h: Fix.
3642 * testsuite/23_containers/vector_cons.cc: Add.
3643
36441999-06-29 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
3645
3646 * mknumeric_limits (LDFLAGS): fix.
3647
36481999-06-29 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
3649
3650 * mknumeric_limits (LDFLAGS): set it according to the system.
3651
3652 * math/mathconf.h (NAN): Check whether host is running under
3653 Cygwin and make the appropriate definition.
3654 * math/complex-stub.h (nan): protect declaration.
3655
36561999-06-28 Benjamin Kosnik <bkoz@haight.constant.com>
3657
3658 * bits/sbuf_iter.h: Rename internal data structure to prevent
3659 confusion between basic_ios and istreambuf_iterators internal
3660 basic_streambuf data member.
3661 * testsuite/24_iterators/istreambuf_iterator.cc: New file.
3662
3663 * bits/basic_string.h: Remove conditionals, add input_iterator
3664 version of S_construct again.
3665 * bits/string.tcc: Same.
3666 * src/string-inst.cc: And add explicit instantiation here.
3667
3668 * src/gen-c++config.cc (_GNU_SOURCE): Take out both _GNU_SOURCE
3669 and __USE_GNU macro defines, as single __USE_GNU use leading to
3670 confusion on glibc2.1 systems (ie, RedHat 6.0).
3671
3672 * src/Makefile.am (headers): Add std_utility to installed headers.
3673
36741999-06-25 John Potter <jpotter@eagle.lhup.edu>
3675
3676 * stl/bits/stl_tree.h (insert_unique): Revert, just fix insert_equal.
3677
36781999-06-25 Gilles Zunino <Gilles.Zunino@hei.fr>
3679
3680 * mknumeric_limits (LDFLAGS): Swap -lc and -lgcc.
3681
36821999-06-24 Benjamin Kosnik <bkoz@tintin.cygnus.com>
3683
3684 * src/gen-c++config.cc (_GLIBCPP_*): Change all
3685 macros to include _GLIBCPP as a distinct namespace.
3686 * bits/*: And here.
3687 * src/*: And here.
3688
3689 * stl/bits/std_stdexcept.h: Forward-declare __Named_exception ctor.
3690 * bits/basic_string.h: Remove __get_c_string.
3691 * src/stdexcept.cc: Define ctor here.
3692 * bits/ios_base.h: And fix ios_base::failure as well.
3693 * src/ios.cc: Define here.
3694
3695 * bits/std_streambuf.h: Add a private copy ctor and assignment
3696 operator wrapped in _G_RESOLVE_LIB_DEFECTS.
3697 * bits/ios_base.h: And here too.
3698
3699 * bits/basic_string.h: Tweak.
3700 * testsuite/21_strings/nonmember.cc: Add operator+ tests.
3701
3702 * src/valarray.cc: Rename to. . .
3703 * src/valarray-inst.cc: This.
3704 * src/Makefile.am (sources): Change here.
3705 * src/Makefile.in: Regenerated.
3706
37071999-06-24 Vadim Egorov <egorovv@1c.ru>
3708
3709 * bits/string.tcc(basic_string<>::_Rep::_S_create): Fixed
3710 allocated size
3711
37121999-06-24 Benjamin Kosnik <bkoz@tintin.cygnus.com>
3713 Tom Tromey <tromey@cygnus.com>
3714
3715 * configure.in (use_glibc2): Eek, correct for non-glibc systems.
3716 Use AM_CONDITIONAL to get us out of this jam. .
3717 * libio/Makefile.am: Same.
3718 * */Makefile: Regenerated.
3719
37201999-06-24 Benjamin Kosnik <bkoz@tintin.cygnus.com>
3721 John Potter <jpotter@eagle.lhup.edu>
3722
3723 * stl/bits/stl_tree.h (insert_equal): Fix.
3724 * testsuite/23_containers/multiset.cc: New file.
3725
37261999-06-23 Benjamin Kosnik <bkoz@cygnus.com>
3727
3728 * configure.in (test for glibc2): Correct AC_TRY_COMPILE so that
3729 this works correctly on glibc-2 systems. This should allow
3730 simplified linking on these systems, and successful linking on Red
3731 Hat 6.0 systems.
3732 * configure, Makefile: Regenerate.
3733
3734 * bits/std_cwctype.h: Add missing 'w' to _S_iswpunct_helper name.
3735
3736 * testsuite/ext: New directory.
3737 * testsuite/ext/headers.cc: New file.
3738
37391999-06-23 Vadim Egorov <egorovv@1c.ru>
3740
3741 * stl/ext/hash_set: include missing headers
3742 * stl/ext/hash_map: Same
3743 * stl/ext/slist: Same
3744
37451999-06-17 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
3746
3747 * bits/std_cmath.h: comment out modf. Kills build on hpux10.20
3748
37491999-06-15 Benjamin Kosnik <bkoz@cygnus.com>
3750
3751 * src/Makefile.am (sources): Regenerate.
3752 * mkcheck: Add TESTS_FILE as a way of controlling what testcases
3753 are run.
3754
37551999-06-14 Benjamin Kosnik <bkoz@cygnus.com>
3756
3757 * src/string-inst.cc: Change _S_construct signature, to
3758 track requested allocation size versus valid input iterator range.
3759 * bits/basic_string.h: Here too.
3760 * bits/string.tcc: And here.
3761
37621999-06-12 Benjamin Kosnik <bkoz@cygnus.com>
3763
3764 * mkcheck (LOG_FILE): Correctly append errors.
3765
3766 * stl/bits/stl_iterator.h: Revert previous, delirious, change.
3767
3768 * bits/basic_string.h: Change _Rep::_M_data to _Rep::_M_refdata,
3769 to clarify differences between basic_string::_M_data() calls and
3770 _Rep::_M_data() calls.
3771 * bits/std_string.h: Fix.
3772 Put in check for out_of_range in substr.
3773 * bits/string.tcc: Fix for _S_find.
3774
3775 * testsuite/21_strings/compare.cc: Add tests.
3776 * testsuite/21_strings/find.cc: New file.
3777 * testsuite/21_strings/substr: New file.
3778 * testsuite/21_strings/replace.cc: New file.
3779
37801999-06-11 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
3781
3782 * bits/valarray_array.h: __restrict__ify pointers.
3783
3784 * bits/std_valarray.h: Tweak.
3785 (valarray<T>::cshift, valarray<T>::shift): use __builtin_alloca.
3786
3787 * bits/gslice_array.h: Tweak. Reflect changes in bits/gslice.h
3788
3789 * bits/gslice.h: Tweak.
3790 (class gslice::_Indexer): new class.
3791 (gslice::gslice(const gslice&)): implement copy-ctor to support
3792 ref-counted index.
3793 (gslice::operator=(const gslice&)): support ref-counted index.
3794 (gslice::_M_convert_to_index): delete.
3795
3796 * src/valarray.cc: New file.
3797 (__gslice_to_index): turn a gslice into a valarray<size_t>
3798 (ctor gslice::_Indexer::_Indexer): implement.
3799
3800 * src/Makefile.am (sources): add valarray.cc
3801 * src/Makefile.in: regenerate.
3802
38031999-06-08 Benjamin Kosnik <bkoz@cygnus.com>
3804
3805 * stl/bits/stl_iterator.h (__normal_iterator::const_iterator
3806 ctor): Put in a const_cast.
3807
3808 * testsuite/21_strings/invariants.cc: New file.
3809
3810 * testsuite/21_strings/insert.cc: Add exception handling bits.
3811 * testsuite/21_strings/ctor_copy_dtor.cc: Same.
3812
3813 * src/wstring-inst.cc: Add c++config.h include.
3814
3815 * bits/basic_string.h: Fix const operator[] for size == pos.
3816 Add _M_leak for rbegin, non-const.
3817 Add _M_leak for rend, non-const.
3818 Make member function at standards conformant.
3819 Add _S_terminal to _Rep for operator[] const, add this into
3820 c_str() as well.
3821 * bits/string.tcc: Add static member definition here,
3822 temporarily.
3823
3824 * testsuite/21_strings/element_access.cc: Add tests.
3825
38261999-06-08 Vadim Egorov <egorovv@1c.ru>
3827
3828 * bits/fstream.tcc (_M_really_overflow): Fixed size of
3829 conversion buffer.
3830
38311999-06-08 Phil Edwards <pedwards@ball.com>
3832
3833 * bits/fstream.tcc (basic_filebuf::xsputn): Fix off-by-one count
3834 caused when __testinit is true.
3835 * bits/ostream.tcc (basic_ostream::op<<(streambuf*)): Write buffer
3836 using rdbuf()->sputn rather than _M_fnumput->put.
3837
38381999-06-08 Benjamin Kosnik <bkoz@tintin.cygnus.com>
3839
3840 * testsuite/23_containers/bitset_ctor.cc: New file.
3841 * stl/bits/std_bitset.h (__BITSET_WORDS): Fix integration bug.
3842
38431999-06-08 Phil Edwards <pedwards@ball.com>
3844
3845 * bits/fstream.tcc (basic_filebuf::underflow): Fix, rename local vars.
3846
38471999-06-07 Benjamin Kosnik <bkoz@tintin.cygnus.com>
3848
3849 * testsuite/21_strings/element_access.cc: Finish off these tests.
3850 * testsuite/21_strings/insert.cc (test01): Uncomment.
3851 * testsuite/21_strings/ctor_copy_dtor.cc (test01): Finish off ctors.
3852 * bits/basic_string.h: Tweak, okay, fix for real this time.
3853 * bits/string.tcc: Same.
3854 * bits/char_traits.h: Tweak.
3855
38561999-06-07 Benjamin Kosnik <bkoz@tintin.cygnus.com>
3857
3858 * bits/std_cmath.h: Example of how to use the generated macro.
3859 * acconfig.h: Add macro for sinf here.
3860 * configure.in (LIBS): Add test for builtin math function sinf.
3861 * configure: Regenerated.
3862
3863 * bits/basic_string.h: Fix _S_max_size.
3864
38651999-06-06 Benjamin Kosnik <bkoz@tintin.cygnus.com>
3866
3867 * bits/basic_string.h: Fixes for out-of-memory segv for large strings.
3868 Remove _S_construct signature for forward_iterator_tag and
3869 input_iterator_tag.
3870 Clean _M_fold.
3871 * src/string-inst.cc: Same, tweaks.
3872 * bits/string.tcc: Same, tweaks.
3873
3874 * testsuite/21_strings/ctor_copy_dtor.cc: Add/clarify tests.
3875 * mkcheck (LOG_FILE): Fix filebuf-[2,3].tst checks.
3876 * mknumeric_limits (LD_FLAGS): Add -nodefaultlibs -lc -lgcc as per
3877 Gaby.
3878
3879 * src/locale.cc: Final separation for char/wchar_t bits.
3880
38811999-06-05 Phil Edwards <pedwards@ball.com>
3882
3883 * docs/index.html: Added link to book upon request'n'agreement.
3884 * docs/23_containers/wrappers_h.txt: Added.
3885 * docs/{23_containers,27_io}/howto.html: Added sections.
3886
3887 * bits/std_fstream.h: Tweak.
3888
38891999-06-05 Benjamin Kosnik <bkoz@tintin.cygnus.com>
3890
3891 * src/ios.cc: Same here.
3892 * bits/std_iosfwd.h: More wchar_t defines.
3893
3894 * bits/basic_string.h: Tweaks.
3895 * bits/string.tcc: Tweak. Fix _S_construct to check for max_size
3896 when doing error checking, as per LWG defect #83.
3897
3898 * src/gen-c++config.cc: Fix comment.
3899
3900 * testsuite/21_strings/ctor_copy_dtor.cc: New file, checks ctors,
3901 assignments, dtors.
3902 * testsuite/21_strings/element_access.cc: New file, checks for
3903 operator[], at(...).
3904 * testsuite/21_strings/insert.cc: New file, tests string::insert.
3905 * testsuite/21_strings/char_traits.cc: New file, tests
3906 for char_traits<char>.
3907
3908 * bits/utility.h: Remove, again.
3909 * src/Makefile.am (std_headers): Remove utility.h.
3910 * src/Makefile.in (std_headers): Regenerate.
3911
3912 Alfred Minarik <a8601248@unet.univie.ac.at>
3913 * bits/basic_string.h: Move __out_of_range and __length_error into
3914 namespace std.
3915
39161999-06-05 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
3917
3918 * testsuite/26_numerics/modf_float.cc: New file.
3919
3920 * bits/std_cmath.h (modf(float, float*)): Fix signature. Correct
3921 typo: use ::modff, not ::modf.
3922
39231999-06-03 Vadim Egorov <egorovv@1c.ru>
3924
3925 * bits/string.tcc (basic_string::_M_mutate): Fixed memory
3926 allocation error
3927 * testsuite/21_strings/capacity.cc (test01): Test.
3928
39291999-06-03 Phil Edwards <pedwards@ball.com>
3930
3931 * bits/fstream.tcc: Re-order inits to stop warnings. Comment/move
3932 unused variables to within #if 0 blocks to do the same.
3933 * bits/std_fstream.h: Fix typos (one prevents compilation).
3934
39351999-06-03 Benjamin Kosnik <bkoz@pacifica.cygnus.com>
3936
3937 * src/wstring-inst.cc: Fix.
3938
39391999-06-02 Benjamin Kosnik <bkoz@madcow.cygnus.com>
3940
3941 * bits/char_traits.h: Add _G_USE_WCHAR_T macro guards.
3942 * stl/bits/stl_string_fwd.h: Same.
3943 * bits/locale_facets.h: Same.
3944 * bits/locale_facets.tcc: Same.
3945 * src/wstring-inst.cc: And here.
3946
3947 * src/gen-c++config.cc: Comment _G_USE_WCHAR_T. Leading to
3948 problems on HPUX 10.20.
3949 * your-build-directory-here/bits/c++config.h: Just kidding, do it
3950 here as a temporary hack till the compiler/host problems get
3951 worked out.
3952
3953 * bits/locale_facets.tcc (num_get::do_get): Change from ifdef
3954 HAVE_STRTOLD to HAVE_STRTOLD && !(__hpux). Apparently, problems
3955 converting "long double" to struct long_double. Probably should be
3956 done with one macro (HAVE_STRTOLD) at configure time.
3957
3958 * bits/std_cmath.h: Comment out pow(double, int) defintion as
3959 gives re-declaration under hpux10.20. Revert previous change, as
3960 kills linux/x86, solaris 2.7, hpux builds. These should be done
3961 using autoconf, see std_cctype.h and the solutions started in
3962 configure.in (see config.h for the generated file.)
3963
3964 * mknumeric_limits (LDFLAGS): Remove '-nodefaultlibs -lc', as
3965 -nodefaultlibs prevents linking under HPUX 10.20 as __main is not
3966 defined.
3967
3968 * docs/index.html: Add some useful links.
3969 * docs/17_intro/contribute.html: Fix broken links.
3970
39711999-06-02 Benjamin Kosnik <bkoz@rhino.cygnus.com>
3972
3973 * mkcheck (LOG_FILE): Add !/bin/bash instead of cygnus-style
3974 paths. The rest of the world should be able to run this script
3975 now.
3976
3977 * src/Makefile.am ($(generated_headers)): Remove comment.
3978 * Makefile*: Regenerate.
3979
3980 * bits/std_locale.h: Remove detritus.
3981 * bits/localefwd.h: Add <cctype> include to undefine the isspace
3982 macro.
3983
39841999-06-01 Benjamin Kosnik <bkoz@tintin.cygnus.com>
3985
3986 * src/gen-c++config.cc: New file. Making c++config.h at configure
3987 time by catting this file (nee bits/config.h) with the build
3988 directories config.h. This is not a complete or perfect solution
3989 but is better than what was in place previously.
3990 * bits/c++config.h: Rename/move to above.
3991 * src/Makefile.am (headers): Remove c++config.h.
3992 (myinstallheaders). Add.
3993 * Makefile*: Regenerated.
3994
3995 * bits/std_cwchar.h: Add include of c++config.h for HAVE_*
3996 definitions, so that wmemcmp, wcslen, wmemchr, etc are properly
3997 declared only if not present in the host's wchar.h.
3998
3999 * bits/locale_facets.tcc (std): Change _G_USE_STRTO* to HAVE_STRTO*.
4000
4001 * bits/std_cmath.h: Define out, for the moment. Linux has no
4002 __buitin_fsqrtl? Probably need some kind of configure trickery
4003 here as well.
4004
4005 * src/Makefile.*: Regenerate.
4006 * bits/c++config.h: Add config.h include.
4007
4008 * bits/std_cwchar.h: Remove remaining #error guard.
4009
4010 * acconfig.h: Add bits for HAVE_LC_MESSAGES.
4011
4012 * configure.in (LIBS): Replace previous effort for mbstate_t and
4013 strtold/strtof with this implementation.
4014
40151999 06-01 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
4016
4017 * bits/std_cmath.h: Tweak. Add more functions. Use __builtin_xxx
4018 whenever possible.
4019
40201999-05-28 Benjamin Kosnik <bkoz@cygnus.com>
4021
4022 * bits/locale_facets.tcc (std): Eek: this left in. Autoconf bits
4023 for determining mbstate_t differences across various hosts not
4024 finished.
4025
40261999-05-26 Benjamin Kosnik <bkoz@nabi.net>
4027
4028 * bits/locale_facets.tcc: Change to ifdef.
4029
4030 * bits/std_sstream.h (stringbuf::setbuf): Remove dynamic_cast.
4031 * bits/std_fstream.h (filebuf::setbuf): Same.
4032
4033 * bits/std_istream.h: Add ws declaration.
4034 * bits/istream.tcc: Stub out definition.
4035
4036 * docs/index.html: Fix broken link for design.txt.
4037
4038 * configure.in: Test for mbstate_t. If wchar.h doesn't have it,
4039 then set _G_NEED_MBSTATE_T.
4040 * configure: Regenerate.
4041 * bits/c++config.h: Move mbstate_t define.
4042 * bits/std_cwchar.h: To here.
4043
40441999-05-25 Ryszard Kabatek <kabatek@chemie.uni-halle.de>
4045
4046 * bits/std_sstream.h:
4047 basic_stringbuf<>::basic_stringbuf: fix.
4048 basic_stringbuf<>::setbuf:
4049 remove the temporary __string_type object,
4050 remove the unnecessary dynymic_cast in the return value,
4051 change the type of the returned value from __streambuf_type*
4052 to basic_stringbuf<_CharT, _Traits, _Alloc>*.
4053
40541999-05-25 Phil Edwards <pedwards@ball.com>
4055
4056 * bits/std_streambuf.h (streambuf::setbuf): Always return streambuf*.
4057
40581999-04-25 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
4059
4060 * bits/std_cmath.h: Tweak. Add float versions of the math functions
4061 in <math.h>. <cmath> still incomplete and incorrekt.
4062
40631999-05-24 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
4064
4065 * mknumeric_limits (LDFLAGS): set appropriate link flags.
4066
40671999-05-23 Phil Edwards <pedwards@ball.com>
4068
4069 * docs/17_intro/howto.html: Added links to text docs,
4070 e.g., BUGS.
4071 * docs/21_strings/howto.html: Updated sections and links.
4072 * docs/21_strings/{gotw29a.txt,stringtok_h.txt}: Added.
4073 * docs/faq/index.html: Updated what-works for sixth
4074 snapshot. Also a number of "internal" links have been
4075 fixed, now that the web pages are the docs directory...
4076 * docs/faq/index.txt: Regenerated.
4077
40781999-05-21 Benjamin Kosnik <bkoz@tintin.cygnus.com>
4079
4080 * bits/basic_string.h: Add Nathan's documentation on the string class.
4081
4082 * testsuite/27_io/ios_members_static.cc: New file, for testing
4083 ios_base::sync_with_stdio.
4084
40851999-05-21 Benjamin Kosnik <bkoz@tintin.cygnus.com>
4086
4087 * bits/std_locale.h: Simplify includes.
4088 * bits/loccore.h: Delete.
4089 * bits/localefwd.h: Renamed, trimmed.
4090 * bits/locfacets.h: Delete.
4091 * bits/locale_facets.h: Rename, expanded.
4092 * bits/loccore.tcc: Deleted.
4093 * bits/locfacets.tcc: Deleted.
4094 * bits/locale_facets.tcc: Resultant merge.
4095 * bits/std_fstream.h: Modify include.
4096 * bits/ostream.tcc: Same.
4097 * bits/istream.tcc: Same.
4098
4099 * src/locale-inst.cc: And here.
4100 * src/locale.cc: Ditto.
4101 * src/Makefile.am: Updated.
4102 * src/Makefile.in: Rengenerated.
4103
4104 * bits/std_istream.h: Move istream::sentry ctor definition.
4105 * bits/istream.tcc: Move istream::sentry ctor here.
4106 Add more detailed locale include here for ctype member functions.
4107 * bits/ostream.tcc (std): And here.
4108
4109 * bits/sbuf_iter.h: Include std_streambuf.h
4110
4111 * bits/locfacets.h: Start separating this into a localeimp.h file.
4112 * bits/loccore.h: Start separating this into a localefwd.h file.
4113 Add std_climits for CHAR_BIT.
4114
4115 * bits/ios_base.h (ios_base::sync_with_stdio): Stub in.
4116
4117 * bits/char_traits.h: Tweak.
4118
4119 * bits/ios_base.h: Remove INT_MAX, use 1<<16.
4120
4121 * bits/std_ostream.h: Remove c++config.h include.
4122 * bits/std_istream.h: Same.
4123 * bits/std_streambuf.h: Same.
4124 * bits/std_fstream.h: Same.
4125 * bits/std_sstream.h: And here.
4126
4127 * bits/std_iosfwd.h: Add _G_RESOLVE_LIB_DEFECTS here for streampos.
4128 * bits/char_traits.h: Add include of std_cwchar.h for mbstate_t.
4129 * bits/fpos.h: Tweak, format.
4130
4131 * std/ciso646: New file.
4132 * bits/std_ciso646.h: New file.
4133 * src/Makefile.am (std_headers): Add ciso646.
4134 (headers): Add bits/std_ciso646.h.
4135 * src/Makefile.in: Regenerate.
4136 * testsuite/17_intro/header_ciso646.cc: New file, disable
4137 equivalance tests.
4138
4139 * bits/fpos.h: Remove libio.h include.
4140 * bits/basic_file.h: And here.
4141 * bits/std_ios.h: Put here.
4142
4143 * src/ios.cc: Simplify includes, tweak.
4144 * bits/std_ios.h: Simplify include order.
4145 * bits/ios_base.h: Modify ios_base::failure.
4146
4147 * stl/bits/std_numeric.h: Change include from stl_iterator to
4148 std_iterator.
4149
41501999-05-19 Benjamin Kosnik <bkoz@tintin.cygnus.com>
4151
4152 * std/iostream: Remove static member __ioint.
4153 * bits/std_iostream.h: Put here.
4154
4155 * stl/bits/std_numeric.h: Remove unneccessary std_iostream.h include.
4156 * stl/bits/stl_algobase.h: Same.
4157 * testsuite/27_io/iostream_objects.cc: Regression tests.
4158 * testsuite/27_io/hello.cc: Remove, subset of above.
4159
41601999-05-19 Phil Edwards <pedwards@ball.com>
4161
4162 * docs/index.html: Tweak, update.
4163
41641999-05-18 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
4165
4166 * docs/17_intro/RELEASE-NOTES: remove outdated
4167 documentation about numeric_limits. Correct CXXINCLUDE setting
4168 documentation.
4169
41701999-05-18 Phil Edwards <pedwards@ball.com>
4171
4172 * docs/{17_intro,18_support,19_diagnostics,20_util,21_strings,
4173 22_locale,23_containers,24_iterators,25_algorithms,26_numerics,
4174 27_io}/howto.html: Created, with some initial entries.
4175 * docs/faq/index.html: Fixed some links.
4176 * docs/faq/index.txt: Regenerated.
4177
41781999-05-18 Benjamin Kosnik <bkoz@tintin.cygnus.com>
4179
4180 * bits/c++config.h (__GLIBCPP__): Set version to 19990518.
4181
4182 * docs/17_intro/RELEASE-NOTES: Update.
4183 * docs/index.html: Correct link to mailing list help page, update News.
4184 * docs/faq/index.html: Change fifth to sixth for snapshot.
4185
4186 * src/Makefile.am (myinstallheaders): Bring over Gaby's changes to
4187 install $(top_builddir)/bits/std_limits.h into
4188 $(myincludepfx)/bits. This was mistakenly omitted from yesterday's
4189 Makefile.am changes.
4190 * *Makefile*: Regenerate using automake.
4191
4192 * mkcheck (LOG_FILE): Fix filebuf directory oddness.
4193 * testsuite/27_io/filebuf.cc: Same.
4194
41951999-05-18 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
4196
4197 * docs/17_intro/CHECKLIST: update.
4198 * docs/17_intro/TODO: update.
4199
42001999-05-17 Phil Edwards <pedwards@ball.com>
4201
4202 * docs/{17_intro,18_support,19_diagnostics,20_util,21_strings,
4203 22_locale,23_containers,24_iterators,25_algorithms,26_numerics,
4204 27_io}/howto.html: Created, with some initial entries.
4205 * docs/faq/index.html: Fixed some links.
4206 * docs/faq/index.txt: Regenerated.
4207
42081999-05-17 Benjamin Kosnik <bkoz@unhappy.cygnus.com>
4209
4210 * src/Makefile.am (myinstallheaders): Missed removing missing.h.
4211 * Makefile.in*: Regenerate.
4212
42131999-05-17 Benjamin Kosnik <bkoz@happy.cygnus.com>
4214
4215 * bits/std_streambuf.h: Same.
4216
4217 * bits/loccore.h (_Bad_use_facet): Remove bits warned about.
4218 * bits/locfacets.h (std): Same.
4219 * bits/sstream.tcc: Same.
4220 * testsuite/27_io/stringstream.cc: Tweak.
4221
4222 * testsuite/27_io/filebuf.cc: Adjust.
4223 * testsuite/21_strings/capacity.cc (test01): Add more
4224 string::reserve tests.
4225
4226 * bits/c++config.h: Remove broken CCTYPE.
4227 * bits/std_cctype.h: Tweak, remove de-macroization, enable
4228 sequestered topper implementation.
4229 * bits/std_cwctype.h: Same.
4230
4231 * bits/missing.h: Remove.
4232 * bits/std_locale.h: Remove missing.h include.
4233
4234 * stl/bits/std_bitset.h (bitset::bitset(string): Tweak to compile.
4235
4236 * src/Makefile.am (headers): Add bits/std_cwctype.h.
4237 INCLUDES: Add top_builddir.
4238 * src/Makefile.in: Regenerate.
4239
4240 * Makefile.am: Add check and check-install as new targets.
4241 * testsuite/make_check_libfree++: Move to. . .
4242 * mkcheck: Here.
4243 * configure.in: Tweak versions.
4244 * mknumeric_limits: Set paths correctly.
4245
42461999-05-17 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
4247
4248 * src/Makefile.in (myinstallheaders): add rule to install
4249 std_limits.h.
4250
4251 * bits/slice.h (class slice): don't const-qualify data members
4252 since the copy and assignment operator is implicitly used. The
4253 valarray specification is definitively a bad one.
4254
4255 * Makefile.in (generate-limits-sources): fix typo.
4256
4257 * docs/text/TODO: update.
4258 * docs/text/CHECKLIST: update.
4259
4260 * bits/gslice.h (gslice): fix bugglet.
4261 (gslice::gslice): set _M_index_size to 0 whenever given lengths
4262 (lj) of size zero.
4263
4264 * src/Makefile.am (libstdc___la_SOURCES): add gen-num-limits.
4265 * src/Makefile.in (libstdc___la_SOURCES): keep in sync.
4266 [Note: **/Makefile.in should be generated from the corresponding
4267 Makefile.am. The current situation is a litte chaotic. ]
4268
42691999-05-16 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
4270
4271 * mknumeric_limits: tweak.
4272
4273 * Makefile.in (all): add target generate-limits-sources.
4274 (generate-limits-sources): make a directory bits/ in top_builddir
4275 where the generated std_limits.h is put; generate limitsMEMBERs.cc
4276 directly under $(top_builddir)/src. Remains to put the appropriate
4277 rule for installing std_limits.h.
4278
4279 * src/Makefile.in (headers): remove bits/std_limits.h to this list.
4280 (INCLUDES): add -I$(top_builddir) for bits/std_limits.h which is
4281 now generated at build-time in the build directory
4282 (libstdc___la_SOURCES): remove limitsMEMBERS.cc form this list
4283 * src/Makefile.am: reflect changes in src/Makefile.in
4284
42851999-05-12 Phil Edwards <pedwards@ball.com>
4286
4287 * docs/faq/index.html: Add more entries (5.4,5.5), finish
4288 all but one empty entry. Add links for HOWTOs, but no files yet.
4289 (Corrected HOWTO links are for bkoz's new scheme.)
4290 * docs/faq/index.txt: Regenerated.
4291
42921999-05-12 Benjamin Kosnik <bkoz@happy.cygnus.com>
4293
4294 * testsuite/17_intro/headers.cc: New file.
4295 * stl/bits/std_queue.h: Change stl_bvector.h include path.
4296 * bits/std_cwctype.h: New file.
4297
4298 * testsuite/27_io/filebuf.cc: Need to tweak directory structure.
4299
43001999-05-11 Benjamin Kosnik <bkoz@loony.cygnus.com>
4301
4302 * stl/bits/stl_config.h (__USE_MALLOC): Change underlying allocator.
4303 Check __USE_MALLOC before defining specializations containing
4304 __default_alloc_template.
4305 * src/stl-inst.cc: Here too.
4306
4307 * bits/basic_string.h: Change.
4308
4309 * testsuite/make_check_libfree++: More tweaks.
4310 * testsuite/21/capacity.cc: New file.
4311
4312 * src/string.cc: Rename to be consistent with other inst files.
4313 Rename to string-inst.cc.
4314 * src/string*.cc: Change include.
4315 * src/wstring.cc: Rename to wstring-inst.cc.
4316 * src/wstring*.cc: Ditto.
4317 * src/Makefile.in: Also here.
4318 * src/Makefile.am: Ditto.
4319
4320 * src/traits.cc: Remove.
4321 * src/wtraits.cc: Same.
4322
4323 Try a new way of organizing documentation, one with synchronicity
4324 between testsuites and docs subdirectories, and see who yelps.
4325 * docs/html: Remove, use chapter and subject specific directories
4326 instead of forcing things immediately into format of
4327 documentation.
4328 * docs/text: Same.
4329 * docs/image: Same.
4330 * docs/faq/text, docs/faq/html: Remove, put in the docs/faq
4331 directory and sort by filename and extension.
4332 * docs/17_intro, 18_support, 19_diagnostics, 20_util, 21_strings,
4333 22_locale, 23_containers, 24_iterators, 25_algorithms,
4334 26_numerics, 27_io: Add.
4335 * docs/17_intro/*: Populate with all the text files. . .
4336 * docs/index.html: Construct.
4337
4338 * testsuite/*: Update with same names as the docs subdir.
4339 * testsuite/results: Where to stash conformance results for the
4340 different snapshots, so that progress/size/speed issues can be
4341 tracked over time.
4342
43431999-05-10 Benjamin Kosnik <bkoz@loony.cygnus.com>
4344
4345 * src/string.cc: Add _S_copy_chars instantiation, as well as
4346 string::binary operators !=, ==, etc.
4347
4348 * src/Makefile.am (CXXFLAGS): Remove -fvtable-thunks.
4349 * src/Makefile.in (CXXFLAGS): Same here.
4350 * testsuite/make_check_libfree++ (CXX_FLAG): And here.
4351
43521999-05-07 Benjamin Kosnik <bkoz@cygnus.com>
4353
4354 * src/string.cc: Add missing member functions to instantiation list.
4355
43561999-05-07 Benjamin Kosnik <bkoz@cygnus.com>
4357
4358 * src/misc-inst.cc: Remove unused string instantiations.
4359
4360 * bits/string.tcc: Tweak, fix.
4361 * bits/basic_string.h: Format. Fix reported error with c_str().
4362
4363 * testsuite/make_check_libfree++: Tweak for shared builds.
4364 * testsuite/21/operations.cc: New file for testing c_str() etc.
4365
43661999-05-06 Benjamin Kosnik <bkoz@cygnus.com>
4367 Ryszard Kabatek <kabatek@chemie.uni-halle.de>
4368
4369 * stl/bits/stl_vector.h: Fix the code of vector<> for usage with
4370 an iterator class. Delineate pointer versus iterator differences
4371 in implementation.
4372 * 23/vector_capacity.cc: New file, tests for above.
4373
43741999-05-06 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
4375
4376 * mknumeric_limits: Fix typo. 'unsigned lont' should read
4377 'unsigned long'.
4378 * src/Makefile.am (libstdc___la_SOURCES): add limitsMEMBERS.cc,
4379 generated by mknumeric_limits to the list. Now std_limits.h is
4380 basically working.
4381 * src/Makefile.in (generate-numeric-limits): new target to handle
4382 automatic generation of bits/std_limits.h and src/limitsMEMBERS.cc.
4383 (all): add target generate-numeric-limits.
4384 (libstdc___la_OBJECTS): add limitsMEMBERS.lo
4385 (libstdc___la_SOURCES): add limitsMEMBERS.cc
4386
43871999-05-05 Benjamin Kosnik <bkoz@cygnus.com>
4388
4389 Irix build issues.
4390 * bits/c++config.h (_G_USE_CTYPE_ISBIT): Defines new macro for
4391 mask values in ctype_base. Move hacks for _ISBit to locfacets.h.
4392 * bits/locfacts.h: Here.
4393
43941999-05-05 Benjamin Kosnik <bkoz@cygnus.com>
4395 Ulrich Drepper <drepper@cygnus.com>
4396
4397 Solaris build issues.
4398 * bits/c++config.h: Define new macros, _G_USE_STRTOF and
4399 _G_USE_STRTOLD.
4400
4401 * bits/locfacets.tcc (num_get::do_get): Tweak long double and
4402 float overloads to use the above macros. Account for the lack of
4403 strtold on some systems, and revert back to using sscanf.
4404
44051999-05-04 Ryszard Kabatek <kabatek@chemie.uni-halle.de>
4406
4407 * bits/locfacets.tcc (num_get::do_get): Check the errno variable.
4408 Use strtoul/strtoull for unsigned types. Check the ranges for
4409 short/unsigned short and if necessary for int/unsigned int.
4410
44111999-05-04 Benjamin Kosnik <bkoz@cygnus.com>
4412
4413 * src/gen-num-limits.cc (round_style): Need to use mknumericlimits
4414 to generate bits/std_limits.h now, as the SGI std_limits.h is
4415 being depricated. Not done, but should be done immediately: need
4416 to make sure this script is run as part of the configuration
4417 process, because without it "make" in a configured build directory
4418 will fail. Also tweaked: added a space for float_round_style, and
4419 used static_cast of zero to default-initialize, which should be ok
4420 according to the standard. (see 8.5 p5 and 20.1.3).
4421 * mknumeric_limits (OUT_C): Need this for x86 long
4422 double extensions.
4423
4424 * bits/basic_file.h: Include libio.h, not libioP.h.
4425 * src/basic_file.cc: And add libioP.h include here, so that
4426 _IO_init, et. al are well-declared.
4427
4428 * testsuite/make_check_libfree++ (LIB_PATH): Test installed
4429 headers, not source directory headers.
4430
4431 * src/Makefile.am (headers): Add stl_range_errors.h, also adjust
4432 for ext/*. Also add basic_file.h.
4433 * src/Makefile.in (headers): Same.
4434
4435 * bits/std_string.h: Reduce dependencies for faster
4436 pre-processing. Move istream and ostream specific defines into
4437 istream.tcc and ostream.tcc respectively.
4438 * bits/string.tcc: And here.
4439 * bits/basic_string.h: Move getline inline out-of-line, and to
4440 istream.tcc.
4441 * bits/istream.tcc: Move string::getline and operator>> here.
4442 * bits/ostream.tcc: And here too.
4443
4444 * bits/utility.h: Remove, as clashes with a standard header. Put
4445 __OUTOFRANGE and __LENGTHERROR macros into string.tcc for the time
4446 being, until this can be combined with SGI's approach.
4447 * bits/string.tcc: Add macros, as above.
4448 * bits/loccore.h: Add _Count_ones defines.
4449 * bits/std_string.h: And here too.
4450 * bits/std_locale.h: And here.
4451 * bits/std_ios.h: Take out include here.
4452 * src/Makefile.am (headers): Remove utility.h
4453 * src/Makefile.in (headers): Remove utility.h
4454
4455 * stl/bits/*: Update to SGI STL 3.20.
4456 * stl/ext/pthread_alloc: Delete this file.
4457
44581999-05-04 Phil Edwards <pedwards@ball.com>
4459
4460 * docs/faq/html/index.html: Add more entries
4461 * docs/faq/html/index.txt: regenerated.
4462
44631999-05-04 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
4464
4465 * src/gen-num-limits.cc (DO_DEFINE_MIN_MAX): fix typo.
4466
44671999-04-29 Benjamin Kosnik <bkoz@haight.cygnus.com>
4468
4469 * bits/locfacets.tcc (num_get::do_get): Re-implement, with input
4470 from Ulrich and Nathan. Remove extraneous string class usage,
4471 tweak, clean, simplify and consolidate with a eye towards removing
4472 duplcate code. Use strto[l, ll, f, d, ld] instead of sscanf.
4473 Not done: dealing with leading zeros, wchar_t work.
4474 * bits/locfacets.h: And here too.
4475
4476 * doc: Remove.
4477
44781999-04-29 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
4479
4480 * docs/: add a FAQ.
4481 * docs/faq/: New directory.
4482 * docs/faq/html/: Likewise.
4483 * docs/faq/text/: Likewise.
4484 * docs/faq/html/index.html: New file.
4485 * docs/faq/html/index.txt: Likewise. Generated from
4486 docs/faq/html/index.html by lynx.
4487
44881999-04-28 Benjamin Kosnik <bkoz@happy.cygnus.com>
4489 Ryszard Kabatek and Branko Cibej
4490
4491 * bits/locfacets.tcc: Modify.
4492
44931999-04-27 Benjamin Kosnik <bkoz@happy.cygnus.com>
4494
4495 * bits/sbuf_iter.h: Clean, fix istreambuf_iterator, make
4496 conformant to 14882, wrap non-standard extensions with
4497 _G_RESOLVE_LIB_DEFECTS, remove detritus and cruft, rennovate.
4498 * bits/locfacets.tcc (num_get::do_get(bool)): Return correct iterator.
4499
4500 * testsuite/27/istringstream_formatted.cc: Add tests.
4501
4502 * bits/locfacets.h: Remove cruft from _Format_cache, continue
4503 commenting, simplify.
4504 * bits/locfacets.tcc: Same.
4505
4506 1999-04-27 Ryszard Kabatek <kabatek@chemie.uni-halle.de>
4507 * bits/locfacets.tcc (num_get::do_get):
4508 Fix the sscanf format parameter
4509 for long long 'll' (as in C9X) instead of 'l'.
4510 Fix the order of sscanf format parameters: "%dl" --> "%ld".
4511 Change the type of the local variable '__conv' from 'string'
4512 to 'const char*' and adapt the change.
4513
45141999-04-26 Benjamin Kosnik <bkoz@happy.cygnus.com>
4515
4516 * bits/locfacets.h: Document _Format_cache, and name data members
4517 after the corresponding functions in numpunct. For instance:
4518 _M_grsep -> _M_thousands_sep, and _M_decsep -> _M_decimal_point.
4519 Break apart _M_boolnames{2] into _M_truename and _M_falsename.
4520 * bits/locfacets.tcc: Same.
4521
4522 * bits/locfacets.h (num_get::_M_extract): Don't allow groupings to
4523 stop parsing--store for later analysis.
4524 * testsuite/27/istringstream_formatted.cc: Add cases.
4525
45261999-04-25 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
4527
4528 * bits/valarray_meta.h: tweak.
4529 (_UnFunBase, _BinFunBase, _BinFunBase1, _BinFunBase2, _BinBase1,
4530 _BinFunBase2): rename typedef-name _Tp to _Vt to keep the compiler
4531 happy -- boggus warning.
4532 * bits/std_valarray.h: Fix.
4533 (valarray<T>::shift): Fix. Update comment.
4534 (valarray<T>::cshift): Fix.
4535
45361999-04-23 Benjamin Kosnik <bkoz@cygnus.com>
4537
4538 * testsuite/27filebuf-2.txt: Delete.
4539 * testsuite/27/filebuf.cc: Put output files directly into the
4540 correct subdirectory (27).
4541
4542 Alexandre Petit-Bianco <apbianco@cygnus.com>
4543 * testsuite/make_check_libfree++: Check generated (*.txt) file
4544 against stored results file (*.tst).
4545
45461999-04-22 Benjamin Kosnik <bkoz@nabi.net>
4547
4548 * bits/locfacets.tcc: Fix.
4549
4550 * bits/fstream.tcc (filebuf::seekoff): Output current out pointer.
4551 (filebuf::overflow): Simplify.
4552 (filebuf::xsputn): Correctly handle indeterminate state.
4553
4554 * testsuite/27/istringstream_formatted.cc: Tweak.
4555 * testsuite/27/filebuf.cc: Tweak.
4556 * testsuite/27/filebuf-3.tst: Correct: this is the canonical
4557 results file, please use this in the future to guarantee filebuf
4558 positioning accuracy.
4559 * testsuite/27/filebuf-2.tst: Same.
4560
45611999-04-21 Benjamin Kosnik <bkoz@cygnus.com>
4562
4563 * bits/fstream.tcc (filebuf::xsputn): Add.
4564 * bits/std_fstream.h: Declare.
4565
4566 * src/basic_file.cc (__basic_file::open): Add O_CREAT to open
4567 calls using ios_base::trunc.
4568
4569 * bits/sstream.tcc (streambuf::overflow): Fix crasher.
4570
4571 * testsuite/make_check_libfree++ (LOG_FILE): Ugh. Another fix.
4572 * testsuite/27/27stringstream.cc: Same.
4573 * testsuite/27/27stringbuf.cc: More tweaks.
4574 * testsuite/27/27filebuf-2.txt: Remove.
4575
4576 * testsuite/27/27filebuf-1.tst: Append, to force byte size over
4577 BUFSIZE so that overflows/underflow can be tested with default
4578 buffer setting.
4579 * testsuite/27/27filebuf-1.tst: Add.
4580
4581 * testsuite/*/*: Remove pre-pended chapter names, as they
4582 duplicate the chapter info contained in the enclosing directory
4583 anyway.
4584
45851999-04-20 Benjamin Kosnik <bkoz@cygnus.com>
4586
4587 * bits/streambuf.tcc (streambuf::xsputn): Re-implement to conform
4588 to sputc conditions.
4589
4590 * bits/ios_base.h: Define here.
4591 * src/ios.cc (ios_base::_M_clear): Remove hack.
4592 * bits/basic_ios.h: Fix rdstate().
4593
4594 * bits/sstream.tcc (streambuf::seekoff): Fix.
4595 * bits/fstream.tcc (filebuf::seekoff): Tweak comments.
4596
4597 * testsuite/make_check_libfree++ (LOG_FILE): More c-c-c-changes.
4598 * testsuite/24/24iterator.cc: Add/Fixes for DEBUG_ASSERT.
4599 * testsuite/27/27stringstream.cc: Same.
4600 * testsuite/27/27stringbuf.cc: Same.
4601 * testsuite/27/27istringstream_formatted.cc: Same.
4602 * testsuite/27/27filebuf.cc: Same.
4603
4604 * bits/locfacets.h: Remove specializations for messages<char> and
4605 messages<wchar_t> ctors. Same for moneypunct. Not required, not used.
4606 * src/locale.cc: Remove definitions for above.
4607 * src/misc-inst.cc: Revert, take out iomanip.h include.
4608 * bits/std_iomanip.h: Tweak, format.
4609
46101999-04-19 Benjamin Kosnik <bkoz@cygnus.com>
4611
4612 * bits/loccore.h: Format, move inline.
4613 * bits/locfacets.tcc: Same.
4614 * bits/locfacets.h: Same.
4615
4616 Ulrich Drepper <drepper@cygnus.com>
4617 * aclocal.m4: Re-generate.
4618 * configure, configure.in: Same.
4619 * m4/lc_messages.m4: New file.
4620
46211999-04-18 Benjamin Kosnik <bkoz@cygnus.com>
4622
4623 * bits/std_ostream.h: Fix typedef for wchar_t instantiations.
4624 * bits/sstream.tcc: Tweak.
4625
4626 * std/iostream: Put __ioinit inside macro guards.
4627
4628 * src/stlinst.cc: Delete and move to . . .
4629 * src/stl-inst.cc: New file, plus wrapping in namespace std.
4630 * src/Makefile.in: Change.
4631 * src/Makefile.am: Same.
4632 * src/misc-inst.cc: Add istringstream/ostringstream instantiations.
4633
4634 * testsuite/make_check_libfree++: Efficiently format for minimal
4635 space. Enforce stricter execution tests by enabling
4636 -DDEBUG_ASSERT.
4637
46381999-04-16 Benjamin Kosnik <bkoz@cygnus.com>
4639
4640 * docs/text/RELEASE-NOTES: Fix include typo.
4641
4642 * src/Makefile.am (headers): Add istream.tcc.
4643 * src/Makefile.in (headers): Add istream.tcc.
4644
4645 * ltconfig, ltmain.sh, libtool: Update to libtool-1.2g.
4646
46471999-04-16 Benjamin Kosnik <bkoz@cygnus.com>
4648
4649 * bits/locfacets.tcc (num_get::do_get(long)): Finish roughing in.
4650 * bits/locfacets.h (num_get::_M_extract): New functin:
4651 consolidate logic for do_get(...) members.
4652
4653 * bits/sbuf_iter.h (istreambuf_iterator::operator++()): Fix.
4654 * testsuite/27/27istringstream_formatted.cc: Add.
4655
46561999-04-16 Martin v. Loewis <martin@mira.isdn.cs.tu-berlin.de>
4657
4658 * src/basic_file.cc (__basic_file::open): Fix thinko in
4659 _G_HAVE_IO_FILE_OPEN bits.
4660 * bits/std_istream.h (sentry::sentry(istream, bool)): Fix isspace bug.
4661 * bits/std_cmath.h: Add stdlib.h include for ldiv_t.
4662 * src/complex.cc (FCT): Qualify all functions with global namespace.
4663 * src/locale.cc: Don't qualify memcpy and setlocale.
4664 * src/stdexcept.cc (__out_of_range): Qualify out_of_range with std::.
4665 (__length_error): Likewise, for length_error.
4666 * src/stlinst.cc: Qualify instantiations with std::.
4667
46681999-04-15 Benjamin Kosnik <bkoz@cygnus.com>
4669
4670 * C++STYLE: Add ChangeLog guidelines for member functions.
4671
4672 * doc/* : Delete.
4673 * BADNAMES, BUGS, C++STYLE, CHECKLIST, COPYING,
4674 DESIGN, HEADER_POLICY, PROBLEMS, RELEASE-NOTES, TODO: Moved into
4675 docs/text and made less strident.
4676
4677 * bits/fstream.tcc: Change non-standard ctor to match Sun's sematics.
4678 * bits/std_fstream.h: Same.
4679 * src/ios.cc: Same.
4680
4681 * bits/locfacets.h: Touch.
4682
46831999-04-15 Ulrich Drepper <drepper@cygnus.com>
4684
4685 * math/cexp.c (cexp): Use NAN instead of nan("").
4686 Reported by joel reed <joelreed@yahoo.com>.
4687
4688 * libio/libioP.h: Define _IO_seek_fpos_t and _IO_seek_off_t based on
4689 _G_IO_IO_FILE_VERSION. Use these types in the prototypes.
4690 * libio/fileops.c: Use _IO_seek_fpos_t and _IO_seek_off_t types
4691 instead of #if cascades.
4692 * libio/genops.c: Likewise.
4693 * libio/ioseekoff.c: Likewise.
4694 * libio/ioseekpos.c: Likewise.
4695 * libio/strops.c: Likewise.
4696 Patch by Chip Salzenberg <chip@perlsupport.com>.
4697
46981999-04-15 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
4699
4700 * docs: New directory.
4701 * docs/html: Likewise.
4702 * docs/text: Likewise.
4703 * docs/image: Likewise.
4704
4705 * bits/std_cmath.h: Add new functions.
4706 (abs): overload for long and double.
4707 (div): overload for long.
4708
4709 * bits/valarray_array.h: Fix.
4710 * bits/gslice.h: Adjust friend.
4711 * bits/slice_array.h: likewise.
4712 * bits/valarray_meta.h: likewise.
4713
47141999-04-13 Benjamin Kosnik <bkoz@tintin.cygnus.com>
4715
4716 * bits/locfacets.h: More changes, for num_get for insertion
4717 operators for integral types. Comment fields in _Format_cache.
4718 * bits/locfacets.tcc: And here too: add preliminary long version.
4719 * testsuite/27/27istringstream_formatted.cc: Add cases.
4720
47211999-04-13 Mark Elbrecht <snowball3@usa.net>
4722
4723 * configure.in: Add locale.h to AC_CHECK_HEADERS argument. Call
4724 AC_LC_MESSAGES macro.
4725 * aclocal.m4 (AC_LC_MESSAGES): New. Determines if a target
4726 supports LC_MESSAGES.
4727 * config.h.in: Add entry for HAVE_LC_MESSAGES.
4728 * src/locale.cc (locale::_S_normalize_category): Use the
4729 HAVE_LC_MESSAGES macro to check for LC_MESSAGES support instead of
4730 _G_NO_CLOCALE_HAS_MESSAGES.
4731 * aclocal.m4 (AM_PROG_LD): For DOS style paths, simplify test to
4732 '?:' from '?:\\' so any path beginning with a drive name matches.
4733
47341999-04-12 Mark Elbrecht <snowball3@usa.net>
4735
4736 * src/basic_file.cc(sys_open) [O_BINARY]: Declare __testb.
4737
47381999-04-12 Benjamin Kosnik <bkoz@tintin.cygnus.com>
4739
4740 * bits/locfacets.h: Tweak.
4741 * bits/locfacets.tcc(do_get): Clean/fix bool method.
4742
4743 * testsuite/21/21nonmember.cc: Same.
4744 * testsuite/21/21compare.cc: Fix license.
4745 * testsuite/27/27istringstream_formatted.cc: New file.
4746
47471999-04-12 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
4748
4749 * bits/valarray_meta.h: _BinFunBase1, _BinFunBase2, _BinBase1,
4750 _BinBase2: new template classes; put in there to work around a
4751 compiler limitation. The whole valarray architecture is now
4752 working.
4753
47541999-04-08 Benjamin Kosnik <bkoz@haight.constant.com>
4755
4756 * bits/locfacets.tcc: Fix, format.
4757 * bits/locfacets.h: Fix.
4758 * src/locale.cc: Same, plus format.
4759
4760 * bits/basic_string.h: Re-add definition here.
4761 * src/string.cc: Take out.
4762
47631999-04-08 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
4764
4765 * bits/std_valarray.h: tweak.
4766 * bits/valarray_array.h tweak. use _Expr.
4767 * bits/slice_array.h: likewise.
4768 * bits/gslice_array.h: likewise.
4769 * bits/mask_array.h: likewise.
4770 * bits/indirect_array.h: likewise.
4771 * bits/valarray_meta.h: tweak.
4772 _UnFunBase, _UnFunClos, _BinFunBase, _FunBase, _ValFunClos,
4773 _RefFunClos, _UnBase, _UnClos, _BinBase, _BinClos, _SClos, _GClos,
4774 _IClos: new template classes.
4775 _Meta: renamed to _Expr. Made template with args.
4776 _Constant: made template with two args.
4777
47781999-04-05 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
4779
4780 * bits/valarray_array.h: tweak.
4781
47821999-04-06 Benjamin Kosnik <bkoz@cygnus.com>
4783
4784 * bits/basic_string.h: Whoops--fix blip.
4785
47861999-04-06 Benjamin Kosnik <bkoz@cygnus.com>
4787
4788 Update to SGI STL 3.13
4789 * bits/basic_string.h: Add __get_c_string definition.
4790 * stl/bits/stl_range_errors.h: New file.
4791 * stl/bits/std_bvector.h: Same.
4792 * stl/bits/*: Update.
4793
47941999-04-04 1999 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
4795
4796 * bits/slice_array.h: tweak.
4797 * bits/gslice_array.h: tweak.
4798 * bits/mask_array.h: tweak.
4799 * bits/indirect_array.h: tweak.
4800 * bits/valarray_array.h: tweak.
4801 (__valarray_copy): replace copy with memcpy.
4802 * bits/std_valarray.h: use __valarray_copy whenever possible.
4803 use __valarray_fill instead of fill.
4804
48051999-04-02 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
4806
4807 * src/gen-num-limits.cc: new file
4808 * mknumeric_limits: Ditto.
4809
48101999-03-30 Benjamin Kosnik <bkoz@cygnus.com>
4811
4812 * bits/locfacets.tcc: Do a stub version of num_get for short, int,
4813 and long types.
4814 * bits/locfacets.h: Add num_get::get methods overloaded for int
4815 and short, to resolve ambiguous overloads in istream insertion
4816 operators.
4817
48181999-03-30 Benjamin Kosnik <bkoz@cygnus.com>
4819
4820 * bits/std_istream.h: Fix.
4821 * bits/istream.tcc: Fix.
4822
48231999-03-30 Philip Martin <pm@corris.dircon.co.uk>
4824
4825 * testsuite/24/24iterator.cc: fix ++/-- tests
4826
48271999-03-29 Benjamin Kosnik <bkoz@cygnus.com>
4828
4829 * bits/std_ostream.h: Looks like this, actually: Fix up eh-isms.
4830 * bits/ostream.tcc: Same.
4831
4832 * bits/std_istream.h: Bring over ostream changes, implement member
4833 functions. Baseline.
4834 * bits/istream.tcc: New file.
4835
48361999-03-26 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
4837
4838 * bits/gslice.h (class gslice): fix friends template.
4839
48401999-03-23 Benjamin Kosnik <bkoz@cygnus.com>
4841
4842 * bits/std_ostream.h: Fix sentry objects, implement seekp, tellp,
4843 delete cruft, etc.
4844 * bits/ostream.tcc: Same.
4845
4846 * bits/std_istream.h: Minor tweaks.
4847
48481999-03-18 Benjamin Kosnik <bkoz@cygnus.com>
4849
4850 * src/locale-inst.cc: Remove duplicate instantiations.
4851 * bits/locfacets.tcc: Tweak definitions of static member.
4852
48531999-03-18 Benjamin Kosnik <bkoz@cygnus.com>
4854
4855 * bits/std_fstream.h: Format: prepend "__" in front of
4856 non-standard typedefs.
4857 * bits/fstream.tcc: Match.
4858 * bits/std_streambuf.h: Format: prepend "__" in front of
4859 non-standard typedefs.
4860
4861 * bits/sstream.tcc: Match.
4862 * bits/std_istream.h: Format.
4863 * src/locale-inst.cc: Add num_get instantiations.
4864
4865 * bits/std_sstream.h: Fix crash in stringstreams. Remove member
4866 _M_sb, a basic_stringbuf object, and use the basic_ios pointer
4867 _M_streambuf instead. Make initializations sane. Fix
4868 allocation/deallocation of _M_streambuf.
4869 * bits/std_ostream.h: Fix initialization code.
4870 (ctor): Eliminate redundant this->init(), let base class initialize.
4871 (default ctor): New. Assume base classes already initialzed.
4872 * bits/std_istream.h: Parallel work to ostream.
4873 (ctor): Eliminate redundant this->init(), let base class initialize.
4874 (default ctor): New. Assume base classes already initialzed.
4875 Fix initialization of basic_iostream.
4876
4877 * bits/std_fstream.h: While we're at it, make initializations sane
4878 here too. Now matches sstream.h.
4879
4880 * bits/string.tcc: Fix crash in basic_string::compare.
4881 * bits/basic_string.h: And here.
4882 * bits/c++config.h: Add comment about _G_USE_EXCEPTIONS.
4883
4884 * testsuite/make_check_libfree++: Check shared as well.
4885 * testsuite/27/27stringstream.cc: Add bits.
4886 * testsuite/27/27boolfmt.cc: Add bits.
4887 * testsuite/27/27octfmt.cc: Add bits.
4888
48891999-03-17 Benjamin Kosnik <bkoz@happy.cygnus.com>
4890
4891 * configure.in (USE_LONG_DOUBLE): signbitl link error.
4892
4893 * bits/locfacets.h: Fix errors that cause build problems
4894 with current egcs (template parameters have class scope).
4895 * bits/locfacets.tcc: Same.
4896 * src/locale-inst.cc: Same, clean.
4897 * src/misc-inst.cc: Same, clean.
4898
48991999-03-17 Ryszard Kabatek <kabatek@chemie.uni-halle.de>
4900
4901 * stl/bits/std_memory.h: Modify auto_ptr::reset to reflect the
4902 standard. Re-apply this previous patch.
4903
49041999-03-17 Philip Martin <pm@corris.dircon.co.uk>
4905
4906 * bits/basic_string.h: Use __normal_iterator<> for iterators.
4907 * bits/std_sstream.h: Support __normal_iterator<> iterators.
4908 * bits/string.tcc: Ditto.
4909 * src/misc-inst.cc: Ditto.
4910 * src/locale-inst.cc: Ditto.
4911 * stl/bits/stl_iterator.h: Add __normal_iterator<>.
4912 * stl/bits/stl_vector.h: Use __normal_iterator<> for iterators.
4913 * testsuite/24/24iterator.cc: Add test cases for basic_string and
4914 vector iterators.
4915
49161999-03-16 Benjamin Kosnik <bkoz@cygnus.com>
4917
4918 * bits/locfacets.tcc: Remove macro hack.
4919 * bits/locfacets.h: Tweaks.
4920 * src/misc-inst.cc: Weed out locale-related instantiations.
4921 * src/locale-inst.cc: Same.
4922
4923 * RELEASE-NOTES: Make more changes.
4924 * bits/c++config.h: Bump version number.
4925
4926 * testsuite/make_check_libfree++: Collect diagnostics.
4927
4928 * bits/std_ostream.h: Fix ostream initialization/destruction
4929 problem, related to dtor cleanup and new cached facets, agggggggh.
4930 * bits/ostream.tcc: Tweak.
4931 * bits/locfacets.h: Remove all friends of iostream classes.
4932 * bits/ios_base.h: Same.
4933 * bits/streambuf.tcc: Tweak.
4934 * bits/std_streambuf.h: Tweak.
4935 * bits/std_fstream.h: Tweak.
4936 * bits/fstream.tcc: Tweak.
4937 * src/stdstreams.cc: Tweak.
4938 * src/ios.cc: Close streams.
4939
4940 * math/Makefile.in: Add missing files for shared link errors.
4941 * math/Makefile.am: Same.
4942
49431999-03-15 Benjamin Kosnik <bkoz@cygnus.com>
4944
4945 * src/locale-inst.cc: More wchar_t instantiations.
4946 * src/misc-inst.cc: Missed a few bits.
4947 * testsuite/make_check_libfree++: Add static and shared runs.
4948 * src/ios.cc: Add clarity to ios_base::Init::~Init().
4949
49501999-03-15 Benjamin Kosnik <bkoz@cygnus.com>
4951
4952 * bits/std_ostream.h: Format, expunge, simplify. Add cached
4953 facets. Resolve link errors.
4954 * bits/ostream.tcc: Same.
4955 * src/misc-inst.cc: Add ostream, wostream instantiations.
4956 * src/Makefile.am: Add missing bits for stdstreams.cc.
4957 * src/Makefile.in: Same.
4958 * bits/std_iosfwd.h: Format.
4959 * bits/locfacets.h (num_put): Add basic_ostream as a friend to
4960 num_put so that cached _M_fnumput pointer can be deleted in
4961 basic_ostream's dtor. Now everybody plays nice.
4962
49631999-03-12 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
4964
4965 * bits/gslice.h (class gslice): Make friends valarray,
4966 gslice_array and _GliceExpression.
4967
49681999-03-11 Benjamin Kosnik <bkoz@cygnus.com>
4969
4970 * RELEASE-NOTES: Update.
4971 * src/ios.cc: Use do proper init.
4972 * bits/std_streambuf.h: Tweak.
4973 * bits/std_iostream.h: Take out static member.
4974 * std/iostream: Put here.
4975 * bits/std_ostream.h: Non-default ctor shouldn't smash _M_streambuf.
4976 * bits/std_istream.h: Ditto.
4977 * bits/basic_ios.h: Format.
4978 * bits/ostream.tcc(write): Fix.
4979 * bits/fstream.tcc: Fix stdstreams ctor to do a proper
4980 initialization of the fstream class.
4981 * src/stdstreams.cc: I'm baaaaaaaack.
4982
49831999-03-10 Benjamin Kosnik <bkoz@rhino.cygnus.com>
4984
4985 * bits/ios_base.h: Correct comments. Add ios_base::init()
4986 functionality. Format, tweak, expunge, clean, bathe, and hang to dry.
4987 * src/misc-inst.cc: Add instantiations here.
4988 * src/ios.cc: Clean.
4989 * bits/std_iostream.h: Add wrappers, global ios_base::Init object.
4990 * src/stdstreams.cc: Delete this file, as now unnecessary.
4991 * bits/fstream.tcc: Add missing initialization bits for ctor.
4992 * src/Makefile.am (libstdc___la_SOURCES): Delete here as well.
4993 * src/Makefile.in (libstdc___la_OBJECTS): And here.
4994
4995 * bits/streambuf.tcc: Tweak.
4996 * bits/sstream.tcc: Here too.
4997
4998 * bits/fstream.tcc: And change definition as well.
4999 * bits/std_fstream.h: Change ctor.
5000 * src/basic_file.cc (sys_open): Add call that opens a specific fileno.
5001 * bits/basic_file.h: Add declarations.
5002
5003 * testsuite/27/27hello.cc: New file.
5004
5005 * bits/std_ostream.h: Move flush() inline.
5006 * bits/ostream.tcc: From here.
5007
5008 * bits/char_traits.h: Add include of fpos.h for streamoff/streampos.
5009 * bits/std_ios.h: Change include libio to only when necessary.
5010 * bits/fpos.h: Like here.
5011 * ios_base.h: And here.
5012
5013 * bits/locfacets.h: Change _Iostate to _Ios_Iostate.
5014 * bits/locfacets.tcc: Same.
5015 * bits/std_locale.h: Include std_ios.h not std_iosfwd.h.
5016 * bits/std_iosfwd.h: Move _Ios_Iostate to ios_base.h
5017
50181999-03-09 Benjamin Kosnik <bkoz@rhino.cygnus.com>
5019
5020 * bits/basic_ios.h: Change _M_ctype to _M_fctype.
5021
5022 * bits/std_streambuf.h: Clean, tweak.
5023 * bits/std_fstream.h: Same.
5024 * bits/std_sstream.h: Same.
5025 * bits/streambuf.tcc: Move most member functions out-of-line.
5026 * bits/fstream.tcc: Same.
5027 * bits/streambuf.tcc: Same.
5028
5029 * bits/basic_file.h(filepos_cur): Set correctly.
5030 (filepos_beg): Same.
5031 (seekpos): Change to __c_streampos.
5032 * src/basic_file.cc (std): Change to __c_streampos.
5033
5034 * testsuite/27/27filebuf.cc: Round one is finished.
5035 * testsuite/27/27filebuf-2.tst: New file, final output should match.
5036 * testsuite/27/27filebuf-3.tst: Same.
5037
50381999-03-08 Benjamin Kosnik <bkoz@rhino.cygnus.com>
5039
5040 * bits/basic_file.h: Fix typo, add comments about what to expect
5041 from the various member functions in __basic_file.
5042
5043 * bits/std_fstream.h: Re-do sync/underflow to work
5044 together. Change from sys_read to xsgetn and from sys_write to
5045 xsputn. As it should have been from the beginning. . .
5046
50471999-03-06 Benjamin Kosnik <bkoz@haight.constant.com>
5048
5049 * bits/c++config.h (__GLIBCPP__): Add versioning macro.
5050
5051 * bits/basic_file.h(file_beg): New function.
5052 (file_cur): Ditto.
5053
5054 * testsuite/27/27filebuf.cc: Test in, out, in | out.
5055 * bits/std_fstream.h: More _M_mode refinements.
5056 (synch): Add bits for out mode only.
5057 * bits/std_streambuf.h(xsputn): Correct for filebufs.
5058 * bits/std_sstream.h: Ditto.
5059
50601999-03-03 Benjamin Kosnik <bkoz@cygnus.com>
5061
5062 * bits/std_fstream.h: Fix _M_mode AND with ios_base::openmode.
5063 * testsuite/27/27filebuf.cc: Modify.
5064 * bits/c++config.h: Fix.
5065
50661999-03-02 Benjamin Kosnik <bkoz@tintin.cygnus.com>
5067
5068 * bits/c++config.h: New macro, _G_RESOLVE_LIB_DEFECTS, used to put
5069 code in place that diverges from the final standard, but has been
5070 brought up on the library mailing list.
5071
5072 * bits/std_fstream.h(underflow): Position all three internal
5073 buffer pointers at the same initial position. Re-implement with
5074 basic_filebuf abstraction.
5075 (overflow): Ditto.
5076 (seekoff): Ditto.
5077 (seekpos): Ditto.
5078 * bits/std_sstream.h: Move _M_mode down into base class
5079 basic_streambuf.
5080 * bits/sstream.tcc: Ditto.
5081 * bits/std_streambuf.h: Ditto.
5082
5083 * testsuite/27/27filebuf.cc: Tweak.
5084
50851999-02-27 Benjamin Kosnik <bkoz@slap-happy.cygnus.com>
5086
5087 * bits/std_sstream.h: Ditto.
5088 * bits/std_fstream.h: Fix blip.
5089
50901999-02-26 Benjamin Kosnik <bkoz@happy.cygnus.com>
5091
5092 * C++STYLE: Add cases.
5093 * bits/std_fstream.h: Format.
5094 * bits/std_streambuf.h: Ditto.
5095 * bits/std_sstream.h: Ditto.
5096
5097 * src/basic_file.cc(sys_seek): Fix stack delirium, by keeping
5098 return type for _IO_file_seek and __basic_file::seek the same size.
5099 * bits/basic_file.h: Ditto.
5100
51011999-02-26 Benjamin Kosnik <bkoz@happy.cygnus.com>
5102
5103 * bits/fstream.tcc: Add include guards.
5104 * src/misc-inst.cc: Add instantiations for shared libes.
5105 * src/locale-inst.cc: Add instantiaions for use_facet.
5106 * bits/loccore.h: Remove specialization foward decls for
5107 use_facet<ctype>: perhaps add the whole lot of them later on.
5108 * bits/std_fstream.h: Fix.
5109 * bits/locfacets.h: Ditto.
5110 * src/stdstreams.cc: Disable wide streams for now.
5111
5112 * src/Makefile.am (CXXFLAGS): Change up.
5113 * src/Makefile.in (CXXFLAGS): Ditto.
5114
51151999-02-25 Benjamin Kosnik <bkoz@happy.cygnus.com>
5116
5117 * src/basic_file.cc: Change to ios_base::seekdir from int.
5118 * bits/basic_file.h: Ditto.
5119 * bits/locfacets.h : Fix blip with new guard macros.
5120
51211999-02-25 Benjamin Kosnik <bkoz@cygnus.com>
5122
5123 * stl/bits/stl_config.h (__STL_USE_STD_ALLOCATORS): Minor tweaking.
5124 * bits/c++config.h: Clean. Remove _G_NO_STREAMBUF_ITERATORS and
5125 _G_USE_NAMESPACE.
5126 * amm1/locale: Remove unused defines.
5127 * generic/locale: Ditto.
5128 * src/ios.cc: Ditto.
5129 * src/locale.cc: Ditto.
5130 * src/locale-inst.cc: Ditto.
5131 * src/localename.cc: Ditto.
5132 * src/stdstreams.cc: And here.
5133
5134 * bits/c++config.h (_G_USE_WCHAR_T): Fix.
5135 * bits/loccore.h: Simplify, clean, add wchar_t guards.
5136 * bits/loccore.tcc: Ditto.
5137 * bits/locfacets.h: Ditto.
5138 * src/locale-inst.cc: Ditto.
5139 * bits/locfacets.tcc: Add do_put long long here.
5140
51411999-02-24 Benjamin Kosnik <bkoz@cygnus.com>
5142
5143 * bits/std_streambuf.h: Add cached ctype facet, _M_ctype.
5144 * bits/basic_ios.h: Clean. Replace _M_strbuf with
5145 _M_streambuf. Use cached _M_cvt in basic_streambuf.
5146 * bits/std_istream.h: Replace _M_strbuf with _M_streambuf.
5147 * bits/std_fstream.h: Tweak.
5148
5149 * bits/char_traits.h: Remove fpos definitions from here. . .
5150 * bits/fpos.h: New file, put them here. Eventually, this may allow
5151 the severing of char_traits and fpos dependancies.
5152 * src/Makefile.in: Add fpos.h.
5153 * src/Makefile.am: Ditto.
5154 * bits/std_string.h: Add fpos.h include here.
5155 * bits/std_ios.h: And here.
5156
5157 * bits/std_streambuf.h: Change _M_init to _M_initialized.
5158 * bits/ios_base.h: Remove cstdio include.
5159 * bits/std_ios.h: ... Place here.
5160
51611999-02-23 Benjamin Kosnik <bkoz@loony.cygnus.com>
5162
5163 * src/Makefile.in (CXXFLAGS): Re-add -fvtable-thunks.
5164 * src/Makefile.am (CXXFLAGS): Re-add -fvtable-thunks.
5165
5166 * bits/basic_file.h: Comment, adjust arguments.
5167 * src/basic_file.cc: Ditto.
5168
5169 * bits/std_fstream.h(seekoff): Error is of fpos type, not integral
5170 type: check and convert accordingly. Re-interpet "resultant stream
5171 position" to indicate external byte sequence location, not internal
5172 buffer info.
5173
51741999-02-22 Benjamin Kosnik <bkoz@loony.cygnus.com>
5175
5176 * mkcshadow: And change copyright here.
5177 * src/Makefile.am (CXXFLAGS): Add -g -O2. Add new header
5178 dependencies for stl_pthread_alloc.h, pthread_allocimpl.h,
5179 stl_thread.h, and stl_iterator_base.h.
5180 * src/Makefile.in (CXXFLAGS): Ditto.
5181 * stl/backward/pthread_alloc.h: Remove.
5182
51831999-02-19 Benjamin Kosnik <bkoz@loony.cygnus.com>
5184
5185 * bits/std_streambuf.h (sungetc): Use standard defs for putback
5186 position.
5187 * bits/std_fstream.h (pbackfail): Correct.
5188 (sungetc): Test.
5189 (seekoff): Implement.
5190 (seekpos): Re-do.
5191 * testsuite/27/27filebuf.cc: Add test cases.
5192
51931999-02-18 Benjamin Kosnik <bkoz@loony.cygnus.com>
5194
5195 * bits/std_fstream.h: Go with basic_file's interfaces for dealing
5196 with the external buffers, and stop mucking around with setting
5197 and re-setting the external buf's pointers. Aka, clarity and
5198 simplicity rule the day.
5199 * src/locale.cc: Use memcpy in codecvt::do_in and codecvt::do_out.
5200 Remove partial result and support code.
5201
52021999-02-18 Ulrich Drepper <drepper@cygnus.com>
5203
5204 * configure.in: Add hypot, hypotf, atan2f, expf, and copysignf to
5205 list of function which have to be replaced.
5206 Remove expf from list of functions to test for.
5207 Define USE_LONG_DOUBLE in case the libm has partial support for long
5208 doubles.
5209 * Makefile.in: Regenerated.
5210 * config.h.in: Likewise.
5211 * configure: Likewise.
5212 * libio/Makefile.am (LIBIO_SRCS): Add missing backslash.
5213 * libio/Makefile.in: Regenerated.
5214 * src/Makefile.in: Regenerated.
5215 * string/Makefile.in: Regenerated.
5216 * math/Makefile.am (EXTRA_DIST): Add hypot.c, hypotf.c, hypotl.c,
5217 atan2f.c, expf.c, and $(EXTRA_yes).
5218 (EXTRA_yes): Add signbitl.c mycabsl.c.
5219 (libmath_la_LIBADD): Add $(EXTRA_$(USE_LONG_DOUBLE)).
5220 (libmath_la_SOURCES): remove long double versions.
5221 * math/Makefile.in: Regnerated.
5222 * math/atan2f.c: New file.
5223 * math/copysignf.c: New file.
5224 * math/expf.c: New file.
5225 * math/hypot.c: New file.
5226 * math/hypotf.c: New file.
5227 * math/hypotl.c: New file.
5228 * math/cargf.c: Use correct function and macro names.
5229 * math/ccos.c: Likewise.
5230 * math/ccosh.c: Likewise.
5231 * math/ccoshf.c: Likewise.
5232 * math/ccoshl.c: Likewise.
5233 * math/cexp.c: Likewise.
5234 * math/cexpf.c: Likewise.
5235 * math/cexpl.c: Likewise.
5236 * math/clog.c: Likewise.
5237 * math/clog10.c: Likewise.
5238 * math/clog10f.c: Likewise.
5239 * math/clog10l.c: Likewise.
5240 * math/clogf.c: Likewise.
5241 * math/clogl.c: Likewise.
5242 * math/copysignf.c: Likewise.
5243 * math/csin.c: Likewise.
5244 * math/csinf.c: Likewise.
5245 * math/csinh.c: Likewise.
5246 * math/csinhf.c: Likewise.
5247 * math/csinhl.c: Likewise.
5248 * math/csinl.c: Likewise.
5249 * math/csqrt.c: Likewise.
5250 * math/csqrtf.c: Likewise.
5251 * math/csqrtl.c: Likewise.
5252 * math/ctan.c: Likewise.
5253 * math/ctanf.c: Likewise.
5254 * math/ctanh.c: Likewise.
5255 * math/ctanhf.c: Likewise.
5256 * math/ctanhl.c: Likewise.
5257 * math/ctanl.c: Likewise.
5258
52591999-02-17 Benjamin Kosnik <bkoz@cygnus.com>
5260
5261 * testsuite/27/27filebuf.cc: Add cases.
5262 * testsuite/27/27filebuf-1.txt: Remove inadvertent garbage.
5263 * bits/std_streambuf.h: Simplify, always have one return statement.
5264 * bits/std_fstream.h: Tweak comments in underflow.
5265
52661999-02-17 Ulrich Drepper <drepper@cygnus.com>
5267
5268 * ltmain.sh: Update from libtool 1.2d and fix Solaris problems.
5269 * ltconfig: Likewise.
5270
52711999-02-16 Christophe Pierret <cpierret@businessobjects.com>
5272
5273 * src/locale.cc: Fix assert.
5274
52751999-02-16 Benjamin Kosnik <bkoz@cygnus.com>
5276
5277 FIXME: Still need some kind of solution for undefined math symbols.
5278 * src/Makefile.in (locale-inst.lo): Compile with
5279 -fimplicit-templates to fix Solaris link problem.
5280 * src/Makefile.am: Ditto.
5281 * libio/Makefile.in: Add stdfiles.c so that _IO_list_all is defined.
5282 * libio/Makefile.am: Ditto.
5283 * src/locale.cc: Provide some kind of def for _S_tolower.
5284 * bits/locfacets.h: Fix declarations of ctype<wchar_t> to
5285 match ctype<char> for _S_tolower, _S_toupper, _S_table.
5286
52871999-02-10 Benjamin Kosnik <bkoz@cygnus.com>
5288
5289 * bits/loccore.tcc: Move member-template ctor inline...
5290 * bits/loccore.h: ...here.
5291 * src/locale-inst.cc: Add instantiation here.
5292
5293 * testsuite/27/27stringstream.cc: Tweak.
5294
5295 * bits/ostream.tcc: Include sbuf_iter.h.
5296
5297 * bits/ostream.tcc: Convert *this to ostreambuf_iterator before
5298 passing to num_put, as num_put's first argument is an interator,
5299 not basic_ostream.
5300
5301 * testsuite/make_check_libfree++: New file, runs through the
5302 existing test files in the testsuite directory and makes sure
5303 they link.
5304
53051999-02-10 Brendan Kehoe <brendan@cygnus.com>
5306
5307 * testsuite/21/21compare.cc: Fix typo.
5308 * src/locale.cc (ctype<wchar_t>::_S_{toupper,tolower,table}):
5309 Don't try to provide non-linux versions, since it's impossible to
5310 initialize their const references with the integer 0, no matter
5311 how we try to cast it.
5312
53131999-02-10 Benjamin Kosnik <bkoz@cygnus.com>
5314
5315 * bits/std_locale.h: Move std_vector.h dependency.
5316 * bits/std_ios.h: ...from here.
5317 * bits/std_string.h: ...and here.
5318 * src/locale.cc: ..to here.
5319 * bits/loccore.h: Ditto, add vector forward declaration,
5320 make locale::_Impl data members pointers not containers.
5321 * bits/loccore.tcc: Move out-of-line for now.
5322 * bits/locfacets.h: Move vector dependency from here...
5323 * bits/locfacets.tcc: ...to here.
5324 * src/localename.cc: ..and here.
5325 * src/locale-inst.cc: Add include of locfacets.tcc here.
5326
5327 * stl/bits/stl_string_fwd.h: Make __get_c_string non-static.
5328 * bits/basic_string.h: Can't use sizeof on an incomplete type.
5329 * bits/string.tcc: Tweak.
5330 * src/string.cc: And add __get_c_string def here.
5331
5332 * bits/std_fstream.h: Yeah, comment the fill_n idea out as impractical.
5333
5334 * src/stlinst.cc: Add include of stl_config.h.
5335
53361999-02-09 Benjamin Kosnik <bkoz@cygnus.com>
5337
5338 * stl/bits/std_bitset.h: Update to SGI STL 3.12.
5339 * stl/bits/stl_config.h: Tweak, update.
5340 * stl/bits/std_stdexcept.h: Ditto, change stl_exception to
5341 std_exception.
5342 * stl/bits/std_memory.h: Reconstructed auto_ptr, Ditto.
5343 * stl/bits/std_functional.h: Ditto.
5344
5345 * stl/bits/stl_string.h: New file, SGI's string
5346 implementation. For reference only, corresponding to string in
5347 3.12 source.
5348 * stl/bits/stl_char_traits.h: As above.
5349
5350 * stl/bits/pthread_allocimpl.h: New file corresponding to
5351 pthread_alloc.
5352 * stl/bits/stl_pthread_alloc.h: New file corresponding to
5353 pthread_alloc.h
5354 * stl/bits/stl_threads.h: New file.
5355
5356 Note that SGI STL 3.12's file iterator.h is not used.
5357 * stl/bits/std_iterator.h: Ditto.
5358 * stl/bits/stl_iterator.h: Drop in replace.
5359 * stl/bits/stl_iterator_base.h: New file, drop in replace.
5360
5361 * stl/bits/stl_queue.h, stl_rope.h, stl_set.h, stl_stack.h,
5362 stl_string_fwd.h, stl_tempbuf.h, stl_tree.h, stl_vector.h,
5363 stl_pair.h, stl_multimap.h, stl_multiset.h, stl_list.h,
5364 stl_hashtable.h, stl_hash_set.h, stl_hash_map.h, stl_function.h,
5365 stl_deque.h, stl_alloc.h, stl_algo.h, stl_algobase.h, ropeimpl.h:
5366 Drop-in replace (ie, stop changing __SGI_STL_* to _CPP_BITS_* for
5367 preprocessor guards, but fixup include paths and names according
5368 to new directory layout).
5369
53701999-02-05 Benjamin Kosnik <bkoz@cygnus.com>
5371
5372 * bits/std_fstream.h: Remove _M_open data member.
5373 * bits/fstream.tcc: Ditto.
5374
5375 * src/locale.cc: Tweak.
5376
5377 * bits/std_sstream.h: Simplify.
5378
5379 * bits/std_streambuf.h: Simplify.
5380 (sputc): Use correct definition of "write area."
5381
5382 * bits/std_fstream.h: Fix uflow.
5383 * src/basic_file.cc: Tweak.
5384 * testsuite/27/27filebuf.cc: Add tests.
5385 * testsuite/27/27filebuf-3.txt: Rename to *-2.txt.
5386
53871999-02-02 Ryszard Kabatek <kabatek@chemie.uni-halle.de>
5388
5389 * bits/ios_base.h: Make protected.
5390
53911999-02-01 Ryszard Kabatek <kabatek@chemie.uni-halle.de>
5392
5393 * bits/ios_base.h: Changes in the class ios_base:
5394 Rename _M_exceptions member to _M_exceptions_data.
5395 Make the member functions rdstate(), clear(), exceptions()
5396 and exceptions(iostate) protected and add the "_M_" prefix.
5397 * src/ios.cc: Ditto.
5398 * bits/basic_ios.h: Adapt the changes from ios_base.
5399
54001999-01-29 Benjamin Kosnik <bkoz@cygnus.com>
5401
5402 * bits/std_fstream.h: Remove _M_flags, _M_equilibrate as unnecessary.
5403 * bits/fstream.tcc: Ditto.
5404
5405 * bits/std_fstream.h (underflow): Resize deallocates memory and
5406 resets pointers in the internal cache according to new _M_buf. . dooh!
5407 * src/locale.cc: Mas changes with codecvt::do_in, do_out.
5408
54091999-01-29 Ryszard Kabatek <kabatek@chemie.uni-halle.de>
5410
5411 * stl/bits/std_memory.h: Modify auto_ptr::reset to reflect the
5412 standard.
5413
54141999-01-28 Benjamin Kosnik <bkoz@cygnus.com>
5415
5416 * src/locale.cc (codecvt::do_in): Finer-grained tuning to take
5417 into account partial returns.
5418 (codecvt::do_out): Likewise.
5419
5420 * bits/char_traits.h: Change streamsize to be a signed type, as
5421 required by 27.4.1 Types p 2. (Changing to _IO_ssize_t.)
5422 * bits/std_streambuf.h: Make
5423 in_avail() and showmanyc() have streamsize as return types, so
5424 that showmanyc()'s return of eof won't underflow in_avail's return
5425 value and give a bogus result.
5426 * src/misc-inst.cc: And more changes. . .
5427
5428 * bits/std_streambuf.h (basic_streambuf): Add _M_buf_unified to keep
5429 track of joint in/out pointers into the internal buffer.
5430 (sbumpc): Add check for _M_buf_unified.
5431 (sputbackc): Ditto.
5432 (sungetc): Ditto.
5433
5434 * testsuite/27/27filebuf.cc: Add cases.
5435 * testsuite/27/27stringbuf.cc: Add showmanyc case.
5436
5437 * bits/std_fstream.h (close): Fix logic error.
5438 (open): Initialize internal pointers based on _M_buf and _M_buf_size.
5439 (showmanyc): Add underflow component, to match the standard.
5440
5441 * bits/fstream.tcc: Ditto.
5442
54431999-01-27 Benjamin Kosnik <bkoz@cygnus.com>
5444
5445 * bits/basic_file.h: Match vtables w/ _IO_FILE_plus.
5446 * src/basic_file.cc: Ditto.
5447 * src/Makefile.in: Add -fvtable-thunks to CXXFLAGS: preferred
5448 format for dealing with _IO_file in libio.
5449
54501999-01-27 Ulrich Drepper <drepper@cygnus.com>
5451
5452 * src/basic_file.cc: Include fcntl.h.
5453
54541999-01-27 Benjamin Kosnik <bkoz@cygnus.com>
5455
5456 * libio/Makefile.in: Add fileops.lo, genops.lo to objects to debug
5457 libio calls.
5458 * bits/std_streambuf.h: Redefine read posion.
5459
5460 * bits/std_fstream.h: Temporary hack to get vtables working again.
5461 * bits/basic_file.h: Revert.
5462 * src/basic_file.cc: Ditto.
5463 * testsuite/27/27filebuf.cc: Tweak.
5464
54651999-01-26 Benjamin Kosnik <bkoz@cygnus.com>
5466
5467 * bits/basic_file.h: Add showmanyc, underflow. .
5468 * src/basic_file.cc: Ditto.
5469
5470 * bits/std_fstream.h (showmanyc): Add bits to ping libio to see if more
5471 chars can be read.
5472
5473 * testsuite/27/27filebuf.cc: Add testcases.
5474 * src/basic_file.cc: Add O_CREAT to open calls with
5475 ios_base::trunc as part of the open mode.
5476
54771999-01-26 Ryszard Kabatek <kabatek@chemie.uni-halle.de>
5478
5479 * bits/basic_ios.h: fix basic_ios::exceptions(iostate)
5480
54811999-01-25 Benjamin Kosnik <bkoz@nabi.net>
5482
5483 * src/ios.cc (clear): Correct typo.
5484 * bits/ios_base.h: Tweak spacing.
5485
54861999-01-25 Ryszard Kabatek <kabatek@chemie.uni-halle.de>
5487
5488 * bits/basic_ios.h: fix basic_ios::fail()
5489
54901999-01-25 Benjamin Kosnik <bkoz@loony.cygnus.com>
5491
5492 * bits/basic_file.h: Include libioP.h from libio instead of here.
5493 * bits/iolibio.h: Remove.
5494 * bits/libio.h: Remove.
5495
54961999-01-22 Benjamin Kosnik <bkoz@lunatic.cygnus.com>
5497
5498 * bits/std_fstream.h: Tweak cvt-> in call for newer egcs compilers.
5499
55001999-01-22 Ulrich Drepper <drepper@cygnus.com>
5501
5502 * Makefile.am (SUBDIRS): Add libio.
5503 * configure.in: Add rule to test for glibc2.
5504
5505 * src/Makefile.am (INCLUDES): Add -I to libio subdir.
5506 (libstdc___la_LIBADD): Add libio.la.
5507
55081999-01-21 Benjamin Kosnik <bkoz@cygnus.com>
5509
5510 * bits/basic_file.h: Make new abstraction for underlying C library
5511 FILE, named __basic_file.
5512 * src/basic_file.cc: New file.
5513 * bits/os_raw.h: Delete.
5514 * src/os_raw.cc: Delete.
5515 * src/Makefile.in: Tweak.
5516 * src/Makefile.am: Tweak.
5517 * bits/iolibio.h: Add this here, for the time being.
5518 * bits/libioP.h: Ditto.
5519
5520 * bits/ios_base.h: Delete unused defines.
5521 * src/locale.cc (codecvt<char, char, mbstate_t>::do_in): Use
5522 strcpy to copy between the two buffers.
5523
5524 * testsuite/27/27stringbuf.cc: Change license, fix in_avail tests.
5525 * testsuite/27/27filebuf.cc: New file.
5526 * testsuite/27/27filebuf-1.txt: Data file for above test.
5527 * testsuite/27/27filebuf-2.txt: Ditto.
5528
5529 * bits/std_streambuf.h (uflow): Re-implement default.
5530 * bits/std_fstream.h: Set _M_buf_size based on cstdio's BUFSIZ.
5531 Re-implement virtual functions.
5532 * bits/fstream.tcc: Delete unused mf's.
5533
55341998-12-31 Benjamin Kosnik <bkoz@lunatic.cygnus.com>
5535
5536 * bits/fstream.tcc: Add fstream ctor for cin/cout/etc.
5537 * bits/std_fstream.h: Ditto.
5538 * src/stdstreams.cc: Ditto.
5539
5540 * math/cpowl.c: Fix header typo with last change.
5541
55421998-12-31 Benjamin Kosnik <bkoz@loony.cygnus.com>
5543
5544 * COPYING: New file (GPL v 2).
5545 * LICENSE.STD: Remove.
5546 * ./*: Change license.
5547
55481998-12-30 Benjamin Kosnik <bkoz@haight.constant.com>
5549
5550 * bits/std_streambuf.h (std): Remove static on _M_init.
5551 * bits/streambuf.tcc (std): Ditto.
5552
5553 * bits/std_fstream.h: Add changes as discussed with Nathan, including
5554 state_type and codecvt_type members, the allocation of an internal
5555 buffer, the streamlined codecvt calls, etc.
5556
55571998-12-21 Benjamin Kosnik <bkoz@haight.constant.com>
5558
5559 * bits/std_sstream.h: Tweak.
5560 * bits/fstream.tcc: Remove unused stubs.
5561 * bits/std_fstream.h: Tweak.
5562
55631998-12-17 Benjamin Kosnik <bkoz@tintin.cygnus.com>
5564
5565 * bits/std_streambuf.h: Move _IO_file_flags into basic_filebuf.
5566 Remove unused _IO_* members, possibly put into filebuf, which may
5567 need them.
5568 * bits/std_fstream.h: Add _M_flag.
5569 * bits/sbuf_iter.h: Tweak.
5570
5571 * bits/std_cstdio.h: Add SEEK_SET, SEEK_END, SEEK_CUR.
5572 * bits/ios_base.h: Use.
5573
5574 * src/stdstreams.cc: Modify to reflect standard ctors for
5575 filebuf.
5576 * src/misc-inst.cc: Ditto.
5577
5578 * bits/os_raw.h: Wrap in std namespace. Model parameters on
5579 underlying C library calls instead of the underlying unix
5580 filesystem.
5581 * src/os_raw.cc (_S_os_open): Use fopen, and compute a mode
5582 string as per p.659.
5583 (_S_os_close): Model on fopen.
5584 (_S_os_read): Model on fread.
5585 (_S_os_write): Model on fwrite.
5586 (_S_os_seek): Model on fseek.
5587
5588 * bits/ios_base.h: Tweak.
5589 * bits/std_iosfwd.h: Wrap libio.h include with extern "C".
5590 * bits/std_sstream.h: Tweak.
5591 * bits/sstream.tcc: Remove old, uncalled code.
5592 * bits/std_fstream.h: Major reconstruction.
5593 * bits/fstream.tcc: Disable for the time being.
5594
55951998-12-11 Benjamin Kosnik <bkoz@haight.constant.com>
5596
5597 * bits/basic_string.h: Fix insert method.
5598 * stl/bits/stl_iterator.h: Remove previous hack.
5599 * bits/std_streambuf.h (sbumpc): Correct increment/return oddness.
5600 * bits/std_sstream.h: Fix more regressions.
5601 * testsuite/27/27stringbuf.C: Add (almost) complete tests.
5602
56031998-12-09 Benjamin Kosnik <bkoz@loony.cygnus.com>
5604
5605 * bits/basic_string.h: Tweak.
5606
5607 * stl/bits/stl_iterator.h: Specialize iterator_traits for int so
5608 that string::append can be instantiated. HACK--checkin
5609 basic_string::iterator class.
5610
56111998-12-07 Benjamin Kosnik <bkoz@haight.constant.com>
5612
5613 * bits/std_sstream.h: Tweak.
5614 * bits/sstream.tcc: Tweak ctors.
5615
5616 FIXME invalid friend defs. . WHERE ARE THEY??
5617
5618 * bits/sbuf_iter.h (istreambuf_iterator::equal): Change to new
5619 names for basic_streambuf data members.
5620
5621 * bits/std_streambuf.h: Add getloc() initialization bits.
5622 basic_streambuf(): Initialize with global locale data.
5623 imbue(): Set _M_init.
5624
5625 * bits/std_streambuf.h(seekoff, seekpos): Complete with invalid
5626 stream pos == pos_type(off_type(-1)).
5627 in_avail(): Complete default implementation.
5628 snextc, sbumpc, sputbackc, sungetc, sputc, setg, xsputn,
5629 underflow, uflow, xsgetn, showmany, sync: Ditto.
5630
5631 * bits/std_streambuf.h: _M_snextc_helper(): Remove.
5632
5633 * bits/streambuf.tcc (sputbackc): Temporarily remove, need to
5634 re-populate with in-line member functions that are too big. Add
5635 initialization for _M_init.
5636
56371998-12-03 Benjamin Kosnik <bkoz@cygnus.com>
5638
5639 * bits/sstream.tcc: Convert _Allocator to _Alloc. Add typedefs
5640 for basic_string and basic_streambuf. Scope _IO_buf_* pointers to
5641 streambuf_type.
5642
5643 * src/stdstreams.cc (std): Disable wchar_t instantiations.
5644
5645 * bits/c++config.h (_G_DEPRICATED): Add.
5646 (_G_USE_WCHAR_T): Add.
5647 * bits/std_streambuf.h: Radical reconstruction of basic_streambuf.
5648 Take out _Streambuf_base. Put _IO_FILE data member in basic_filebuf.
5649 * bits/streambuf.tcc (sputbackc): Remove ctor anti-def, Tweak.
5650 * bits/std_fstream.h: Add comment for implementation.
5651 * src/streambuf.cc: Remove.
5652 * src/Makefile.in: Remove streambuf.lo.
5653 * src/misc-inst.cc: Tweak.
5654
56551998-12-02 Benjamin Kosnik <bkoz@cygnus.com>
5656
5657 * bits/std_sstream.h: Add const_cast to rdbuf returns.
5658 * testsuite/27stringstream.C: Modify.
5659
56601998-11-25 Benjamin Kosnik <bkoz@haight.constant.com>
5661
5662 * src/Makefile.in (libstdc___la_OBJECTS): Add streambuf.lo.
5663 (libstdc___la_SOURCES): Ditto.
5664
5665 * bits/streambuf.tcc: Tweak.
5666
5667 * src/streambuf.cc: New file, add out-of-line definitions for
5668 _Streambuf_base.
5669
5670 * src/misc-inst.cc: Remove _Streambuf_base instantiations.
5671 Comment out wchar_t versions of the buffer instantiations, for now.
5672
5673 * bits/std_streambuf.h: Wrap libio.h include with extern "C".
5674 Remove template wrapper around _Streambuf_base.
5675 Move IO_* data members into _Streambuf_base.
5676 Move _Streambuf_base members into streambuf.tcc.
5677
5678 * bits/c++config.h (_G_USE_LIBIO): Enable.
5679
56801998-11-02 Nathan Myers <ncm@cantrip.org>
5681
5682 * CHECKLIST: downgrade iterator implementations
5683 * DESIGN: fill out notes about unimplemented features
5684
56851998-10-31 Nathan Myers <ncm@cantrip.org>
5686
5687 * CHECKLIST: itemized list of all interfaces, and status of each.
5688
56891998-10-30 Nathan Myers <ncm@cantrip.org>
5690
5691 * RELEASE-NOTES: add notes about optional includes, linking, running
5692 * src/Makefile.am: handle header installs properly
5693 * src/Makefile.in: regenerate from new src/Makefile.am
5694
56951998-10-30 Benjamin Kosnik <bkoz@loony.cygnus.com>
5696
5697 * bits/basic_string.h: Revert npos pending ciso646.
5698 * src/Makefile.am: Revert CXX flags for now.
5699 * src/Makefile.in: Ditto.
5700
57011998-10-30 Brendan Kehoe <brendan@cygnus.com>
5702
5703 * bits/std_sstream.h: Re-order ctors to put base before member
5704 inits.
5705
57061998-10-30 Ryszard Kabatek <kabatek@chemie.uni-halle.de>
5707
5708 * stl/bits/std_memory.h: Fix typo.
5709
57101998-10-30 Nathan Myers <ncm@cantrip.org>
5711
5712 * src/string[A-Z]+.cc: change back to include "string.cc".
5713 * src/Makefile.am: revert filename changes. We need a different
5714 way to keep filenames in std/ from confusing Make.
5715 * bits/basic_string.h: define _S_max_size right, return it from
5716 string::max_size(); churn definition of npos again.
5717 * bits/string.tcc: fix _S_frob_size to avoid uint overflow.
5718 * bits/ios.cc: remove #ifdef on ios_base locale member initialization
5719 * BUGS: clear cruft.
5720 * C++STYLE: Touchup for release.
5721 * CHECKLIST: Touchup for release.
5722 * DESIGN: New file.
5723 * LICENSE.STD: Add requirement to retain copyrights and to provide
5724 the license with any copies.
5725 * README: Update for release.
5726 * TODO: Minor touchup for release.
5727 * RELEASE-NOTES: prepare for release
5728
57291998-10-29 Ulrich Drepper <drepper@cygnus.com>
5730
5731 * src/string[A-Z]+.cc: Include stdstring.cc, not string.cc.
5732
5733 * src/Makefile.am (CXXFLAGS): Define _GNU_SOURCE.
5734
5735 * src/Makefile.am (CXXLINK): New variable. Make sure we don't use
5736 CXX to generate the shared object.
5737
5738 * src/Makefile.am (headers): Remove duplicated char_traits.h.
5739
57401998-10-29 Brendan Kehoe <brendan@cygnus.com>
5741
5742 * bits/basic_string.h (basic_string<>::max_size): Subtract 1, not
5743 2, from npos, solving infinite loop problems.
5744
57451998-10-29 18:41 Ulrich Drepper <drepper@cygnus.com>
5746
5747 * src/Makefile.am: Add rules to install headers.
5748
57491998-10-29 Nathan Myers <ncm@cantrip.org>
5750
5751 * bits/std_ostream.h: Remove #ifdef on operator<< for long double
5752 * bits/ostream.tcc: Remove #ifdef on operator<< for long double
5753 * shadow/libio.h:
5754 * shadow/unistd.h:
5755 * shadow/bits/wrap_libio.h:
5756 * shadow/bits/wrap_unistd.h: New files.
5757
57581998-10-29 Brendan Kehoe <brendan@cygnus.com>
5759
5760 * bits/ostream.tcc (operator<<): Wrap with #ifdef
5761 _G_HAVE_LONG_DOUBLE_IO, to match bits/std_ostream.h.
5762
57631998-10-29 Ulrich Drepper <drepper@cygnus.com>
5764
5765 * src/Makefile.am: Add temporarily rules to make sure misc-inst.cc
5766 is not compiled with -fno-implicit-templates in effect.
5767
5768 * src/Makefile.am (EXTRA_SOURCES): Add string.cc and wstring.cc here.
5769 (libstdc___la_SOURCES): Add all the string*.cc and wstring*.cc files.
5770 * src/stringADDCS.cc: Wrapper around string.cc to define individual
5771 function.
5772 * src/stringADDPS.cc: Likewise.
5773 * src/stringADDSC.cc: Likewise.
5774 * src/stringADDSP.cc: Likewise.
5775 * src/stringADDSS.cc: Likewise.
5776 * src/stringBIST.cc: Likewise.
5777 * src/stringBOST.cc: Likewise.
5778 * src/stringCHTR.cc: Likewise.
5779 * src/stringEQPS.cc: Likewise.
5780 * src/stringEQSP.cc: Likewise.
5781 * src/stringEQSS.cc: Likewise.
5782 * src/stringEXTRA.cc: Likewise.
5783 * src/stringGEPS.cc: Likewise.
5784 * src/stringGESP.cc: Likewise.
5785 * src/stringGESS.cc: Likewise.
5786 * src/stringGETLI.cc: Likewise.
5787 * src/stringGTPS.cc: Likewise.
5788 * src/stringGTSP.cc: Likewise.
5789 * src/stringGTSS.cc: Likewise.
5790 * src/stringINSER.cc: Likewise.
5791 * src/stringLEPS.cc: Likewise.
5792 * src/stringLESP.cc: Likewise.
5793 * src/stringLESS.cc: Likewise.
5794 * src/stringLTPS.cc: Likewise.
5795 * src/stringLTSP.cc: Likewise.
5796 * src/stringLTSS.cc: Likewise.
5797 * src/stringMAIN.cc: Likewise.
5798 * src/stringNEPS.cc: Likewise.
5799 * src/stringNESP.cc: Likewise.
5800 * src/stringNESS.cc: Likewise.
5801 * src/stringSCOPY.cc: Likewise.
5802 * src/wstringADDCS.cc: Wrapper around wstring.cc to define individual
5803 functions.
5804 * src/wstringADDPS.cc: Likewise.
5805 * src/wstringADDSC.cc: Likewise.
5806 * src/wstringADDSP.cc: Likewise.
5807 * src/wstringADDSS.cc: Likewise.
5808 * src/wstringBIST.cc: Likewise.
5809 * src/wstringBOST.cc: Likewise.
5810 * src/wstringCHTR.cc: Likewise.
5811 * src/wstringEQPS.cc: Likewise.
5812 * src/wstringEQSP.cc: Likewise.
5813 * src/wstringEQSS.cc: Likewise.
5814 * src/wstringEXTRA.cc: Likewise.
5815 * src/wstringGEPS.cc: Likewise.
5816 * src/wstringGESP.cc: Likewise.
5817 * src/wstringGESS.cc: Likewise.
5818 * src/wstringGETLI.cc: Likewise.
5819 * src/wstringGTPS.cc: Likewise.
5820 * src/wstringGTSP.cc: Likewise.
5821 * src/wstringGTSS.cc: Likewise.
5822 * src/wstringINSER.cc: Likewise.
5823 * src/wstringLEPS.cc: Likewise.
5824 * src/wstringLESP.cc: Likewise.
5825 * src/wstringLESS.cc: Likewise.
5826 * src/wstringLTPS.cc: Likewise.
5827 * src/wstringLTSP.cc: Likewise.
5828 * src/wstringLTSS.cc: Likewise.
5829 * src/wstringMAIN.cc: Likewise.
5830 * src/wstringNEPS.cc: Likewise.
5831 * src/wstringNESP.cc: Likewise.
5832 * src/wstringNESS.cc: Likewise.
5833 * src/wstringSCOPY.cc: Likewise.
5834 * src/string.cc: Remove now unneeded #defines now.
5835
58361998-10-29 Nathan Myers <ncm@cantrip.org>
5837
5838 * bits/locfacets.tcc: Define num_put::put(... const void*), improve
5839 integer formatting.
5840 * bits/ostream.tcc: Delete cruft, rewrite various op<< as members,
5841 add definitions for double, long double, const void*.
5842 * bits/std_ostream.h: Move op<<'s back into class ostream,
5843 define some in-line.
5844 * bits/string.tcc: fix unnecessary-copying bug in op[], typos in
5845 string construction from input iterators that Brendan reported.
5846
5847
58481998-10-28 Brendan Kehoe <brendan@cygnus.com>
5849
5850 * stl/bits/stl_pair.h (op!=, op>, p<=, op>=): Add missing definitions.
5851
5852 * bits/valarray_meta.h (class _Constant): Move declaration to the
5853 top, so the rest of the file can grok it.
5854 (_ApplyBinaryFunction::operator[]): Add missing parenthesis.
5855
5856 * bits/std_sstream.h (basic_ostringstream::str): Fix typo of extra
5857 semicolon.
5858 (basic_stringstream::str, both instances): Likewise.
5859
58601998-10-28 Nathan Myers <ncm@cantrip.org>
5861
5862 * bits/locfacets.h: fix num_put<>::falsename()
5863 * bits/locfacets.tcc: fix _Format_cache<>::_M_populate bool name init
5864 * testsuite/27/27octfmt.C, testsuite/27/27octfmt.C: new tests
5865 * bits/locfacets.tcc: touch up _S_group_digits.
5866 * src/misc-inst.cc: adjust _S_group_digits insts to match.
5867
58681998-10-27 Nathan Myers <ncm@cantrip.org>
5869
5870 * stl/bits/stl_config.h: Turn off long long support, for now.
5871 * src/locale-inst.cc: Instantiate num_put<> only for
5872 ostreambuf_iterator, num_get only for istreambuf_iterator.
5873 * src/misc-inst.cc: Delete duplicate locale-related instantiations,
5874 add lots of new instantiations for num_put support function templates;
5875 remove junk about __match_parallel for ostreambuf_iterator.
5876
58771998-10-27 Nathan Myers <ncm@cantrip.org>
5878
5879 * bits/locfacets.tcc: Make num_put's digit grouping work.
5880 * bits/string.tcc: More uglification.
5881 * src/ios.cc: initialize format cache right
5882
58831998-10-26 Nathan Myers <ncm@cantrip.org>
5884
5885 * bits/basic_string.h: Uglify more names.
5886 * bits/fstream.tcc: Rewrite some filebut output handling.
5887 * bits/ios_base.h: Cosmetic.
5888 * bits/locfacets.h: Changes to _Format_cache for support of num_put.
5889 Also, specialize its default ctor for optimal default case.
5890 #ifdef out "long long" prototypes for now.
5891 * bits/locfacets.tcc: Do complete, optimized num_put<>::do_put
5892 implementation for integer types. (Still needs optimized
5893 std::copy() applied to ostreambuf_iterator to be optimal.)
5894 * bits/ostream.tcc: Write operator<< for long, bool types.
5895 Make other operators<< non-members, per spec. (Many still
5896 not implemented.) Identify those that fail to create a sentry.
5897 * bits/sbuf_iter: Cosmetic.
5898 * bits/std_fstream.h: Add some filebuf members.
5899 * bits/std_locale.h: Include <limits> for use in bits/locfacets.h
5900 * bits/std_ostream.h: Make member operators<< global, per spec.
5901 (Should do the same in std_istream.h.)
5902 * bits/std_string.h: Include <limits> for use in bits/locfacets.h
5903 * bits/string.tcc: Uglify names
5904 * shadow/bits/std_cstdlib.h: Optimize std::div and std::ldiv.
5905 * src/ios.cc: Specialize _Format_cache<> for char and wchar_t,
5906 for optimal default behavior.
5907
59081998-10-26 Benjamin Kosnik <bkoz@loony.cygnus.com>
5909
5910 * src/Makefile.in (libstdc___la_SOURCES): Add misc-inst.cc again.
5911
59121998-10-21 Nathan Myers <ncm@cantrip.org>
5913
5914 * src/locale.cc: make ctype operations actually work for glibc
5915 * CHECKLIST: add a comprehensive (i.e. huge) implementation
5916 checklist of stdlib facilities. Not filled in yet.
5917
59181998-10-20 Nathan Myers <ncm@cantrip.org>
5919
5920 * bits/string.tcc: fix patching NULs on string ends.
5921
59221998-10-19 Nathan Myers <ncm@cantrip.org>
5923
5924 * bits/std_iosfwd.h: eliminate "basic_" prefix on streambuf
5925 iterator forward declarations
5926 * bits/sbuf_iter.h: eliminate default template argument definitions
5927 on streambuf iterators (rely on <iosfwd> decls).
5928 * TODO: add note about lazy facet construction
5929 * bits/basic_ios.h: hit operator void* again. This should be the
5930 last time we need to touch it.
5931 * bits/basic_ios.h: copyfmt now returns *this.
5932 * bits/basic_string.h: fix npos again. npos cannot be defined as zero.
5933 * bits/basic_string.h: put back overloaded constructors; adjust
5934 behavior for default allocator on copy constructor.
5935 * bits/char_traits.h: make not_eof return correct type.
5936 * bits/loccore.h: remove call to bits/std_stdexcept.h; subincludes
5937 cannot be in non-standard headers or we get include loops (bad)
5938 * bits/loccore.h: delete ifdef'd out workarounds for old compiler bugs.
5939 * bits/loccore.h: add apparatus to support lazy construction of
5940 facets.
5941 * bits/locfacets.tcc: Uglify names in __match_parallel decl.
5942 * bits/std_ios.h: add include of <typeinfo> to get bad_cast for
5943 locale use_facet<> failure.
5944 * bits/std_locale.h: same.
5945 * bits/std_string.h: same.
5946 * bits/std_stdexcept.h: change exception member __msg from a
5947 reference to a regular object.
5948 * bits/string.tcc: add pasting a NUL on the end of strings after
5949 each operation. We had already left room for it, but previously
5950 plugged it only on a call to c_str(), but the WG changed the
5951 requirement when I wasn't looking. (Can't leave them alone for
5952 a second without they break something else.)
5953 * bits/valarray_meta.h: add Gaby's changes from 981018.
5954 * src/locale.cc: add new type _Bad_use_facet to be thrown on
5955 failure of use_facet<>().
5956 * src/stdexcept.cc: remove pragma, remove bkoz's #if 0,
5957 comment out leftover member definitions
5958
59591998-10-16 Ulrich Drepper <drepper@cygnus.com>
5960
5961 * string/Makefile.am: Revert last change.
5962 * math/Makefile.am: Likewise.
5963
59641998-10-15 Benjamin Kosnik <bkoz@haight.constant.com>
5965
5966 * bits/std_sstream.h: Fix typo.
5967
59681998-10-15 Benjamin Kosnik <bkoz@haight.constant.com>
5969
5970 * src/Makefile.am (libstdc___la_SOURCES): Add misc-inst.cc.
5971
5972 * bits/std_sstream.h: Add typedefs, member definitions. Clean.
5973 * bits/std_stdexcept.h: Remove.
5974
59751998-10-15 Benjamin Kosnik <bkoz@haight.constant.com>
5976
5977 * src/misc-inst.cc: Tweak again.
5978
5979 * bits/std_sstream.h: Move out-of-line definitions to sstream.tcc.
5980 * bits/sstream.tcc: New file.
5981
59821998-10-15 Ulrich Drepper <drepper@cygnus.com>
5983
5984 * configure.in: Test for machine/param.h, sys/machine.h and fp.h.
5985 Don't run AC_C_BIGENDIAN if machine/param.h or sys/machine.h are
5986 available.
5987
5988 * math/mathconf.h: Include sys/machine.h, machine/param.h and fp.h
5989 if available.
5990 (INFINITE_P): Use IS_INF macro if available.
5991
59921998-10-15 Ulrich Drepper <drepper@cygnus.com>
5993
5994 * math/Makefile.am (EXTRA_LTLIBRARIES): Renamed from
5995 noinst_LTLIBRARIES.
5996 * string/Makefile.am: Likewise.
5997
59981998-10-15 Ulrich Drepper <drepper@cygnus.com>
5999
6000 * configure.in (AC_CHECK_FUNCS): Add finite, qfinite, fpclass, and
6001 qfpclass.
6002 (AC_CHECK_HEADERS): Add machine/endian.h. If no header specifying
6003 endianess is available run AC_C_BIGENDIAN.
6004
6005 * math/clog10l.c: Add ugly hack around bug in Irix 6.2 header until
6006 fixincludes is fixed.
6007 * math/clogl.c: Likewise.
6008 * math/csqrtl.c: Likewise.
6009 * math/mycabsl.c: Likewise.
6010
6011 * math/mathconf.h: Include machine/endian.h if possible. If no
6012 header describing endianess is available rely on WORDS_BIGENDIAN
6013 macro.
6014 (FINITE_P, FINITEF_P, FINITEL_P): Use finite functino if available.
6015 (INFINITE_P, INFINITEF_P, INFINITEL_P): Use fpclass function if
6016 available.
6017
6018 * src/complex.cc (polar): Don't use sincos on OSF machines.
6019
60201998-10-09 Benjamin Kosnik <bkoz@loony.cygnus.com>
6021
6022 * src/locale-inst.cc: Don't instantiate time_get for
6023 ostreambuf_iterators as time_get::do_get_weekday and
6024 time_get::do_get_monthname use __match_parallel, which is illegal
6025 for ostreambuf_iterators to use, as they don't have operator== or
6026 operator!=.
6027 * bits/std_stdexcept.h: Add dtor definitions.
6028 Use stl/bits/std_stdexcept.h instead of this file?
6029 * bits/sbuf_iter.h : Tweak.
6030 * src/misc-inst.cc: Tweak.
6031
60321998-10-09 Benjamin Kosnik <bkoz@haight.constant.com>
6033
6034 * bits/std_stdexcept.h: New file.
6035 * src/stdexcept.cc: Define the following:
6036 logic_error::what()
6037 runtime_error::what()
6038
6039 * src/misc-inst.cc: New file.
6040 * src/Makefile.in (libstdc___la_SOURCES): Add misc-inst.cc.
6041 (libstdc___la_OBJECTS): Add misc-inst.lo.
6042
6043 * bits/basic_string.h: Disable non-standard ctor declarations.
6044 * bits/string.tcc: Disable definitions as well.
6045 * src/string.cc: Disable <ios> dependancies.
6046 * bits/sbuf_iter.h (std): Add default to template parameter for
6047 ostreambuf_iterator and istreambuf_iterator.
6048 * bits/std_iosfwd.h: Change istreambuf_iterator to
6049 basic_istreambuf_iterator. Likewise for ostreambuf.
6050 * bits/locfacets.tcc (__match_parallel): Fix typo.
6051 * src/ios.cc (imbue): Remove the _G_HAVE_LOCALE guards around
6052 ios_base::imbue.
6053 * bits/std_streambuf.h: Define _Streambuf_base::getloc().
6054 * bits/std_istream.h: Define the following:
6055 get (basic_streambuf<char_type,_Traits>& __sb, char_type __delim)
6056 get (char_type* __s, streamsize __n, char_type __delim);
6057 getline (char_type* __s, streamsize __n, char_type __delim)
6058 * bits/loccore.h : FIXME friend template code for use_facet.
6059 Add std_stdexcept.h include so that range_error will be defined.
6060 Add explicit conversion to string for range_error throws. (HACK?)
6061
60621998-10-8 Ulrich Drepper <drepepr@cygnus.com>
6063
6064 * configure.in: Check for sincos, sincosf, and sincosl.
6065 * src/complex.cc (polar): Use sincos if available.
6066
6067 * bits/c++config.h: Fix hack to get LONG_LONG* definitions on Linux.
6068 * stl/bits/std_limits.h: Include bits/c++config.h. HACK!!!
6069
6070 * math/clog10.c: Fix typo (FP_INIFITE_P -> INFINITE_P).
6071
6072 * math/cpow.c: Use c_log, not clog.
6073 * math/cpowf.c: Likewise.
6074 * math/cpowl.c: Likewise.
6075
6076 * math/cexp.c: Remove unused fpclassify calls. Use FINITE_P instead
6077 of isfinite call.
6078
6079 * math/mathconf.h (FINITE_P, FINITEF_P, FINITEL_P): Define using
6080 isfinite macro if it is available.
6081 (INFINITE_P, INFINITEF_P, INFINITEL_P): Define using isinf macro.
6082
6083 * math/ccosf.c: Use appropriate test macros for this type.
6084 * math/ccoshf.c: Likewise.
6085 * math/ccoshl.c: Likewise.
6086 * math/ccosl.c: Likewise.
6087 * math/cexpf.c: Likewise.
6088 * math/cexpl.c: Likewise.
6089 * math/clog10f.c: Likewise.
6090 * math/clog10l.c: Likewise.
6091 * math/clogf.c: Likewise.
6092 * math/clogl.c: Likewise.
6093 * math/csinf.c: Likewise.
6094 * math/csinhf.c: Likewise.
6095 * math/csinhl.c: Likewise.
6096 * math/csinl.c: Likewise.
6097 * math/csqrtf.c: Likewise.
6098 * math/csqrtl.c: Likewise.
6099 * math/ctanf.c: Likewise.
6100 * math/ctanhf.c: Likewise.
6101 * math/ctanhl.c: Likewise.
6102 * math/ctanl.c: Likewise.
6103
61041998-10-06 Benjamin Kosnik <bkoz@bliss.nabi.net>
6105
6106 * bits/basic_ios.h: Fix previous change.
6107
61081998-10-06 Benjamin Kosnik <bkoz@bliss.nabi.net>
6109
6110 * bits/basic_ios.h: Add const_cast<basic_ios&>
6111 (operator void*): As per 5.2.9 p 2, make sure static_cast is
6112 well-formed.
6113 * bits/char_traits.h: No _CharT for specialization, change to 0.
6114 * bits/basic_string.h: As per 9.4.2 p4, initialize with
6115 constant-initializer.
6116 * bits/locfacets.tcc: Add template parameter to initialization list.
6117
61181998-10-02 Benjamin Kosnik <bkoz@loony.cygnus.com>
6119
6120 * bits/basic_string.h: Should just be <, not <=.
6121
61221998-10-01 Benjamin Kosnik <bkoz@bliss.nabi.net>
6123
6124 * bits/string.tcc (compare): Fix for strings that are similar, but
6125 not the same length.
6126
61271998-09-04 Brendan Kehoe <brendan@cygnus.com>
6128
6129 * bits/c++config.h: For __linux__, define _GNU_SOURCE. This is
6130 required for us to get LONG_LONG_{MIN,MAX} out of gcc's limits.h.
6131 We can't check for __GLIBC__ here, since this header can be read
6132 before any system one (that would lead to features.h) being used.
6133
6134 * stl/bits/stl_config.h (__STL_LONG_LONG): Re-enabled
6135
6136 * stl/bits/std_limits.h [__STL_LONG_LONG]: Fix usage to use
6137 LONG_LONG_MIN, LONG_LONG_MAX, and ULONG_LONG_MAX.
6138
6139 * stl/bits/stl_config.h: Don't do __STL_LONG_LONG, it uses
6140 LONGLONG_{MIN,MAX} which I can't find the origin of.
6141
61421998-09-03 Brendan Kehoe <brendan@cygnus.com>
6143
6144 * stl/bits/stl_iterator.h: Add extern decl of cin for now; where
6145 should this come from, if not iostream.h?
6146 (class istream_iterator): Make the new operator!= a friend also.
6147
6148 * stl/bits/stl_config.h: Define __STL_HAS_WCHAR_T,
6149 __STL_MEMBER_TEMPLATE_CLASSES, and __STL_LONG_LONG. Don't include
6150 _G_config.h like the egcs one does.
6151
61521998-09-01 Brendan Kehoe <brendan@cygnus.com>
6153
6154 * bits/string.tcc: Call `_M_destroy' instead of `destroy'.
6155
6156 * bits/valarray_meta.h: Throughout, rename _Expr typedefs to be
6157 _Expr1 (or _Expr_def if it's taken), and change definitions.
6158 Avoids redecl of the template parm.
6159
6160 * bits/string.tcc (basic_string copy ctor): Fix typo in declaration.
6161 (operator>>): Initialize __ERROR with ios_base::goodbit, not 0.
6162
6163 * bits/std_streambuf.h (_POSIX_SOURCE): Only define if it's not
6164 already done.
6165
6166 * src/locale-inst.cc: New file, **TOTAL HACK**. There has GOT to
6167 be a better way to do this.
6168
6169 * src/stlinst.cc: New file.
6170
6171 * BUGS: New file, with various discovered bugs that need to be
6172 fixed.
6173
6174 * Makefile.in, math/Makefile.in, string/Makefile.in,
6175 src/Makefile.in: Reran automake.
6176
6177 Workarounds, these may not all be the final fixes:
6178
6179 * bits/basic_ios.h (class basic_ios): Make _M_strbuf be protected,
6180 not private, for basic_istream::get() in std_istream.h to be able
6181 to use it.
6182 (basic_ios::operator void*): Don't use static_cast for the false
6183 case.
6184 (basic_ios::copyfmt): Fix `rhs.except' to be `rhs.exceptions ()'.
6185 This appears to have been in sep94, but didn't get corrected
6186 afterwards.
6187
6188 * bits/basic_string.h (npos): Don't init here.
6189 * bits/string.tcc: Instead, do initialization here, to -1 instead
6190 of the size_type destructor.
6191
6192 * src/traits.cc, src/wtraits.cc: New files.
6193 * bits/char_traits.h: For char_traits<char> and
6194 char_traits<wchar_t>, declare static, but define over in the src
6195 files.
6196
6197 * bits/gslice.h: Comment out forward decls of _Array, valarray,
6198 gslice_array, and _GsliceExpression.
6199
6200 * bits/std_cstdio.h [__sparc__ && __svr4__]: #undef all of
6201 clearerr, feof, ferror, getc, getchar, putc, putchar, stdin,
6202 stdout, and stderr. Note we do get unresolved refs to stdin, but
6203 that'll get fixed by the "true" solution.
6204
6205 * bits/std_ios.h: Include <bits/std_streambuf.h> to get the
6206 definition of basic_streambuf.h, which is used in basic_ios.h to
6207 call pubimbue.
6208
6209 * bits/std_streambuf.h: Don't include libio.h for now.
6210 (class basic_streambuf): Define missing methods pubimbue and
6211 getloc.
6212
6213 * src/Makefile.am (libstdc___la_SOURCES): Add stdexcept.cc,
6214 ios.cc, os_raw.cc, stdstreams.cc, locale.cc, localename.cc,
6215 locale-inst.cc, stlinst.cc, traits.cc, wtraits.cc.
6216
6217 * src/ios.cc: Instantiate basic_ios<char> and basic_ios<wchar_t>.
6218
6219 * src/locale.cc: Come up with munged versions of _S_toupper,
6220 _S_tolower, and _S_table instead of the glibc-specific ones, so
6221 they're at least defined, if not necessarily usable. The glibc
6222 ones on any other system will yield unresolved refs to
6223 __ctype_{b,toupper,tolower}.
6224
6225 * src/string.cc: Define all of ADDCS, ADDPS, et al. Add
6226 basic_ios, basic_istream, basic_ostream. Don't do char_traits
6227 anymore cuz of the explicit specialization in char_traits.h.
6228 Also add _S_string_copy, but this doesn't fix it -- cf the BUGS
6229 file for the details.
6230
6231 * stl/bits/stl_algobase.h (equal): Fix to do `! (x==y)'.
6232 * stl/bits/stl_iterator.h (__distance): Likewise.
6233
6234 * stl/bits/stl_iterator.h: As with 8/18 set, define missing op!=,
6235 op>, op<=, and op>= for reverse_iterator. Also add op!= for
6236 istream_iterator.
6237
62381998-08-26 Brendan Kehoe <brendan@cygnus.com>
6239
6240 * bits/string.tcc (basic_string::compare (const char*)): Fix to
6241 return 0, not 1.
6242
62431998-08-25 Brendan Kehoe <brendan@cygnus.com>
6244
6245 This should really be fixed with __asm__ directives renaming the
6246 symbol, but keeping the function.
6247 * math/clogf.c (c_logf): Renamed from `clogf'.
6248 * math/clogl.c (c_logl): Renamed from `clogl'.
6249 * math/complex-stub.h (c_logf, c_logl): Change decls.
6250
6251 * bits/locfacets.h (class _Numeric_get): For friend decls, rename
6252 _CharT and _InIter parms, since they duplicate the enclosing ones.
6253
62541998-08-19 Brendan Kehoe <brendan@cygnus.com>
6255
6256 Deal with conflict of the iostreams `clog' and our internal
6257 complex number `clog'.
6258 * src/complex.cc: Call `c_log' instead of `clog'.
6259 * math/clog.c (c_log):: Renamed from clog.
6260 * math/complex-stub.h (c_log): Renamed from clog decl.
6261
6262 * bits/locfacets.h (class _Numeric_get): Tweak fwd decls of the
6263 get/put classes.
6264 (num_put::put): #if 0 long long version, since we don't declare or
6265 define the long long version of do_put.
6266
62671998-08-18 Nathan Myers <ncm@cantrip.org>
6268
6269 * bits/basic_string.h: add basic_string<>::push_back(), fix return
6270 type of get_allocator (thanks to Ryszard Kabatek).
6271 * bits/char_traits.h: make init order of fpos<> members
6272 match decl order.
6273 * bits/ios_base.h: fix decls of ios_base bitmask & enum types, add
6274 flags _S_fd_in etc. for special filebuf ctor.
6275 * bits/locfacets.h: make _Numeric_get and _Format_cache public
6276 to work around problems in friend declarations.
6277 * bits/locfacets.tcc: qualify _S_get_cache in num_get<>::get(..bool&),
6278 fix random type errors & typos
6279 * bits/std_fstream.h: major refitting to bypass libio (for now),
6280 instrument to use bits/fstream.tcc template definitions
6281 * bits/std_iosfwd.h: mess with wrappers
6282 * bits/std_istream.h: remove meaningless comment
6283 * bits/std_ostream.h: instrument to work with ostream.tcc.
6284 * bits/std_streambuf.h: instrument to work with streambuf.tcc
6285 * bits/fstream.tcc: template defs for <fstream>
6286 * bits/ostream.tcc: template defs for <ostream>
6287 * bits/streambuf.tcc: template defs for <streambuf>
6288 * bits/os_raw.h: thin OS interface wrapper, to bypass libio (for now).
6289 * Delete .cc files, replace with bits/*.tcc
6290 src/fstream.cc
6291 src/istream.cc
6292 src/ostream.cc
6293 src/streambuf.cc
6294 * Add files:
6295 src/os_raw.cc: thin interface to OS, to bypass libio (for now).
6296 src/stdstreams.cc: cout, cin, etc. definitions
6297 (these still need work: must be init'd before user statics.)
6298
6299
63001998-08-18 Brendan Kehoe <brendan@cygnus.com>
6301
6302 Sent to SGI before checkin:
6303 * stl/bits/stl_vector.h (operator!=, operator>, operator<=,
6304 operator>=): Define.
6305 * stl/bits/stl_bvector.h (vector<bool>::flip): Define method.
6306 * stl/bits/stl_deque.h (operator!=, operator>, operator<=,
6307 operator>=): Define.
6308 (operator==, operator<): Add inline.
6309 * stl/bits/stl_map.h (operator!=, operator<, operator<=,
6310 operator>=): Define.
6311 * stl/bits/stl_multimap.h (operator!=, operator<, operator<=,
6312 operator>=): Define.
6313 * stl/bits/stl_list.h (operator!=, operator<, operator<=,
6314 operator>=): Define.
6315 * stl/bits/stl_set.h (operator!=, operator<, operator<=,
6316 operator>=): Define.
6317 * stl/bits/stl_multiset.h (operator!=, operator<, operator<=,
6318 operator>=): Define.
6319
6320 * bits/std_valarray.h (_Shift_left, _Shift_right): Inherit from
6321 unary_function.
6322
63231998-08-15 Nathan Myers <ncm@cantrip.org>
6324
6325 * bits/ios_base.h: change nominal bitmask and enum types to real enums
6326 * bits/locfacets.h: make _Format_cache bool names usable by num_get
6327 * bits/locfacets.tcc: make num_get<>::get(... bool&) use _Format_cache
6328 * bits/std_fstream.h: minor cleanups: ctors delegate to open()
6329 * bits/std_iosfwd.h: more bitmask changes, for ios_base::iostate
6330 * bits/std_sstream.h: formatting cleanups
6331
63321998-08-14 Nathan Myers <ncm@cantrip.org>
6333
6334 * bits/locfacets.tcc: implement num_get<>::do_get(..., bool&)
6335 * bits/locfacets.tcc: implement time_get<>::do_get_weekday
6336 * bits/locfacets.tcc: implement time_get<>::do_get_monthname
6337 * bits/locfacets.h: fix missing argument in do_get_monthname
6338 (this is a bug in the standard, ref. 36 in my list.)
6339 * bits/locfacets.h: make month and day name caches mutable
6340 * bits/locfacets.tcc: various typos in get() functions
6341 * bits/sbuf_iter.h: fix omission in istreambuf_iterator::op++().
6342 * bits/std_streambuf.h: fix typo in sgetn (Brendan)
6343
63441998-08-12 Nathan Myers <ncm@cantrip.org>
6345 * move streambuf iterators to bits/sbuf_iter.h
6346 * optimize streambuf iterators
6347 * begin generalizing streambuf
6348 * begin implementing num_get<>::get (starting with bool)
6349 * patch stl/bits/stl_config.h so that relops operators are
6350 contained properly, out of the way.
6351
63521998-07-24 Nathan Myers <ncm@cantrip.org>
6353 * Fold in SGI 3.11 changes (uglified names, some algorithm
6354 improvements, very minor bug fixes.)
6355 * Uglify names elsewhere to match (s/_T/_Tp/).
6356 * Begin work on optimized streambuf
6357 * Put complex.cc in namespace std:: (thanks Martin)
6358
63591998-07-17 Nathan Myers <ncm@cantrip.org>
6360
6361 * bits/char_traits.h: add _Char_traits_match template.
6362 * bits/string.tcc: fix bugs in various find_last* members.
6363 * bits/basic_string.h: redeclare member _S_find.
6364 * stl/bits/stl_iterator.h: change member names in nonstandard
6365 templates bidirectional_reverse_iterator and
6366 random_access_reverse_iterator to match expected changes
6367 in upstream source.
6368 * src/string.cc: fix definitions of stream operators.
6369
63701998-07-14 16:06 Ulrich Drepper <drepper@cygnus.com>
6371
6372 * Makefile.am (SUBDIRS): Add string.
6373
6374 * configure.in: Test for long double functions separately. Test for
6375 ISO C 89 float functions. Test for endian.h and sys/isa_defs.h.
6376 Generate string/Makefile.
6377
6378 * bits/c++config.h: Define mbstate_t for Solaris.
6379
6380 * bits/char_traits.h: Remove unused #if.
6381
6382 * bits/std_cwchar.h: Declare wide char string functions.
6383
6384 * m4/stringfcts.m4: New file.
6385
6386 * math/complex-stub.h: Declare nan.
6387 * math/nan.c: New file.
6388
6389 * math/mathconf.h: Hack around missing endian.h file.
6390 Handle missing NAN definition.
6391 Handle missing float math functions.
6392
6393 * src/Makefile.am (libstdc___la_LIBADD): Add libstring.la.
6394 (libstdc___la_LDFLAGS): Set version information.
6395
6396 * src/complexl.cc: Don't compile any code if no long double functions
6397 are available.
6398
6399 * string/Makefile.am: New file.
6400 * string/dummy.c: New file.
6401 * string/wmemchr.c: New file.
6402 * string/wmemcmp.c: New file.
6403 * string/wmemcpy.c: New file.
6404 * string/wmemmove.c: New file.
6405 * string/wmemset.c: New file.
6406
64071998-07-14 10:45 Ulrich Drepper <drepper@cygnus.com>
6408
6409 * configure.in: Make it work.
6410 * install-sh: New file.
6411 * missing: New file.
6412 * mkinstalldirs: New file.
6413 * m4/mathfcts.m4: New file.
6414 * math/Makefile.am: New file.
6415
6416 * bits/std_complex.h (conj): Mark specializations as inline.
6417
6418 * math/carg.c: New file.
6419 * math/cargf.c: New file.
6420 * math/cargl.c: New file.
6421 * math/mycabs.c: New file.
6422 * math/mycabsf.c: New file.
6423 * math/mycabsl.c: New file.
6424 * math/signbit.c: New file.
6425 * math/signbitf.c: New file.
6426 * math/signbitl.c: New file.
6427
6428 * math/ccos.c: Avoid ISO C 9x functionality.
6429 * math/ccosf.c: Likewise.
6430 * math/ccosh.c: Likewise.
6431 * math/ccoshf.c: Likewise.
6432 * math/ccoshl.c: Likewise.
6433 * math/ccosl.c: Likewise.
6434 * math/cexp.c: Likewise.
6435 * math/cexpf.c: Likewise.
6436 * math/cexpl.c: Likewise.
6437 * math/clog.c: Likewise.
6438 * math/clog10.c: Likewise.
6439 * math/clog10f.c: Likewise.
6440 * math/clog10l.c: Likewise.
6441 * math/clogf.c: Likewise.
6442 * math/clogl.c: Likewise.
6443 * math/cpow.c: Likewise.
6444 * math/cpowf.c: Likewise.
6445 * math/cpowl.c: Likewise.
6446 * math/csin.c: Likewise.
6447 * math/csinf.c: Likewise.
6448 * math/csinh.c: Likewise.
6449 * math/csinhf.c: Likewise.
6450 * math/csinhl.c: Likewise.
6451 * math/csinl.c: Likewise.
6452 * math/csqrt.c: Likewise.
6453 * math/csqrtf.c: Likewise.
6454 * math/csqrtl.c: Likewise.
6455 * math/ctan.c: Likewise.
6456 * math/ctanf.c: Likewise.
6457 * math/ctanh.c: Likewise.
6458 * math/ctanhf.c: Likewise.
6459 * math/ctanhl.c: Likewise.
6460 * math/ctanl.c: Likewise.
6461
6462 * math/complex-stub.h: New file.
6463
6464 * math/mathconf.h: New file.
6465
6466 * src/Makefile.am: New file.
6467
6468 * src/complex.cc: Use mathconf.h instead of complex.h.
6469 Don't use cabs, always use __mycabs.
6470
64711998-02-13 Brendan Kehoe <brendan@cygnus.com>
6472
6473 * iterator (class reverse_iterator): Do some tweaks to be in sync
6474 w/ the FDIS.