OSDN Git Service

efe4291224ed4813f2d03c5c8d1cd8579142dc33
[pf3gnuchains/gcc-fork.git] / libstdc++-v3 / ChangeLog
1 2000-10-29  Mark Mitchell  <mark@codesourcery.com>
2
3         * acinclue.m4 (GLIBCPP_ENABLE_ATOMICITY): Handle IRIX.
4         * aclocal.m4: Regenerated.
5         * configure: Likewise.
6         * config/os/irix/bits/atomicity.h: New file.
7         * config/os/irix/bits/os_defines.h (_POSIX_SOURCE): Undefine.
8         (__off_t): Define.
9         (__off64_t): Likewise.
10         (__ssize_t): Likewise.
11         (_G_USING_THUNKS): Define to zero.
12         
13 2000-10-28  Mark Mitchell  <mark@codesourcery.com>
14
15         * src/string-inst.cc (basic_string<C>::npos): Explicitly
16         instantiate it.
17
18 2000-10-26  Benjamin Kosnik  <bkoz@redhat.com>
19
20         * include/c/bits/std_cmath.h: Fix double declarations in namespace std.
21
22         Clean up naming, consistency in "C" library autoconf testing.
23         * acinclude.m4 (GLIBCPP_CHECK_CTYPE): For consistency, change to
24         GLIBCPP_CHECK_CTYPE_SUPPORT.
25         (GLIBCPP_CHECK_STDLIB_SUPPORT): Add.
26         * aclocal.m4: Regenerate.
27         * configure.in: And here. 
28         Add call to GLIBCPP_CHECK_STDLIB_SUPPORT.
29         * configure: Regenerate.
30         
31 2000-10-26  David Edelsohn  <edelsohn@gnu.org>
32
33         * acinclude.m4 (GLIBCPP_CHECK_STDLIB_DECL_AND_LINKAGE_2): New macro.
34         (GLIBCPP_CHECK_MATH_SUPPORT): Use it to test for strtold.
35         
36 2000-10-26  Phil Edwards  <pme@sources.redhat.com>  
37             David Edelsohn  <dje@watson.ibm.com>
38
39         * acinclude.m4 (GLIBCPP_CHECK_LINKER_FEATURES): Comment out
40         --gc-sections stuff entirely to avoid misleading people.
41         (GLIBCPP_ENABLE_CSTDIO): Merge need_libio and need_xtra_libio.
42         * libio/Makefile.am (LIBIO_SRCS,LIBIO_WSRCS,LIBIO_XTRA_SRCS):
43         Rearrange and merge.
44         * libio/libio.h: Simplify, make fewer assumptions.  Define those
45         macros which must be defined.
46         * config/os/solaris/solaris2.7/bits/os_defines.h: Simplify as a
47         result.
48
49 2000-10-26  Mark Mitchell  <mark@codesourcery.com>
50
51         * include/backward/streambuf.h: New file.
52
53 2000-10-26  David Edelsohn  <dje@watson.ibm.com> 
54         
55         * config/os/aix/bits/ctype_inline.h (is): Use __OBJ_DATA directly.
56         * config/os/aix/bits/ctype_noninline.h (do_tolower): Fix typo.
57         * config/os/aix/bits/os_defines.h: Add AIX defines.
58
59 2000-10-26  Benjamin Kosnik  <bkoz@redhat.com>
60
61         * acinclude.m4 (GLIBCPP_ENABLE_LONG_DOUBLE): Remove.
62         * aclocal.m4: Regenerate.
63         * configure.in: Remove GLIBCPP_ENABLE_LONG_DOUBLE.
64         * configure: Regenerate.
65         * docs/configopts.html: Remove.
66         * src/complexl.cc: Revert.
67         * config.h.in: Remove.
68         * include/c_std/bits/std_cmath.h: Remove guards based on
69         _GLIBCPP_USE_LONG_DOUBLE.
70         * include/c/bits/std_cmath.h: Same. Format. Match c_std behavior
71         with respect to long double signatures.
72
73         * config/os/aix/bits/ctype_noninline.h (ctype): Remove throw
74         specification.
75         * config/os/newlib/bits/ctype_noninline.h (ctype): And here.
76         * config/os/solaris/solaris2.6/bits/ctype_noninline.h (ctype): Same.
77         * config/os/solaris/solaris2.5/bits/ctype_noninline.h (ctype): Same.
78         * config/os/generic/bits/ctype_noninline.h (ctype): Same.
79         * config/os/bsd/bits/ctype_noninline.h (ctype): Same.
80
81 2000-10-26  Gabriel Dos Reis  <gdr@codesourcery.com>
82
83         * include/bits/std_valarray.h (valarray::valarray): Fix thinko.
84         Use __valarray_copy_construct only where appropriate.
85
86 2000-10-25  Mark Mitchell  <mark@codesourcery.com>
87
88         * Makefile.in (check): Don't make mkcheck executable.
89         (check-install): Likewise.
90         * configure.in (AC_OUTPUT): Make mkcheck executable.
91         * mkcheck.in (top_srcdir): New variable.
92         (INC_PATH): Set the path to the backward and ext directories
93         correctly.
94         
95 2000-10-25  Phil Edwards  <pme@sources.redhat.com>
96
97         * configure.in:  Check for gconv.h.
98         * libio/wfileops.c:  Wrap gconv.h in HAVE_GCONV_H.
99
100         * config/c_io_libio_codecvt.c:  Change __mbstate_t to __c_mbstate_t.
101         * libio/_G_config.h:  And here.
102         * libio/iofwide.c:  And here.
103         * libio/libio.h:  And here.
104
105         * config/os/solaris/solaris2.7/bits/ctype_noninline.h:  Remove
106           exception specification to match declaration.
107         * include/bits/locale_facets.tcc:  Include bits/std_clocale.h.
108
109 2000-10-24   Mark Harig <mharig@landmark.com>
110
111         * docs/configopts.html: Added documentation for the
112         "--enable-version-specific-runtime-libs" and
113         "--with-gxx-include-dir" configuration switches.
114
115 2000-10-24  Benjamin Kosnik  <bkoz@redhat.com>
116
117         * include/bits/stl_pair.h (make_pair): Add LWG solution.
118
119         * testsuite/21_strings/compare.cc (test01): Inject namespace std
120         into the mix.
121
122         * mkcheck.in (MAX_MEM_USAGE): Bump up to 3072. Strangely enough,
123         this works. 
124
125 2000-10-24  Levente Farkas  <lfarkas@mindmaker.hu>
126
127         * include/bits/std_bitset.h (_M_do_find_next): Fix typo.
128
129 2000-10-24  Phil Edwards  <pme@sources.redhat.com>
130
131         * acconfig.h:  List _GLIBCPP_USE_THREADS.
132         * acinclude.m4:  General formatting cleanup (tabs/spaces), typo
133           correction, etc.  Add comments about following *real* changes
134           where they are used.
135           (GLIBCPP_ENABLE_C_MBCHAR):  New test...
136           (GLIBCPP_CHECK_WCHAR_T_SUPPORT):  ...results used here.
137           (GLIBCPP_ENABLE_CSTDIO):  Define need_wlibio iff wide characters
138           are requested.
139           (GLIBCPP_ENABLE_THREADS):  If threads are used, define new
140           macro _GLIBCPP_USE_THREADS in c++config.h.
141           (GLIBCPP_ENABLE_SHADOW):  For C_INCLUDE_DIR, change () to {} as
142           this is used in both makefiles and shell scripts (mkcheck).
143         * configure.in:  Call GLIBCPP_ENABLE_C_MBCHAR.
144
145         * libio/_G_config.h:  Wrap _IO_MTSAFE_IO in _GLIBCPP_USE_THREADS.
146         * config/c_io_libio.h:  In nonthreaded case, typedef __c_lock to
147           something harmless, like int.
148
149         * config/os/aix/bits/os_defines.h:  Guard with _GLIBCPP_OS_DEFINES,
150           add comment/instructions.
151         * config/os/bsd/bits/os_defines.h:  Ditto.
152         * config/os/generic/bits/os_defines.h:  Ditto.
153         * config/os/gnu-linux/bits/os_defines.h:  Ditto.
154         * config/os/irix/bits/os_defines.h:  Ditto.
155         * config/os/newlib/bits/os_defines.h:  Ditto.
156         * config/os/solaris/solaris2.5/bits/os_defines.h:  Ditto.
157         * config/os/solaris/solaris2.6/bits/os_defines.h:  Ditto.
158
159         * mkcheck.in:  Limit the available heap size for testsuite
160           binaries, initially at 2MB.
161
162 2000-10-23  Benjamin Kosnik  <bkoz@redhat.com>
163
164         * testsuite/21_strings/compare.cc (test01): Add using declarations.
165
166         * include/c_std/bits/std_cerrno.h: And here.
167         * include/c_std/bits/std_cassert.h: Tweaks.
168
169         * mkcheck.in: Simplify.
170         
171         * acinclude.m4 (GLIBCPP_ENABLE_LONG_DOUBLE): Simplify.
172         (GLIBCPP_ENABLE_LONG_LONG): Same.
173         * aclocal.m4: Regenerate.
174
175         * src/Makefile.am (c_shadow_headers): Add features.h,
176         bits/wrap_features.h.
177         * src/Makefile.in: Regenerate.
178         * include/c_std/features.h: New file.
179         * include/c_std/bits/wrap_features.h (_CPP_WRAP_FEATURES_H): New
180         file. Need to have c++config.h included before this file so
181         _ISOC99_SOURCE around.
182
183         * include/c_std/sys/cdefs.h: Hack.
184         * include/c_std/stdlib.h: Same, use c++config.h.
185         * include/c_std/bits/std_cstdlib.h: Use _GLIBCPP_HAVE_STRTOLD.
186
187         * include/c_std/bits/std_cassert.h: Fix.
188         * include/c_std/bits/std_cerrno.h: Make consistent.
189
190         * include/c_std/bits/std_csetjmp.h (setjmp): Unscope global
191         declaration from ::_C_legacy to _C_legacy.
192
193         * include/c_std/bits/std_cstdio.h: same with printf.
194         * include/c_std/stdio.h: And here.
195
196         * include/c_std/bits/std_cstdlib.h: abort, exit comment.
197         * include/c_std/stdlib.h: Same here.
198         
199 2000-10-23  Benjamin Kosnik  <bkoz@redhat.com>
200
201         * testsuite/21_strings/compare.cc (test01): Add using declarations.
202
203         * include/c_std/bits/std_cerrno.h: And here.
204         * include/c_std/bits/std_cassert.h: Tweaks.
205
206         * mkcheck.in: Simplify.
207         
208         * acinclude.m4 (GLIBCPP_ENABLE_LONG_DOUBLE): Simplify.
209         (GLIBCPP_ENABLE_LONG_LONG): Same.
210         * aclocal.m4: Regenerate.
211
212         * src/Makefile.am (c_shadow_headers): Add features.h,
213         bits/wrap_features.h.
214         * src/Makefile.in: Regenerate.
215         * include/c_std/features.h: New file.
216         * include/c_std/bits/wrap_features.h (_CPP_WRAP_FEATURES_H): New
217         file. Need to have c++config.h included before this file so
218         _ISOC99_SOURCE around.
219
220         * include/c_std/sys/cdefs.h: Hack.
221         * include/c_std/stdlib.h: Same, use c++config.h.
222         * include/c_std/bits/std_cstdlib.h: Use _GLIBCPP_HAVE_STRTOLD.
223
224         * include/c_std/bits/std_cassert.h: Fix.
225         * include/c_std/bits/std_cerrno.h: Make consistent.
226
227         * include/c_std/bits/std_csetjmp.h (setjmp): Unscope global
228         declaration from ::_C_legacy to _C_legacy.
229
230         * include/c_std/bits/std_cstdio.h: same with printf.
231         * include/c_std/stdio.h: And here.
232
233         * include/c_std/bits/std_cstdlib.h: abort, exit comment.
234         * include/c_std/stdlib.h: Same here.
235         
236 2000-10-21  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
237
238         * acinclude.m4 (GLIBCPP_ENABLE_LONG_DOUBLE): New macro.
239         * aclocal.m4: Regenerate.
240         * configure.in: Use it.
241         * configure: Regenerate.
242         * src/complexl.cc: Fixup.
243         * include/c_std/bits/std_cmath.h: Fixup.
244         * include/c/bits/std_cmath.h: Fixup.
245         * docs/configopts.html: Add docs.
246         
247         * docs/links.html: Add links to defects list, standards FAQ.
248
249         * testsuite/21_strings/ctor_copy_dtor.cc (test01): Disable tests
250         with string creation that allocate huge ammounts of memory.
251
252         * include/c/bits/std_cstddef.h: Put size_t, ptrdiff_t in
253         namepace std.
254
255 2000-10-21  Theodore Papadopoulo <Theodore.Papadopoulo@sophia.inria.fr>
256
257         * libsupc++/exception.cc: Use namespace std.
258         * libsupc++/new: DITTO.
259         * libsupc++/new_op.cc: DITTO.
260         * libsupc++/new_opnt.cc: DITTO.
261         * libsupc++/new_opv.cc: DITTO.
262         * libsupc++/new_opvnt.cc: DITTO.
263         * libsupc++/tinfo.cc: DITTO.
264         * libsupc++/tinfo.h: DITTO.
265         * libsupc++/vec.cc: DITTO.
266         * libsupc++/Makefile.am: Blank lines removal.
267
268 2000-10-21  Joseph S. Myers  <jsm28@cam.ac.uk>
269
270         * docs/configopts.html, docs/install.html, docs/17_intro/BADNAMES,
271         docs/17_intro/howto.html, docs/18_support/howto.html,
272         docs/19_diagnostics/howto.html, docs/20_util/howto.html,
273         docs/21_strings/howto.html, docs/22_locale/howto.html,
274         docs/23_containers/howto.html, docs/24_iterators/howto.html,
275         docs/25_algorithms/howto.html, docs/26_numerics/howto.html,
276         docs/27_io/howto.html, docs/ext/howto.html, docs/faq/index.html:
277         Remove many EGCS references; use current absolute URLs on
278         gcc.gnu.org or sources.redhat.com for messages in list archives.
279         * docs/faq/index.txt: Regenerate.
280
281 2000-10-19  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
282
283         * testsuite/22_locale/codecvt_unicode_char.cc (test01): Adjust
284         creation of state_type for unicode_codecvt to take into account
285         the byte order markings. Add distinct tests for UCS-2BE and UCS-2LE.
286         * testsuite/22_locale/codecvt_unicode_wchar_t.cc (test01): Same.
287         * include/bits/codecvt.h (__enc_traits): Add support for encodings
288         that need a byte order marker. Needed for correct unicode support.
289
290         * src/locale.cc: Remove explicit qualification std::.
291         (locale::locale(const char* __name)): Revert, as named locale
292         support not finished.
293         * src/localename.cc (locale::_Impl:: _Impl(size_t __numfacets,
294         size_t __refs, bool __has_name = false, string __name): Move
295         default argument...
296         * include/bits/localefwd.h: Here.
297         
298 2000-10-18  Chip Salzenberg  <chip@valinux.com>
299
300         * libio/libio.h (_IO_USER_LOCK): Define.
301
302 2000-10-18  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
303
304         * libsupc++/Makefile.am (exception): Change exception.cc to
305         exception_support.cc.
306         (CXXLINK): Remove bogus --tag CC.
307         * libsupc++/Makefile.in: Regenerate.
308         * libsupc++/exception.cc: Move to...
309         * libsupc++/exception_support.cc: ...here.
310
311         * src/Makefile.am: Remove bogus --tag CC.
312         * src/Makefile.in: Regenerate.
313         
314         * include/bits/locale_facets.tcc (use_facet): Simplify.
315         * include/bits/locale_facets.h (use_facet<ctype<char> >): Correct
316         use_facet declaration. Replace 'const ctype<T>' with ctype<T>.
317         (use_facet<ctype<wchar_t> >): Same.
318         * src/locale-inst.cc: Remove explicit instantiation.
319         * src/locale.cc: Correct signature here too.
320         (_Bad_use_facet::what()): Correct error string.
321         * include/bits/localefwd.h: Correct comment.
322
323         * mkcheck.in (C_DIR): Change libsupc++/include to libsupc++.
324
325 2000-10-17  Martin Buchholz <martin@xemacs.org>
326
327         * testsuite/27_io/istream_seeks.cc: Fix spelling typo.
328         * testsuite/27_io/ostream_seeks.cc: Similarly.
329
330 2000-10-17  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
331
332         via Alexandre Oliva  <aoliva@redhat.com>
333         * libsupc++/Makefile.am: Add --tag CXX, --tag CC, comments.
334         * libsupc++/Makefile.in: Regenerate.
335         * src/Makefile.am: Duplicate code.
336         * src/Makefile.in: Regenerate.
337         
338         * acinclude.m4 (GLIBCPP_ENABLE_RELIBGCC): Take this out.
339         * aclocal.m4: Regenerate.
340         * configure.in: And here.
341         * configure: Regenerate.
342
343         * acinclude.m4 (GLIBCPP_CHECK_LINKER_FEATURES): Disable
344         test for SECTION_LDFLAGS.
345
346 2000-10-16  Benjamin Kosnik  <bkoz@gnu.org>
347
348         Shadow headers would work if libsupc++ was strict about namespaces.
349         This only possible if g++ maps std::size_t -> size_t. (Hint hint.)
350         * include/c_std/assert.h: Add guards.
351         * include/c_std/bits/std_climits.h: Correct typo.
352         * include/c_std/ctype.h: Remove #error.
353
354         * libio/libioP.h: Break up extern "C" bits around includes.
355         * libio/libio.h: Only include C headers, or else _C_legacy namespaces
356         will be nested.
357         * libio/libioP.h: Same here.
358
359 2000-10-15 Theodore Papadopoulo <Theodore.Papadopoulo@sophia.inria.fr>
360
361         * include/c_std/unistd.h: Define some types only when defined in
362         the original unistd.h.
363         * include/c_std/bits/std_cstddef.h: Explicitly ask for the
364         definition of size_t, ptrdiff_t and NULL.
365         * include/c_std/bits/wrap_unistd.h: Blank lines removal.
366
367 2000-10-15  Phil Edwards  <pme@sources.redhat.com>
368
369         * docs/configopts.html:  Remove libgcc-rebuild; HTML formatting.
370
371 2000-10-13  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
372             Mark Harig  <markh@landmark.com>
373
374         * src/Makefile.am (toolexeclibdir): Add support fo
375         VERSION_SPECIFIC_LIBS and --with-gxx-include-dir.
376         * src/Makefile.in: Regenerate.
377         * libsupc++/Makefile.am: Same.
378         (glibcppinstalldir): Adjust.
379         * libsupc++/Makefile.in: Regenerate.
380         * Makefile.am: Remove gxx_include_dir. Remove INCLUDE. 
381         * Makefile.in: Regenerate.
382         * docs/configopts.html: Add descriptions of flags.
383         
384 2000-10-11  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
385
386         * libsupc++/Makefile.am: Use it.
387         * libio/Makefile.am: Use it.
388         * libmath/Makefile.am: Use it.
389         * src/Makefile.am: Use it.
390         * Makefile.am (AM_MAKEFLAGS): Remove includes.
391
392         * acinclude.m4 (GLIBCPP_EXPORT_INCLUES): Move include macros here.
393         (GLIBCPP_EXPORT_FLAGS): Move CXX flag setting here.
394         * configure.in: Use it.
395
396         * mkcheck.in (SRC_DIR): Use C_INCLUDE_DIR.
397
398         * src/Makefile.am (CXXCOMPILE): Remove.
399         * src/Makefile.in: Regenerate.
400         * libsupc++/Makefile.am (CXXCOMPILE): Same here.
401         * libsupc++/Makefile.in: Regenerate.
402
403         * include/c_std/*: Merge with shadow.
404         * include/c_std/bits/*: Same.
405
406         * shadow: Remove directory.
407         * shadow/*: De-populate.
408         
409 2000-10-11  Phil Edwards  <pme@sources.redhat.com>
410
411         * acinclude.m4 (GLIBCPP_CHECK_LINKER_FEATURES):  Comment out
412           exception-throwing code for linker test.
413         * aclocal.m4:  Regenerate.
414         * configure:  Regenerate.
415
416 2000-10-10  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
417
418         * Makefile.am (LIBSUPCXX_INCLUDES): Adjust.
419         * libsupc++/include: Remove
420         * libsupc++/include/*: Move to ...
421         * libsupc++: Here.
422         * libsupc++/Makefile.am (glibcppinstall_HEADERS): Install headers.
423         (glibcppinstalldir): New.
424         
425         * src/Makefile.am (c_base_headers): New.
426         (c_shadow_headers): New
427         (c_headers): New.
428         (myinstallheaders): Correct install issues.
429         * src/Makefile.in: Regenerate.
430         
431         * Makefile.am (CSHADOW_INCLUDES): Simplify.
432         * Makefile.in: Regenerate.
433         * acinclude.m4 (GLIBCPP_ENABLE_SHADOW): Add c_include_dir.
434         * aclocal.m4: Regenerate.
435         * mkcheck.in (SRC_DIR): Use it.
436         
437         * include/bits/std_stdexcept.h: And here.
438         * include/bits/std_ios.h: Change std_exception.h to exception.
439         * src/locale.cc: And here.
440         * src/locale-inst.cc: And here.
441         
442         * include/bits/valarray_array.h: And here.
443         * include/bits/stl_alloc.h: And here.
444         * include/bits/stl_algobase.h: And here.
445         * include/bits/pthread_allocimpl.h: And here.
446         * include/bits/stl_construct.h: Change to std_new.h to new.
447
448         * include/bits/locale_facets.h: Change std_typeinfo.h to typeinfo.
449
450         * src/Makefile.am (INCLUDES): Add LIBSUPCXX_INCLUDES.
451         (headers): Remove duplicated headers.
452         (std_headers): And here.
453         * src/Makefile.in: Regenerate.
454         * libsupc++/Makefile.am (LIBSUPCXX_INCLUDES): Remove.
455         * libsupc++/Makefile.in: Regenerate.
456         * Makefile.am (LIBSUPCXX_INCLUDES): Add here.
457         (AM_MAKEFLAGS): And here.
458         * Makefile.in: Regenerate.
459         * include/bits/std_typeinfo.h: Remove.
460         * include/bits/std_new.h: Remove
461         * include/bits/std_exception.h: Remove.
462         * std/new: Remove.
463         * std/typeinfo: Remove.
464         * std/exception: Remove.
465
466         * libio/_G_config.h (__need_ptrdiff_t): Add.
467         
468         * libsupc++/include/new: Change stddef.h to cstddef.
469         * libsupc++/tinfo.h: Change limits.h to climits.
470         * libsupc++/pure.cc: Comment out _GNU_LIBRARY_ bits, as this
471         renders the file uncompilable. Add copyright.
472
473         * include/c_std/bits/std_cstddef.h: Don't bring wchar_t into std
474         namespace, as it is a fundamental type.
475
476 2000-10-09  Richard Henderson  <rth@cygnus.com>
477
478         * libsupc++/pure.cc: New file.
479         * libsupc++/Makefile.am (INCLUDES): Add top_builddir.
480         (sources): Add pure.cc.
481         * libsupc++/Makefile.in: Regenerate.
482
483 2000-10-09  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
484
485         * docs/configopts.html: Edit.
486
487         * libio/Makefile.am (INCLUDES): Remove duplicates, simplify.
488         * libio/Makefile.in: Regenerate.
489         * libmath/Makefile.am (INCLUDES): Remove duplicates, simplify.
490         * libmath/Makefile.in: Regenerate.
491         * libsupc++/Makefile.am (INCLUDES): Remove duplicate.
492         * libsupc++/Makefile.in: Regenerate.
493
494         * Makefile.am (AM_MAKEFLAGS): Add GLIBCPP_INCLUDES,
495         TOPLEVEL_INCLUDES, LIBMATH_INCLUDES, LIBIO_INCLUDES,
496         CSHADOW_INCLUDES up here.
497         * Makefile.in: Regenerate.
498         * src/Makefile.am (CSHADOW_INCLUDES): Add include/c_std, include/c
499         for shadow headers.
500         (myinstallheaders): Change glibcpp_includedir to GLIBCPP_INCLUDES.
501         Move GLIBCPP_INCLUDES, TOPLEVEL_INCLUDES, LIBMATH_INCLUDES,
502         LIBIO_INCLUDES, CSHADOW_INCLUDES up Makefile hierarchy.
503         * src/Makefile.in: Regenerate.
504         
505         * include/c: New directory.
506         * include/c/bits/(std_cassert.h, std_cctype.h, std_cerrno.h,
507         std_cfloat.h, std_climits.h, std_clocale.h, std_cmath.h,
508         std_csetjmp.h, std_csignal.h, std_cstdarg.h, std_cstddef.h,
509         std_cstdio.h, std_cstdlib.h, std_cstring.h, std_ctime.h,
510         std_cwchar.h, std_cwctype.h): Add, moving from...
511         * include/bits: ...here.
512         * include/c_std: New directory.
513         * include/c_std/bits/*: Populate from...
514         * shadow: ...here. Remove directory.
515         
516 2000-10-08   Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
517
518         * libsupc++/Makefile.am (INCLUDES): Add toplevel include directory.
519         (INCLUDES): Add glibcpp_includedir.
520         * libsupc++/Makefile.in: Regenerate.
521
522         * acinclude.m4 (GLIBCPP_CHECK_OS): Link to os_defines.h.
523         * aclocal.m4: Regenerate.
524         * config/os/*/bits/os_defintes: Adjust copyright dates.
525         
526 2000-10-08  Phil Edwards  <pme@sources.redhat.com>
527
528         * include/bits/c++config:  Include <bits/os_defines.h>
529         * config/os/aix/bits/os_defines.h:  New file.
530         * config/os/bsd/bits/os_defines.h:  Ditto.
531         * config/os/generic/bits/os_defines.h:  Ditto.
532         * config/os/gnu-linux/bits/os_defines.h:  Ditto.
533         * config/os/irix/bits/os_defines.h:  Ditto.
534         * config/os/newlib/bits/os_defines.h:  Ditto.
535         * config/os/solaris/solaris2.5/bits/os_defines.h:  Ditto.
536         * config/os/solaris/solaris2.6/bits/os_defines.h:  Ditto.
537         * config/os/solaris/solaris2.7/bits/os_defines.h:  Ditto.
538
539 2000-10-07  David Edelsohn  <dje@watson.ibm.com> 
540         
541         * config/os/aix/bits/atomicity.h: New file.
542
543 2000-10-07  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
544         
545         * acinclude.m4: Remove CPU_FLAGS
546         * libio/Makefile.am: Here too.
547         * Makefile.am: Here too.
548         
549         * src/Makefile.am (CONFIG_INCLUDES): Remove.
550         (INCLUDES): Remove CONFIG_INCLUDES.
551         (cpu_headers): Remove.
552         (myinstallheaders): Remove cpu_headers.
553         (generated_headers): Rename to build_headers.
554         (build_headers): Add atomicity.h, ctype_base.h,
555         ctype_specializations.h.
556         
557         * config/os: New directory.
558         * config/aix: Move to...
559         * config/bsd: Move to...
560         * config/generic: Move to...
561         * config/gnu-linux: Move to...
562         * config/irix: Move to...
563         * config/newlib: Move to...
564         * config/solaris: Move to...
565         * config/os/*: Here.
566
567 2000-10-07  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
568
569         * acinclude.m4: Remove CPU_FLAGS
570         * libio/Makefile.am: Here too.
571         * Makefile.am: Here too.
572         
573         * src/Makefile.am (CONFIG_INCLUDES): Remove.
574         (INCLUDES): Remove CONFIG_INCLUDES.
575         (cpu_headers): Remove.
576         (myinstallheaders): Remove cpu_headers.
577         (generated_headers): Rename to build_headers.
578         (build_headers): Add atomicity.h, ctype_base.h,
579         ctype_specializations.h.
580
581         * config/os: New directory.
582         * config/aix: Move to...
583         * config/bsd: Move to...
584         * config/generic: Move to...
585         * config/gnu-linux: Move to...
586         * config/irix: Move to...
587         * config/newlib: Move to...
588         * config/solaris: Move to...
589         * config/os/*: Here.
590         
591 2000-10-06  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
592
593         * src/Makefile.am: Remove OPTIMIZE_CXXFLAGS, WARN_CXXFLAGS,
594         CONFIG_CXXFLAGS from here, and move to...
595         * src/Makefile.in: Regenerate.
596         * Makefile.am: ... here. Clean.
597         (OPTIMIZE_CXXFLAGS): Move up Makefile hierarchy to here.
598         (WARN_CXXFLAGS): Same.
599         (CONFIG_CXXFLAGS): Same.
600         * Makefile.in: Regenerate.
601         * libsupc++/Makefile.am: Use top-level OPTIMIZE_CXXFLAGS,
602         WARN_CXXFLAGS, CONFIG_CXXFLAGS as part of local AM_CXXFLAGS.
603         * libsupc++/Makefile.in: Regenerate.
604                 
605         Change math to libmath.
606         * math: Move to libmath, delete.
607         * libmath: New directory.
608         * libmath/*: Populate.
609         * src/Makefile.am (LIBMATH_INCLUDES): Change to libmath.
610         (libstdc___la_LIBADD): Same.
611         * src/Makefile.in: Regenerate.
612         * configure.in: Add AC_OUTPUT for libmath/Makefile.
613         * configure: Regenerate.
614         * Makefile.am (SUBDIRS): Add libmath.
615         * Makefile.in: Regenerate.
616         * README (file): Change name.
617         
618 2000-10-06  Benjamin Kosnik  <bkoz@cygnus.com>
619             Richard Henderson  <rth@cygnus.com>
620             Alexandre Oliva  <aoliva@redhat.com>
621         
622         * libsupc++: New directory.
623         * libsupc++/*: Populate.
624         * libsupc++/Makefile.am (INCLUDES): Add -I../../gcc for
625         eh-common.h, gansidecl.h.
626         * configure.in: Add in libsupc++/Makefile to AC_OUTPUT.
627         * configure: Regenerate.
628         * Makefile.am (SUBDIRS): Add libsupc++.
629         * Makefile.in: Regenerate.
630         * src/Makefile.am (libstdc___la_LIBADD): Add in libsupc++.la
631         * src/Makefile.in: Regenerate.
632         * libio/Makefile.am: Remove extraneous, confusing bits.
633         * libio/Makefile.in: Regenerate.
634         
635 2000-10-05  Brent Verner  <brent@rcfile.org>
636
637         * bits/istream.tcc [basic_istream::get(basic_streambuf&)]: Removed
638         test for _M_gcount < in_avail(), as in_avail() only reports info
639         for current buffer, causing method to return at end of buffer.
640         * testsuite/27_io/istream_unformatted.cc [test07()]: New test.
641         * testsuite/27_io/istream_unformatted-3.txt: New file.
642         * testsuite/27_io/istream_unformatted-3.tst: New file.
643
644 2000-10-05  Benjamin Kosnik  <bkoz@fillmore.constant.com>
645
646         * README (file): Adjust directory structures.
647         * mkcheck.in (INC_PATH): Adjust for header changes.
648
649 2000-10-05  Phil Edwards  <pme@sources.redhat.com>
650
651         * acinclude.m4 (GLIBCPP_CHECK_CTYPE):  Tweaks to message texts
652           for public relations purposes.
653         * aclocal.m4:  Regenerated.
654         * configure:  Regenerated.
655
656         * docs/ext/howto.html:  Additional explanation about hashing.
657
658 2000-10-05  Benjamin Kosnik  <bkoz@cygnus.com>
659
660         * include: New directory.
661         * include/backward: New directory.
662         * include/bits: New directory.
663         * include/ext: New directory.
664         * include/std: New directory.
665         * include/*/*: Populate.
666
667         * backwards: Move to include/backwards, delete.
668         * bits: Move to include/bits, delete.
669         * ext: Move to include/ext, delete.
670         * std: Move to include/std, delete.
671         
672         * src/complex.cc: Adjust include of mathconf.
673
674         * mkc++config (BASE_H): Add include.
675
676         * src/Makefile.am: Support for topleve sources include directory.
677         (INCLUDES): Add LIBMATH_INCLUDE.
678         * src/Makefile.in: Regenerate.
679         * math/Makefile.am (INCLUDES): Append /include.
680         * math/Makefile.in: Regenerate.
681         * libio/Makefile.am (INCLUDES): Add glibcpp_includedir.
682         * libio/Makefile.in: Regenerate.
683         
684 2000-10-04  Benjamin Kosnik  <bkoz@gnu.org>
685
686         * libio/_G_config.h : Re-guard the __mbstate_t declaration.
687
688 2000-10-03  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
689
690         * docs/22_locale/howto.html: Add link to proto-documentation on
691         locales.
692         * docs/documentation.html: Rename links for clarity.
693
694         * src/Makefile.am (headers): Remove unistd.h, wrap_unistd.h. Add
695         fcntl.h, iolibio.h, libioP.h, pthread.h, iconv.h. 
696         * src/Makefile.in: Regenerate.
697         
698 2000-10-02  Steven King  <sxking@uswest.net>
699
700         * mkcshadow: Fixed script to output proper include guard.
701         * bits/char_traits.h: Cleaned up types in char_traits<char> functions.
702         * libio/_G_config.h: Hacked to make work with shadow heraders.
703         * shadow/*: Hacked to make shadow headers work. 
704
705 2000-10-02  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
706
707         Self-compile with shadow headers.
708         * acconfig.h (_GLIBCPP_USE_SHADOW_HEADERS): Define. Eventually,
709         like _GLIBCPP_USE_NAMESPACES before it, this macro will die when
710         it becomes the default way the library is built.
711         * acinclude.m4 (GLIBCPP_ENABLE_SHADOW): New macro.
712         * config/gnu-linux/bits/ctype_base.h (ctype_base): Use it.
713         * config/gnu-linux/ctype.cc (ctype): Use it.
714         
715         * src/localename.cc (locale::_Impl::_M_replace_categories): Remove
716         call to assert.
717         * src/locale.cc: Explicitly cast mbstate_t to void* in calls to
718         memset. This should not be necessary, but an ambiguous overload
719         with it in.
720
721         * shadow/bits/std_cwchar.h: Fix.
722         * shadow/wchar.h: Fix.
723
724         * config/gnu-linux/bits/ctype_base.h (ctype_base): Inject ctype
725         enums into namespace std:: for ctype_base enum. Other OS types
726         will have to do this as well.
727         * config/gnu-linux/ctype.cc (ctype): Inject ctype data into
728         namespace std, in particular __ctype_toupper, __ctype_tolower,
729         __ctype_b.
730
731         * shadow/iolibio.h: New file.
732         * shadow/bits/wrap_iolibio.h: New file.
733         * shadow/libioP.h: New file.
734         * shadow/bits/wrap_libioP.h: New file.
735         * shadow/bits/wrap_fcntl.h: New file.
736         * shadow/fcntl.h: New file.
737         * shadow/iconv.h: New file. Inject iconv names into the global
738         namespace, unmangled for the moment.
739         * shadow/bits/wrap_iconv.h: New file.
740         * shadow/unistd.h: Remove. Useless.
741         * shadow/bits/wrap_unistd.h: Remove.
742         
743         * src/Makefile.am: Take out machine-ansi.h, add fcntl.h unistd.h.
744         * src/Makefile.in: Regenerate.
745         
746         * config/c_io_libio.h (_IO_codecvt): Change to normal C++ decl.
747         
748         * shadow/libio.h: Fix.
749         * shadow/bits/wrap_libio.h: Fix.
750
751         * shadow/bits/std_clocale.h: Remove typedef struct construct,
752         which will not compile.
753         * shadow/bits/std_ctime.h: Same.
754         
755         * shadow/pthread.h: New file. Put pthreads types and functions
756         into global scope, which is probably not the correct long-term
757         solution but has to be done at the moment before libio wrappers
758         can even be started.
759         * shadow/bits/wrap_pthread.h: New file.
760
761         * bits/std_ios.h: Formatting tweak.
762         * shadow/bits/std_cstdio.h: Format. Remove extraneous bits.
763
764         * acinclude.m4 (GLIBCPP_CHECK_COMPILER_FEATURES): Add -Werror to
765         tests for compiler features.
766         * aclocal.m4: Regenerate.
767         * configure: Regenerate.
768         
769         * config/c_io_libio.cc: Remove fcntl.h include, as SEEK_SET
770         redefined.
771         * libio/libioP.h: Comment out fcntl.h include.
772
773         * shadow/math.h: Add in float and long declarations, as per ISO C9X.
774
775         * bits/c++config: Define _ISOC99_SOURCE.
776
777         * acinclude.m4 (GLIBCPP_ENABLE_SHADOW): Add -fno-builtins to
778         CSHADOWFLAGS, as well as _ISOC99_SOURCE.
779         * aclocal.m4: Regenerate.
780         * configure: Regenerate.
781         * src/Makefile.am (CSHADOW_INCLUDES): Enable, again.
782         (CSHADOW_INCLUDES): Add -I$(top_srcdir)/std before shadow include dir.
783         (CXXCOMPILE): Remove $(DEFS), which searches $(top_srcdir) before
784         std or shadow directories.
785         (LTCXXCOMPILE): Same.
786         (INCLUDES): Add $(top_builddir) before $(top_srcdir).
787         (AC_CXXFLAGS): Add CSHADOWFLAGS.
788         * src/Makefile.in: Regenerate.
789
790         * src/complex.cc (FCT): Change ::name to name.
791         * src/complexl.cc (FCT): Same. Use _GLIBCPP_USE_LONG_LONG here.
792         * src/complexf.cc (FCT): Same.
793
794         * src/complexf.cc: Remove FCT define, as things are properly
795         overloaded in the std namespace with the shadow headers.
796         * src/complexl.cc: Same.
797         * src/complex.cc: Same.
798         
799 2000-09-25  Phil Edwards  <pme@sources.redhat.com>
800
801         * docs/documentation.html:  Add link to...
802         * docs/ext/howto.html:  ...this.  New dir/file, describing library
803           extensions (both ours and SGI's).
804         * docs/faq/index.html:  Small updates.
805         * docs/faq/index.txt:  Regenerate.
806
807 2000-09-25 Theodore Papadopoulo <Theodore.Papadopoulo@sophia.inria.fr>
808
809         * bits/basic_file.h (_M_open_mode): Remove extra qualifier.
810
811 2000-09-25  Levente Farkas  <lfarkas@mindmaker.hu>
812
813         * ext/stl_hashtable.h (_M_copy_from): Change __copy to __local_copy.
814         
815 2000-09-19  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
816
817         * src/localename.cc (locale::_Imp) : Remove typedefs.   
818         * bits/localefwd.h (locale::locale(const locale& __other, _Facet*
819         __f): Consistency check, call _Imp ctor with reference argument
820         of 1.
821         * bits/localefwd.h: Change _S_num_categories to
822         _S_categories_num. Add new data member, _S_facets_num, which is
823         the number of standard facets.
824
825 2000-09-19  Phil Edwards  <pme@sources.redhat.com>
826
827         * docs/21_strings/howto.html:  Fix editor lossage from last commit.
828
829 2000-09-19  Phil Edwards  <pme@sources.redhat.com>
830
831         * docs/thanks.html:  More thanks.
832         * docs/18_support/howto.html:  Fix thinko.
833         * docs/21_strings/howto.html:  Minor tweaks and updates to URLs.
834           Redo the string transformation notes and link to...
835         * docs/22_locale/howto.html:  ...here.
836
837 2000-09-18  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
838
839         * src/locale-inst.cc: Add time_put_byname and
840         time_get_byname instantiations.
841         * bits/locale_facets.h: Correct default, private derivation to
842         public derivation in _byname declarations.
843         * src/locale.cc (locale::classic()): Simplify.
844         * src/localename.cc (locale::_Impl:: _Impl(const _Impl& __other,
845         const string& __name, category __cat, size_t __refs): Re-work for
846         named locales.
847         (_M_normalize_category_names): Remove.
848
849         * testsuite/22_locale/global_templates.cc (test01): Tweaks.
850         * testsuite/22_locale/ctor_copy_dtor.cc (test01): More tests.
851
852 2000-09-18  Yuri V. Baskakov  <yuribsk@lab.sun.mcst.ru>
853
854         * bits/std_bitset.h (operator>>): Change to char_type.
855
856 2000-09-15  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
857
858         * src/locale.cc (locale::locale(const char* __name)): Consolidate
859         name setting. Add checks for NULL __name pointers. Remove calls to
860         _S_initialize() as initial locale initialization can either be
861         assumed, or needs to be made consistent throughout locale
862         constructors.
863         (locale::locale(const locale& __other, const char* __name,
864         category __cat): Add checks for NULL name. Add checks for
865         assignment to self.
866         * src/localename.cc (locale::_Impl:: _Impl(const _Impl& __other,
867         const string& __name, category __cat, size_t __refs)): Set correct
868         name, has_name values.
869         * testsuite/22_locale/ctor_copy_dtor.cc (test01): More tests.
870         * docs/22_locale/locale.html: New file, more unfinished docs...
871         
872 2000-09-14  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
873
874         * src/locale.cc (locale::name()): Implement.
875         (_Impl(size_t __numfacets, size_t __refs, bool __namep = false,
876         string __name = "*")): Change signature.
877         (locale::classic): Initialize the "C" locale as a named locale.
878         * bits/localefwd.h (locale): Change _M_num_references to
879         _M_references. Eliminate _M_cached_name_ok. Rename _M_cached_name
880         to _M_name.
881         * bits/localefwd.h: Tweaks.
882         * src/localename.cc: Tweaks.
883         * testsuite/22_locale/ctor_copy_dtor.cc (test01): Add tests.
884         (test01): Fix.
885
886         * bits/basic_string.h: Consistency check, change _M_state ->
887         _M_references.
888
889 2000-09-14  Brendan Kehoe  <brendan@zen.org>
890
891         * bits/string.tcc (_Rep::_S_max_size): Use typename for its size_type
892         return type.
893
894         * src/Makefile.an (headers): Also install backward/fstream.h.
895         * src/Makefile.in: Regenerate.  
896
897         * bits/char_traits.h (char_traits<_CharT>::get_state,
898         char_traits<char>::get_state, char_traits<wchar_t>::get_state): Pass
899         argument in by reference, not by value. Uglify to _S_get_state.
900         (char_traits<*>::__eos): Uglify to _S_eos.
901         * bits/std_ostream.h (ends(basic_ostream<_CharT, _Traits>& __os)):
902         Change __eos to _S_eos.
903         
904 2000-09-13  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
905
906         * testsuite/22_locale/static_members.cc: New file.
907         * testsuite/22_locale/ctor_copy_dtor.cc: New file.
908         * src/locale.cc: Minor formatting tweaks.
909
910 2000-09-12  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
911
912         * testsuite/22_locale/global_templates.cc (test01): Add negative
913         tests for use_facet.
914
915         * bits/localefwd.h (locale::operator()): Minor tweaks.
916         * bits/locale_facets.tcc (locale::operator()): Same.
917         * testsuite/22_locale/operators.cc: New file.
918
919         * testsuite/22_locale/facet.cc (output_iterator): Remove
920         gnu_input_iterator, gnu_output_iterator.
921
922 2000-09-11  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
923
924         * acinclude.m4 (GLIBCPP_CHECK_GNU_MAKE): Remove test != "0". 
925         * aclocal.m4: Regenerate.
926         * configure: Regenerate.
927
928         * bits/c++config (__GLIBCPP__): Update, in the hopes of making a
929         snapshot release soon.
930         (_GNU_SOURCE): Define this in the header files, as ISO C99 support
931         is pretty much assumed.
932
933         * testsuite/22_locale/global_templates.cc: New file. Add tests for
934         use_facet and has_facet.
935
936         * bits/codecvt.h (codecvt<_InT, _ExT, __enc_traits>::do_out):
937         Modify/correct iconv signatures for glibc2.2.
938
939 2000-09-10  Branko Cibej  <branko.cibej@hermes.si>
940
941         * acinclude.m4 (GLIBCPP_CHECK_GNU_MAKE): Replace "grep -q" with
942           "grep -c".
943
944 2000-09-09  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
945
946         * bits/localefwd.h (locale::_Impl): Scope out types to public.
947         (locale): Make _Impl declaration public.
948
949 2000-09-08  Felix Natter  <fnatter@gmx.net>
950
951         * docs/17_intro/porting-howto.html:  New version.
952
953 2000-09-07  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
954
955         * config/cpu/i386/bits/atomicity.h (__exchange_and_add): Change unused
956         to __unused__.
957         * config/cpu/ia64/bits/atomicity.h (__exchange_and_add): And here.
958         * config/cpu/i486/bits/atomicity.h (__exchange_and_add): And here.
959
960 2000-09-07  Phil Edwards  <pme@sources.redhat.com>
961
962         Add bits for --enable-maintainer-mode:
963         - turns on enable_debug
964           (doing "--enable-maint --disable-debug" will DTRT)
965         - turns on -Werror, now off by default
966         * acinclude.m4: Add bits.
967         * aclocal.m4: Regenerate.
968         * configure.in: Add defaults for GLIBCPP_ENABLE_DEBUG.
969         * configure: Regenerate.        
970         
971 2000-09-07  Benjamin Kosnik  <bkoz@cygnus.com>
972
973         * bits/std_cwctype.h: Remove yesterday's hacks.
974
975 2000-09-07  Brad Garcia  <bgarcia@laurelnetworks.com>
976
977         * bits/stl_tree.h: Make operators !=, == type safe for map, set.
978         * testsuite/23_containers/set_operators.cc: New file. Should not
979         compile.  
980         * testsuite/23_containers/map_operators.cc: New file. Ditto.
981         
982 2000-09-06  Richard Henderson  <rth@cygnus.com>
983             Benjamin Kosnik  <bkoz@cygnus.com>
984
985         * acinclude.m4 (GLIBCPP_CHECK_CPU): Add ia64 support.
986         * aclocal.m4: Regenerate.
987         * configure: Regenerate.
988         * config/cpu/ia64: New directory.
989         * config/cpu/ia64/bits: New directory.
990         * config/cpu/ia64/bits/atomicity.h: New file.
991         
992 2000-09-06  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
993         
994         * acinclude.m4 (GLIBCPP_ENABLE_CSTDIO): Force glibc_satisfactory
995         to no, so that libstdc++-v3's libio will be built on glibc-2.2
996         systems. 
997         * aclocal.m4: Regenerate.
998         * configure: Regenerate.
999         * */Makefile.in: Regenerate.
1000
1001         * bits/std_cwctype.h: Put in temporary hack to work around -O2 +
1002         glibc 2.1.x unsigned errors. Or disable -Werror by default...
1003
1004         * testsuite/23_containers/vector_element_access.cc: New file.
1005         * bits/stl_config.h (__STL_THROW_RANGE_ERRORS): Define.
1006
1007 2000-09-06  Levente Farkas  <lfarkas@mindmaker.hu>
1008
1009         * bits/string.tcc: Fix up more parameter names.
1010
1011 2000-09-06  Alexandre Oliva  <aoliva@redhat.com>
1012
1013         * configure: Rebuilt with new libtool.m4.
1014
1015 2000-09-01  Benjamin Kosnik  <bkoz@cygnus.com>
1016
1017         * src/locale-inst.cc: Remove pre-instantiation of unicode
1018         codecvt types. Now unnecessary, as locale header now correct.
1019
1020 2000-08-31  Benjamin Kosnik  <bkoz@cygnus.com>
1021
1022         * bits/locale_facets.tcc (_S_build_float_format): Move ...      
1023         * src/locale.cc: Here.          
1024         * bits/locale_facets.tcc (num_get::_M_extract): Clean up generic
1025         definition. Move specialization to ...
1026         * src/locale.cc: Here.  
1027         * bits/locale_facets.tcc: Move _Format_cache specializations to ...
1028         * src/locale.cc: Here.
1029         * bits/locale_facets.tcc: Move use_facet<ctype> specializations to ...
1030         * src/locale.cc: Here.
1031
1032         * bits/std_locale.h: Note that locale_facets.tcc should be
1033         included here, for standards conformance. It may increase
1034         compile times though. For the time being, enable.
1035         * testsuite/22_locale/facet.cc: New file, some parts commented out
1036         for the time being.
1037
1038         * mkcheck.in: Append total time to test summary file.
1039
1040         * bits/sbuf_iter.h : Formatting tweaks.
1041
1042         Clean up static const data member definitions.
1043         * src/locale.cc: Add definitions for all missing locale,
1044         locale::_Imp, and locale::id static data members.
1045         (ctype<char>): Add table_size define.
1046         (money_base): Add _S_default_pattern, uglify.
1047         * bits/localefwd.h: Add definitions for static members of _Count_ones.
1048         * bits/locale_facets.h: Tweaks.
1049         * bits/locale_facets.tcc: Tweaks.       
1050         * bits/string.tcc: Add definition for npos.
1051         * bits/ios_base.h: Tweaks.
1052         * bits/ios_base.h (ios_base::Init::_M_ios_base_init): Change to
1053         _S_ios_base_init.
1054         * src/ios.cc: And here. Add _S_local_words definition.
1055         Add definitions for __ios_flags const static data.
1056         * src/codecvt.cc: Same for __enc_traits.
1057         * src/locale-inst.cc: Remove money_base data member definition
1058         here.
1059
1060 2000-08-30  Benjamin Kosnik  <bkoz@redhat.com>
1061
1062         * testsuite/22_locale/ctype_wchar_t_members.cc (test01): New file.
1063
1064         * docs/22_locale/codecvt.html: Re-number.
1065         * docs/22_locale/howto.html: Add entry for ctype
1066         documentation. Add entry for Nathan's introduction to locales
1067         paper.
1068         * docs/22_locale/ctype.html: New file. In progress...
1069
1070         * docs/22_locale/codecvt.html: Formatting cleanups.
1071         * src/locale.cc (ctype<wchar_t>::do_is): Fix thinko.
1072
1073 2000-08-30  Phil Edwards  <pme@sources.redhat.com>
1074
1075         * docs/22_locale/codecvt.html:  Behind-the-scenes ASCII->HTML
1076           tweaks for certain browsers.
1077
1078 2000-08-29  Benjamin Kosnik  <bkoz@redhat.com>
1079
1080         * bits/locale_facets.h (ctype<char>): Remove __table_type.
1081         Add include for bits/std_cwctype.h, for wctype_t.
1082         * src/locale.cc (ctype<wchar_t>): Implement.
1083         * config/gnu-linux/bits/ctype_base.h (ctype_base): Remove mask
1084         typedef, instead name enum.
1085         * config/gnu-linux/bits/ctype_specializations.h: Tweak.
1086         * config/gnu-linux/ctype.cc: Tweak.     
1087         * testsuite/22_locale/ctype.cc: Tweak.
1088         
1089         * bits/codecvt.h (__enc_traits): Uglify names.
1090         
1091 2000-08-28  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
1092
1093         * docs/22_locale/codecvt.html: Add more bits, format. 
1094         * bits/codecvt.h: Add copy ctor, rename types.
1095         * testsuite/22_locale/codecvt_unicode_char.cc: Tweak.
1096         
1097         * libio/iofwide.c: Tweak.
1098         
1099 2000-08-28  Phil Edwards  <pme@sources.redhat.com>
1100
1101         * docs/configopts.html:  Mention new options.
1102         * docs/install.html:  Formatting changes for platform-specific
1103           pre-reqs, previously only Cygwin.
1104         * docs/mail.html:  Fix new link.
1105         * docs/thanks.html:  A couple more people.
1106         * docs/26_numerics/howto.html:  Fix typo.
1107
1108 2000-08-24  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
1109
1110         * docs/22_locale/howto.html: Add notes on codecvt implementation.
1111         * docs/22_locale/codecvt.html: New file. In progress.
1112         
1113 2000-08-24  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
1114
1115         * acconfig.h: Revert.
1116         * acinclude.m4: Revert.
1117         * libio/_G_config.h: Revert.
1118         * libio/libio.h: Revert.
1119         
1120 2000-08-23  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>      
1121
1122         * bits/codecvt.h: Tweaks.
1123         * testsuite/22_locale/codecvt_unicode_wchar_t.cc (test01): Fix up
1124         initial string literals for UCS4.
1125
1126 2000-08-23  Phil Edwards  <pme@sourceware.cygnus.com>
1127
1128         * acconfig.h:  _GLIBCPP_USING_THREADS and some workaround types added.
1129         * acinclude.m4:  New macro, GLIBCPP_ENABLE_WCHAR.  Set the threads
1130           definition as well, and some minor spelling/spacing fixes.  If
1131           building libio, check for certain typedefs.
1132         * libio/_G_config.h:  Wrap _IO_MTSAFE_IO in _GLIBCPP_USING_THREADS.
1133           Conditionally define _LARGEFILE64_SOURCE, otherwise the 64-bit types
1134           will never be there.
1135         * libio/libio.h:  In the null case, _IO_lock_t can't just be void.
1136         * src/string-inst.cc:  Use _GLIBCPP_USE_WCHAR_T.
1137
1138         * configure.in:  Update the cache a bit more often.
1139
1140         * mkcheck.in:  For check-install, also need to -I the testsuite dir.
1141
1142 2000-08-22  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
1143
1144         * src/locale-inst.cc: Add codecvt<unicode_t, wchar_t,
1145         __enc_traits> instantiations for has_facet and use_facet.
1146         * testsuite/22_locale/codecvt_unicode_wchar_t.cc: New file, for
1147         testing two-byte unicode encodings converted to four-byte UCS4
1148         encodings.
1149
1150         * bits/codecvt.h (codecvt<__enc_traits>): Fix do_unshift.
1151         * testsuite/22_locale/codecvt_unicode_char.cc (test01): Add
1152         correct state/encoding information.
1153
1154         * acinclude.m4 (GLIBCPP_CHECK_WCHAR_T_SUPPORT): Add wcsrtombs,
1155         mbsrtowcs checks as codecvt<wchar_t, char, mbstate_t> needs them
1156         now.
1157         Add checks for langinfo.h, nl_langinfo function call.
1158         * libio/iofwide.c (_IO_fwide): Simplify, as nl_langinfo is assumed.
1159
1160 2000-08-22  Richard B. Kreckel  <Richard.Kreckel@Uni-Mainz.DE>
1161
1162         * config/cpu/alpha/bits/atomicity.h: Change __attribute__
1163         ((unused)) to __attribute__ ((__unused__)).
1164         * config/cpu/arm/bits/atomicity.h: Same.
1165         * config/cpu/generic/bits/atomicity.h: Same.
1166         * config/cpu/i386/bits/atomicity.h: Same.
1167         * config/cpu/i486/bits/atomicity.h: Same.
1168         * config/cpu/powerpc/bits/atomicity.h: Same.
1169         * config/cpu/sparc/sparc32/bits/atomicity.h: Same.
1170         * config/cpu/sparc/sparc64/bits/atomicity.h: Same.
1171
1172 2000-08-22  Levente Farkas  <lfarkas@mindmaker.hu>
1173
1174         * bits/basic_string.h: Fix up parameter names.
1175
1176 2000-08-22  Brent Verner <brent@rcfile.org>
1177
1178         * src/Makefile.am (INCLUDES): Put $(CSHADOW_INCLUDES) before
1179         $(top_srcdir)
1180         * src/Makefile.in: Regenerate.
1181         
1182 2000-08-21  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
1183
1184         * bits/codecvt.h: Implement codecvt<wchar_t, char, mbstate_t>. Fix
1185         up __enc_traits template so as to be marginally useful.
1186         * src/codecvt.cc: And here.
1187         * bits/char_traits: Tweak.
1188         * bits/locale_facets.h: Tweak.
1189         * bits/locale_facets.tcc: Tweak.
1190         * bits/localefwd.h: Tweak.
1191         * src/locale-inst.cc: Add use_facet/has_facet instantiations here.
1192         * testsuite/22_locale/codecvt_wchar_t_cc.cc: New file.
1193         * testsuite/22_locale/codecvt_char_char.cc: New file.
1194         * testsuite/22_locale/codecvt_unicode_char.cc: New file.
1195         
1196 2000-08-21  Gabriel Dos Reis  <gdr@merlin.codesourcery.com>
1197
1198         * bits/std_cmath.h (std::abs): Overload for int and long.
1199
1200 2000-08-20  Benjamin Kosnik  <bkoz@gnu.org>
1201
1202         * src/string-inst.cc: Tweak instantiations for new-gxx-abi.
1203
1204 2000-08-19  Gabriel Dos Reis  <gdr@codesourcery.com>
1205
1206         * bits/valarray_array.h (__valarray_min, __valarray_max): Fix
1207         thinko. Diagnostic messages really need to be improved for
1208         template argument deduction.
1209
1210 2000-08-18  Benjamin Kosnik  <bkoz@gnu.org>
1211
1212         * bits/valarray_meta.h: Fix typos...
1213
1214 2000-08-18  Gabriel Dos Reis  <gdr@codesourcery.com>
1215
1216         * bits/valarray_meta.h (_Expr<>::shift, _Expr::cshift,
1217         _Expr<>::apply): Implement. 
1218
1219 2000-08-18  Gabriel Dos Reis  <gdr@codesourcery.com>
1220
1221         * bits/valarray_meta.h (_Expr<>::min, _Expr<>::max): Implement.
1222
1223         * bits/valarray_array.h (__valarray_min, __valarray_max): New
1224         function. 
1225
1226 2000-08-17  Mark Mitchell  <mark@codesourcery.com>
1227
1228         * bits/localefwd.h (std::locale): Use explicit `class' specified
1229         when declaring friends.
1230         * bits/std_fstream.h (std::basic_filebuf): Likewise.
1231
1232 2000-08-16  Alexandre Oliva  <aoliva@redhat.com>
1233
1234         * src/Makefile.am (libstdc++.INC): Renamed from INCLUDES.
1235         * src/Makefile.in: Regenerate.
1236
1237 2000-08-15  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
1238
1239         * bits/codecvt.h: New file.
1240         * src/codecvt.cc: New file.
1241         * bits/std_locale.h: Add include here.
1242         * src/Makefile.am (headers): Add codecvt.h
1243         (sources): Add codecvt.cc.
1244         * src/Makefile.in: Regenerate.
1245         * bits/locale_facets.h (codecvt): Re-implement. Rename _Codecvt to
1246         __codecvt_abstract_base in an attempt to point some light this way...
1247         Move __enc_traits and codecvt bits to codecvt.h.
1248         * src/locale-inst.cc: Remove codecvt<wchar_t, wchar_t, mbstate_t>
1249         explicit instantiation. Separate out codecvt instantations, simplify.
1250         * src/locale.cc: Move codecvt bits to codecvt.cc
1251
1252 2000-08-15  Alexandre Oliva  <aoliva@redhat.com>
1253
1254         * src/Makefile.am (INCLUDES): New target file, with all -I flags.
1255         * src/Makefile.in: Regenerate.
1256
1257 2000-08-14  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
1258
1259         C/C++ io merge/sync.
1260         * libio/fileops.c
1261         * libio/genops.c
1262         * libio/iofclose.c
1263         * libio/iofopen.c
1264         * libio/iofwide.c
1265         * libio/libio.h
1266         * libio/libioP.h
1267         * libio/stdio.c
1268         * libio/wfileops.c
1269         * libio/wgenops.c
1270         * config/c_io_libio.cc (__basic_file): Add hacky casts to
1271         ((struct _IO_FILE_plus *) in ctors.
1272         (__basic_file<wchar_t>): Adjust _wide_data->_codecvt to just _codecvt.
1273         * libio/Makefile.am: Fix copyright. Remove cleanup.c.
1274         * libio/cleanup.c: Remove.
1275         * libio/filedoalloc.c (_IO_file_doallocate): Don't call
1276         _IO_cleanup_registration_needed, even if not libc.
1277                 
1278         * testsuite/27_io/stringstream.cc (test02): Fix.
1279
1280 2000-08-14  Brent Verner <brent@rcfile.org>
1281
1282         * testsuite/debug_assert.h: new file
1283         * testsuite/*/*.cc: s/test\s*&=([^;]+);/VERIFY($1);/g
1284         changed conditional #include <c?assert.?h?> to
1285         unconditional #include <debug_assert.h>
1286         * mkcheck.in: added $SRC_DIR/testsuite to include search path
1287         for testsuite compile command.
1288
1289 2000-08-14  Levente Farkas  <lfarkas@mindmaker.hu>
1290
1291         * bits/std_fstream.h: Remove duplicate typdefs for ofstream and
1292         wofstream, filebuf, wfilebuf, fstream, wfstream.
1293         * bits/std_streambuf.h: Same for streambuf, wstreambuf.
1294         * bits/std_sstream.h: Same for stringstream and wstringstream.
1295         Same for stringbuf, wstringbuf, istringstream, wistringstream,
1296         ostringstream, wostringstream.
1297         
1298         * testsuite/26_numerics/valarray.cc: Add test.
1299
1300 2000-08-14  Zack Weinberg  <zack@wolery.cumb.org>
1301
1302         * configure: Regenerate after change to ../libtool.m4.
1303
1304 2000-08-10  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
1305
1306         * bits/locale_facets.tcc: Formatting tweaks.
1307         * bits/locale_facets.h (__enc_traits): Start integrating this
1308         into codecvt, ctype. Formatting tweaks.
1309
1310 2000-08-09  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
1311
1312         Preliminary wchar_t implementation, with trivial encodings.
1313         * docs/configopts.html: Add bits about canonical configure option
1314         checking.
1315
1316         * testsuite/27_io/iostream_objects.cc: Replace this file (which
1317         has newly-declared-illegal mixing of wide/narrow stdstreams) with...
1318         * testsuite/27_io/narrow_stream_objects.cc: New file.
1319         * testsuite/27_io/wide_stream_objects.cc: New file.
1320
1321         * bits/fstream.tcc (underflow): Temporarily hack a solution
1322         together that writes from the external file to the internal
1323         buffers. This removes codecvt from the loop, and is incorrect.
1324         (_M_really_overflow): Same here.
1325
1326         * testsuite/21_strings/inserters_extractors.cc (test05): Tweaks.
1327         
1328 2000-08-08  Benjamin Kosnik  <bkoz@cygnus.com>
1329             Ulrich Drepper  <drepper@cygnus.com>
1330
1331         * config/c_io_libio.h: Tweak.
1332         * config/c_io_libio_codecvt.c: New file.
1333         * libio/Makefile.am: Add c_codecvt.c.
1334         * libio/Makefile.in: Regenerate.
1335         * libio/genops.c (_IO_unbuffer_write): Don't call _IO_SETBUF if the
1336         stream is not orientated.
1337
1338         * acinclude.m4: Add config/c_io_libio_codecvt.c dummy file, until
1339         encoding gets fleshed out.
1340
1341         * bits/basic_file.h: Add specialization declarations.
1342         * config/c_io_libio.cc: Add specializations for pbackfail, uflow.
1343
1344         * config/c_io_libio.h: Add __c_wfile_type.
1345         * bits/basic_file.h: Add _M_wfile.
1346
1347         * config/c_io_libio.cc (__basic_file<char>): Initialize the
1348         streams without setting the orientation of the underlying FILE to
1349         either wide or narrow.
1350         (__basic_file<wchar_t>)): Enable tricky wchar_t io bits.
1351
1352 2000-08-07  Felix Natter  <fnatter@gmx.net>
1353
1354         * docs/17_intro/porting-howto.html:  New version.
1355
1356 2000-08-03  Mark Mitchell  <mark@codesourcery.com>
1357
1358         * bits/locale_facets.h (ctype::ctype): Don't name unused
1359         parameters.
1360
1361 2000-08-01  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
1362
1363         * docs/install.html: Edit bits about requiring a special version
1364         of the autotools.
1365
1366 2000-07-31  Benjamin Kosnik  <bkoz@cygnus.com>
1367
1368         * libio/fileops.cc: Update to current glibc sources.
1369         * libio/genops.c: Same.
1370         * libio/iofwide.c: Same.
1371         * libio/libio.h: Same.
1372         * libio/libioP.h: Same.
1373         * libio/wfiledoalloc.c: Same.
1374         * libio/wgenops.c: Same.
1375         
1376 2000-07-28  Alexandre Oliva  <aoliva@redhat.com>
1377
1378         * acinclude.m4: Include ../libtool.m4.
1379         * aclocal.m4, configure: Rebuilt.
1380         
1381 2000-07-26  Phil Edwards  <pme@sourceware.cygnus.com>
1382
1383         * acinclude.m4 (GLIBCPP_CHECK_LINKER_FEATURES):  Test for GNU ld
1384           before trying to use any of its options.
1385           (CHECK_MATH_DECL*,CHECK_BUILTIN_MATH_DECL*):  Cache tests.
1386         * aclocal.m4:  Regenerate.
1387         * configure.in:  Having found GNU make, name it.
1388         * configure:  Regenerate.
1389         * docs/install.html:  Mention possible problems with caching.
1390         * src/Makefile.am (CXXLINK):  Use new OPT_LDFLAGS.
1391         * src/Makefile.in:  Regenerate.
1392         * libio/Makefile.in:  Regenerate.
1393         * math/Makefile.in:  Regenerate.
1394         * Makefile.in:  Regenerate.
1395
1396 2000-07-26  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
1397
1398         * src/misc-inst.cc (std): Remove instantiations.
1399
1400         * acinclude.m4: Add forward-looking bits for autoconf.
1401         * aclocal.m4: Regenerate.
1402
1403         * bits/ostream.tcc (ostream::operator<<): Fix const char* case.
1404
1405 2000-07-25  Benjamin Kosnik  <bkoz@gnu.org>
1406
1407         * configure.in: Change AM_PROG_LIBTOOL to AC_PROG_LIBTOOL. Change
1408         it back for current versions of maintainer-tools...
1409         * acinclude.m4: Some cleanups...
1410         * aclocal: Regenerated.
1411         * configure: Regenerated.
1412         
1413         * src/Makefile.am (CXXLINK): Add -Wl,-01 to the link line for
1414         optimizing/adapting the hash table using GNU ld.
1415         * src/Makefile.in: Regenerate.
1416         
1417 2000-07-24  H.J. Lu  <hjl@gnu.org>
1418
1419         * src/Makefile.am (LIBIO_INCLUDES): Set to -I$(top_srcdir)/libio
1420         even if GLIBCPP_NEED_LIBIO is false. The installed glibc header
1421         files don't include private libio header files needed by
1422         libstdc++ v3.
1423         * src/Makefile.in: Rebuild.
1424
1425 2000-07-24  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
1426
1427         * bits/std_fstream.h: Parameterize __basic_file.
1428         * config/c_io_libio.cc: Add wchar_t methods for parameterization.
1429         * bits/basic_file.h: Same here.
1430
1431         * bits/istream.tcc (getline): Tweaks.
1432
1433         * bits/fstream.tcc: Shorten __retval to __ret.
1434         * bits/ostream.tcc: Same.
1435         * bits/sbuf_iter.h: Same.
1436         * bits/sstream.tcc: Same.
1437         * bits/streambuf.tcc: Same.
1438         * bits/std_fstream.h: Same.
1439         * src/string-inst.cc: Same.
1440         * src/ios.cc: Same.
1441         * config/c_io_libio.cc: Same.
1442         * bits/string.tcc: Same.
1443         * bits/std_streambuf.h: Same.
1444
1445 2000-07-23  Brent Verner <brent@rcfile.org>
1446
1447         * bits/istream.tcc: istream::getline(char_type*, streamsize,
1448         char_type) make compliant
1449         * testsuite/27_io/istream_unformatted.cc: test for compliant behavior
1450
1451 2000-07-23  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
1452
1453         * acinclude.m4 (enable_cshadow_headers): Fix problems with blddir
1454         and srcdir used to define CSHADOW_INCLUDES..
1455
1456         * configure.in: For consistency, change .sanity_warned to
1457         stamp-sanity-warned.
1458
1459         * acinclude.m4: Tweak formatting.
1460         * Makefile.am (check): Call mkcheck with full pathname for build
1461         directory...
1462         (check-install): And here.
1463         * Makefile.in: Regenerate.
1464         
1465 2000-07-22  Gabriel Dos Reis  <gdr@codesourcery.com>
1466
1467         Line up with libstdc++-v2 version of valarray.
1468         * bits/valarray_array.h (__valarray_product): Make inline.
1469         * src/valarray-inst.cc (__valarray_product): Remove explicit
1470         instantiation. 
1471
1472 2000-07-21  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
1473
1474         * src/stl-inst.cc: Change __sink_unused_warning to unsigned int
1475         for alpha.
1476
1477         * testsuite/26_numerics/complex_inserters_extractors.cc (testall):
1478         Change return type to void.
1479         * testsuite/25_algorithms/lower_bound.cc: Add return values.
1480         * testsuite/17_intro/header_ciso646.cc: Modify.
1481         * bits/locale_facets.h: Add return values for the generic cases.
1482
1483 2000-07-21  H.J. Lu  (hjl@gnu.org)
1484
1485         * acinclude.m4: Include <features.h> for glibc testing.
1486         * aclocal.m4: Likewise.
1487
1488         * configure: Rebuild.
1489
1490 2000-07-20  H.J. Lu  (hjl@gnu.org)
1491
1492         * acinclude.m4: Change "#pragma system_header" to
1493         "#pragma GCC system_header".
1494         * aclocal.m4: Likewise.
1495         * bits/std_cmath.h: Likewise.
1496         * bits/std_cassert.h: Likewise.
1497         * bits/std_cctype.h: Likewise.
1498         * bits/std_cerrno.h: Likewise.
1499         * bits/std_cfloat.h: Likewise.
1500         * bits/std_climits.h: Likewise.
1501         * bits/std_clocale.h: Likewise.
1502         * bits/std_cwchar.h: Likewise.
1503         * bits/std_csetjmp.h: Likewise.
1504         * bits/std_csignal.h: Likewise.
1505         * bits/std_cstdarg.h: Likewise.
1506         * bits/std_cstddef.h: Likewise.
1507         * bits/std_cstdio.h: Likewise.
1508         * bits/std_cstdlib.h: Likewise.
1509         * bits/std_cstring.h: Likewise.
1510         * bits/std_ctime.h: Likewise.
1511         * bits/std_cwctype.h: Likewise.
1512         * bits/std_exception.h: Likewise.
1513         * bits/std_new.h: Likewise.
1514         * bits/std_typeinfo.h: Likewise.
1515         * shadow/bits/std_cassert.h: Likewise.
1516         * shadow/bits/std_cctype.h: Likewise.
1517         * shadow/bits/std_cerrno.h: Likewise.
1518         * shadow/bits/std_cfloat.h: Likewise.
1519         * shadow/bits/std_climits.h: Likewise.
1520         * shadow/bits/std_clocale.h: Likewise.
1521         * shadow/bits/std_cmath.h: Likewise.
1522         * shadow/bits/std_csetjmp.h: Likewise.
1523         * shadow/bits/std_csignal.h: Likewise.
1524         * shadow/bits/std_cstdarg.h: Likewise.
1525         * shadow/bits/std_cstddef.h: Likewise.
1526         * shadow/bits/std_cstdio.h: Likewise.
1527         * shadow/bits/std_cstdlib.h: Likewise.
1528         * shadow/bits/std_cstring.h: Likewise.
1529         * shadow/bits/std_ctime.h: Likewise.
1530         * shadow/bits/std_cwchar.h: Likewise.
1531         * shadow/bits/std_cwctype.h: Likewise.
1532         * shadow/bits/wrap_libio.h: Likewise.
1533         * shadow/bits/wrap_unistd.h: Likewise.
1534         * shadow/sys/cdefs.h: Likewise.
1535
1536         * configure: Rebuild.
1537
1538 2000-07-20  Jakub Jelinek  <jakub@redhat.com>
1539
1540         * config/cpu/sparc/sparc64/bits/atomicity.h (__exchange_and_add):
1541         Use extended word instructions to match 64bit _Atomic_word.
1542         (__atomic_add): Likewise.
1543         * math/clog10l.c (clog10l): Use M_PIl if defined.
1544         * math/c_logl.c (c_logl): Likewise.
1545         * math/signbitl.c (__signbitl): Adapt for IEEE quad long doubles.
1546         * math/mathconf.h (ieee_quad_double_shape_type): New type.
1547         (GET_LDOUBLE_MSW64): New define.
1548
1549 2000-07-20  Benjamin Kosnik  <bkoz@cygnus.com>
1550
1551         * bits/std_streambuf.h: Add bits for pback buffers here, so that
1552         in_avail, etc can use them.
1553         * bits/std_fstream.h: Ditto.
1554         * bits/fstream.tcc: Ditto.
1555         * testsuite/27_io/filebuf.cc: Tweaks.
1556         * testsuite/27_io/filebuf-3.tst: Correct for pbackfail bits.
1557
1558 2000-07-19  Benjamin Kosnik  <bkoz@cygnus.com>
1559
1560         * src/localename.cc: Same.
1561         * src/locale.cc: Same.
1562         * bits/localefwd.h: _M_init_facet to _M_facet_init.
1563
1564         * bits/locale_facets.h: _M_init_boolnames to _M_boolnames_init.
1565
1566         * bits/std_sstream.h: Change _M_init_stringbuf to _M_stringbuf_init.
1567
1568         * bits/fstream.tcc: Change _M_init_filebuf to _M_filebuf_init.
1569         * bits/std_fstream.h: Same.
1570
1571         * bits/basic_string.h: Tweaks.
1572         
1573 2000-07-19  Phil Edwards  <pme@sourceware.cygnus.com>
1574
1575         * docs/18_support/howto.html:  Update.
1576
1577 2000-07-19  Benjamin Kosnik  <bkoz@milou.soma.redhat.com>
1578
1579         Internal consistency checks.....
1580         * bits/ios_base.h: Change _M_locale_ios to _M_ios_locale.
1581         * src/ios.cc: Same.
1582         
1583         * bits/basic_ios.h: Change _M_fctype_ios to _M_ios_fctype.
1584         * bits/basic_ios.tcc: Same.
1585         
1586         * bits/std_streambuf.h: Change _M_locale_buf to _M_buf_locale.
1587         Change _M_fctype_buf to _M_buf_fctype.
1588         * bits/fstream.tcc: Same.
1589
1590         * bits/std_streambuf.h: Change _M_buf_bump to _M_out_cur_move.
1591         Change _M_locale_set to _M_buf_locale_init.
1592         * bits/streambuf.tcc: Same.
1593         * bits/sstream.tcc: Same.
1594         * bits/fstream.tcc: Same.
1595
1596         * bits/std_streambuf.h: Make typedefs consistent.
1597         (_M_buf_bump): Be more careful with input sequence.
1598
1599         * bits/std_sstream.h: Same.
1600         * bits/std_fstream.h: Same.
1601
1602 2000-07-18  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
1603
1604         * acinclude.m4: Tweaks.
1605         * config/c_io_libio.cc: Tweaks.
1606         * bits/sstream.tcc (stringbuf::pbackfail): Simplify.
1607         * libio/_G_config.h: Don't define _G_HAVE_ST_BLKSIZE.
1608         * libio/[iofwide.c, wfiledoalloc.c, wfiteopos.c, wgenops.c]: New files.
1609         * libio/iofclose.c iofopen.c, stdio.c: New files.
1610         * libio/Makefile.am: Add files, add flags, etc.
1611         * src/Makefile.am (sources): Add filebuf.cc.
1612         * acinclude.m4 (GLIBCPP_CHECK_WCHAR_T_SUPPORT):
1613         (GLIBCPP_ENABLE_CSTDIO): Versioning testing, etc etc.
1614
1615 2000-07-17  Phil Edwards  <pme@sourceware.cygnus.com>
1616
1617         * acinclude.m4:  Import CHECK_GNU_MAKE from autoconf macro archive.
1618         * configure.in:  Use it.  Also print reminders one time.
1619         * aclocal.m4:  Regenerate.
1620         * configure:  Regenerate.
1621
1622 2000-07-15  Gabriel Dos Reis  <gdr@codesourcery.com>
1623
1624         * bits/valarray_array.h (__valarray_get_storage): New function.
1625         (_Array<>::Array): Use it.
1626         * bits/std_valarray.h (valarray<>::valarray): Likewise.
1627         (valarray<>::resize): Likewise.  Tweak.
1628         * src/valarray-inst.cc (__valarray_product): Tweak.
1629
1630 2000-07-11  Phil Edwards  <pme@sourceware.cygnus.com>
1631
1632         * docs:  Update sourceware->sources in every HTML file.  Minor updates.
1633
1634 2000-07-07  Benjamin Kosnik  <bkoz@soma.redhat.com>
1635
1636         Clean up configure/build longstanding issues.
1637         * src/Makefile.am (AC_CXXFLAGS): Don't set @SECTION_LDFLAGS@ here.
1638         (CXXLINK): Add here, instead.
1639
1640         * Makefile.am (check-install): Make sure mkcheck has execute privs.
1641         (check): Same here.
1642         * configure.in (AC_OUTPUT_COMMANDS): Remove hacks here.
1643
1644         * configure.in (AC_OUTPUT_COMMANDS): Link c_io_libio.h and
1645         c_io_libio.cc instead of copying.
1646         * acinclude.m4 (GLIBCPP_ENABLE_CSTDIO): Do link here.
1647
1648         * configure.in (AC_OUTPUT_COMMANDS): Link $THREADS.h and
1649         c++threads.h instead of copying.
1650         * acinclude.m4 (GLIBCPP_ENABLE_THREADS): Do link here.
1651         Tweaks.
1652         
1653         * config/c_io_libio.cc (__basic_file::_M_open_mode): Consolidate.
1654         * bits/basic_file.h: Declare.
1655
1656         * mkcheck.in (TESTS_FILE): Use -v instead of --version.
1657
1658 2000-07-07   brent verner  <brent@rcfile.org> 
1659
1660         * testsuite/27_io/istream_unformatted.cc (test05): New test.
1661
1662 2000-07-07  Benjamin Kosnik  <bkoz@gnu.org>
1663
1664         * bits/istream.tcc (istream::getline): Minor tweaks.
1665
1666 2000-07-07  Phil Edwards  <pme@sourceware.cygnus.com>
1667
1668         * docs/download.html:  Mention gcc_update.
1669         * docs/configopts.html:  Minor updates.
1670         * docs/gccrebuild.html:  Ditto.
1671         * docs/18_support/howto.html:  More tips, explanations, and reminders.
1672         * docs/19_diagnostics/howto.html:  Ditto.
1673         * docs/21_strings/howto.html:  Ditto.
1674         * docs/24_iterators/howto.html:  Ditto.
1675         * docs/25_algorithms/howto.html:  Ditto.
1676         * docs/26_numerics/howto.html:  Ditto.
1677
1678 2000-07-05  brent verner  <brent@rcfile.org> 
1679
1680         * testsuite/27_io/ifstream_members.cc (test01): Add tests.
1681         * testsuite/27_io/ofstream_members.cc (test01): Add tests.
1682         * config/c_io_libio.cc (__basic_file::open): Unset
1683         ~_IO_DELETE_DONT_CLOSE.
1684
1685 2000-07-05  Zack Weinberg  <zack@wolery.cumb.org>
1686         
1687         * bits/gslice_array.h, bits/indirect_array.h, bits/mask_array.h,
1688         bits/slice_array.h, bits/std_valarray.h, bits/valarray_meta.h:
1689         Do not paste anything after 'operator' keyword.
1690
1691 2000-07-03  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
1692
1693         * bits/std_memory.h: Revert.
1694
1695 2000-07-03  Brendan Kehoe  <brendan@zen.org>
1696
1697         * bits/std_complex.h: Fix parens. Format.
1698         
1699 2000-07-03  scott snyder  <snyder@fnal.gov>
1700
1701         * bits/locale_facets.tcc (_M_extract): Only figure out the base
1702         from the input if base == 0.
1703         * testsuite/27_io/istream_extractor_arith.cc: Test reading a
1704         number with a leading `0' in hex mode.
1705
1706         * shadow/bits/std_cmath.h: Fix typo in _GLIBCPP_HAVE_CEILL test.
1707
1708         * mkinclosure: Change `==' to `=' in test.
1709
1710 2000-07-03  Chip Salzenberg  <chip@valinux.com>
1711
1712         * src/Makefile.am (libio_headers): _G_config.h is found in srcdir,
1713         not builddir.
1714         * src/Makefile.in: Regenerate.
1715
1716 2000-07-01  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
1717             Ulrich Drepper  <drepper@purist.soma.redhat.com>
1718
1719         Sync libio to glibc-2.2 current CVS. 
1720         * libio/_G_config.h: New file.
1721         * libio/wfileops.c: New file.
1722         * libio/wfiledoalloc.c: New file.
1723         * libio/wgenops.c: New file.
1724         * libio/iofwide.c: New file.
1725         * libio/Makefile.am: Tweaks.
1726         * libio/Makefile.in: Regenerate.
1727         * libio/gen-params: Remove. Generic replacement for this yet undone.
1728         * libio/[filedoalloc.c, fileops.c, genops.c, iolibio.h, libio.h,
1729         libioP.h, stdfiles.c]: Update.
1730         * config/c_io_libio.cc: Tweaks.
1731         * acinclude.m4: Complete hacks to test wide io.
1732         * aclocal.m4: Regenerate.
1733         * configure: Regenerate.
1734         * src/Makefile.am: Update.
1735         * src/Makefile.in: Regenerate.
1736
1737         * math/cargl.c: Remove underscores.
1738         
1739         * bits/locale_facets.h: Tweaks. Start adding iconv details
1740         and notes.
1741         * bits/locale_facets.tcc: Tweaks.
1742         * bits/std_cwchar.h: Tweaks.
1743         
1744 2000-06-29  scott snyder  <snyder@fnal.gov>
1745
1746         * bits/concept_checks.h
1747         (__less_then_comparable_requirement_violation): Only check for <.
1748         * testsuite/25_algorithms/lower_bound.cc: New file.
1749         
1750 2000-06-29  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
1751
1752         * testsuite/27_io/ostream_manip.cc (test02): Add tests.
1753         * bits/ostream.tcc: Tweak.
1754         * bits/std_fstream.h (basic_filebuf::setbuf): Reset
1755         _M_buf_size_opt too.
1756         * bits/std_streambuf.h (basic_streambuf::~basic_streambuf): Zero
1757         out _M_buf_size_opt.
1758         * bits/std_sstream.h (basic_stringbuf::_M_init_stringbuf): Set
1759         _M_buf_size_opt out here.
1760         * bits/char_traits.h (char_traits::eos): Non standard member
1761         function, uglify to __eos. Return char_type().
1762         * bits/std_ostream.h: Change.
1763
1764         * testsuite/27_io/ostream_seeks.cc: New file.
1765         * testsuite/27_io/ostream_seeks-1.tst: New file.
1766         * testsuite/27_io/istream_unformatted.cc (main): Move test04 and
1767         test05 to...
1768         * testsuite/27_io/istream_seeks.cc: New file.
1769
1770 2000-06-29  Branko Cibej  <branko.cibej@hermes.si>
1771
1772         * bits/std_memory.h (auto_ptr_ref): Reworked and defined only if
1773         _GLIBCPP_RESOLVE_LIB_DEFECTS.
1774         (auto_ptr): _M_ptr changed to void*.
1775         (suto_ptr::get): Cast _M_ptr to element type.
1776         (auto_ptr::auto_ptr(auto_ptr<Tp1>)): Test implicit convetsion.
1777         (auto_ptr::~auto_ptr): Use this->get() instead of _M_ptr.
1778         (auto_ptr::operator*): Likewise.
1779         (auto_ptr::operator->): Likewise.
1780         (auto_ptr::release): Likewise.
1781         (auto_ptr::reset): Likewise.
1782         (auto_ptr::auto_ptr(auto_ptr_ref)): Initialize from __ref._M_release.
1783         (auto_ptr::operator auto_ptr_rev<_Tp1>): Updated.
1784         Define nested auto_ptr_ref unless _GLIBCPP_RESOLVE_LIB_DEFECTS.
1785         Define operator=(auto_ptr_ref) if _GLIBCPP_RESOLVE_LIB_DEFECTS.
1786
1787 2000-06-28  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
1788
1789         * testsuite/27_io/filebuf.cc: Tweak.
1790         * testsuite/27_io/filebuf_members.cc (test_01): Fix.
1791         * config/c_io_libio.cc (__basic_file::~__basic_file): Match libio
1792         filebuf dtor.
1793         (__basic_file::basic_file): Clean, add calls similar to
1794         _IO_file_attach.
1795         (__basic_file::open): Clean.
1796         (__basic_file::sys_open): Clean.
1797
1798         * bits/std_fstream.h: Revert.
1799         * bits/fstream.tcc (filebuf::close()): Revert.
1800         (filebuf::basic_filebuf()): Revert.
1801
1802 2000-06-27  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
1803
1804         Update to SGI STL 3.3
1805         * ext/hash_map, ext/hash_set, ext/slist, ext/stl_bvector.h,
1806         ext/stl_rope.h, ext/ropeimpl.h: Update.
1807         * bits/std_bitset.h, bits/std_map, bits/std_memory.h,
1808         bits/stl_algo.h, bits/stl_algobase.h, bits/stl_alloc.h,
1809         bits/stl_config.h, bits/stl_construct.h, bits/stl_deque.h,
1810         bits/stl_function.h, bits/stl_heap.h, bits/stl_iterator.h,
1811         bits/stl_iterator_base.h, bits/stl_list.h, bits/stl_map.h,
1812         bits/stl_multimap.h, bits/stl_multiset.h, bits/stl_numeric.h,
1813         bits/stl_queue.h, bits/stl_set.h, bits/stl_stack.h,
1814         bits/stl_string_fwd.h, bits/stl_threads.h, bits/stl_three.h,
1815         bits/stl_uninitialized.h, bits/stl_vectory.h: Update.
1816
1817         * src/Makefile.am (headers): Add new files.
1818         * src/Makefile.in: Regenerate.
1819         * src/stl-inst.cc (std): Add instantiation for __sink_unused_warning.
1820         * bits/concept_checks.h: New file.
1821         * bits/container_concepts.h: New file.
1822         * bits/sequence_concepts.h: New file.
1823         
1824 2000-06-27  H.J. Lu  <hjl@gnu.org>
1825             Loren J. Rittle  <ljrittle@acm.org>
1826
1827         * mkcheck.in: Add support to print standard flags needed to
1828         test g++ in build tree.  Enhance command line error checking.
1829
1830 2000-06-27  Phil Edwards  <pme@sourceware.cygnus.com>
1831
1832         * docs/install.html:  Fix minor typo as reported.
1833
1834 2000-06-26  Brent Verner <brent@rcfile.org>
1835
1836         * bits/string.tcc (string::rfind): Fix.
1837         * testsuite/21_strings/rfind.cc: New file.
1838         
1839 2000-06-26  Anthony Williams  <anthony@anthonyw.cjb.net>
1840
1841         * testsuite/21_strings/ctor_copy_dtor.cc: Fixed logic error.
1842         
1843 2000-06-26  Branko Cibej  <branko.cibej@hermes.si>
1844
1845         * testsuite/27_io/filebuf_members.cc (test_01): Fixed typos.
1846
1847         * mkcheck.in: Make the *.txt and *.tst files writable after
1848           copying them to $TEST_DIR.
1849
1850         * testsuite/27_io/ostream_inserter_arith.cc: Renamed
1851           __TEST_NUMPUT_VERBOSE to TEST_NUMPUT_VERBOSE.  Define
1852           TEST_NUMPUT_VERBOSE only if DEBUG_ASSERT.
1853         
1854 2000-06-23  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
1855
1856         * bits/fstream.tcc (basic_filebuf::basic_filebuf(fd)): Use it.
1857         (basic_filebuf::close): Use it.
1858         * bits/std_fstream.h (basic_filebuf): Remove default arguments for
1859         filebuf ctor.
1860         (basic_filebuf): Add _M_fileno_based data member.
1861         As reported by brent verner <brent@rcfile.org> 
1862         * testsuite/27_io/filebuf_members.cc: New file.
1863         * testsuite/27_io/filebuf_members-1.tst: New file.
1864
1865         * bits/std_fstream.h: Formatting tweaks.
1866         * testsuite/27_io/ofstream_members.cc: New file.
1867         * testsuite/27_io/ofstream_members-1.tst: New file.
1868         * testsuite/27_io/ifstream_members.cc: New file.
1869         * testsuite/27_io/ifstream_members-1.tst: New file.
1870
1871 2000-06-23  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
1872             Ulrich Drepper  <drepper@cygnus.com>
1873         
1874         * acinclude.m4 (GLIBCPP_CHECK_MATH_SUPPORT): Add -D_GNU_SOURCE, so
1875         that all the freaky stuff like sincos will be around...
1876
1877 2000-06-22  Branko Cibej  <branko.cibej@hermes.si>
1878
1879         * Makefile.am (AM_MAKEFLAGS): Added WERROR to list of flags.
1880
1881 2000-06-22 Steven King <sxking@uswest.net>
1882
1883         * acinclude.m4: Check for sinl, _sinl using 1 parameter.
1884
1885 2000-06-22  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
1886
1887         * acinclude.m4 (GLIBCPP_CHECK_BUILTIN_MATH_SUPPORT): Redo. Use the
1888         same approach as GLIBCPP_CHECK_MATH_SUPPORT, only don't try to
1889         link against libm and don't use -fno-builtins...
1890         * math/mathconf.h: Change up builtin macros to new schema.
1891         * bits/std_cmath.h: And here. Wheee!
1892         * shadow/bits/std_cmath.h: And here.
1893         * acconfig.h: Change up builtin macros here.
1894         * math/cosf.c:  Remove.
1895         * math/fabsf.c:  Likewise.
1896         * math/sinf.c:  Likewise.
1897         * math/sqrtf.c:  Likewise.
1898         * math/Makefile.am (EXTRA_DIST):  Remove those four files.
1899         * math/Makefile.in:  Regenerate.
1900
1901 2000-06-22  Anthony Williams  <anthony@anthonyw.cjb.net>
1902
1903         * testsuite/21_strings/find.cc: Patch.
1904
1905 2000-06-22  Benjamin Kosnik  <bkoz@soma.redhat.com>
1906
1907         * acinclude.m4 (GLIBCPP_CHEC_LINKER_FEATURES): Use gcc + -x c++ as
1908         an easy way to get at g++ without having to link in libstdc++.
1909
1910 2000-06-21  Benjamin Kosnik  <bkoz@soma.redhat.com>
1911
1912         Fix alpha, powerpc build failures.
1913         * acinclude.m4 (GLIBCPP_CHECK_MATH_SUPPORT): Substantially
1914         re-write. Need to check for both proper declaration when using a
1915         c++ compiler, and "C" linkage when linking. Do both, and if both
1916         exist, then define the HAVE_* bits in config.h.
1917         (GLIBCPP_CHECK_MATH_DECL_AND_LINKAGE): New, uber-macro. Does all.
1918         (GLIBCPP_CHECK_LINKER_FEATURES): Actually link and run this
1919         program, doh.
1920
1921 2000-06-20  Anthony Williams  <anthony@anthonyw.cjb.net>
1922
1923         * bits/string.tcc: Fix find.
1924         * testsuite/21_strings/find.cc: Patch.
1925         
1926 2000-06-20  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
1927
1928         * docs/install.html: Update where to get automake, where to get
1929         binutils.
1930         * acinclude.m4: Need -fno-builtins too, so gcc doesn't recognize
1931         builtins.
1932
1933 2000-06-19  Benjamin Kosnik  <bkoz@soma.redhat.com>
1934
1935         * acinclude.m4 ((GLIBCPP_CHECK_MATH_SUPPORT): Revert last change.
1936         Add -Werror-implicit-function-declaration instead.
1937
1938         Regenerate with fixed maintainer-tools.
1939         * aclocal.m4: Regenerate.
1940         * configure: Regenerate.
1941         * libio/Makefile.in: Regenerate.
1942         * src/Makefile.in: Regenerate.
1943         
1944 2000-06-19  Russell Davidson  <russell@ehess.cnrs-mrs.fr>
1945
1946         * testsuite/27_io/istream_extractor_arith.cc: Patch.
1947         * bits/locale_factets.tcc: Tweak.
1948         
1949 2000-06-19  Raja R Harinath  <harinath@cs.umn.edu>
1950         
1951         * src/Makefile.am: change @WERROR@ to $(WERROR) so that this can
1952         be overridden on the command line for individual files.
1953
1954 2000-06-19  Benjamin Kosnik  <bkoz@soma.redhat.com>
1955
1956         * acinclude.m4 (GLIBCPP_CHECK_MATH_SUPPORT): Can't use
1957         AC_LANG_CPLUSPLUS as this tries to link in libstdc++, which we are
1958         building. Use -x c++ instead, which does not attempt to link
1959         libstdc++.
1960
1961         * acinclude.m4 (GLIBCPP_CHECK_LINKER_FEATURES): Actually check for
1962         not coring when we hit a try/throw block, which was the problem
1963         with the linker support...
1964
1965         * docs/17_intro/contribute.html: Add bits about getting to the LWG
1966         issues pages.
1967         * docs/documentation.html: Rename link to make more accurate and scary.
1968         * docs/gccrebuild.html: Edit for clarity as these are no longer
1969         separate projects.
1970         * docs/install.html: Add bits about binutils for
1971         -ffunction-sections, -fdata-sections, -Wl,--gc-sections
1972
1973         * configure.in: Add call for GLIBCPP_CHECK_COMPLEX_MATH_SUPPORT.
1974         * math/Makefile.am (EXTRA_DIST): Change USE_LONG_DOUBLE to
1975         USE_COMPLEX_LONG_DOUBLE.
1976         * acinclude.m4 (GLIBCPP_CHECK_MATH_SUPPORT): Break into
1977         GLIBCPP_CHECK_MATH_SUPPORT and GLIBCPP_CHECK_COMPLEX_MATH_SUPPORT.
1978         Works around irregularies in powerpc "C" compiler, but a good idea
1979         anyway.
1980
1981         * acinclude.m4 (GLIBCPP_CHECK_COMPLEX_MATH_COMPILER_SUPPORT):
1982         New. Merge both old compiler bug checks for complex into this.
1983
1984 2000-06-19  Anthony Williams  <anthony@anthonyw.cjb.net>
1985         
1986         * testsuite/21_strings/find.cc: Empty strings can be found at all
1987         positions. Modified.
1988
1989 2000-06-19  Branko Cibej  <branko.cibej@hermes.si>
1990
1991         * testsuite/20_utilities: New directory.        
1992         * testsuite/20_utilities/auto_ptr.cc: New file.
1993         
1994 2000-06-14  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
1995
1996         * src/Makefile.am (string_sources): Simplify, assuming that with
1997         -ffunction-sections, -fdata-sections, -Wl,--gc-sections, all this
1998         hacking is not necessary.
1999         (wstring_sources): Same.
2000         (OPTIMIZE_CXXFLAGS): Enable -fdata-sections -ffunction-sections
2001         -Wl,--gc-sections.
2002         * src/string-inst.cc: Remove macro blocks.
2003         * mkcheck.in (CXX_FLAG): Add bits here.
2004         
2005         * src/string-inst.cc: Remove iostream-related string instantiations.
2006         * src/misc-inst.cc: Add here.
2007
2008         * acinclude.m4 (GLIBCPP_CHECK_COMPILER_VERSION): Change FMTFLAGS
2009         to WFMT_FLAGS.
2010         * aclocal.m4: Regenerate.
2011         * configure.in: Change up.
2012         * configure: Regenerate.
2013         
2014 2000-06-13  Steven King  <sxking@uswest.net>
2015
2016         * acinclude.m4:  Fixup some of the builtin math tests and add tests for
2017         __builtin_fmod* and test libm for fmodf, fmodl or _fmodf, _fmodl.
2018         * acconfig.h: Add entries for fmod*.
2019
2020 2000-06-13  Branko Cibej  <branko.cibej@hermes.si>
2021
2022         * bits/std_cmath.h:  Fix typos in tests (*_FMODFF -> *_FMODF).
2023         Test  *_MODFF not *_MODF for modf(float, float*).
2024         (modf(float, float*)): Remove reference to _C_legacy.
2025
2026 2000-06-13  Benjamin Kosnik  <bkoz@redhat.com>
2027         
2028         * acinclude.m4 (enable_cshadow_headers): Change CSHADOWFLAGS to
2029         _GNU_SOURCE instead of _ISOC9X_SOURCE, as _GNU_SOURCE is the
2030         superset, and already defined at top level.
2031         * aclocal.m4: Regenerate.
2032         * configure: Regenerate.
2033
2034         * docs/17_intro/contribute.html: Plead with people to use -cp.
2035         
2036 2000-06-13  Anthony Williams  <anthony@anthonyw.cjb.net>
2037
2038         * testsuite/23_containers/bitset_ctor.cc: Qualify reverse wth std::.
2039
2040         * testsuite/27_io/filebuf.cc: Changed calls to
2041         fpos<>._M_position() to implicit calls to operator streamoff().
2042         * testsuite/27_io/iostream_objects.cc: Removed #include <ciso646>,
2043         as not needed. Revert, as part of standard.
2044         * testsuite/27_io/ostream_inserter_arith.cc: Replaced explicit
2045         call to numpunct<>._M_init() with overrides of the appropriate
2046         virtual functions.
2047
2048         * testsuite/27_io/stringstream.cc: Removed unnecessary char *
2049         pointers from test01, so no need to call base(), which isn't
2050         guaranteed to be implemented as iterators may themselves be pointers
2051         * testsuite/27_io/stringbuf.cc: Removed unnecessary calls to
2052         _M_position() - use implicit conversion to streamoff instead
2053
2054 2000-06-13  Thomas Holenstein  <thomas@hex.ch>
2055  
2056         * bits/stl_iterator.h: Added inline to operators == to >=.
2057
2058 2000-06-13  Brent Verner <brent@rcfile.org>
2059
2060         * bits/streambuf.tcc: repaired _S_copy_streambufs()
2061         * testsuite/27_io/ostream_inserter_other.cc (test03): Added testcase.
2062         
2063 2000-06-12  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
2064
2065         * bits/locale_facets.h (ctype<wchar_t>): Remove unnecessary data
2066         members.
2067         * src/locale.cc: Add cwchar include here. Remove incorrect
2068         definitions, and stub them out.
2069         * config/generic/ctype.cc (ctype): Remove ctype<wchar_t> bits.
2070         * config/solaris/solaris2.7/ctype.cc (ctype): Same.
2071         * config/solaris/solaris2.5/ctype.cc (ctype): Same.
2072         * config/newlib/ctype.cc: Same.
2073         * config/gnu-linux/ctype.cc: Same.
2074         * config/bsd/ctype.cc: Same.
2075         * config/aix/ctype.cc: Same.
2076
2077 2000-06-12  Branko Cibej  <branko.cibej@hermes.si>
2078
2079         * config/solaris/solaris2.6/ctype.cc (do_toupper, do_tolower): Use
2080         towupper and towlower to convert wide characters.
2081
2082 2000-06-12  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
2083
2084         * mkcheck.in: Clean up confusion regarding NAME, PRE_NAME.
2085
2086 2000-06-08  Branko Cibej  <branko.cibej@hermes.si>
2087
2088         * acinclude.m4 (GLIBCPP_CHECK_BUILTIN_MATH_SUPPORT):  Check for
2089           sinf, cosf, fabsf, and sqrtf; add to LIBMATHOBJS if missing.
2090         * aclocal.m4:  Regenerate.
2091         * configure:  Regenerate.
2092         * math/cosf.c:  New file.
2093         * math/fabsf.c:  Likewise.
2094         * math/sinf.c:  Likewise.
2095         * math/sqrtf.c:  Likewise.
2096         * math/Makefile.am (EXTRA_DIST):  Add those four files.
2097         * math/Makefile.in:  Regenerate.
2098
2099 2000-06-08  Phil Edwards  <pme@sourceware.cygnus.com>
2100
2101         * testsuite/26_numerics/complex_inserters_extractors.cc:  Need cmath.
2102
2103 2000-06-06  Steven King  <sxking@uswest.net>
2104
2105         * acconfig.h: Added defines for HAVE_BUILTIN math functs for float,
2106         double and long double.  Added defines for HAVE libm math functs for
2107         float and long double.
2108         * aclocal.m4: Added configure checks for builtin math funcs and libm
2109         support for float and long double versions of the math functions.
2110         * config.h.in: Added undefs for math functs.
2111         * configure: Regenerate.
2112         * math/mathconf: Changed the _GLIBCPP_HAS_BUILTIN_* to
2113         _GLIBCPP_HAVE_BUILTIN_*.
2114         * bits/std_cmath.h: Added long double support.  Use builtins for
2115         float, double and long if available, otherwise, use libm versions if
2116         availible, otherwise, punt.
2117         * shadow/bits/std_cmath.h: ditto
2118
2119 2000-06-02  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
2120
2121         * bits/locale_facets.h: Tweak.
2122         * src/locale.cc (codecvt<wchar_t>): Tweak. 
2123         
2124         * bits/locale_facets.h (_Format_cache): _S_ecks -> _S_x. 
2125         * bits/locale_facets.tcc (num_get<char>::_M_extract): Fix for hex.
2126
2127         * bits/basic_string.h: Move data member up.
2128         * src/string-inst.cc: Fix instantiations.
2129         * bits/string.tcc: Fix types.
2130         
2131 2000-06-02  Anthony Williams  <anthony@anthonyw.cjb.net>
2132
2133         * testsuite/21_strings/replace.cc (test01): Qualify find with std::.
2134
2135 2000-06-01  Benjamin Kosnik  <bkoz@gnu.org>
2136
2137         * bits/std_cwctype.h: Clean.
2138         * bits/std_cwchar.h: Clean, remove cruft.
2139
2140         * acinclude.m4 (GLIBCPP_CHECK_WCHAR_T_SUPPORT): Re-work, add bits
2141         for beginning iconv support.
2142         Remove _GLIBCPP_HAS_WCHAR_MIN_MAX, roll into _GLIBCPP_USE_WCHAR_T
2143         macro.
2144         * acconfig.h: Remove _GLIBCPP_HAS_WCHAR_MIN_MAX.
2145         * bits/limits_generic.h: Remove.
2146         * src/gen-num-limits.cc: Same.
2147         
2148         * src/locale.cc: Tweaks.
2149
2150         * bits/char_traits.h: Tweaks.
2151
2152 2000-05-31  Russell Davidson  <russell@ehess.cnrs-mrs.fr> 
2153
2154         * bits/locale_facets.tcc (num_get<char>::_M_extract): Fix signage,
2155         exponent, scientific formatting issues.
2156         * testsuite/27_io/istream_extractor_arith.cc (test09): Add tests.
2157         
2158 2000-05-31  Branko Cibej  <branko.cibej@hermes.si>
2159
2160         * bits/limits_generic.h (numeric_limits<wchar_t>): Use WCHAR_MIN
2161         and WCHAR_MAX instead of WCHART_MIN and WCHART_MAX.
2162
2163 2000-05-31  Nathan Myers  <ncm@cantrip.org>
2164  
2165        * docs/thanks.html: edit own credits
2166
2167 2000-05-31  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
2168
2169         * bits/generic_shadow.h: Remaining _C_Shadow -> _C_shadow fix.
2170         
2171         * acinclude.m4 (GLIBCPP_ENABLE_LONG_LONG): Add strtoull checks...
2172
2173         * mkcheck.in (SH_FLAG): Add in -Wl,--rpath -Wl,$LIB_PATH. Tweaks.
2174         
2175 2000-05-31 Steven King <sxking@uswest.net>
2176
2177         * shadow/time.h: fix typo
2178         * shadow/wchar.h: ifdef __USE_GNU for wcsdup
2179         * shadow/bits/std_cwchar.h: ditto
2180         * shadow/bits/std_cstdlib.h: add overloads of abs and div for long
2181         and long long.
2182
2183 2000-05-26  Phil Edwards  <pme@sourceware.cygnus.com>
2184
2185         * acinclude.m4 (GLIBCPP_ENABLE_LONG_LONG):  If strtoll isn't
2186           available, force --disable.  Need to flesh this out; make smarter.
2187         * aclocal.m4:  Regenerate.
2188         * configure:  Regenerate.
2189
2190         * mkcheck.in:  Minor tweaks.
2191         * docs/download.html:  Fix typo.
2192
2193 2000-05-25  Benjamin Kosnik  <bkoz@milou.soma.redhat.com>
2194
2195         * inclosure: Change to...
2196         * mkinclosure: This.
2197         Fix paths to bash.      
2198         * mkcshadow: Fix paths to bash.
2199         
2200         * src/Makefile.am: Tweaks. Do cshadow header trickery at build time.
2201         * src/Makefile.in: Regnerate.
2202         * acinclude.m4 (GLIBCPP_COMPILER_VERSION): Fix typo.
2203         (GLIBCPP_ENABLE_SHADOW): Do a less gross hack.
2204         * aclocal.m4: Regenerate.
2205         * mkcheck.in (INC_PATH): Tweak. 
2206         
2207         * configure.in: Enable long long by default.
2208         * configure: Regenerate.
2209         
2210         * mkcheck.in (LIB_PATH): Revert.
2211
2212 2000-05-24   Nathan "I don't write ChangeLog Entries" Myers  <ncm@cantrip.org>
2213
2214         * config/cpu/i486: New directory.
2215         * config/cpu/i486/bits: New directory.
2216         * config/cpu/i486/bits/atomicity.h: New file.
2217         * config/cpu/i386/bits/atomicity.h (__compare_and_swap): Delete
2218         'cmpxchgl' asm.
2219         * acinclude.m4 (GLIBCPP_CHECK_CPU): Enable i386.
2220         
2221 2000-05-24  Loren J. Rittle  <ljrittle@acm.org>
2222
2223         * backward/alloc.h (__default_alloc_template): Only expose
2224           implementation-specific symbol, if it exists in the
2225           configuration.
2226         * backward/iostream.h (ends): Expose symbol.
2227         * backward/strstream.h: New file.
2228         * backward/stream.h: New file.
2229         * backward/ostream.h: New file.
2230         * backward/istream.h: New file.
2231         * backward/fstream.h: New file.
2232         * backward/complex.h: New file.
2233         * backward/iomanip.h: New file.
2234
2235         * mkcheck.in (LIB_PATH): Add -R bits.
2236
2237         * math/carg.c (carg): Replace __atan2 with atan2.
2238
2239 2000-05-24  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
2240
2241         * Makefile.am (TAGS): Construct.
2242         * Makefile.in: Rengerate.
2243         * src/Makefile.am: Tweak.
2244         * src/Makefile.in: Tweak.
2245         * configure.in: Tweak.
2246
2247         * bits/c++config.h: Rename to ...
2248         * bits/c++config: This.
2249         * mkc++config: Adjust.
2250         
2251         * m4: Remove.
2252         * m4/lc_message.m4: Merge into acinclude.m4.
2253         * m4/mathfcts.m4: Same.
2254         * m4/stringfcts.m4: Same.
2255         * acinclude.m4: Add here.
2256         * configure: Regnerate.
2257         
2258         * acinclude.m4 (GLIBCPP_CHECK_COMPILER_VERSION): Remove
2259         OPTLEVEL. Add FMTFLAGS.
2260         * aclocal.m4: Regenerate.
2261         * src/Makefile.am (AC_CXXFLAGS): Take out OPTLEVEL, as this has
2262         been disabled due to higher-level Makefiles running amuck over
2263         this bit, and add in FMTFLAGS so that formatting is clear. 
2264         * src/Makefile.in: Regenerate.
2265         * configure: Regenerate.
2266
2267         * src/ios.cc (ios_base::sync_with_stdio): Clean up buffers from
2268         initialization.
2269
2270         * docs/download.html: Remove references to Cygwin-specific bits,
2271         as this can now be built natively.
2272         Update with current information.
2273
2274 2000-05-24  Phil Edwards  <pme@sourceware.cygnus.com>
2275
2276         * acinclude.m4 (GLIBCPP_CHECK_COMPILER_VERSION):  If we can use
2277           -fdiagnostics-show-location=once, do so.  Expand AC_LANG_* to
2278           enclose other tests in this macro, including future ones.
2279         * aclocal.m4:  Regenerate.
2280         * configure:  Regenerate.
2281
2282         * docs/faq/index.html:  Update location of libg++ FAQ.
2283         * docs/faq/index.txt:  Regenerate.
2284
2285 2000-05-22  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
2286
2287         * docs/17_intro/libstdc++-assign.txt: Change Cygnus to FSF.
2288
2289 2000-05-22  Phil Edwards  <pme@sourceware.cygnus.com>
2290
2291         * mkcheck.in:  Tweak for Solaris 8.  Additional minor output comment.
2292
2293 2000-05-22  Phil Edwards  <pme@sourceware.cygnus.com>
2294
2295         * acinclude.m4:  If the new pragma isn't supported, don't kill -Werror;
2296           keep -Werror and add -Wno-unknown-pragma.  -Werror Is Good.
2297         * aclocal.m4:  Regenerate.
2298         * configure:  Regenerate.
2299
2300 2000-05-19   Nathan C. Myers  <ncm@cantrip.org>
2301
2302         * bits/generic_shadow.h: s/swamp/legacy/
2303
2304 2000-05-19  Phil Edwards  <pme@sourceware.cygnus.com>
2305
2306         * acinclude.m4:  Clean up comments on newer checks.
2307           (GLIBCPP_CHECK_COMPILER_VERSION):  Check for system_header
2308           pragma support.  Remove WERRORSUPPRESS variable, add WERROR.
2309         * aclocal.m4:  Regenerate.
2310         * configure:  Regenerate.
2311         * Makefile.in:  Regenerate.
2312         * libio/Makefile.in:  Regenerate.
2313         * math/Makefile.in:  Regenerate.
2314         * src/Makefile.am:  Tell make's WERROR to depend on configure's WERROR.
2315         * src/Makefile.in:  Regenerate.
2316         * docs/configopts.html:  Document changes to --enable names.
2317
2318 2000-05-18  Chip Salzenberg  <chip@valinux.com>
2319
2320         * bits/ostream.tcc (_S_pad_char): Function template should not be
2321         static.
2322         * bits/streambuf.tcc (_S_copy_streambufs): Likewise.
2323         * src/string-inst.cc (__destroy_aux): Instantiate for string*.
2324
2325 2000-05-18  Nathan C. Myers  <ncm@cantrip.org>
2326
2327         * mkcshadow: Change C_Swamp to C_legacy.
2328         * shadow/*: Same.
2329         * shadow/bits/*: Same.
2330         s/C_Swamp/C_legacy/g
2331         s/SWAMP/LEGACY/g
2332         s/_Shadow/_shadow/g
2333
2334 2000-05-18  Anthony Williams  <anthony@anthonyw.cjb.net> 
2335
2336         * bits/locale_facets.tcc (num_get::_M_extract): Change char* to
2337         const char*.
2338         * src/string-inst.cc (string::_S_find): Same.
2339         
2340 2000-05-18  Benjamin Kosnik  <bkoz@gnu.org>
2341
2342         * acinclude.m4 (GLIBCPP_ENABLE_SHADOW): Change to
2343         --enable-cshadow-headers. Add output messages.
2344         (GCC_ENABLE_LONG_LONG): Change to --enable-long-long, no
2345         underscores (like the rest of the enable options.) Add output messages.
2346         * aclocal.m4: Regenerate.
2347         * configure: Regenerate.
2348         * configure.in: Touch.
2349         
2350 2000-05-17  Benjamin Kosnik  <bkoz@cygnus.com>
2351
2352         * mkcheck.in: Enable shared library testing.
2353
2354 2000-05-17  Nathan C. Myers  <ncm@cantrip.org>
2355
2356         * bits/std_cmath.h: fix sqrt(float)
2357
2358 2000-05-16  Loren J. Rittle  <ljrittle@acm.org>
2359
2360         * bits/std_cassert.h: Use system_header pragma.
2361         * bits/std_cctype.h: Likewise.
2362         * bits/std_cerrno.h: Likewise.
2363         * bits/std_cfloat.h: Likewise.
2364         * bits/std_climits.h: Likewise.
2365         * bits/std_clocale.h: Likewise.
2366         * bits/std_cmath.h: Likewise.
2367         * bits/std_csetjmp.h: Likewise.
2368         * bits/std_csignal.h: Likewise.
2369         * bits/std_cstdarg.h: Likewise.
2370         * bits/std_cstddef.h: Likewise.
2371         * bits/std_cstdio.h: Likewise.
2372         * bits/std_cstdlib.h: Likewise.
2373         * bits/std_cstring.h: Likewise.
2374         * bits/std_ctime.h: Likewise.
2375         * bits/std_cwchar.h: Likewise.
2376         * bits/std_cwctype.h: Likewise.
2377         * bits/std_exception.h: Likewise.
2378         * bits/std_new.h: Likewise.
2379         * bits/std_typeinfo.h: Likewise.
2380         * shadow/bits/std_cassert.h: Likewise.
2381         * shadow/bits/std_cctype.h: Likewise.
2382         * shadow/bits/std_cerrno.h: Likewise.
2383         * shadow/bits/std_cfloat.h: Likewise.
2384         * shadow/bits/std_climits.h: Likewise.
2385         * shadow/bits/std_clocale.h: Likewise.
2386         * shadow/bits/std_cmath.h: Likewise.
2387         * shadow/bits/std_csetjmp.h: Likewise.
2388         * shadow/bits/std_csignal.h: Likewise.
2389         * shadow/bits/std_cstdarg.h: Likewise.
2390         * shadow/bits/std_cstddef.h: Likewise.
2391         * shadow/bits/std_cstdio.h: Likewise.
2392         * shadow/bits/std_cstdlib.h: Likewise.
2393         * shadow/bits/std_cstring.h: Likewise.
2394         * shadow/bits/std_ctime.h: Likewise.
2395         * shadow/bits/std_cwchar.h: Likewise.
2396         * shadow/bits/std_cwctype.h: Likewise.
2397         * shadow/bits/wrap_libio.h: Likewise.
2398         * shadow/bits/wrap_unistd.h: Likewise.
2399         * shadow/sys/cdefs.h: Likewise.
2400
2401 2000-05-16  Nathan C. Myers  <ncm@cantrip.org>
2402
2403         It appears that gcc-2.96 supports the keyword "and" now.
2404         * bits/std_ciso646.h: remove.
2405         * std/ciso646: gut.
2406         * testsuite/17_intro/header_ciso646.c: enable testing.
2407         * src/Makefile.am, src/Makefile.in: remove mention of
2408         bits/std_ciso646.h
2409
2410 2000-05-16  Nathan C. Myers  <ncm@cantrip.org>
2411        
2412        * mkcshadow: fix typo s/_C_Swamp_/_C_Swamp/.
2413
2414 2000-05-16  Phil Edwards  <pme@sourceware.cygnus.com>
2415
2416         * acinclude.m4:  Fix typo, switch to decaf...
2417         * aclocal.m4:  Regenerate.
2418         * configure:  Regenerate.
2419
2420 2000-05-16  Phil Edwards  <pme@sourceware.cygnus.com>
2421
2422         * acinclude.m4 (GLIBCPP_ENABLE_SHADOW):  New macro, stub.
2423         * aclocal.m4:  Regenerate.
2424         * configure.in:  Call.
2425         * configure:  Regenerate.
2426         * docs/configopts.html:  Stub documentation.
2427
2428 2000-05-14  Nathan Myers  <ncm@cantrip.org>
2429
2430         * mkcshadow: build in more-correct directory, create cshadow/
2431         directory if needed, report progress.
2432
2433 2000-05-14  LLeweLLyn Reese  <llewelly@dbritsch.dsl.xmission.com>
2434
2435         * src/Makefile.am: Fix tr commands.
2436         * src/Makefile.am: Remove references to [w]stringCTORDUPAL.[lo,cc]
2437         * src/string-inst.cc: Remove extra instantiation of
2438           S::basic_string(S::size_type, C, S::allocator_type const&);
2439         * src/string-inst.cc: Remove extra template keyword.
2440
2441 2000-05-14  Loren J. Rittle  <ljrittle@acm.org>
2442
2443         * config/bsd/bits/ctype_base.h: Add support for plain BSD4.4.
2444         * acinclude.m4 (GLIBCPP_CHECK_CTYPE): Enhance bsd tests.
2445         * aclocal.m4: Regenerate.
2446         * configure: Regenerate.
2447         * */Makefile.in: Regenerate.
2448
2449 2000-05-11  Phil Edwards  <pme@sourceware.cygnus.com>
2450
2451         * acinclude.m4:  Fix minor typo with ctypes, add more sanity to
2452           enable-cxx-flags, and remove GLIBCPP_ENABLE_NAMESPACES altogether.
2453         * aclocal.m4:  Regenerate.
2454         * configure.in:  Non-blank arguments break fewer Linuxes.
2455         * configure:  Regenerate.
2456         * src/Makefile.am:  Re-order AC_CXXFLAGS components.
2457         * src/Makefile.in:  Regenerate.
2458
2459 2000-05-10  Benjamin Kosnik  <bkoz@redhat.com>
2460
2461         * bits/std_cmath.h: Tweaks.
2462         * math/mathconf.h: Tweaks and fixes for HP-UX 11.
2463         (sqrtf): Define away iff !builtin and !in <math.h>. 
2464         (sinf): Same.
2465         (cosf): Same.
2466         (fabsf): Same.
2467         At some point this directory should be converted to c++, the
2468         autoconf tests should be run by the c++ compiler (not c), and
2469         <cmath> should be used instead of math.h.
2470         Move declaration of nan() here.
2471         * math/complex-stub.h (cabsl): Remove nan() declaration.
2472
2473         Finish up FreeBSD4.0 support.
2474         * config/bsd/ctype.cc: Scope out toupper, tolower calls.
2475         * config/generic/ctype.cc: And here.
2476         * testsuite/21_strings/char_traits.cc (test02): Guard with
2477         _GLIBCPP_USE_WCHAR_T.
2478
2479         via Phil Edwards  <pme@sourceware.cygnus.com>
2480         * bits/std_cctype.h: Remove _GLIBCPP_USE_NAMESPACES.
2481         * acconfig.h: And here.
2482         * acinclude.m4: Same.
2483         * testsuite/27_io/istream.cc: And here.
2484         * testsuite/27_io/ostream.cc: And here.
2485
2486 2000-05-09  Benjamin Kosnik  <bkoz@gnu.org>
2487
2488         * acinclude.m4 (GLIBCPP_CHECK_CPU): Change powerpc bits to
2489         -mcpu=powerpc.
2490         * src/Makefile.am: Disable ENABLE_CXX_FLAGS stuff for the moment.
2491         
2492         * config/generic/bits/ctype_specializations.h (ctype<char>::is):
2493         Make more generic.
2494
2495         * config/bsd: New directory.
2496         * config/bsd/ctype.cc: New.
2497         * config/bsd/bits/ctype_base.h (ctype_base): New.
2498         * config/bsd/bits/ctype_specializations.h: New.
2499         * acinclude.m4 (GLIBCPP_CHECK_CTYPE): Add bsd tests.
2500         
2501 2000-05-09  Phil Edwards  <pme@sourceware.cygnus.com>
2502
2503         * acinclude.m4:  New macro, GLIBCPP_ENABLE_CXX_FLAGS.
2504         * configure.in:  Call.
2505         * src/Makefile.am:  Append results of macro to AC_CXXFLAGS.
2506         * aclocal.m4:  Regenerate.
2507         * configure:  Ditto.
2508         * src/Makefile.in:  Ditto.
2509         * docs/configopts.html:  Document.
2510         * docs/download.html:  Fix typo (close quote).
2511         * docs/footer.html:  Update.
2512
2513 2000-05-09  Loren J. Rittle  <ljrittle@acm.org>
2514
2515         * backward/iostream.h: Expose endl.  Guard wide types.
2516         * src/Makefile.am (headers): Update list to match files.
2517         * src/Makefile.in: Regenerate.
2518
2519 2000-05-09  Vadim Egorov  <egorovv@mailandnews.com>
2520             Benjamin Kosnik  <bkoz@gnu.org>
2521             Nathan Myers  <ncm@cantrip.org>
2522             Dietmar Kuehl  <dietmar_kuehl@yahoo.com> 
2523
2524         * bits/streambuf.tcc (basic_streambuf::xsgetn): Fix uflow case.
2525         (basic_streambuf::xsputn): Make consistent.
2526         * testsuite/27_io/filebuf.cc: Add tests.
2527         
2528 2000-05-08  Steven King  <sxking@uswest.net>
2529
2530         * bits/char_traits.h: Use wchar_t utility functions for
2531         char_traits<wchar_t> methods.
2532         * testsuite/21_string/char_traits.cc: New (test02): test
2533         char_traits<wchar_t>
2534
2535 2000-05-08  Benjamin Kosnik  <bkoz@cygnus.com>
2536
2537         * acinclude.m4 (GLIBCPP_CXXFLAGS): Add bits for solaris2.8.
2538
2539         * bits/fstream.tcc (filebuf::_M_init_filebuf): Don't set
2540         _M_buf_size based on macro, instead use _M_buf_size_opt.
2541         * bits/std_streambuf.h (basic_streambuf): Add _M_buf_size_opt.
2542         (basic_streambuf()): Set _M_buf_size_opt.
2543         * testsuite/27_io/filebuf.cc (filebuf): Use _M_buf_size_opt
2544         instead of _M_buf_size.
2545
2546 2000-05-04  Branko Cibej  <branko.cibej@hermes.si>
2547
2548         * src/complex_io.cc: Don't instantiate inserters and extractors
2549         for wide-character streams unless _GLIBCPP_USE_WCHAR_T is defined.
2550
2551 2000-05-03  Phil Edwards  <pme@sourceware.cygnus.com>
2552             Felix Natter <fnatter@gmx.net>
2553
2554         * docs/footer.html:  Update to see if it takes effect.
2555         * docs/thanks.html:  More people.
2556         * docs/17_intro/headers_cc.txt:  Copy from testsuite, since that can't
2557           be seen from the web pages.  Rename for browser-friendliness...
2558         * docs/17_intro/howto.html:  ...and update here.
2559         * docs/17_intro/porting-howto.html:  Changes from Felix.
2560         * docs/gccrebuild.html:  Mention v3->egcs move.
2561         * docs/faq/index.html:  Ditto.  Also misc tweaks and URL updates.
2562         * docs/faq/index.txt:  Regenerate.
2563
2564 2000-05-01  Benjamin Kosnik  <bkoz@redhat.com>
2565
2566         * config/cpu/powerpc/bits/atomicity.h (__exchange_and_add): More
2567         fixes.
2568
2569 2000-05-01  Vadim Egorov  <egorovv@@mailandnews.com>
2570
2571         * bits/char_traits.h: Fix parameter types.
2572         * bits/string.tcc: Avoid traits_type::move.
2573
2574 2000-05-01  Benjamin Kosnik  <bkoz@haight.constant.com>
2575
2576         * src/Makefile.am (AC_CXXFLAGS): Add CPUFLAGS here.
2577         * src/Makefile.in: Regenerate.
2578         * acinclude.m4 (GLIBCPP_ENABLE_DEBUG): Revert.
2579
2580 2000-04-30  Steven King <sxking@uswest.net>
2581
2582         * bits/locale_facets.h: Fix syntax  error.
2583         * bits/std_fstream.h: ditto
2584
2585 2000-04-30  Benjamin Kosnik  <bkoz@gnu.org>
2586
2587         * config/cpu/powerpc/bits/atomicity.h (__compare_and_swap): Fix typo.
2588
2589         * mknumeric_limits (trait_name): Fix copyright notice.
2590         * src/gen-num-limits.cc: Explicitly instantiate epsilon and
2591         round_error data members of struct value. This works around
2592         weak-linking issues on AIX, HPUX.
2593
2594 2000-04-29  Phil Edwards  <pme@sourceware.cygnus.com>
2595
2596         * docs/download.html:  Add link to list of mirror sites.
2597
2598 2000-04-28  Loren J. Rittle  <ljrittle@acm.org>
2599
2600         * mkcheck.in: Rely on exit status instead of the presence of a
2601         core file.  Added comments on how/where to save core and exe
2602         files.  Move shell wildcards outside quotes and fix core path.
2603         
2604 2000-04-27  scott snyder  <snyder@fnal.gov>
2605
2606         * src/misc-inst.cc: Explicitly instantiate ifstream and ofstream
2607         classes.
2608
2609 2000-04-26  Nathan C. Myers  <ncm@cantrip.org>
2610
2611         * bits/basic_string.h: include <bits/atomicity.h> instead
2612         of <atomicity.h>, and use the uglified names.
2613         * config/cpu/*/atomicity.h: replace with bits/atomicity.h;
2614         uglify names, eliminate dependence on <inttypes.h>.
2615         * src/Makefile.in, src/Makefile.am: refer to correct place
2616         for atomicity.h header.
2617
2618 2000-04-25 Steven King <sxking@uswest.net>
2619
2620         * bits/basic_string.h: Fix syntax error.
2621
2622 2000-04-25  Benjamin Kosnik  <bkoz@redhat.com>
2623
2624         * acinclude.m4 (GLIBCPP_CHECK_MATH_SUPPORT): Improve checks for
2625         USE_LONG_DOUBLE.
2626         (GLIBCPP_ENABLE_DEBUG): If alpha, use -gdwarf-2.
2627         * math/Makefile.am (EXTRA_LONG_DOUBLE_yes): Add all the long
2628         versions to this as copysignl is needed anyway for these targets.
2629         * math/Makefile.in: Regenerate.
2630         
2631         * bits/streambuf.tcc (streambuf::xsgetn): Tweak.
2632         * bits/fstream.tcc (underflow): Cast to libio types.
2633         * bits/basic_file.h (seekoff): Fixes for alpha: use __c_streamoff.
2634         * config/c_io_libio.cc (seekoff): And here.
2635         
2636 2000-04-24  Loren J. Rittle  <ljrittle@acm.org>
2637
2638         * mkcheck.in: Report compiler version used for test.  Find
2639         the built _G_config.h instead of any old installed version.
2640
2641 2000-04-24  Loren J. Rittle  <ljrittle@acm.org>
2642
2643         * config/generic/ctype.cc (do_toupper): Remove dependence on
2644         non-portable/non-existent lookup table.
2645         (do_tolower): Same.
2646         
2647 2000-04-24  Nathan Myers  <ncm@cantrip.org>
2648
2649         * src/string-inst.cc: More fixing.
2650
2651 2000-04-24  Benjamin Kosnik  <bkoz@gnu.org>
2652
2653         * bits/stl_iterator.h: Pedantic fixing.
2654         * bits/std_sstream.h: And here.
2655         * bits/string.tcc: And here.
2656
2657 2000-04-24  Felix Natter <fnatter@gmx.net> 
2658
2659         * docs/17_intro/howto.html: Add bits.
2660         * docs/17_intro/porting-howto.html: New file.
2661         
2662 2000-04-24  Branko Cibej  <branko.cibej@hermes.si>
2663
2664         * acinclude.m4(GLIBCPP_CHECK_WCHAR_T_SUPPORT): Expand
2665         @libinst_wstring_la@ to libinst-wstring.la when specializing for
2666         wchar_t, to empty string otherwise.
2667         * src/Makefile.am: (EXTRA_LTLIBRARIES): New.
2668         (sources): Remove $(string_sources) and $(wstring_sources).
2669         (libstdc___la_LIBADD): Add libinst-string.la and @libinst_wstring_la@.
2670         (libstdc___la_DEPENDENCIES): New.
2671         (libinst_string_la_SOURCES, libinst_wstring_la_SOURCES): New.
2672
2673 2000-04-20  Benjamin Kosnik  <bkoz@redhat.com>
2674
2675         * bits/std_sstream.h: Tweak formatting.
2676         * bits/std_fstream.h: Make types public.
2677
2678         * testsuite/27_io/streambuf.cc: Fix for alpha.
2679
2680         Brad Garcia <bgarcia@laurelnetworks.com>
2681         * bits/locale_facets.h (numpunct::numpunct(size_t)): Fix bool
2682         initialization.
2683         * testsuite/27_io/ios_manip_fmtflags.cc (test02): Add test for
2684         bool formatting.
2685         
2686 2000-04-19  Nathan Myers  <ncm@cantrip.org>
2687
2688         * src/string-inst: consolidate _S_create,
2689         destroy, leak, clone members into stringMAIN and stringMUTATE
2690         object files.
2691         * src/Makefile.am: Above, and eliminate dependence on
2692         wstring-inst.cc.
2693         * src/wstring-inst.cc: Remove.
2694
2695 2000-04-18  Benjamin Kosnik  <bkoz@redhat.com>
2696
2697         * src/Makefile.am (AC_CXXFLAGS): Activate debugging code, again.
2698         Add flags for specialized rules dealing with instantiations.
2699         
2700         * src/string-inst.cc: Add instantiations missing from shared
2701         libraries--see stringEQ, stringCONSC.
2702         * src/Makefile.am (wstring_sources): Add.
2703         (string_sources): Same.
2704         * src/Makefile.in: Regenerate.
2705         
2706         * stl/*: Integrate contents of this directory into top-level
2707         directories.
2708         * ext/bvector hash_map hash_set rope ropeimpl.h slist
2709         stl_bvector.h stl_hash_fun.h stl_hashtable.h stl_rope.h tree: Add.
2710         * bits/pthread_allocimpl.h std_algorithm.h std_bitset.h
2711         std_deque.h std_functional.h std_iterator.h std_list.h std_map.h
2712         std_memory.h std_numeric.h std_queue.h std_set.h std_stack.h
2713         std_stdexcept.h std_strstream.h std_utility.h std_vector.h
2714         stl_algo.h stl_algobase.h stl_alloc.h stl_config.h stl_construct.h
2715         stl_deque.h stl_function.h stl_heap.h stl_iterator.h
2716         stl_iterator_base.h stl_list.h stl_map.h stl_multimap.h
2717         stl_multiset.h stl_numeric.h stl_pair.h stl_pthread_alloc.h
2718         stl_queue.h stl_range_errors.h stl_raw_storage_iter.h stl_relops.h
2719         stl_set.h stl_stack.h stl_string_fwd.h stl_tempbuf.h stl_threads.h
2720         stl_tree.h stl_uninitialized.h stl_vector.h type_traits.h: Add.
2721         * backward/algo.h algobase.h alloc.h bvector.h defalloc.h deque.h
2722         function.h hash_map.h hash_set.h hashtable.h heap.h iterator.h
2723         list.h map.h multimap.h multiset.h pair.h rope.h set.h slist.h
2724         stack.h tempbuf.h tree.h vector.h: Add.
2725         * README (file): Update.
2726         * docs/documentation.html: README not being found.
2727         * src/Makefile.am (sources): Take out stl directory.
2728         * mkcheck.in (SRC_DIR): And here.
2729         * src/Makefile.in: Regenerate.
2730         
2731 2000-04-18  Levente Farkas  <lfarkas@mindmaker.hu>
2732
2733         * stl/bits/stl_function.h: Add bits so that const and non-const
2734         both work.
2735         
2736 2000-04-18  scott snyder  <snyder@fnal.gov>
2737
2738         * stl/bits/stl_map.h (class map): Fix default for _Alloc template
2739         parameter.  Get rid of use of __STL_DEFAULT_ALLOCATOR and
2740         __STL_LIMITED_DEFAULT_TEMPLATES macros.
2741         * stl/bits/stl_multimap.h (class multimap): Likewise.  Get rid of
2742         use of __STL_DEPENDENT_DEFAULT_TMPL macro.
2743
2744 2000-04-18  scott snyder  <snyder@fnal.gov>
2745
2746         * stl/bits/stl_config.h (__STL_DEPENDENT_DEFAULT_TMPL): Deleted
2747         this macro.
2748
2749         * stl/ext/hash_map (class hash_map, class hash_multimap): Get rid
2750         of use of __STL_DEPENDENT_DEFAULT_TMPL macro.
2751         * stl/ext/hash_set (class hash_set, class hash_multiset):
2752         Likewise.
2753         * stl/bits/stl_function.h (struct constant_unary_fun, struct
2754         constant_binary_fun): Likewise.
2755         * stl/bits/stl_queue.h (class queue, class priority_queue): Likewise.
2756         * stl/bits/stl_stack.h (class stack): Likewise.
2757         * stl/bits/stl_set.h (class set): Likewise.
2758         * stl/bits/stl_multiset.h (class multiset): Likewise.
2759
2760         * stl/bits/stl_iterator.h (class reverse_bidirectional_iterator,
2761         class reverse_iterator): Get rid of use of
2762         __STL_LIMITED_DEFAULT_TEMPLATES macro.
2763
2764         * stl/bits/stl_config.h (__STL_DEFAULT_ALLOCATOR): Deleted this
2765         macro.
2766
2767         * stl/bits/stl_deque.h (class deque): Get rid of use of
2768         __STL_DEFAULT_ALLOCATOR macro.
2769         * stl/bits/stl_list.h (class list): Likewise.
2770         * stl/bits/stl_multiset.h (class multiset): Likewise.
2771         * stl/bits/stl_set.h (class set): Likewise.
2772         * stl/bits/stl_string_fwd.h (class basic_string): Likewise.
2773         * stl/bits/stl_tree.h (class _Rb_tree, class rb_tree): Likewise.
2774         * stl/bits/stl_vector.h (class vector): Likewise.
2775         * stl/ext/ropeimpl.h (rotate): Likewise.
2776         * stl/ext/hash_map (class hash_map, class hash_multimap):
2777         Likewise.
2778         * stl/ext/hash_set (class hash_set, class hash_multiset):
2779         Likewise.
2780         * stl/ext/slist (class slist): Likewise.
2781         * stl/ext/stl_bvector.h (class bit_vector): Likewise.
2782         * stl/ext/stl_rope.h (class rope): Likewise.
2783         * src/locale.cc (_Impl): Likewise.
2784         * src/localename.cc (_Impl): Likewise.
2785         * bits/localefwd.h (_Impl): Likewise.
2786
2787 2000-04-18  Phil Edwards  <pme@sourceware.cygnus.com>
2788
2789         * docs/install.html:  Cleanup, minor changes.
2790         * docs/17_intro/howto.html:  Ditto.
2791
2792 2000-04-18  Nathan Myers  <ncm@cantrip.org>
2793
2794         * bits/basic_string.h: Remove "inline" from member _S_find.
2795         
2796         * src/string-inst.cc: Rewrite to reflect non-inline template
2797         instantiations in string.tcc.
2798         
2799         * src/stringADDCS.cc, stringADDPS.cc, stringADDSC.cc, stringADDSP.cc,
2800         stringADDSS.cc, stringBIST.cc, stringBOST.cc, stringCHTR.cc,
2801         stringEQPS.cc, stringEQSP.cc, stringEQSS.cc, stringEXTRA.cc,
2802         stringGEPS.cc, stringGESP.cc, stringGESS.cc, stringGETLI.cc,
2803         stringGTPS.cc, stringGTPS.cc, stringGTSP.cc, stringGTSS.cc,
2804         stringINSER.cc, stringLEPS.cc, stringLESP.cc, stringLESS.cc,
2805         stringLESP.cc, stringLTPS.cc, stringLTPS.cc, stringLTSP.cc,
2806         stringLTSS.cc, stringMAIN.cc, stringNEPS.cc, stringNESP.cc,
2807         stringNESS.cc, stringSCOPY.cc: Remove.
2808         * src/wstringADDCS.cc, etc: Remove.
2809
2810         Benjamin Kosnik  <bkoz@haight.constant.com>
2811         * src/Makefile.am: Modify to reflect above.
2812         * src/Makefile.in: Regenerate.
2813         
2814 2000-04-17  Benjamin Kosnik  <bkoz@cygnus.com>
2815
2816         * docs/install.html (--enable-libstdcxx-v3): Clean up install docs.
2817
2818 2000-04-13  Benjamin Kosnik  <bkoz@haight.cygnus.com>
2819
2820         * bits/std_fstream.h (filebuf::sync): Need to use the abstracted
2821         io interface here instead of the libio particulars.
2822
2823         * config/threads-posix.h: Consistency with stl_config.h.
2824
2825         * mkcheck.in (CXX_FLAG): Add DDEBUG_ASSERT back in.
2826         
2827 2000-04-13  Loren J. Rittle  <ljrittle@acm.org>
2828
2829         * mknumeric_limits: Rename generic type template parameter name
2830         '_T' to '_Tp'.
2831         * stl/bits/type_traits.h: Ditto.
2832
2833 2000-04-06  Benjamin Kosnik  <bkoz@decepticon.cygnus.com>
2834
2835         * mkcheck.in (SRC_DIR): Change default mkcheck behavior, so that
2836         it is more useful for --enable-libstdcxx-v3. Use the built
2837         compilers with v3, instead of compilers in PATH, and don't
2838         re-include include directories for checking the install.
2839
2840 2000-04-05  Benjamin Kosnik  <bkoz@cygnus.com>
2841
2842         * src/Makefile.am (AM_CXXFLAGS): Disable NAMESPACES, as this is on
2843         by default when using --enable-libstdcxx-v3.
2844         * src/Makefile.in: Regenerate.
2845         * configure.in: Disable GLIBCPP_ENABLE_NAMESPACES,
2846         GLIBCPP_ENABLE_RELIBGCC for --enable-libstdcxx-v3 flag.
2847         * configure: Regenerate.
2848         * mkcheck.in: Deal with NAMESPACES.
2849         
2850 2000-04-05  Petter Urkedal  <petter@matfys.lth.se>
2851
2852         * src/cmath.cc: New file...
2853         (pow(*, int)): Define functions...
2854         * src/Makefile.am (sources): ...register file.
2855         * src/Makefile.in: Regenerate.
2856         * bits/std_cmath.h (pow): ...declare functions here, and remove
2857         old definitions.
2858
2859 2000-04-04  Benjamin Kosnik  <bkoz@redhat.com>
2860         
2861         * acinclude.m4 (GCC_OBJDIR): Tweaks
2862
2863 2000-04-03  Benjamin Kosnik  <bkoz@redhat.com>
2864         
2865         * acinclude.m4 (GLIBCPP_CHECK_CPU): Add arm configure bits.
2866         * config/cpu/arm: New directory.
2867
2868         Jesper Skov  <jskov@redhat.com>
2869         * config/cpu/arm/atomicity.h: New file.
2870         
2871 2000-03-31  Benjamin Kosnik  <bkoz@redhat.com>
2872
2873         * stl/bits/stl_config.h: Make _STL_THREADS depend on _REENTRANT.
2874         Remove unused bits. Clean.
2875         
2876 2000-03-29  Benjamin Kosnik  <bkoz@cygnus.com>
2877
2878         * testsuite/25_algorithms: New directory.
2879         * testsuite/25_algorithms/min_max.cc: New file.
2880
2881 2000-03-29  scott snyder  <snyder@fnal.gov>
2882
2883         * bits/locale_facets.tcc (do_put): Allow a couple extra digits of
2884         precision beyond that which we get from numeric_limits::digits10.
2885
2886         * stl/bits/stl_algobase.h (max, min): Don't use comparison
2887         operator.
2888
2889         * testsuite/23_containers/bitset_shift.cc: Fix.
2890
2891         * testsuite/27_io/ios_manip_fmtflags.cc (test01): Don't give a
2892         temporary to imbue().
2893
2894         * bits/std_fstream.h (sync): Resync libio's idea of the current
2895         file position with the external file.
2896
2897 2000-03-28  Benjamin Kosnik  <bkoz@cygnus.com>
2898
2899         * testsuite/27_io/istream_extractor_arith.cc.cvs: Fix merge
2900         mistake.
2901
2902         * bits/std_fstream.h (filebuf::is_open): Check for _M_file before
2903         attempting calls to it. 
2904         * bits/fstream.tcc (ctors): Don't call _M_init_filebuf in
2905         ctors. Instead, call _M_init_filebuf ...
2906         (open): Here, as suggested by 27.8.1.3. 
2907         * src/ios.cc (ios_base::Init::Init()): Clean up default filebufs
2908         properly when initializing cout/cin/cerr.
2909
2910 2000-03-27  Russell Davidson  <russell@ehess.cnrs-mrs.fr>
2911
2912         * testsuite/23_containers/multiset.cc (main): Clean up for namespaces.
2913         * testsuite/22_locale/ctype_char_members.cc: And here.
2914         * testsuite/27_io/streambuf.cc (streambuf): And here.
2915         * testsuite/27_io/ostream_inserter_char.cc (test06): And here.
2916         * testsuite/27_io/istream_unformatted.cc (test05): And here.
2917         * testsuite/27_io/istream_extractor_arith.cc: And here.
2918         * testsuite/27_io/ios_manip_basefield.cc (test02): And here.
2919         * testsuite/27_io/ios_base_members_static.cc: And here.
2920         * bits/std_climits.h (_CPP_CLIMITS): Fix typo.
2921
2922 2000-03-27  Chris Faylor  <cgf@cygnus.com>
2923         
2924         * configure.in: Remove setting of CXX if canadian cross.
2925         * configure: Regenerate.
2926
2927 2000-03-27  Nathan Myers  <ncm@zembu.com>
2928
2929         * bits/sstream.tcc: Optimize.
2930         * bits/basic_string.h(string::append): Don't inline.
2931         * bits/string.tcc: Move out-of-line.
2932         
2933 2000-03-27  Phil Edwards  <pme@sourceware.cygnus.com>
2934
2935         * acinclude.m4:  (GLIBCPP_CHECK_COMPILER_VERSION)  When using <2.96,
2936           define WERRORSUPPRESS so that the inlining warnings won't kill us.
2937         * aclocal.m4:  Regenerate.
2938         * configure:  Regenerate.
2939         * src/Makefile.am:  Use WERRORSUPPRESS for the files that need it.
2940         * src/Makefile.in:  Regenerate.
2941
2942         * docs/install.html:  Almost complete rewrite.
2943
2944 2000-03-25  Phil Edwards  <pme@sourceware.cygnus.com>
2945
2946         * docs/install.html:  Explain -Werror problem at "#Werror" mark.
2947         * docs/faq/index.html:  Testsuite will die horribly if new libgcc.a
2948           not installed.
2949         * docs/faq/index.txt:  Regenerate.
2950
2951 2000-03-24  Alexandre Oliva  <oliva@lsd.ic.unicamp.br> 
2952
2953         * src/Makefile.am (libio_headers_install): Fix.
2954         * src/Makefile.in: Regenerate.
2955         
2956 2000-03-24  Benjamin Kosnik  <bkoz@cygnus.com>
2957
2958         * docs/17_intro/RELEASE-NOTES: Fix typos.
2959         * docs/index.html: Update.
2960         * docs/17_intro/BUGS: Update.
2961         * docs/status.html: Update for 2.90.8 release.
2962
2963 2000-03-23  Phil Edwards  <pme@sourceware.cygnus.com>
2964
2965         * Makefile.am:  Better error message when missing libgcc2.ready.
2966         * Makefile.in:  Regenerate.
2967         * acinclude.m4:  Fastidious nitpicking reformatting.
2968         * aclocal.m4:  Regenerate.
2969         * configure:  Regenerate.
2970         * mkcheck.in:  Must use same namespace settings as the library being
2971           tested.  Also log ST_FLAG, since it's being passed.
2972         * docs/install.html:  Add brief chunk on configuration.
2973         * docs/17_intro/RELEASE-NOTES:  Fix minor Cygwin typo.
2974         * docs/23_containers/howto.html:  Mention MT-safe string.
2975         * docs/faq/index.html:  Minor updates.
2976         * docs/faq/index.txt:  Regerarate.
2977
2978 2000-03-22  Benjamin Kosnik  <bkoz@cygnus.com>
2979
2980         * bits/sstream.tcc (seekoff): Fix for gptr() null cases.
2981         Return newoff. 
2982         * bits/fstream.tcc (seekoff): Sync.
2983         (seekpos): Sync.
2984         * testsuite/27_io/ostream_unformatted.cc: New file.
2985         * testsuite/27_io/stringbuf.cc: Fix.
2986         * testsuite/27_io/istream_unformatted.cc (test04): Fix.
2987         
2988         * config/newlib/bits/ctype_base.h (ctype_base): Fix.
2989         * config/newlib/ctype.cc (ctype): Change __ctype -> _ctype_.
2990
2991         * src/complex_io.cc (operator>>complex): Tweak.
2992
2993         * config/cpu/alpha/atomicity.h: Explicitly typedef uint32_t, int32_t if
2994         <inttypes.h> does not exist.
2995         * config/cpu/sparc/sparc64/atomicity.h: Same.
2996         * config/cpu/sparc/sparc32/atomicity.h: Same.
2997         * config/cpu/powerpc/atomicity.h: Same.
2998         * config/cpu/i386/atomicity.h: Same.
2999         * config/cpu/generic/atomicity.h: Same.
3000         * configure.in: Check for inttypes.h.
3001         * configure: Regnerate.
3002
3003 2000-03-21  Benjamin Kosnik  <bkoz@cygnus.com>
3004
3005         * bits/std_sstream.h (_M_init_stringbuf): Set initial ate position
3006         correctly.
3007         * testsuite/27_io/ostream_inserter_char.cc (test06): Add tests for ate.
3008
3009         * docs/17_intro/RELEASE-NOTES (New): Add bits.
3010
3011         * configure.in: Move AC_CHECK_HEADERS to a point where we know we
3012         are compiling natively.
3013
3014         * libio/*: Update to CVS libio from egcs.
3015         
3016 2000-03-21  Phil Edwards  <pme@sourceware.cygnus.com>
3017
3018         * docs/download.html:  Document use of -z9 for CVS.
3019         * docs/index.html:  Add target date (no link) for future snapshot.
3020
3021 2000-03-21  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
3022
3023         * bits/slice_array.h: Rename generic type template parameter name
3024         '_T' to '_Tp'. 
3025         * bits/mask_array.h: Ditto
3026
3027 2000-03-20  Benjamin Kosnik  <bkoz@cygnus.com>  
3028
3029         * *: Change copyright holder from "Cygnus Solutions" to "Free
3030         Software Foundation, Inc."
3031         
3032         * docs/configopts.html: Explain what "hella versions" means.
3033         * docs/install.html: Some tweaks--nice job on this Phil.
3034         * docs/documentation.html: Add a direct link to configuration options.
3035
3036         * src/Makefile.am (OPTIMIZE_CXXFLAGS): Add in extras.
3037         * docs/17_intro/RELEASE-NOTES (New): Add.
3038         * bits/c++config.h (__GLIBCPP__): Bump version.
3039
3040         * config/c_io_libio.cc (__basic__file(__c_lock*)): Change argument
3041         type to match prototype.
3042
3043 2000-03-20  Phil Edwards  <pme@sourceware.cygnus.com>
3044
3045         * docs/install.html:  Update for new funky build procedure.  Move
3046           description of 'configure' options to...
3047         * docs/configopts.html:  ...here.  New file.
3048         * docs/17_intro/howto.html:  Updates for new snapshot.
3049         * docs/20_util/howto.html:  Ditto.
3050         * docs/21_strings/howto.html:  Ditto.
3051         * docs/21_strings/stringtok_std_h.txt:  Fix example typos.
3052         * docs/22_locale/howto.html:  Ditto.
3053         * docs/23_containers/howto.html:  Ditto.
3054         * docs/faq/index.html:  Ditto.
3055
3056 2000-03-18  Petter Urkedal  <petter@matfys.lth.se>
3057             Benjamin Kosnik  <bkoz@gnu.org>
3058         
3059         * acinclude.m4 (GLIBCPP_CHECK_COMPLEX_SUPPORT): Move code for main
3060         to the right place.
3061         * aclocal.m4: Regenerate.
3062         * configure: Regenerate.
3063
3064 2000-03-16  Benjamin Kosnik  <bkoz@cygnus.com>
3065             scott snyder  <sss@karma.fnal.gov>
3066         
3067         * config/c_io_libio.h: Add __c_lock.
3068         * config/threads-no.h: Same here.
3069         * config/threads-posix.h: Add __mutext_type typedef.
3070         * config/c_io_libio.cc: basic_file ctor takes lock arg. 
3071         * bits/basic_file.h: Ctor takes lock arg. 
3072         * bits/std_fstream.h: Add _M_lock.
3073         * bits/fstream.tcc: Supply it to basic_file ctor.
3074
3075         * mkcheck.in (resultstext): Change [[ to [.
3076
3077         * testsuite/27_io/ostream_inserter_char.cc (test06): Tweak.
3078
3079         * bits/locale_facets.h: Tweak.  
3080
3081         * stl/bits/stl_config.h: Fix defines.
3082         
3083 2000-03-16  Benjamin Kosnik  <bkoz@cygnus.com>
3084
3085         * mkcheck.in (INC_PATH): Add paths from cpu_include_dir to find
3086         atomicity.h
3087         * configure: Regenerate.
3088         * aclocal.m4: Regnerate.
3089         
3090 2000-03-16  Nathan Myers  <ncm@zembu.com>
3091
3092         * bits/string.tcc: Add MT support.
3093         * bits/basic_string.h: Same.
3094         
3095 2000-03-16  Phil Edwards  <pme@sourceware.cygnus.com>
3096
3097         * configure.in:  Make --enable-namespaces and -libgcc-rebuild=../..
3098           the defaults.
3099         * configure:  Regenerate.
3100
3101         * config/solaris/solaris2.7/ctype.cc:  Fix unsigned/signed comparison.
3102
3103 2000-03-16  Phil Edwards  <pme@sourceware.cygnus.com>
3104
3105         * acinclude.m4 (GLIBCPP_CHECK_CTYPE):  If Sol2.5 ctype is found, keep
3106           checking for 2.[67].  (GLIBCPP_ENABLE_RELIBGCC):  No longer ignore
3107           any defaults passed in.
3108         * aclocal.m4:  Regenerate.
3109
3110 2000-03-16  Phil Edwards  <pme@sourceware.cygnus.com>
3111
3112         * mkcheck.in:  Report total successes and failures.
3113
3114 2000-03-15  Benjamin Kosnik  <bkoz@cygnus.com>
3115
3116         * config/cpu: New directory, intended to be used to provide
3117         cpu-specific configuration files. In particular, assembly language
3118         primitives for thread safety.
3119         * config/cpu/alpha: Populate.
3120         * config/cpu/alpha/atomicity.h: New file.
3121         * config/cpu/arm: Populate.
3122         * config/cpu/generic: Populate.
3123         * config/cpu/generic/atomicity.h: New file.
3124         * config/cpu/hppa: Populate.
3125         * config/cpu/i386: Populate.
3126         * config/cpu/i386/atomicity.h: New file, take from i486.
3127         * config/cpu/m68k: Populate.
3128         * config/cpu/mips: Populate.
3129         * config/cpu/powerpc: Populate.
3130         * config/cpu/powerpc/atomicity.h: New file.
3131         * config/cpu/sparc: Populate.
3132         * config/cpu/sparc/sparc32: Populate.
3133         * config/cpu/sparc/sparc64: Populate.
3134         * config/cpu/sparc/sparc32/atomicity.h: New file.
3135         * config/cpu/sparc/sparc64/atomicity.h: New file.       
3136
3137         * src/Makefile.am (myinstallheaders): Add install routines.
3138         * acinclude.m4 (GLIBCPP_CHECK_CPU):Add configuration for the
3139         cpu dir.
3140         * configure.in: Add.
3141
3142         * config/default: Adopt glibc naming conventions, and so move to
3143         * config/generic: Here.
3144         * acinclude.m4 (GLIBCPP_CHECK_CTYPE): Modify default case to generic.
3145         
3146 2000-03-15  Bill Thompson  <billt@toast.net>
3147
3148         * testsuite/27_io/ostream_inserter_char.cc (test06): Add test.
3149
3150 2000-03-14  Phil Edwards  <pme@sourceware.cygnus.com>
3151
3152         * docs/17_intro/howto.html:  Add missing "TOC" entry, and new section.
3153
3154         * acinclude.m4 (GLIBCPP_CHECK_CTYPE): Fixup.
3155         * aclocal.m4: Regenerate.
3156         * configure: Regenerate.
3157
3158 2000-03-13  scott snyder  <snyder@fnal.gov>
3159             Jason Merrill  <jason@cygnus.com>
3160         
3161         * bits/locale_facets.h (class ctype, class ctype<char>, class
3162         ctype<wchar_t>): More mask fixes.
3163         * testsuite/22_locale/ctype.cc: Test for the problem.
3164
3165 2000-03-13  Benjamin Kosnik  <bkoz@cygnus.com>
3166
3167         * acconfig.h: Add bits.
3168         * configure.in: Move AM_PROG_LIBTOOL up in file.
3169         Tweak cross compiling info. 
3170         * configure: Regenerate.
3171
3172         * mknumeric_limits (XCOMPILE): Echo compilation line for
3173         gen-num-limits.cc
3174
3175         * acinclude.m4 (GLIBCPP_CHECK_CTYPE): Add aix checks.
3176         * aclocal.m4: Regenerate.
3177         * configure: Regenerate.
3178         * config/aix/ctype.cc (ctype): Tweak.
3179         * config/aix/bits/ctype_base.h (ctype_base): Tweak.
3180         * config/aix/bits/ctype_specializations.h: New file.
3181
3182 2000-03-10  scott snyder  <snyder@fnal.gov>
3183
3184         * stl/bits/stl_vector.h (_M_assign_aux): Fix for __normal_iterator 
3185         conversions.
3186         * testsuite/23_containers/vector_modifiers.cc (test01): Add a
3187         regression test for the problem.
3188
3189 2000-03-09  Benjamin Kosnik  <bkoz@fidel.cygnus.com>
3190         
3191         * testsuite/27_io/streambuf.cc (class testbuf): Same here.      
3192         * bits/fpos.h: And here.
3193         * bits/std_ostream.h: Same here.
3194         * bits/std_istream.h: Same here.
3195         * bits/basic_ios.h: Same here.
3196         * bits/std_fstream.h: Same here.
3197         * bits/sbuf_iter.h (std): Here too.
3198         * bits/std_sstream.h: Make types public.
3199
3200         * src/misc-inst.cc: Use size_t instead of unsigned int. 
3201         * bits/locale_facets.tcc (_S_format): For now, cast to char. I
3202         suppose this should be ctype::narrow... all the ctype<wchar_t>
3203         stuff needs to be cleaned up.
3204
3205 2000-03-09  Phil Edwards  <pme@sourceware.cygnus.com>
3206
3207         * docs/gentop:  Remove entire directory, finally.
3208
3209 2000-03-09  scott snyder  <snyder@fnal.gov>
3210
3211         * bits/std_cmath.h (modf): Fix pointer overrun.
3212         * testsuite/26_numerics/c_math.cc (test04, main): Add a regression 
3213         test for the problem.
3214
3215 2000-03-09  Phil Edwards  <pme@sourceware.cygnus.com>
3216
3217         Looks like changes to the #include'd files must be followed by a
3218         change to the #include'ing files to take effect.  Caveat emptor.
3219         * docs/header.html:  New file, for server-side include.
3220         * docs/footer.html:  New file, for server-side include.
3221         * docs/documentation.html:  Change to use SSI.
3222         * docs/download.html:  Ditto.
3223         * docs/index.html:  Ditto.
3224         * docs/mail.html:  Ditto.
3225         * docs/status.html:  Ditto.
3226         * docs/thanks.html:  Ditto, plus minor updates.
3227         * docs/how.html:  Remove.
3228
3229 2000-03-09  Benjamin Kosnik  <bkoz@gnu.org>
3230
3231         Preliminary alpha-linux support.
3232         * src/locale.cc (ctype<wchar_t>): Use correct types...
3233         * bits/locale_facets.h (ctype<char>): Add __table_type typedef.
3234         (ctype<wchar_t>): Same.
3235         * bits/locale_facets.h (ctype<wchar_t>): Have char and wchar_t
3236         types match for table_size (size_t).
3237
3238         * config/gnu-linux/ctype.cc (ctype): Change char_type to wchar_t
3239         as per char specialization.
3240         * config/*/ctype.cc: Same.
3241         
3242 2000-03-09  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
3243
3244         * bits/locale_facets.h (_Ctype<>::mask): Import from base class
3245         _Ctype_nois<>.  Template base classes are never examinated in
3246         first-phase name-lookup. 
3247
3248 2000-03-08  Benjamin Kosnik  <bkoz@gnu.org>
3249
3250         Add Solaris 2.5.1 support.
3251         * config/solaris/solaris2.5/bits/ctype_base.h (ctype_base): And here.
3252         * config/solaris/solaris2.5/ctype.cc: Fixup.
3253         * config/solaris/solaris2.5/bits/ctype_specializations.h: Add.
3254         * acinclude.m4 (GLIBCPP_CHECK_CTYPE): Add bits for solaris2.5.1.
3255         * aclocal.m4: Regenerate.
3256         * configure: Regenerate.
3257         
3258         * config/default/ctype.cc (ctype): Fixup.
3259
3260 2000-03-07  Benjamin Kosnik  <bkoz@blues.cygnus.com>
3261
3262         * testsuite/27_io/filebuf.cc: Activate init code from yesterday...
3263         * testsuite/27_io/ostream_inserter_arith.cc (testcases): Fix for
3264         non-wchar_t case.
3265
3266 2000-03-07  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
3267
3268         * bits/cpp_type_traits.h: Expand on this file purpose.
3269
3270 2000-03-06  Benjamin Kosnik  <bkoz@gnu.org>
3271
3272         * bits/locale_facets.h (ctype<char>): Remove static members, and
3273         re-work initialization code.
3274         (ctype<wchar_t>): Same.
3275         Move _S_touppper to _M_toupper and initialize in ctor.
3276         Move _S_tolower  to _M_tolower and initialize in ctor.  
3277         Move _S_table to _M_ctable and intialize in ctor.
3278         * bits/locale_facets.h (std): And here.
3279         * src/locale.cc (std): Tweak.
3280         * config/gnu-linux/ctype.cc: Change initialization here.
3281         * config/newlib/ctype.cc: And here.
3282         * config/solaris/solaris2.7/ctype.cc: And here.
3283         * config/solaris/solaris2.6/ctype.cc: And here.
3284         
3285         * bits/localefwd.h: Tweak.
3286         * bits/std_streambuf.h: Tweak formatting.
3287
3288         * testsuite/27_io/filebuf.cc: Remove BUFSIZ dependancies.
3289
3290 2000-03-05  Chip Salzenberg  <chip@valinux.com>
3291
3292         * src/misc-inst.cc (basic_iostream<>):  Instantiate.
3293
3294 2000-03-02  Phil Edwards  <pme@sourceware.cygnus.com>
3295             Kevin Atkinson  <kevinatk@home.com> 
3296
3297         Initial grab of SGI's strstream implementation with minor
3298         modifications.
3299         * src/strstream.cc:  New file.
3300         * std/strstream:  New file.
3301         * stl/bits/std_strstream.h:  New file.
3302         * bits/std_streambuf.h:  Add public access.
3303         * src/Makefile.am:  Add strstream sources to list of dependancies.
3304         * src/Makefile.in:  Regenerate.
3305
3306 2000-03-03 2000  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
3307
3308         * bits/valarray_meta.h: Fix typo.
3309         
3310 2000-03-02  Alexandre Oliva  <oliva@lsd.ic.unicamp.br> 
3311             Chip Salzenberg  <chip@valinux.com>
3312             Petter Urkedal  <petter@matfys.lth.se>
3313
3314         * src/Makefile.am (myinstallheaders): Hack to avoid
3315         `for i in ; do'.
3316         * src/Makefile.in: Regenerate.
3317         
3318 2000-03-02  Chip Salzenberg  <chip@valinux.com>
3319
3320         * libio/Makefile.an, math/Makefile.an, src/Makefile.am
3321         (LINK): Put quotes around "$(CC)" for libtool link mode,
3322         so libtool will use "-B" options during GCC bootstrap.
3323         * */Makefile.in: Regenerate.
3324         
3325 2000-03-02  Petter Urkedal  <petter@matfys.lth.se>
3326
3327         * config/c_io_libio.h: Enclose it all in ::std.
3328         * bits/basic_string.h (basic_string<>): Make types and
3329         `npos' public.
3330         * mkc++config: Truncate output file before writing.
3331
3332 2000-03-01  Benjamin Kosnik  <bkoz@gnu.org>
3333
3334         * math/cabsf.c (__mycabsf): Rename to cabsf.
3335         * math/cabs.c (__mycabs): Rename to cabs.
3336
3337 2000-02-29  LLeweLLyn Reese  <llewelly@198.dsl.xmission.com>
3338  
3339        * bits/basic_string.h: Move declarations of __out_of_range(),
3340        __length_error() and accompanying macros ...
3341        * bits/exception_support.h: here. (Newly created file).
3342        * bits/basic_string.h: #include <bits/exception_support.h>
3343        * stl/bits/stl_vector.h: #include <bits/exception_support.h>
3344        * src/Makefile.am (headers): Add.
3345        * src/Makefile.in: Regenerate.
3346         
3347 2000-02-29  Benjamin Kosnik  <bkoz@cygnus.com>
3348         
3349         * bits/cpp_type_traits.h: Rename structs so they don't clash with
3350         type_traits.h.
3351         * bits/valarray_array.h: Synch. Fix typos.
3352
3353         * libio/Makefile.am: Change to only compile source files that
3354         config/c_io_libio.cc actually needs.
3355         * libio/Makefile.in: Regnerate.
3356         * libio/PlotFile.hes SFile.h builtinbuf.h editbuf.h floatconv.c
3357         floatio.h fstream.h indstream.h iofclose.c iofdopen.c iofeof.c
3358         ioferror.c iofflush.c iofgetpos.c iofgets.c iofopen.c iofprintf.c
3359         iofputs.c iofread.c iofscanf.c iofsetpos.c ioftell.c iofwrite.c
3360         iogetc.c iogetdelim.c iogetline.c iogets.c ioignore.c iomanip.h
3361         iopadn.c ioperror.c iopopen.c ioprims.c ioprintf.c ioputc.c
3362         ioputs.c ioscanf.c ioseekoff.c ioseekpos.c iosetbuffer.c
3363         iosetvbuf.c iosprintf.c iosscanf.c iostream.h iostrerror.c
3364         ioungetc.c iovfprintf.c iovfscanf.c iovsprintf.c iovsscanf.c
3365         istream.h list.out ostream.h outfloat.c parsestream.h peekc.c
3366         pfstream.h procbuf.h stdiostream.h stream.h streambuf.h strfile.h
3367         strops.c strstream.h: Delete.
3368
3369         * bits/basic_file.h: Stub out or delete unused bits in this
3370         interface.
3371         (filepos_beg): Remove.  
3372         (filepos_cur): Remove.
3373         (filepos_valid): Remove.
3374         * config/c_io_libio.cc: Resynch with the changes to basic_file.
3375
3376 2000-02-29  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
3377
3378         * bits/cpp_type_traits.h: Correct typo.
3379
3380 2000-02-29  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
3381
3382         * bits/cpp_type_traits.h: New file.
3383         
3384         * bits/valarray_array.h: Tweak.  #include <bits/cpp_type_traits.h>
3385         Improve array construction.
3386         (_Array_default_ctor): New dispatcher class. 
3387         (__valarray_default_construct): New function.
3388         (_Array_copy_ctor): New dispatcher class.
3389         (__valarray_copy_construct): New function.
3390         (_Array<>::free_data): Remove.
3391
3392         * src/Makefile.am (headers): Add cpp_type_traits.h
3393         * src/Makefile.in: Regenerate.
3394
3395 2000-02-28  Benjamin Kosnik  <bkoz@cygnus.com>
3396
3397         Prune libio directory to match files in libio/Makefile.
3398         * libio/PlotFile.cc,indstream.cc, isgetsb.cc, sbform.cc,
3399         stream.cc, SFile.cc, ioassign.cc, isscan.cc, sbgetline.cc,
3400         streambuf.cc, builtinbuf.cc, ioextend.cc, osform.cc, sbscan.cc,
3401         strstream.cc, editbuf.cc, iomanip.cc, parsestream.cc,
3402         stdiostream.cc, filebuf.cc, iostream.cc, pfstream.cc,
3403         stdstrbufs.cc, fstream.cc, isgetline.cc, procbuf.cc,
3404         stdstreams.cc: Remove.
3405         * libio/floatio.h, iolibio.h, iostdio.h, iostreamP.h: Remove.
3406         * libio/iofflush_u.c: Remove.
3407         
3408         * libio/dbz: Remove.  
3409         * libio/include: Remove.  
3410         * libio/stdio: Remove.  
3411         * libio/tests: Remove.  
3412         * libio/testsuite: Remove.
3413         
3414         * config/c_io_libio.cc: Add fcntl.h include for Solaris.
3415
3416         * acinclude.m4 (GLIBCPP_ENABLE_CSTDIO): Add bits.
3417         * configure.in: Replace 'grep -e' with 'grep' for Solaris.
3418         * configure: Regenerate.
3419
3420 2000-02-25  Benjamin Kosnik  <bkoz@gnu.org>
3421
3422         Abstract out the underlying "C" io bits.
3423         * bits/std_new.h: Remove <stl_config> include, as well as <cstddef>.
3424         * stl/bits/stl_string_fwd.h: Remove <stddef> include.
3425         * bits/std_cwchar.h: Wrap with _GLIBCPP_USE_WCHAR_T guards. Don't
3426         include <cstddef>.
3427         * stl/bits/stl_config.h: Don't include _G_config.h.
3428
3429         * bits/basic_file.h: Allow for non-inheritance based __basic_files.
3430         * config/c_io_libio.h (_GLIBCPP_BASIC_FILE_INHERITANCE): Define.
3431         * config/c_io_libio.cc: Tweak.
3432
3433         * src/Makefile.am (TOPLEVEL_INCLUDES): Add includedir.
3434         * src/Makefile.in: Regenerate.
3435         * Makefile.am (AM_MAKEFLAGS): Define includedir so that
3436         prefix/include files will be picked up.
3437         * Makefile.in: Regenerate.
3438         * math/Makefile.am (TOPLEVEL_INCLUDES): And here.
3439         * libio/Makefile.am (TOPLEVEL_INCLUDES): And here.
3440         
3441         * bits/std_ios.h: Include <bits/c++io.h> instead of libio.
3442         * bits/fpos.h: And here.        
3443         * bits/basic_file.h (get_fileno): Move definition from ...
3444         * src/basic_file.cc (std): To here.
3445         * bits/fpos.h: Move types for streamoff, streampos to..
3446         * bits/basic_file.h: Move __c_file_type and fpos typedefs to...
3447         * config/c_io_libio.h: ...here.
3448         (_GLIBCPP_[BOOLALPHA, HEX, DEC, FIXED, INTERNAL, LEFT, OCT, RIGHT,
3449         SCIENTIFIC, SHOWBASE, SHOWPOINT, SHOWPOS, SKIPWS, UNITBUF,
3450         UPPERCASE, ADJUSTFIELD, BASEFIELD, FLOATFIELD, BADBIT, EOFBIT,
3451         FAILBIT, GOODBIT, APP, ATE, BINARY, IN, OUT, TRUNC): New macros to
3452         abstract out bits in ios_base.
3453         * bits/ios_base.h: Re-macrofy.  
3454         * src/basic_file.cc : Rename, move to
3455         * config/c_io_libio.cc: Here. 
3456         * config/c_io_libio.h: New file. Include libio.
3457         * bits/c++config.h: Don't define _GLIBCPP_USE_LIBIO.
3458         * configure.in (blddir): Add enabling bits for GLIBCPP_ENABLE_CSTDIO.
3459         * configure: Regenerate.
3460         * src/Makefile.am (sources): Take out basic_file.cc and add c++io.cc.
3461         (generated_headers): Add c++io.h
3462         * acinclude.m4 (GLIBCPP_ENABLE_CSTDIO): New function to select
3463         underlying "C" io library.
3464         * acinclude.m4 (GLIBCPP_CHECK_LIBIO): Roll functionality into
3465         GLIBCPP_ENABLE_CSTDIO.
3466         
3467         * configure.in: Add configure bits for cross compiling non-newlib
3468         targets. .
3469         GLIBCPP_CHECK_COMPILER_VERSION: Take out this test for this
3470         target, as we assume g++ support is not the limiting factor.
3471         GLIBCPP_CHECK_LIBIO: Same, know we don't need libio.  
3472         * configure: Regenerate.
3473         
3474 2000-02-22  Benjamin Kosnik  <bkoz@cygnus.com>
3475
3476         * Makefile.am (INTERFACE): Define.
3477         * Makefile.in: Regenerate.
3478         * libio/ChangeLog: Add entry.
3479
3480 2000-02-21  Benjamin Kosnik  <bkoz@cygnus.com>
3481
3482         * docs/install.html: Update install directions.
3483
3484         * docs/status.html: Fix sidebar to be consistent.
3485         * docs/thanks.html: Same.
3486         * docs/links.html: Same.
3487         * docs/mail.html: Same.
3488         * docs/download.html: Same.
3489
3490         * testsuite/27_io/filebuf.cc: Change BUFSIZ to buffer_size, and
3491         kill the macro BUFSIZ. I think the solaris fails lie elsewhere
3492         however, in the ctype_char_members.cc fail (for instance.)
3493         * testsuite/17_intro/headers.cc: Remove extraneous fails for hosts
3494         that do not have wchar_t enabled.
3495         * testsuite/27_io/ostream_inserter_arith.cc (struct _TestCase):
3496         Same here.
3497         * testsuite/27_io/iostream_objects.cc: And here.
3498
3499         * libio/gen-params (CONFIG_NM): Specifically add in nm as the
3500         default CONFIG_NM.
3501         
3502 2000-02-18  Benjamin Kosnik  <bkoz@haight.constant.com>
3503             Tom Tromey  <tromey@cygnus.com>
3504
3505         * configure.in: Manually add MULTISUBDIR.
3506         * configure: Regenerate.
3507         * src/Makefile.am (MULTISUBDIR): Add the lesser evil of Tom's two
3508         "Eww" hacks to get multilib installs working correctly.
3509         ($(headers): Test for MULTISUBDIR before installing.
3510         * Makefile.am (AM_MAKEFLAGS): Don't define MULTISUBDIR, instead
3511         have configure hack it in.
3512         * Makefile.in: Regenerate.
3513         * acinclude.m4 (GLIBCPP_CXXFLAGS): Tweak wording. 
3514         Add enabling bits for native Cygwin ctypes, and other newlib-based
3515         Oses.
3516         
3517 2000-02-17  Benjamin Kosnik  <bkoz@decepticon.cygnus.com>
3518
3519         * mkc++config (OUT_H): Remove EOF in cygwin.
3520         * acinclude.m4 (LIBS): Tweaks to allow cygwin to configure.
3521
3522         Tom Tromey  <tromey@cygnus.com>
3523         * src/Makefile.am: Tweaks for installing multilibs.
3524
3525 2000-02-17  Benjamin Kosnik  <bkoz@cygnus.com>
3526
3527         * src/Makefile.am: 
3528         (toolexeclib_LTLIBRARIES): Use this instead of lib_LTLIBRARIES.
3529         Add USE_LIBDIR bits here, not...
3530         * src/Makefile.in: Regenerate.
3531         * Makefile.am: ...here.
3532         * Makefile.in: Regenerate.
3533         
3534 2000-02-17  Benjamin Kosnik  <bkoz@gnu.org>
3535
3536         * acinclude.m4 (LIBS): Fix typos.
3537         * configure.in: _GLIBCPP_BUGGY_FLOAT_COMPLEX,
3538         _GLIBCPP_BUGGY_COMPLEX for crosses.
3539         * src/Makefile.am (std_headers): Add libio.h as install include,
3540         as with _G_config.h
3541         * src/Makefile.in: Regenerate.
3542
3543         * mkcheck.in: Add bits to set CXX to cross compiler.
3544
3545         * src/complex_io.cc: Tweak.
3546         * configure.in: _GLIBCPP_BUGGY_COMPLEX for crosses.
3547         * configure: Regenerate.
3548         
3549         * config/newlib/ctype.cc: Tweaks.
3550         * config/newlib/bits/ctype_base.h (ctype_base): Set mask to char,
3551         not const char.
3552         * src/complex_io.cc (operator>>(istream, complex): Define out if
3553         BUGGY_COMPLEX.
3554
3555 2000-02-16  Benjamin Kosnik  <bkoz@cygnus.com>
3556
3557         * config/newlib/bits/ctype_base.h: Correct _S_table.
3558
3559         Reconfigure ctype support for "C" libraries that don't use arrays.
3560         * testsuite/22_locale/ctype_char_members.cc: New file. Test for
3561         basic ctype<char> functionality.
3562         * src/locale.cc: Move host-specific ctype functions that are not
3563         inlines to config/*/ctype.cc files.
3564         (ctype<char>::do_tolower): For instance.
3565         (ctype<char>::do_toupper): For instance.
3566         (ctype<wchar_t>::do_tolower): For instance.
3567         (ctype<wchar_t>::do_toupper): For instance.
3568         * config/gnu-linux/ctype.cc: Modify.
3569         * config/default/ctype.cc: Modify.
3570         * config/newlib/ctype.cc: Modify.
3571         * config/solaris/solaris2.6/ctype.cc: Modify.
3572         * config/solaris/solaris2.7/ctype.cc: Modify.
3573
3574         * bits/locale_facets.h (ctype<char>::is): Mark inline, move
3575         out-of-line.
3576         (ctype<char>::scan_is): Here too.
3577         (ctype<char>::scan_not): Here too.
3578         Move out of line defs to config/*/bits/ctype_specializations.h.
3579         * config/gnu-linux/bits/ctype_specializations.h: ...here. New file.
3580         * config/default/bits/ctype_specializations.h: ...here. New file.
3581         * config/newlib/bits/ctype_specializations.h: ...here. New file.
3582         * config/solaris/solaris2.6/bits/ctype_specializations.h: New file.
3583         * config/solaris/solaris2.7/bits/ctype_specializations.h: New file.
3584         * src/Makefile.am (headers): Add ctype_specializations.h.
3585         * src/Makefile.in: Regenerate.
3586         
3587         Aaron Weiss <weiss@clearway.com> 
3588         * Makefile.am (AM_MAKEFLAGS): Add NM_FOR_BUILD, NM_FOR_TARGET, and
3589         CONFIG_NM for Solaris builds.
3590         * Makefile.in: Regenerate.
3591         
3592         * src/locale.cc: Tweak formatting.
3593
3594 2000-02-15  Benjamin Kosnik  <bkoz@cygnus.com>
3595
3596         Jim Parsons  <parsons@clearway.com> 
3597         * testsuite/27_io/istream_unformatted.cc (test06): Add test.
3598         * bits/istream.tcc (read): Set failbit if !good(). Don't increment
3599         gcount if eof.
3600         (readsome): Same.
3601
3602         Michel Decima  <michel.decima@cnet.francetelecom.fr>
3603         * testsuite/27_io/streambuf.cc: Add test.
3604         * bits/streambuf.tcc (xsgetn): Don't test for valid mode.
3605         (xsputn): Same.
3606         
3607         * src/Makefile.am (AM_CXXFLAGS): Pass down AC_CXXFLAGS,
3608         OPTIMIZE_CXXFLAGS, etc. So --enable-debug and --enable-namespaces
3609         will work correctly, for instance.
3610         * src/Makefile.in: Regenerate.
3611
3612         * bits/locale_facets.h: Fix merge error.
3613         (num_put::put(unsigned long long): And here.
3614         * mknumeric_limits (trait_name): Same.
3615         
3616 2000-02-15  Chip Salzenberg  <chip@valinux.com>
3617
3618         Support 'configure --enable-long-long'.
3619         * bits/c++config.h (_GLIBCPP_USE_LONG_LONG): Remove.
3620         * stl/bits/stl_config.h (__STL_LONG_LONG): Remove '#if 0'.
3621         * acconfig.h (_GLIBCPP_USE_LONG_LONG): Add.  Default to undef.
3622         * acinclude.m4 (GLIBCPP_ENABLE_LONG_LONG): Define flag macro.
3623         * configure.in (GLIBCPP_ENABLE_LONG_LONG): Use it.
3624
3625         * aclocal.m4: Regenerate.
3626         * config.h.in: Regenerate.
3627         * configure: Regenerate.
3628
3629 2000-02-15  Chip Salzenberg  <chip@valinux.com>
3630
3631         Improve (complete?) 'long long' support.
3632         * mknumeric_limits: Call $CXX with $CPPFLAGS.  Define statics
3633         for {,unsigned} long long if the limits header declares them.
3634         * src/gen-num-limits.cc: Include <bits/c++config.h> early.
3635         (__USE_GNU, _GNU_SOURCE): Define if _GLIBC_USE_LONG_LONG.
3636         (long long, unsigned long long): Gen limits if _GLIBC_USE_LONG_LONG.
3637         * bits/locale_facets.h (num_get<>::get(..., long long &)): Define.
3638         (num_put<>::put(..., long long)): Likewise.
3639         (num_put<>::put(..., unsigned long long)): Likewise.
3640         * bits/locale_facets.tcc (_S_format): Rename from _S_format_long.
3641         Templatize last parameter to support 'long long'.
3642         (num_put<>::put(...)): Call _S_format with new name.
3643         (num_put<>::put(..., long long)): Define.
3644         (num_put<>::put(..., unsigned long long)): Likewise.
3645         * src/locale-inst.cc (_S_format): Instantiate under new name.
3646
3647 2000-02-15  Petter Urkedal  <petter@matfys.lth.se>
3648
3649         * src/complex.cc (operator<<, operator>>): Moved from here...
3650         * src/complex_io.cc: ...to new file.
3651         (operator>>): Stub replaced by the real thing.
3652         * src/Makefile.am (sources): Inserted complex_io.cc.
3653         * src/Makefile.in: Regenerate.
3654         * testsuite/26_numerics/complex_inserters_extractors.cc: Check it.
3655
3656 2000-02-14  Benjamin Kosnik  <bkoz@gnu.org>
3657
3658         Add in ctype information for newlib "C" libraries.
3659         * config/newlib: New directory
3660         * config/newlib/bits/ctype_base.h: New file.
3661         * config/newlib/ctype.cc: New file.
3662
3663         * ctype/config/linux/*: Rename, move to...
3664         * ctype/config/gnu-linux/*: Here.
3665         
3666         Finish off multilib work.
3667         * configure.in: Don't set CXX if not Canadian cross.
3668         * configure: Regenerate.
3669         * acinclude.m4 (GLIBCPP_CHECK_LIBIO): Tweak messages.
3670         * aclocal.m4: Regenerate.
3671         * config.h.in: Regenerate.
3672
3673         * install-sh: Remove, as AC_CONFIG_AUX_DIR(..) picks this out of
3674         the top-level gcc directory now.
3675         * mkinstalldirs: Remove.
3676         * missing: Remove
3677         * ltconfig: Remove.
3678         * ltmain.sh: Remove.
3679         * config.guess: Remove.
3680         * config.sub: Remove.
3681         
3682 2000-02-13  Benjamin Kosnik  <bkoz@cygnus.com>
3683
3684         * configure.in (glibcpp_basedir): Add glibcpp_basedir.
3685         * Makefile.am: Move mutlilib stuff to src/Makefile.am. 
3686         * Makefile.in: Regenerate.
3687         * src/Makefile.am: Add multilib bits.
3688         * src/Makefile.in: Regenerate.
3689         
3690 2000-02-12  Benjamin Kosnik  <bkoz@cygnus.com>
3691
3692         * configure.in: Clean, add some multilib support.
3693         * configure: Regenerate.
3694         * configure.host: New file.
3695
3696         * acinclude.m4: GLIBCPP_CHECK_LIBIO. Take bits from configure.in and 
3697         roll a new function, checks for presence of libio.
3698         GLIBCPP_CHECK_COMPILER_VERSION: Same.
3699         GLIBCPP_CHECK_BUILTIN_MATH_SUPPORT: Same.
3700         GLIBCPP_CHECK_MATH_SUPPORT: Same.
3701         GLIBCPP_CHECK_WCHAR_T_SUPPORT: Same.
3702         GLIBCPP_CHECK_LIBIO: Same.
3703         GLIBCPP_CHECK_CTYPE: Same.
3704         * aclocal.m4: Regenerate.
3705         * config.h.in: Regenerate.      
3706
3707         * Makefile.am: Tweaks.
3708         * Makefile.in: Regenerate.
3709         
3710 2000-02-11  Benjamin Kosnik  <bkoz@cygnus.com>
3711
3712         * configure.in: Make outputing the libio/Makefile
3713         conditional. Haha, yeah right. Anyway, we instead do this thing
3714         where if libio is found, then we build a null library, as there is
3715         no point in duplicating the found libio.
3716         * Makefile.am: Tweak.
3717         * Makefile: Regenerate.
3718         * libio/Makefile.am: Add _G_config.h stuff. Now cross compilers
3719         are happy happy happy.
3720         * libio/Makefile.am: Regenerate.
3721         * libio/gen-params: New file.
3722         * src/Makefile.am: Make libio.la non-conditional, as it is now a
3723         null library if it's not needed. At least we are being consistent,
3724         if not as elegant as we could be.
3725         * src/Makefile: Regenerate.
3726         
3727 2000-02-10  Benjamin Kosnik  <bkoz@gnu.org>
3728
3729         * Makefile.am (SUBDIRS): Add libio again.
3730         * Makefile.in: Regenerate.
3731         * configure.in (BUILD_LIBIO_INCLUDE): And here.
3732         (AC_OUTPUT): Generate libio/Makefile again.
3733         * configure: Regnerate.
3734         * src/Makefile.am (libstdc___la_LIBADD): Change path so that
3735         libio.la is referring back to the libio subdir again.
3736         (LIBIO_INCLUDES): And here.
3737         * src/Makefile.in: Regenerate.
3738         
3739 2000-02-09  Benjamin Kosnik  <bkoz@decepticon.cygnus.com>
3740
3741         * math/complex-stub.h: Missed one. Change __mycabs* to cabs*.
3742
3743 2000-02-09  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
3744
3745         * bits/valarray_array.h (<bits/std_new.h>): #include.
3746         (__valarray_get_memory): New function.
3747         (__valarray_release_memory): Likewise.
3748         (__valarray_default_construct): New functions.
3749         (__valarray_fill_construct): New function.
3750         (__valarray_copy_construct): New funstions.
3751         (__valarray_destroy_elements): New function.
3752
3753         * bits/valarray_array.tcc (__valarray_copy_construct): New
3754         functions. 
3755
3756         * bits/std_valarray.h (valarray<>::valarray): Use
3757         __valarray_get_memory and __valarray_fill_construct,
3758         __valarray_copy_construct, __valarray_default_construct to
3759         properly construct valarrays.  
3760         (valarray<>::~valarray): Use __valarray_destroy_elements to
3761         destroy elements and __valarray_release_memory to return memory.
3762         (valarray<>::shift): Tweak. 
3763         (valarray<>::cshift): Likewise.
3764         (valarray<>::resize): Robustify.
3765
3766 2000-02-09  Benjamin Kosnik  <bkoz@cygnus.com>
3767
3768         * mknumeric_limits (XCOMPILE): Add support for cross compiling.
3769         * bits/limits_generic.h: New file, defaults.
3770         * src/limits_generic.cc: New file, defaults.    
3771         * configure.in (LIBS): Run mknumeric_limits at configure time.
3772         * acconfig.h: Remove PACKAGE VERSION HAVE_COMPLEX
3773         HAVE_LC_MESSAGES, tidy, clean, etc.
3774         * src/Makefile.am (geberated_sources): Remove.
3775
3776         * bits/fpos.h: Use _GLIBCPP_USE_LIBIO guards for libio typenames
3777         (_IO_off_t, _IO_ssize_t)
3778
3779         * src/complex.cc: Use glibc's <complex.h> if
3780         possible. . . apparently this was not being done before. Include
3781         tweaks.
3782         (abs): Enable cabs if it's around, instead of mycabs.
3783         * src/complexf.cc (FCT): Add global scope to match complex.cc.
3784         * src/complexl.cc (FCT): Same.
3785         * math/Makefile.am (EXTRA_LONG_DOUBLE_yes): Change mycabsl to cabsl.
3786         (libmath_la_SOURCES): And here.
3787         * math/(mycabs.c, mycabsf.c, mycabsl.c): Move to. . .
3788         * math/(cabs.c, cabsf.c, cabsl.c): . . . Here.
3789         * math/complex-stub.h: Move c_log declarations into. . . 
3790         * math/mathconf.h: Here. This is because glibc's <complex.h>
3791         declares cclog, not c_log. The case of the dueling standards. . .
3792         * math/mathconf.h: Add _GLIBCPP_HAVE_* to macros.
3793         * math/Makefile.am: Change.
3794         * math/nan.c (nan): Change signature.
3795         * math/mathconf.h (NAN): Same.
3796         * math/complex-stub.h (nan): And here.
3797         
3798         * Makefile.am (rebuild-stamp): Remove libio and libio
3799         dependancies.  Plan to take out libio subdir and just merge with
3800         libio in top level gcc directory. Of course, this assumes there is
3801         a libio in the top level directory (ie ../src_dir). This will
3802         probably change the way this library is configured by default.
3803         * libio/*: Remove.
3804
3805 2000-02-09  Chip Salzenberg  <chip@valinux.com>
3806
3807         * localefwd.h (locale): Make public: facet, id, category.
3808         
3809 2000-02-09  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
3810
3811         * testsuite/26_numerics/buggy_complex.cc: Fix Origin:.
3812
3813         * acinclude.m4: Patch only once!
3814
3815 2000-02-09  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
3816
3817         * testsuite/26_numerics/buggy_complex.cc: New file.
3818
3819 2000-02-05  Petter Urkedal  <petter@matfys.lth.se>
3820
3821         * acinclude.m4: New GLIBCPP_CHECK_COMPLEX_SUPPORT macro. Based
3822         on the 1999-11-21 entries by Mumit Khan.
3823         * configure.in: Use.
3824         * acconfig.h: New _GLIBCPP_BUGGY_COMPLEX macro.
3825         * bits/std_complex.h: Use.
3826         
3827 2000-02-04  Philip Martin <pm@corris.dircon.co.uk>
3828
3829        * stl/bits/stl_algobase.h: Add traits based dispatch for
3830        __normal_iterator in the copy_backward()algorithm
3831        * stl/bits/stl_vector.h: Reduce use of __normal_iterator
3832        base() function.
3833
3834 2000-02-04  Mumit Khan  <khan@xraylith.wisc.edu>
3835         
3836         * src/gen-num-limits.cc (signal_handler): Work around signal
3837         handling problem on Cygwin. 
3838         Thanks to Chris Faylor <cgf@cygnus.com>.
3839
3840 2000-02-03  Benjamin Kosnik  <bkoz@cygnus.com>
3841
3842         * configure.in: Add (preliminary) support for cross compiles and
3843         multilibs.
3844         Remove AC_C_BIGENDIAN tests. Why is this necessary? Cross
3845         compilation freaks on this.
3846         * configure: Regenerate.
3847         * src/Makefile.am: Add support for cross compiles.
3848         * src/Makefile: Regenerate.
3849         * Makefile.am: Add support for cross compiles.
3850         * Makefile.in: Regenerate.
3851         
3852 2000-02-02  Benjamin Kosnik  <bkoz@cygnus.com>
3853
3854         * configure.in (LIBS): Remove unused subdirs.   
3855         * configure: Regenerate.
3856         * Makefile.am (SUBDIRS): And here.
3857         * Makefile.in: Regenerate.
3858         * src/Makefile.am (sources): And here.
3859         * src/Makefile.in: Regenerate.
3860         * string/*: Remove.
3861         * amm1/*: Remove.
3862         * generic/*: Remove.
3863         * glibc/*: Remove.
3864         * mkcheck.in (INC_PATH): Include $BUILD_DIR before any source dirs.
3865
3866         * libtool: Update to libtool-1.3.4.
3867         * ltconfig: Same
3868         * ltmain.sh: Same
3869         * config.sub: Same.
3870         * config.guess: Same.
3871
3872 2000-02-02  Benjamin Kosnik  <bkoz@cygnus.com>
3873             Alexandre Petit-Bianco  <apbianco@cygnus.com>    
3874
3875         * mkc++config: New file. Put autoconf macros into _GLIBCPP_
3876         namespace instead of polluting global namespace with duplicate
3877         autoconf output.
3878         * configure.in (AC_OUTPUT): Don't need to generate bits/config.h
3879         here anymore. . .
3880         (AC_OUTPUT_COMMANDS): Make it here.
3881         * configure: Regenerate.
3882         * bits/c++config.h.in (_CPP_CPPCONFIG): Change. Tweak. Remove
3883         endif, as now we will add it manually.
3884         Move to this file. . .
3885         * bits/c++config.h: New file. Same as old c++config.h.in except
3886         the ending macro guard is now appended manually.
3887
3888         * bits/locale_facets.tcc: Change HAVE_* macros to _GLIBCPP_HAVE_*.
3889         * bits/std_cmath.h: Same here.
3890         * bits/std_cwchar.h: And here.
3891         * src/locale.cc: And here.
3892         * src/complexl.cc: And here.
3893         * math/mathconf.h: Change to include "config.h" instead of
3894         bits/c++config.h.
3895         
3896 2000-02-01  Benjamin Kosnik  <bkoz@gnu.org>
3897
3898         * configure.in: Add support for threads. Try a model closer to
3899         libjava, as hopefully if the thread bits are added carefully
3900         enough, the source code will not have gross hacks. Besides, the
3901         libstdc++-v2 model could be easily emulated without the necessity
3902         of linking files in (as currently done)--all that needs to be done
3903         is AC_DEFINE(-D_PTHREADS) etc. However, let's try something
3904         new. . . and see if we arrive at a more elegant solution.
3905         * configure: Regenerated.
3906         * config/threads-no.h: New file. 
3907         * config/threads-posix.h: New file. 
3908         * src/Makefile.am (myinstallheaders): Install c++threads.h.
3909         * src/Makefile.in: Regenerated.
3910         
3911 2000-01-31  Benjamin Kosnik  <bkoz@gnu.org>
3912
3913         META-QUESTION: Can we just make a "header.html" file and a
3914         "footer.html" and just include them in all the doc sub-pages. The
3915         duplication of the header info is kind of gross, and weak
3916         considering that if you change order or layout then all this stuff
3917         has to be changed in all the sub-files.
3918
3919         * docs/17_intro/contribute.html: Take out duplicate file info.
3920         * README: Should just contain a link to the docs/index.html
3921         page. Duplicate information removed.
3922         * docs/faq/index.html: Remove indexes into HOWTOS.
3923         * docs/17_intro/howto.html: Make intro and docs part more
3924         centralized. Move intro stuff to documentation.html.
3925         * docs/how.html: Tweak. Does this file need to exist? What calls it?
3926         * docs/README.html: Move documentation files to
3927         documentation.html. Should this file be renamed
3928         "config_and_install.html" as that is what is apparently covered
3929         here. . .
3930         * docs/install.html: Yes. New file, moved and renamed README.html.
3931         * docs/documentation.html: New file. This is the index file for
3932         the documentation.
3933         * docs/index.html: Edit sidebar order. Insert new link to new
3934         documentation spine, documentation.html.
3935
3936 2000-01-31  Scott Snyder  <snyder@fnal.gov>
3937
3938         * bits/istream.tcc (operator>>(istream&, string&)): Set failbit if 
3939         we don't extract any characters.
3940         * testsuite/21_strings/inserters_extractors.cc (main): New tests.
3941         
3942 2000-01-31  Anders Widell  <awl@hem.passagen.se>
3943
3944         * stl/bits/std_bitset.h (_M_do_left_shift): Handle case when shift
3945         step is a multiple of the word size.
3946         (_M_do_right_shift): Same.
3947         * testsuite/23_containers/bitset_shift.cc: New file.
3948         
3949 2000-01-31  Nathan Myers  <ncm@zembu.com>
3950         
3951         * README (Documentation): Add path info, fix typos.
3952         
3953 2000-01-26  Benjamin Kosnik  <bkoz@redhat.com>
3954         
3955         * bits/locale_facets.tcc (num_get::_M_extract): Add the freaking
3956         crazy group checking for numpunct, for real this time. At some
3957         point, the local variable __grp should probably get replaced a
3958         char array, or something a bit more lightweight.
3959         (num_get::do_get(bool)): Simplify. Don't set bool reference to
3960         parsed value unless err isn't failbit.
3961         (num_get::do_get(*)): Same, make consistent.
3962
3963         Nathan Myers  <ncm@zembu.com>
3964         Jim Parsons  <parsons@clearway.com>
3965         * testsuite/27_io/istream_extractor_arith.cc (test08): Add
3966         more grouping tests, tweak, scold, wine.
3967         
3968 2000-01-24  Benjamin Kosnik  <bkoz@gnu.org>
3969
3970         * testsuite/27_io/istream_extractor_arith.cc (test07): Add
3971         grouping tests.
3972         * bits/locale_facets.tcc (num_get::_M_extract): Change to fix
3973         grouping bugs. Only allow thousands_sep if _M_use_groupings is
3974         true.
3975
3976         via <llewelly@198.dsl.xmission.com>
3977         * stl/bits/stl_vector.h (vector::_M_range_check): Throw
3978         out_of_range instead of range_error.
3979
3980 2000-01-17  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
3981
3982         * bits/std_iomanip.h (setw): Fix typo.
3983
3984 2000-01-14  Benjamin Kosnik  <bkoz@gnu.org>
3985
3986         * testsuite/27_io/istream_extractor_arith.cc: Fix.
3987         * bits/locale_facets.tcc (do_get(...void)): Change to strtoul.
3988         * testsuite/27_io/istream_unformatted.cc (test04): Tweak.
3989         
3990 2000-01-14  Phil Edwards  <pme@sourceware.cygnus.com>
3991
3992         * docs/README.html:  Reformat, more installation instructions.
3993         * docs/gccrebuild.html:  New file.
3994         * docs/faq/index.html:  Update for new testsuite output filenames.
3995         * docs/faq/index.txt:  Regenerate.
3996
3997 2000-01-14  Phil Edwards  <pme@sourceware.cygnus.com>
3998
3999         * Makefile.am (rebuild-stamp, all-local):  New targets.
4000         * Makefile.in:  Regenerated.
4001         * acinclude.m4:  New macro, GLIBCPP_ENABLE_RELIBGCC.
4002         * aclocal.m4:  Regenerated.
4003         * configure.in:  Call new macro.  Also do some sanity checks
4004           for combinations of --enable's that may not make sense.
4005         * configure:  Regenerated.
4006
4007 2000-01-13  Benjamin Kosnik  <bkoz@cygnus.com>
4008
4009         * testsuite/27_io/istream_extractor_arith.cc: Add checks for void*.
4010         * bits/locale_facets.tcc (do_get::(...void)): Set fmtflags
4011         correctly for hex-formatted input.
4012
4013         * testsuite/27_io/istream_manip.cc (test01): Fix, as per setting
4014         eofbit instead of eofbit | failbit.
4015         * testsuite/27_io/istream_unformatted.cc (test04): Fix, as
4016         ifstreams now are opened or'd with ios_base::in (as is correct).
4017         * bits/fstream.tcc (filebuf::seekoff): Simplify.
4018         * testsuite/27_io/ios_base_members_static.cc (test01): Fix thinko.
4019
4020 2000-01-12  Benjamin Kosnik  <bkoz@gnu.org>
4021
4022         * bits/std_fstream.h: Add ios_base as a friend to basic_filebuf.
4023         * bits/basic_file.h (basic_file::filepos_cur): Remove incorrect
4024         (misleading) code.
4025         (__basic_file::filepos_valid): Same.
4026         (__basic_file::filepos_beg): Same.
4027         (__baseic_file::get_fileno): New function.
4028         * bits/ios_base.h (ios_base::sync_with_stdio): Implement, including
4029         feedback from LWG 49.
4030         * src/ios.cc: Move definition here.
4031         * testsuite/27_io/ios_base_members_static.cc (test01): Add tests.
4032         
4033         * bits/std_sstream.h (_M_really_sync): Simplify argument list. Set
4034         output part of internal buffer based on string size, so that
4035         _M_out_end is set consistently with filebufs. Correct comments.
4036         * bits/sstream.tcc (stringbuf::overflow): Update here too.
4037         * testsuite/27_io/stringbuf.cc: Changes.
4038         
4039 2000-01-11  Benjamin Kosnik  <bkoz@gnu.org>
4040
4041         * bits/sstream.tcc (seekoff): Set based on end of written buffer,
4042         not buffer size.
4043         * testsuite/27_io/stringbuf.cc: Add tests for seekoff(end).
4044
4045         * bits/std_fstream.h (ifstream::open): Add ios_base::in to openmode.
4046         (ofstream::open): Add ios_base::out to openmode.
4047
4048         * bits/locale_facets.tcc (_M_extract): Have consistency between
4049         istream::sentry and extractors, where failbit | eofbit is
4050         set. Don't change this, but instead change. . (do some formatting
4051         tweaks.)  
4052         * bits/istream.tcc (istream::sentry): Only set eofbit.
4053         
4054 2000-01-10  Benjamin Kosnik  <bkoz@gnu.org>
4055
4056         * testsuite/27_io/istringstream_members.cc: New file.
4057
4058 2000-01-09  Benjamin Kosnik  <bkoz@gnu.org>
4059
4060         * bits/istream.tcc (istream::sentry): Flush.
4061
4062         * configure.in (AC_OUTPUT_COMMANDS): Simplify.
4063         * configure: Regenerate.
4064         * src/Makefile.am (generated_headers): Remove bits/c++config.h so
4065         that make clean will not delete it.
4066         * src/Makefile: Regenerate.
4067         
4068 2000-01-07  Phil Edwards  <pme@sourceware.cygnus.com>
4069
4070         * mkcheck.in:  Use host-specific invocation of size(1);
4071           GNU binutils isn't necessarily there (more's the pity).
4072
4073 2000-01-06  Benjamin Kosnik  <bkoz@cygnus.com>
4074
4075         * configure.in (LIBS): Better tests for solaris2.6.
4076         * configure: Regenerate.
4077
4078          <vakatov@ncbi.nlm.nih.gov>
4079         * bits/std_sstream.h: As per libstdc++20.
4080
4081 2000-01-06  Benjamin Kosnik  <bkoz@gnu.org>
4082
4083         Break out configuration on solaris.
4084         * configure.in (ctype_solaris): Add in bits for solaris2.6 and 2.7.
4085         * config/solaris/ctype.cc: Delete and move to proper version.
4086         * config/solaris/bits: Same.
4087         * config/solaris/solaris2.5: Add this directory, with subdir bits
4088         and file ctype.cc. Probably doesn't work.
4089         * config/solaris/solaris2.6: Same.
4090         * config/solaris/solaris2.7: Same, as per specs via Phil Edwards.
4091         
4092         * Makefile.am: Change paths to mkcheck.
4093         * Makefile: Regenerate.
4094         * configure.in (AC_OUTPUT_COMMANDS): Build mkcheck here.
4095         * configure: Regenerate.
4096         * src/Makefile.am (generated_headers): Add bits/c++config.h.
4097
4098         * mkcheck: Now autogenerated by configure and renamed. . .
4099         * mkcheck.in (INC_PATH): Add glue for ctype_include_dir.        
4100         Have longer-style dates.
4101         Raja R Harinath  <harinath@cs.umn.edu>
4102         * mkcheck: Change path to #!/usr/clocal/bin/bash.
4103
4104         * docs/README.html: Correct links, maybe. FAQ, install notes, and
4105         general documentation need to be organized around each other, not
4106         fight against each other. . .
4107
4108 2000-01-04  Phil Edwards  <pme@sourceware.cygnus.com>
4109             Nicolai Josuttis <nicolai.josuttis@braunschweig.netsurf.de>
4110
4111         * README:  Add a note referring to README.html.
4112         * docs/README.html:  New file from Nicolai.
4113         * docs/faq/index.html:  Move "how to get a copy" to here.
4114         * docs/gentop/footchunk.html:  Update.
4115         * docs/gentop/headchunk.html:  New links according to
4116           bkoz's idea for "How to..." stuff.
4117         * docs/gentop/thanks:  Actually put people here.
4118         * docs/download.html:  Regenerated.
4119         * docs/index.html, docs/links.html, docs/mail.html,
4120           docs/status.html, docs/thanks.html, docs/faq/index.txt:  Ditto.
4121         * docs/how.html:  Ditto.  (This file should go away soon.)
4122
4123 1999-12-26  Phil Edwards  <pme@sourceware.cygnus.com>
4124
4125         * docs/gentop/status:  Add snapshot version column, update
4126           for Solaris 7.
4127         * docs/status.html:  Regenerated.
4128
4129 1999-12-26  Phil Edwards  <pme@sourceware.cygnus.com>
4130
4131         * docs/faq/index.html:  Turn README and RELEASE-NOTES into links
4132           from installation FAQ, and specify location of text files.
4133         * docs/faq/index.txt:  Regenerated.
4134
4135 1999-12-23  Phil Edwards  <pme@sourceware.cygnus.com>
4136
4137         * docs/gentop/download:  Add links to prebuilds for Cygwin/Mingw32.
4138         * docs/download.html:  Regenerated.
4139
4140 1999-12-22  Phil Edwards  <pme@sourceware.cygnus.com>
4141
4142         * docs/faq/index.html:  Update 'what works' for .7 snapshot,
4143           clean up various links.
4144         * docs/faq/index.txt:  Regenerated.
4145         * docs/gentop/gentop:  Smarter regeneration script.
4146         * docs/gentop/{head,foot}chunk.html:  Updated with new
4147           contributors link and mod date.
4148         * docs/gentop/index:  Snapshot relase date.
4149         * docs/gentop/thanks:  New contributors page added.
4150         * docs/{download,how,index,links,mail,status,thanks}.html:
4151           Regenerated from gentop; thanks.html created.
4152
4153 1999-12-21  Benjamin Kosnik  <bkoz@decepticon.cygnus.com>
4154
4155         * bits/c++config.h.in (__GLIBCPP__): 19991221.
4156         * docs/index.html: Add correct information.     
4157
4158         * config/irix: New directory.
4159         * config/irix/ctype.cc: Add irix-6.5 info. Not tested.
4160         * config/irix/bits/ctype_base.h: And here.
4161
4162         * config/aix: New directory.
4163         * config/aix/ctype.cc: Add aix-4.2 info. Not tested.
4164         * config/aix/bits/ctype_base.h: And here.
4165         
4166 1999-12-21  Philip Martin  <pm@corris.dircon.co.uk>
4167
4168         * bits/basic_string.h: Add special case handling for integral
4169         "iterators".
4170         * bits/std_string.h: include type_traits.h
4171         * testsuite/21_strings/ctor_copy_dtor.cc: Tweak.
4172         
4173 1999-12-21  Benjamin Kosnik  <bkoz@decepticon.cygnus.com>
4174
4175         * bits/fstream.tcc (seekoff): Output buffer based on _M_*_in and
4176         _M_*_end now.
4177         * bits/std_fstream.h (sync): And here.
4178         * testsuite/27_io/filebuf.cc: Revisions.
4179         * testsuite/27_io/filebuf-2.tst: Correct, remove weird character
4180         at the end of the file.
4181         * testsuite/27_io/filebuf-3.tst: Correct.
4182         
4183 1999-12-21  Phil Edwards  <pedwards@jaj.com>
4184
4185         * docs/gentop/index:  Hold off on .7 announcement date.
4186         * docs/index.html:  Regenerate.
4187
4188 1999-12-21  Benjamin Kosnik  <bkoz@kcygnus.com>
4189
4190         * bits/std_fstream.h (sync): Move _M_file->sync() to
4191         _M_really_overflow().
4192         * bits/fstream.tcc (seekoff): Call sync, not _M_really_overflow so
4193         as to get the _M_file->sync action, which forces the external
4194         buffer to update itself.
4195         (underflow): Same here.
4196
4197 1999-12-21  Phil Edwards  <pedwards@jaj.com>
4198
4199         * bits/c++config.h.in:  Uncomment _GLIBCPP_USE_NAMESPACES and move...
4200         * acconfig.h:  ...to here.
4201         * config.h.in:  Regenerate from aclocal.
4202         * acinclude.m4:  Add GLIBCPP_ENABLE_DEBUG, GLIBCPP_ENABLE_NAMESPACES.
4203         * aclocal.m4:  Regenerate from acinclude.
4204         * configure.in:  Use ENABLE macros here.
4205         * configure:  Regenerate.
4206         * src/Makefile.am:  Use results from ENABLE macros.
4207         * src/Makefile.in:  Regenerate.
4208
4209 1999-12-20  Benjamin Kosnik  <bkoz@cygnus.com>
4210         
4211         * mkcheck (SRC_DIR): Now have to include config/* dir if "make
4212         check" and not "make check-install." Temporarily hack in linux
4213         support.
4214         
4215         * bits/std_streambuf.h: Tweaks.
4216         * bits/streambuf.tcc (xsgetn): Tweaks.
4217         * bits/std_fstream.h (sync): Make _M_really_overflow consistent.
4218         * bits/fstream.tcc (filebuf::underflow): Simplify.
4219         * bits/std_sstream.h (streambuf::underflow): Minor change to make
4220         checks for read position precisely implement the standard.
4221         * bits/basic_file.h (filepos_cur): Base this on _offset.
4222         * testsuite/21_strings/inserters_extractors.cc (test05): Tweaks.
4223         * testsuite/27_io/filebuf.cc: Tweak.
4224
4225 1999-12-20  Benjamin Kosnik  <bkoz@cygnus.com>
4226
4227         * docs/17_intro/RELEASE-NOTES: Fix typos.
4228
4229         * bits/locale_facets.h (ctype): Modify, use __to_type to abstract
4230         out platform-specific bits.
4231         * config/default/ctype.cc: And here.
4232         * config/defaults/bits/ctype_base.h: And here.
4233         * config/linux/ctype.cc: And here.
4234         * config/linux/bits/ctype_base.h (ctype_base): And here.
4235         * config/solaris/bits/ctype_base.h (ctype_base): Add
4236         __to_type. Comment, as it looks like this is for solaris2.6 and
4237         above: solaris2.5.1 doesn't seem to have the same definitions.
4238         * config/solaris/ctype.cc: And here.
4239
4240 1999-12-19  Benjamin Kosnik  <bkoz@cygnus.com>
4241             Ulrich Drepper  <drepper@cygnus.com>
4242         
4243         * acconfig.h: Remove _GLIBCPP_USE_CTYPE_ISBIT.
4244
4245         * src/locale.cc: Take out platform-specific hacks.
4246         * config/linux/ctype.cc: Put here.
4247         * config/solaris/ctype.cc: Put here.
4248         * config/default/ctype.cc: Put here.    
4249
4250         * bits/locale_facets.h: Take out platform-specific hacks.
4251         * config/linux/bits/ctype_base.h: Put here.
4252         * config/solaris/bits/ctype_base.h: Put here.
4253         * config/default/bits/ctype_base.h: Put here.   
4254
4255         * configure.in: Bump version.
4256         Add tests for top-level config directory.
4257         * configure: Regenerated.
4258         * src/Makefile.am (INCLUDES): Add platform-specific dir.
4259         * src/Makefile: Regenerate.
4260         
4261 1999-12-19  Benjamin Kosnik  <bkoz@cygnus.com>
4262             Ulrich Drepper  <drepper@cygnus.com>
4263
4264         * bits/locale_facets.h: Hack in solaris support.
4265         * src/locale.cc: Here too.
4266
4267 1999-12-18  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
4268
4269         * docs/17_intro/TODO: Update
4270         * docs/17_intro/RELEASE-NOTES (New): Update.
4271
4272 1999-12-17  Benjamin Kosnik  <bkoz@milou.cygnus.com>
4273
4274         * bits/c++config.h.in (__GLIBCPP__): Bump.
4275         * docs/17_intro/RELEASE-NOTES: Update, Gaby please add your stuff.
4276         * docs/17_intro/TODO: Update.   
4277
4278         * bits/locale_facets.h: Touch this too.
4279         * bits/localefwd.h: Add typedefs for loooooong vector names.
4280         * bits/locale_facets.tcc (locale::operator()): Need parens.
4281         (has_facet): Simplify.
4282         * src/locale-inst.cc: Add instantiations.
4283         * src/locale.cc: Tweaks.
4284         
4285         * bits/std_streambuf.h: Move indeterminates into. . 
4286         * bits/std_fstream.h: Here.     
4287         * bits/fstream.tcc (underflow): Rewind just for ios_base::out
4288         streams.
4289         * bits/sstream.tcc: Very minor formatting tweaks.
4290         * bits/std_streambuf.h (_M_set_determinate): If exclusively an
4291         input buffer, set _M_buf to offset.
4292         * bits/istream.tcc (std): Tweaks.
4293         * testsuite/27_io/istream_unformatted.cc (test05): More tweaks,
4294         include fstream.
4295         * testsuite/27_io/filebuf.cc: Tweaks.
4296         
4297 1999-12-17  Phil Edwards  <pedwards@jaj.com>
4298
4299         * configure.in:  Add OPTLEVEL, -O2 for gcc 2.96+, nothing otherwise.
4300         * configure:  Regenerate.
4301         * src/Makefile.am:  Use OPTLEVEL in CXXFLAGS.
4302         * src/Makefile.in:  Regenerate.  Also picks up OTHER_CXXFLAGS rename
4303           to OPTIMIZE_CXXFLAGS from a previous revision (1.96) to Makefile.am.
4304
4305 1999-12-17  Phil Edwards  <pedwards@jaj.com>
4306
4307         * docs/21_strings/stringtok_std_h.txt:  New algorithm
4308           suggested by Chris King.
4309         * docs/21_strings/howto.html:  Link to new version.
4310
4311 1999-12-16  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
4312
4313         * bits/valarray_array.h (__valarray_sum): Use operator+=, not
4314         operator+.
4315         * docs/17_intro/TODO: Update.
4316
4317 1999-12-15  Phil Edwards  <pme@sourceware.cygnus.com>
4318
4319         * docs/gentop/footchunk.html:  Updated, fixed CRLFs.
4320         * docs/gentop/gentop:  Ditto.
4321         * docs/gentop/headchunk.html:  Ditto.
4322         * docs/*.html:  Regenerated from gentop.
4323         * docs/*/howto.html:  Updated as test.
4324         * docs/faq/index.html:  Updated, fixed CRLFs.
4325         * docs/faq/index.txt:  Regenerated.
4326
4327 1999-12-15  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
4328
4329         * mknumeric_limits (OUT_C): restart only if $OUT_C is present.
4330
4331         * bits/std_complex.h 
4332         (complex<float>::complex(const complex<double>&),
4333         complex<float>::complex(const complex<long double>&)): Define.
4334
4335         * docs/17_intro/TODO: Update.
4336
4337 1999-12-13  Benjamin Kosnik  <bkoz@cygnus.com>
4338
4339         * bits/istream.tcc (seekg): Don't set _M_gcount.
4340         (tellg): Same.
4341         * bits/fstream.tcc (filebuf::underflow): Re-sync
4342         external byte sequence's input buffer only. . .
4343         * testsuite/27_io/istream_unformatted.cc (test04): New tests for
4344         tellg, seekg and filebufs.
4345         (test05): Same for stringbufs.
4346         * testsuite/27_io/istream_unformatted-2.tst: New file.
4347         * testsuite/27_io/istream_unformatted-1.tst: New file.
4348         * testsuite/27_io/istream_unformatted-1.txt: New file.  
4349         * testsuite/21_strings/inserters_extractors.cc (test05): Change
4350         output file.
4351
4352 1999-12-13  Phil Edwards  <pedwards@jaj.com>
4353
4354         * docs/gentop/*:  New directory, containing bits for the homepages.
4355         * docs/*.html:  Regenerated from gentop.
4356         * docs/*/*.html:  Entries added and regenerated.
4357
4358 1999-12-13  Benjamin Kosnik  <bkoz@gnu.org>
4359
4360         Efforts to get -O2 to work with -Winline -Werrors.
4361         * bits/valarray_array.h (__valarray_fill(_Tp*, size_t, const
4362         _Tp&): Remove inline declaration, as cannot be inlined and
4363         -Winline -Werror complains. An interesting question is why this
4364         cannot be inlined, as I can see no real reason to disqualify it.
4365         (__valarray_product(const _Tp*, const _Tp*)): Same here.
4366         * bits/std_valarray.h (valarray::operator[](size_t)): Same here.
4367         
4368         * docs/17_intro/TODO: Update.
4369
4370 1999-12-12  Benjamin Kosnik  <bkoz@gnu.org>
4371
4372         * bits/std_fstream.h (seekpos): Tweaks, fixes. Move definition to
4373         fstream.tcc.
4374         * bits/basic_file.h (filepos_cur()): Make pointers themselves be
4375         the resultant position.
4376         * bits/fstream.tcc (seekoff): Explicitly set return value to
4377         resultant external byte sequence position, not value returned from
4378         _M_file->seekoff. Need to make 
4379         (seekpos): New definition.
4380         
4381         * bits/istream.tcc (seekg): As per Library Issues List 136, set to
4382         just istream. Necessary, or else tellg will give an invalid stream
4383         position, but seekg will return a valid stream position, which is
4384         not groovy: see testcase addition.
4385         * bits/ostream.tcc (seekp): Same.
4386         
4387         * bits/streambuf.tcc (_S_copy_streambufs): Simplify.
4388         * bits/sstream.tcc: Tweaks.
4389         * bits/locale_facets.tcc: Tweaks.
4390         (num_put::do_put(iter_type, ios_base, char_type, const void*)):
4391         Re-write in a way that is easier for the inliner to work with.
4392         * bits/ios_base.h: Use explicit static_cast<int>(...) notation.
4393
4394 1999-12-10  Benjamin Kosnik  <bkoz@cygnus.com>
4395
4396         * bits/locale_facets.tcc: Tweaks.
4397         * bits/locale_facets.h (use_facet): Can't inline, remove inline
4398         from declaration.
4399         * bits/localefwd.h: And here.
4400         * bits/std_ostream.h: Tweaks, sentry ctor can't be inlined.
4401         * bits/ostream.tcc: Put here.
4402         
4403         Frank Ch. Eigler  <fche@cygnus.com> 
4404         * src/Makefile.am: Adjust CXXFLAGS, add AM_CXXFLAGS. 
4405
4406 1999-12-08  Benjamin Kosnik  <bkoz@cygnus.com>
4407
4408         * bits/sstream.tcc (stringbuf::seekoff): Long overdue revamp. Make
4409         in and out buffers update independantly.
4410
4411         * bits/basic_ios.h: Minor formatting.
4412         * bits/fstream.tcc (std): Fix indentation.
4413
4414 1999-12-08  Chip Salzenberg  <chip@valinux.com>
4415
4416         * bits/char_traits.h (char_traits<>): Move not_eof() functions
4417         after corresponding eof() functions, so they're easier for the
4418         compiler to inline.
4419         * bits/locale_facets.h (money_base::__default_pattern): Move
4420         static variable out of inline functions.
4421         (_Moneypunct<>::do_{pos,neg}_format): Use it.
4422         * src/locale-inst.cc (money_base::__default_pattern): Define it.
4423
4424 1999-12-08  Benjamin Kosnik  <bkoz@cygnus.com>
4425
4426         * bits/std_fstream.h (filebuf::open): Tweak.
4427         * bits/fstream.tcc (filebuf::seekoff): Simplify, fix.
4428         * bits/std_ios.h: Minor tweaks for headers.
4429
4430 1999-12-06  Benjamin Kosnik  <bkoz@gnu.org>
4431
4432         * bits/c++config.h.in (_GLIBCPP_FULLY_COMPLIANT_HEADERS): New macro.
4433         * src/string-inst.cc: Add guards . . .
4434         * src/misc-inst.cc: And here.
4435         * bits/std_sstream.h: And here.
4436         * bits/std_fstream.h: And here.
4437         * bits/std_streambuf.h: And here.
4438         * bits/std_istream.h: And here.
4439         * bits/std_ostream.h: And here.
4440
4441 1999-12-06  Scott Snyder  <snyder@fnal.gov>
4442
4443         * bits/istream.tcc (basic_istream::read): Try to handle __n == 0
4444         case.
4445         (basic_istream::readsome): And here as well.
4446         * testsuite/27_io/istream_unformatted.cc: Test a zero-length
4447         read().
4448
4449 1999-12-06  Mumit Khan  <khan@xraylith.wisc.edu>
4450
4451         * bits/istream.tcc (basic_istream::ignore): streamsize is not 
4452         necessarily an `int'.
4453
4454 1999-12-06  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
4455
4456         * mknumeric_limits: Don't use $CXXFLAGS when building
4457         gen-num-limits. It's definitely wrong to use it since $CXXFLAGS
4458         generally instructs the compiler not to emit template
4459         instantiations and we end up with undefined symbols. Sigh.
4460
4461 1999-12-05  Benjamin Kosnik  <bkoz@gnu.org>
4462
4463         * bits/locale_facets.tcc: Tweak.
4464         (_S_format_long): Adjust showpos formatting for hex and oct.
4465         * bits/std_ostream.h (operator<<(short)): Correctly deal with hex
4466         and oct by formatting as unsigned.
4467         (operator<<(int)): Same here.
4468         * bits/ostream.tcc (operator<<(long)): Same.
4469         (operator<<(long long)): Same.
4470         (_S_pad_char): Actually treat ios_base::internal as something
4471         worth doing correctly. Remove const designation on ios argument.
4472         * testsuite/27_io/ios_manip_basefield.cc (test02): Add tests.
4473         * testsuite/27_io/ostream_inserter_arith.cc (test03): Add tests.
4474         
4475 1999-12-04  Benjamin Kosnik  <bkoz@gnu.org>
4476
4477         * bits/std_sstream.h (streambuf::underflow): Check for mode == in.
4478
4479 1999-12-03  Benjamin Kosnik  <bkoz@gnu.org>
4480
4481         * bits/locale_facets.tcc (num_put::do_put(bool): Fix.
4482
4483         * bits/sstream.tcc (streambuf::seekoff): Add parens.
4484         * bits/istream.tcc (istream::get(sb)): Handle exceptional events.
4485         (operator>>(istream, _CharT*)): Change streamsize to int_type.
4486         (operator>>(istream, _CharT&)): Fix typedef'd type to be _CharT.
4487         * bits/ostream.tcc (ostream::operator<<(const char*)): Stub out
4488         unused argument.
4489         (ostream::operator<<(_CharT)): Fix.
4490         
4491         * bits/std_sstream.h: Temporarily disable including sstream.tcc to
4492         see if this will increase compile speed.
4493         * bits/std_ostream.h: Likewise. . .
4494         * bits/std_istream.h: And here.
4495         * bits/std_fstream.h: And here.
4496         * src/misc-inst.cc: Add relevant header file includes for
4497         instantiation purposes.
4498         * src/string-inst.cc: And here.
4499         * testsuite/27_io/ostream_inserter_arith.cc: Add test case.
4500         
4501 1999-12-02  Benjamin Kosnik  <bkoz@gnu.org>
4502
4503         * testsuite/27_io/istream_unformatted.cc (test03): Add tests.
4504         * bits/istream.tcc (get(streambuf)): More fixes. 
4505         (istream::ignore): Get specific about numeric_limits<int>::max()
4506         requirements.
4507
4508         * bits/fstream.tcc (filebuf::open): Tweaks for _M_last_overflowed.
4509         (filebuf::close): Same.
4510         * testsuite/27_io/filebuf.cc: Add tests for ios_base::ate.
4511         
4512 1999-12-01  Phil Edwards  <pedwards@jaj.com>
4513
4514         * mkcheck:  Support for compilation/execution timing.
4515         * testsuite/printnow.c: New file.
4516         
4517 1999-12-01  Phil Edwards  <pedwards@jaj.com>
4518
4519         * bits/std_cwchar.h:  Test for _GLIBCPP_USE_WCHAR_T.
4520         * configure.in:  Test for presence of wchar.h before testing
4521           for any of its features.
4522         * configure:  Regenerate.
4523
4524 1999-11-30  Benjamin Kosnik  <bkoz@gnu.org>
4525
4526         Preliminary istream validations complete.
4527         * bits/istream.tcc (istream::getline): Fixes. Tweaks to make
4528         formatting more consistent. Removal of if-statements inside of for
4529         loops.
4530         (ignore): Fix.
4531         (get): Same.
4532         (putback): Same.
4533         * bits/std_istream.h: Same.
4534         * bits/sstream.tcc (stringbuf::pbackfail): Fix.
4535         * testsuite/27_io/stringbuf.cc: Tweak.
4536         * testsuite/27_io/istream_unformatted.cc (test02): Mo' tests.   
4537
4538         * bits/ostream.tcc (ostream::operator<<(arith)): Set badbit, not
4539         failbit on failure, as per 27.6.2.5.2.
4540
4541         * stl/bits/std_vector.h: Allow bool specializations. Should move
4542         ext/std_bvector to bits, not ext, maybe.
4543
4544 1999-11-30  Mumit Khan  <khan@xraylith.wisc.edu>
4545
4546         * configure.in: Fix checks for mbstate_t and WCHAR_MIN/MAX.
4547         * configure: Regenerate.
4548         
4549 999-11-29  Benjamin Kosnik  <bkoz@gnu.org>
4550
4551         * bits/istream.tcc (get(streambuf, char)): Fix.
4552         * testsuite/27_io/istream_unformatted.cc (test03): Add tests.
4553         
4554 1999-11-29  Scott Snyder  <snyder@fnal.gov>
4555
4556         * bits/basic_string.h (append(const _Char*, size_type)): The
4557         length of the appended string is given exactly by the second arg,
4558         regardless of the data in the character array.
4559         * bits/string.tcc (basic_string(const _CharT*, size_type, const
4560         _Alloc&)): Likewise.
4561         * testsuite/21_strings/append.cc (test01): Remove erroneous test
4562         of basic_string::append.
4563
4564 1999-11-29  Chip Salzenberg  <chip@valinux.com>
4565
4566         * Makefile.in: Tweaks for CXXFLAGS.
4567         * */Makefile.in: Same.
4568
4569 1999-11-29  Mumit Khan  <khan@xraylith.wisc.edu>
4570
4571         * conficd bgure.in: Check for wide character support.
4572         * bits/c++config.h.in (_GLIBC_USE_WCHAR_T): Move from here ...
4573         * acconfig.h (_GLIBC_USE_WCHAR_T): to here.
4574         * bits/string.tcc (wstring::_S_find): Guard wchar_t specialization.
4575         
4576 1999-11-29  Mumit Khan  <khan@xraylith.wisc.edu>
4577
4578         * acinclude.m4: Fix typo.
4579         * src/complex.cc: Fix macro line continuation.
4580         
4581 1999-11-29  Petter Urkedal  <petter@matfys.lth.se>
4582
4583         * src/Makefile.am (CXXFLAGS): Add -Wno-format to allow non-
4584         string literals in format, as used in locale-facets.tcc.
4585
4586 1999-11-28  Benjamin Kosnik  <bkoz@gnu.org>
4587
4588         * testsuite/27_io/istream_unformatted.cc (test03): Add tests.
4589         * bits/istream.tcc (istream::get): Extract to argument minus one.
4590         Various tweaks and fixes.
4591         
4592 1999-11-22  Mumit Khan  <khan@xraylith.wisc.edu>
4593
4594         * bits/locale_facets.tcc: Workaround for compiler crash on
4595         ix86-*-mingw32.
4596
4597 1999-11-21  Mumit Khan  <khan@xraylith.wisc.edu>
4598
4599         * acinclude.m4: New file. New _GLIBCPP_CHECK_FLOAT_SUPPORT macro.
4600         * configure.in: Use.
4601         * acconfig.h: New _GLIBCPP_BUGGY_FLOAT_COMPLEX macro.
4602         * src/complexf.cc: New _GLIBCPP_FLOAT_SPECIALIZATION macro.
4603         * bits/std_complex.h: Use.
4604         * src/complex.cc: Use.
4605
4606 1999-11-19  Mumit Khan  <khan@xraylith.wisc.edu>
4607
4608         * testsuite/18_support/numeric_limits.cc: Add missing std:: prefix.
4609         * testsuite/21_strings/inserters_extractors.cc: Likewise.
4610         * testsuite/22_locale/ctype.cc: Likewise.
4611         * testsuite/23_containers/multiset.cc: Likewise.
4612         * testsuite/23_containers/vector_ctor.cc: Likewise.
4613         * testsuite/26_numerics/binary_closure.cc: Likewise.
4614         * testsuite/27_io/fpos.cc: Likewise.
4615         * testsuite/27_io/ios_base_callbacks.cc: Likewise.
4616         * testsuite/27_io/istream_extractor_arith.cc: Likewise.
4617         * testsuite/27_io/istream_extractor_char.cc: Likewise.
4618         * testsuite/27_io/istream_extractor_other.cc: Likewise.
4619         * testsuite/27_io/istream_sentry.cc: Likewise.
4620         * testsuite/27_io/ostream_inserter_char.cc: Likewise.
4621         * testsuite/27_io/ostream_inserter_other.cc: Likewise.
4622         * testsuite/27_io/streambuf.cc: Likewise.
4623         * testsuite/27_io/stringstream.cc: Likewise.
4624
4625 1999-11-19 Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
4626
4627         * bits/valarray_meta.h: Don't forget to define tanh
4628
4629 1999-11-18  Philip Martin  <pm@corris.dircon.co.uk>
4630  
4631        * src/stl-inst.cc: Use typedef to refer to iterator
4632        * stl/bits/stl_algobase.h: Add traits based dispatch for
4633        __normal_iterator in the copy()algorithm
4634        * stl/bits/type_traits.h: Add _Is_normal_iterator trait support
4635
4636 1999-11-18  Kevin Ediger  <kediger@licor.com>
4637
4638         * src/locale.cc (locale::_Imp::_Imp): Use auto_ptr to make
4639         constructors for locale::_Impl exception safe.
4640
4641 1999-11-18  Scott Snyder  <snyder@fnal.gov>
4642
4643         * stl/bits/stl_queue.h: The C++ standard gives the default for the
4644         _Sequence template argument of priority_queue<> as vector<>, not
4645         deque<>.
4646
4647 1999-11-18  Benjamin Kosnik  <bkoz@gnu.org>
4648
4649         * bits/std_sstream.h (stringbuf::_M_really_sync): Add __iend as a
4650         parameter.
4651         * bits/sstream.tcc: Adjust here too.
4652         
4653 1999-11-17  Benjamin Kosnik  <bkoz@gnu.org>
4654
4655         * bits/sbuf_iter.h (istreambuf_iter::equal): Tweak.
4656         * bits/istream.tcc (operator>>): Replace iostate(0) with
4657         iostate(ios_base::goodbit), which is the same thing, but hopefully
4658         a bit clearer.
4659         * bits/locale_facets.tcc (do_get(bool)): Streamline, deal with
4660         libraries issue list 17.
4661         (do_gets): Don't set goodbit explicitly, instead only set on
4662         failures as good bit is the default setting.
4663         * bits/ios_base.h (setf): Set correctly.
4664         * bits/fstream.tcc: Tweak.
4665         * bits/std_sstream.h (_M_really_sync): Fix ibuffer positioning for
4666         in|out bufs that are empty. . .
4667         * testsuite/27_io/istream_extractor_arith.cc (test03): Add.
4668         
4669 1999-11-16  Benjamin Kosnik  <bkoz@gnu.org>
4670
4671         * testsuite/27_io/streambuf.cc (class testbuf): Don't set _M_buf_size.
4672         * bits/std_streambuf.h (setp): Set _M_buf_size, _M_mode.
4673         Add comments "all about _M_buf."
4674         (setg): Set _M_mode.
4675
4676 1999-11-16  Kevin Ediger  <kediger@licor.com>
4677
4678         * bits/locale_facets.tcc (_S_build_float_format): New function.
4679         (_S_output_float): New function.
4680         (num_put::do_put(double)): Use 'em.
4681         (num_put::do_put(long double)): Use 'em.
4682         * testsuite/27_io/ostream_inserter_arith.cc: New file.
4683
4684 1999-11-15  Scott Snyder  <snyder@fnal.gov>
4685
4686         * bits/basic_file.h: Type of __off parm should be __c_streampos, to
4687         match how libio is calling us.
4688         * src/basic_file.cc (sys_seek): Likewise.
4689         * bits/std_fstream.h (basic_filebuf::sync): Restore sync call.
4690
4691 1999-11-15  Benjamin Kosnik  <bkoz@gnu.org>
4692
4693         * docs/17_intro/contribute.html: Add link to assignment form.
4694         * docs/17_intro/libstdc++-assign.txt: New file.
4695
4696         * mkcheck (TESTS_FILE): Move a copy of test files as well as
4697         output files.
4698
4699         * bits/std_streambuf.h (_M_buf_bump): New function.
4700         * bits/streambuf.tcc: Mods to support _M_buf_bump.
4701         (xsputn): Here. Also add checks for output valid.
4702         (xsgetn): Add checks for input valid.
4703         (sputc): Here.
4704         (sgetc): Set _M_in_end to _M_buf + _M_buf_end.
4705         * bits/std_sstream.h (_M_really_sync): Set _M_buf.
4706         Set _M_out_end to variable-length-end.
4707         * bits/sstream.tcc (overflow): Use _M_buf_bump.
4708         (seekpos): Same.
4709         (seekoff): Same.
4710         * bits/fstream.tcc (std): Tweak formatting.
4711         (filebuf::overflow): Simplify.
4712         (filebuf::showmanyc): Same.
4713         (filebuf::underflow): Same.
4714         * testsuite/27_io/filebuf.cc: Fix.
4715         * testsuite/27_io/ostream_inserter_other.cc: Fix.
4716         * testsuite/27_io/ostream_inserter_other-2.tst: New file.
4717         * testsuite/27_io/stringbuf.cc: Tweak.  
4718         * testsuite/27_io/streambuf.cc: Tweak.  
4719         * testsuite/27_io/istream_extractor_other.cc: Fix.
4720
4721 1999-11-11  Matthias Klose  <doko@cs.tu-berlin.de>
4722
4723         * stl_deque.h: Use static_casts<size_type>(signed_type).
4724
4725 1999-11-11  Benjamin Kosnik  <bkoz@gnu.org>
4726
4727         Cleanups for callbacks, more regression hunting. Remaining
4728         failures (1) due to last unresolved stringstream issues, not
4729         regressions per se.
4730         * bits/std_fstream.h: Revert. Disable call to _M_file->sync as
4731         killing 27_io/filebuf.cc tests. . . need another solution.
4732
4733         * bits/streambuf.tcc (_S_copy_streambufs): Fix.
4734         * testsuite/27_io/istream_extractor_other.cc: Tweak comments.
4735
4736         * bits/basic_ios.h: Add cached facets here. UGH. The standard
4737         foils all attempts at a graceful, minimal implementation.
4738         * bits/basic_ios.tcc: Tweaks.
4739         * bits/istream.tcc: Fix.
4740         * bits/ostream.tcc: Fix.
4741         * bits/std_istream.h: Fix.
4742         * bits/std_ostream.h: Fix.
4743         * src/ios.cc (ios_base::imbue): Set _M_locale_ios before calling
4744         callbacks.
4745         * bits/locale_facets.tcc (std): Minor, minor formatting tweak.
4746         (_S_pad_numeric): Make comprehensible.
4747
4748 1999-11-10  Benjamin Kosnik  <bkoz@cygnus.com>
4749
4750         * bits/std_ostream.h: Add callbacks for _M_fnumput.
4751         (_S_ostream_fcache): New function.
4752         Move functions out-of-line.
4753         * bits/ostream.tcc: Put here.
4754
4755         * bits/std_istream.h: Add callbacks for _M_fnumget.
4756         (_S_istream_fcache): New function.
4757         Move functions out-of-line.
4758         * bits/istream.tcc: Put here.
4759         
4760         * bits/basic_ios.tcc (basic_ios::imbue): Tweaks, remove call to
4761         _M_call_callbacks(), as ios_base::imbue does this already.
4762         * src/ios.cc (register_callback): Clean.
4763         (_M_call_callbacks): Same.
4764         * bits/ios_base.h: Callback work.
4765         * testsuite/27_io/ios_base_callbacks.cc (test01): New file.
4766         
4767 1999-11-10  Benjamin Kosnik  <bkoz@cygnus.com>  
4768             Matthias Klose  <doko@cs.tu-berlin.de>
4769
4770         * stl/ext/stl_rope.h: Fix initialization order.
4771
4772 1999-11-09  Scott Snyder  <snyder@fnal.gov>
4773
4774         * bits/std_fstream.h (basic_filebuf::sync): Unconditionally call
4775         _M_file->sync() so that redirection works correctly.
4776
4777 1999-11-09  Benjamin Kosnik  <bkoz@gnu.org>
4778
4779         * bits/istream.tcc: Re-order.
4780         * bits/std_istream.h: Fix getline problems.
4781         * testsuite/27_io/istream_unformatted.cc: New tests.
4782         
4783         Clean up regressions.
4784         * bits/std_sstream.h: Set initial stringbufs correctly.
4785
4786 1999-11-09  Scott Snyder <snyder@fnal.gov>
4787
4788         * stl_vector.h (_M_range_insert): Fix mixing pointers and
4789         vector::iterator.
4790         * testsuite/23_containers/vector_modifiers.cc (test01): New file,
4791         tests.
4792         
4793 1999-11-09  Benjamin Kosnik  <bkoz@cygnus.com>
4794
4795         * src/Makefile.am (CXXFLAGS): Add -Winline.
4796         * src/Makefile.in: Regenerate.
4797
4798 1999-11-05  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
4799
4800         * bits/valarray_meta.h (_DEFINE_EXPR_UNARY_FUNCTION): When
4801         building meta-expressions don't forget to take the contained
4802         closures. 
4803
4804 1999-11-02  Benjamin Kosnik  <benjamin@cygnus.com>
4805
4806         * configure: Regenerate.
4807         
4808 1999-11-02  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
4809
4810         * bits/valarray_meta.h (_Expr<>::sum): Tweak. Use copy-initialization
4811         syntax.
4812         * bits/valarray_meta.h (min): Likewise.
4813         * bits/valarray_meta.h (max): Likewise.
4814
4815 1999-11-01  Benjamin Kosnik  <bkoz@cygnus.com>
4816
4817         * bits/std_sstream.h (_M_really_sync): Take into account in | out bufs.
4818         * bits/std_streambuf.h (_S_copy_streambufs): New function.
4819         * bits/streambuf.tcc: Define.
4820         * bits/istream.tcc (istream::operator>>(streambuf)): Rewrite.
4821         * bits/ostream.tcc (ostream::operator<<(streambuf)): Rewrite.
4822         * testsuite/27_io/ostream_inserter_other.cc: Add tests.
4823         * testsuite/27_io/ostream_inserter_other-1.tst: New file.
4824
4825         * bits/basic_string.h: Explicitly cast npos to unsigned type,
4826         reported by Richard Atterer.
4827         * bits/char_traits.h: For consistency's sake, here too.
4828         
4829         * configure.in: Bump version to 2.90.7.
4830         
4831 1999-10-31  Benjamin Kosnik  <bkoz@cygnus.com>
4832
4833         * testsuite/27_io/ostream_inserter_char-1.tst: Check file output.
4834         * testsuite/27_io/ostream_inserter_char.cc (test05, test01): Add tests.
4835         * bits/streambuf.tcc (xsputn): Treat--size const char for long loops.
4836         (xsgetn): Same.
4837         * bits/sstream.tcc (seekpos): Tricks, mostly: check _M_mode before
4838         writing into buffer.
4839         (seekoff): Same.
4840         
4841 1999-10-29  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
4842
4843         * bits/valarray_array.h (__valarray_sum): New function.
4844         * bits/valarray_array.h (__valarray_product): Same.
4845
4846         * bits/std_valarray.h (valarray<T>::product): Comment out.
4847         * bits/std_valarray.h (valarray<T>::sum): Use __valarray_sum
4848         instead of accumulate. 
4849
4850         * src/valarray-inst.cc: Remove explicit intantiation of
4851         class multiplies<size_t>, accumulate, valarray<size_t>::product. 
4852         * src/valarray-inst.cc (__valarray_product): Instantiate
4853         explicitly. 
4854         * src/valarray-inst.cc (__valarray_product(const
4855         valarray<size_t>&)): New function.   
4856         * src/valarray-inst.cc (gslice::_Indexer::_Indexer): Don't use
4857         valarray<size_t>::product. Use __valarray_product instead.
4858         
4859
4860 1999-10-25  Benjamin Kosnik  <bkoz@cygnus.com>
4861
4862         * bits/std_ostream.h (ostream.inserters.char): Correctly pad output.
4863         (_S_pad_char): New function. Not done: ios_base::internal.
4864         * bits/ostream.tcc: Clean for above.
4865         * bits/locale_facets.tcc (_S_fill): Remove ostreambufiterator
4866         specialization that was commented out, as ostreams now have to
4867         correctly deal with padding.
4868         * testsuite/27_io/ostream_inserter_char.cc (main): Add tests.
4869         
4870         * testsuite/21_strings/ctor_copy_dtor.cc(test02): Add test case
4871         from mailing list. This is a bug, and should be fixed.
4872         * testsuite/21_strings/inserters_extractors.cc (main): Tweak, fix typo.
4873         
4874 1999-10-22  Petter Urkedal  <petter@matfys.lth.se>
4875
4876         * stl/bits/stl_numeric.h (__power): Replaced argument name `__opr'
4877         to avoid conflict with gcc name mangling.
4878         * stl/bits/stl_algo.h (__transform): Same.
4879
4880 1999-10-21  Benjamin Kosnik  <bkoz@cygnus.com>
4881
4882         * bits/ios_base.h: Change argument names.
4883         * docs/17_intro/BADNAMES: Add __opr.
4884         
4885 1999-10-20  Benjamin Kosnik  <bkoz@decepticon.cygnus.com>
4886         
4887         Work on compilation slowdowns from 10-5 to 10-12, which are
4888         related to the _Callback_list inlining/merge-ifcation, which is
4889         still a pending issue, but this stuff is necessary cleanup anyway.
4890
4891         * src/ios.cc: Re-arrange.
4892         * bits/ios_base.h: Tweak.
4893         * bits/basic_ios.tcc: Move out of line definitions here, move
4894         small out-of-line definitions inline.
4895         * bits/basic_ios.h: From here.
4896         
4897         * bits/streambuf.tcc (pbackfail, overflow): Move back inline.
4898         * bits/std_streambuf.h: From here.
4899
4900 1999-10-19  Benjamin Kosnik  <bkoz@cygnus.com>
4901
4902         * testsuite/27_io/istream_extractor_char.cc: Add tests.
4903         * bits/std_istream.h: Tweaks--set eofbit on eof condition.
4904         * bits/istream.tcc (operator>>(istream&, string&): Remove
4905         vestigial issspace hacks and use ctype::is instead.
4906         (getline): Remove unnecessary loops, fortify and pasteurize.
4907         (ws): Same.
4908         
4909 1999-10-18  Benjamin Kosnik  <bkoz@cygnus.com>
4910
4911         * bits/istream.tcc (operator>>): Tweak.
4912         * bits/std_istream.h: Fix according to library issues list 68.
4913         Add typedefs.
4914
4915         * bits/locale_facets.h: Fix table_size to be non-zero.
4916
4917 1999-10-18  Vadim Egorov  <egorovv@HotPOP.com>
4918
4919         * src/basic_file.cc: ifdef instead of comment for binary mode
4920
4921 1999-10-18  Russell Davidson  <russell@qed.econ.queensu.ca>
4922
4923         * bits/std_sstream.h: Stringbuf initialization based on actual,
4924         not allocated, size.
4925         * testsuite/21_strings/inserters_extractors.cc (test06): Add test
4926         case.
4927         
4928 1999-10-17  Benjamin Kosnik  <bkoz@cygnus.com>
4929
4930         * testsuite/26_numerics/c_math.cc (test03): Tweak.
4931         * testsuite/27_io/istream_manip.cc (test01): Corrections due to
4932         sentry change.
4933         * testsuite/21_strings/inserters_extractors.cc (test01): Same.
4934
4935 1999-10-14  Benjamin Kosnik  <bkoz@cygnus.com>
4936
4937         * bits/std_istream.h: Tweaks.
4938         * bits/istream.tcc (istream::sentry::sentry()): Simplify, correct
4939         as per issues list addition--set failbit, eof on empty buffers.
4940         * testsuite/27_io/istream_sentry.cc: New file.
4941         
4942 1999-10-12  Chris Prince <prince@wcug.wwu.edu> 
4943
4944         * bits/std_cstdio.h: Remove Solaris hacks.
4945
4946 1999-10-12  Phil Edwards  <philip.edwards@sn.wpafb.af.mil>
4947
4948         * docs/index.html:  Fix minor typos and tweaks.
4949         * docs/17_intro/contribute.html:  Ditto.
4950         * docs/*/howto.html:  Ditto.  More "EGCS"->"GCC" conversion, notes on
4951         thread safety and binary I/O, links to external sites.
4952         * docs/faq/index.html: EGCS/GCC cleanup, new entries for Cygwin
4953         and MT.
4954
4955 1999-10-12  Petter Urkedal  <petter@matfys.lth.se>
4956
4957         * bits/std_cmath.h (abs(float)): When ::absf is not present, call
4958         ::fabs(double) rather than ::abs(int).
4959
4960 1999-10-11  Benjamin Kosnik  <bkoz@milou.cygnus.com>
4961
4962         * bits/std_streambuf.h: Fix minor blip--should explicitly return
4963         *gptr(), not the result of underflow.
4964         (pbackfail): Conform to default behavior.
4965         (overflow): Same.
4966         * bits/streambuf.tcc: Add out-of-line streambuf members.
4967         (xsputn): Tweak.
4968         (xsgetn): Tweak.
4969         * testsuite/27_io/streambuf.cc: New file.
4970         * testsuite/27_io/filebuf.cc: Correct test.
4971
4972 1999-10-08  Benjamin Kosnik  <bkoz@haight.constant.com>
4973
4974         * bits/std_cmath.h: Correctly cast int to double.
4975         * testsuite/26_numerics/c_math.cc: Add test.
4976
4977         * mknumeric_limits (OUT_C): Tweaks.
4978         * src/gen-num-limits.cc: Checks for WCHAR_MIN, WCHAR_MAX before
4979         trying to instantiate type_traits<wchar_t>.
4980         * acconfig.h: Add _GLIBCPP_HAS_WCHAR_MIN_MAX.
4981         * configure.in (LIBS): Plus checks for WCHAR_MIN, WCHAR_MAX.
4982         * configure: Regenerate.
4983         
4984 1999-10-06  Benjamin Kosnik  <bkoz@milou.cygnus.com>
4985
4986         * bits/streambuf.tcc (streambuf::xsgetn): Rewrite.
4987         (streambuf::xsputn): Put in break.
4988         Aiming for parity between these two (mostly) similar functions.
4989         Need to re-write tests.
4990         
4991         * bits/ios_base.h (ios_base::_M_copy_base): Remove declaration.
4992         Make data members protected, not private.
4993         * src/ios.cc (ios_base::_M_copy_base): Move _Callback_list into
4994         ios_base.h. As called only once, collapse into . . .
4995         * bits/basic_ios.h (basic_ios::copyfmt): Fix.
4996         (basic_ios::clear): Throw ios_base::failure on occasion.
4997         (basic_ios::exceptions): Fix.
4998         * testsuite/27_io/ios_members.cc (test02): Add tests.
4999         
5000         * bits/fpos.h: Default initialize.
5001         * testsuite/27_io/fpos.cc (test03): Add test.
5002
5003 1999-10-04  Russell Davidson <russell@qed.econ.queensu.ca> 
5004
5005         * src/basic_file.cc: Fix open modes.
5006         
5007 1999-10-04  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
5008
5009         * bits/locale_facets.tcc (num_get<>::do_get): Fix typo.
5010
5011 1999-09-23  Benjamin Kosnik  <bkoz@milou.cygnus.com>
5012
5013         * bits/streambuf.tcc: Yea. Fix this for real.
5014         * testsuite/27_io/ostream_inserter_other.cc: Add file.
5015         * src/Makefile.*: Regenerate.
5016
5017 1999-09-22  Benjamin Kosnik  <bkoz@milou.cygnus.com>
5018
5019         * bits/std_cstdlib.h: Add more linux-specif hacks to the header
5020         files so that stdtof and strtold will be declared. Some hacks
5021         already exits in bits/std_cctype.h -- these should all be removed
5022         at a later date.
5023         * bits/locale_facets.tcc: Add cstring.h include.
5024         _S_format_long: Use long, not int.
5025         Add std_limits.h include, for numeric_limits.
5026         * testsuite/27_io/istream.cc: Make instantiations work when using
5027         -fhonor-std.  
5028         * testsuite/27_io/ostream.cc: Same.
5029         
5030 1999-09-21  Benjamin Kosnik  <bkoz@milou.cygnus.com>
5031
5032         * bits/fpos.h (fpos::operator streamoff): Make const, don't return
5033         a reference. Same for operators == and !=.
5034         * testsuite/27_io/fpos.cc: Add tests.
5035
5036 1999-09-21  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
5037
5038         * bits/valarray_array.h: Fix typo.
5039
5040         * mknumeric_limits: Make sure we are regenerating things from
5041         scratch.  Otherwise things get redefined.  Not good.
5042
5043 1999-09-20  Benjamin Kosnik  <bkoz@milou.cygnus.com>
5044
5045         * bits/std_ostream.h: Fix typo.
5046         * bits/std_istream.h: Same.
5047         * bits/std_iomanip.h: Same.
5048
5049         * bits/istream.tcc (sentry::sentry()): Remove optional tie with
5050         ostream, as happens with underflow anyway.
5051         * testsuite/27_io/istream.cc (main): New file.
5052         * testsuite/27_io/ostream.cc (main): New file.
5053         * testsuite/27_io/istream_unformatted.cc: Add tests.
5054
5055         * src/Makefile.am (headers): Add new file.
5056         * src/Makefile.in (headers): Regenerated.
5057
5058         * bits/basic_ios.h: Remove local-related files.
5059         * bits/basic_ios.tcc: New file, add locale-related items.
5060         * src/misc-inst.cc: Add include of basic_ios.tcc, as a hack for now.
5061         * testsuite/27_io/ios_members_static.cc: Change to
5062         * testsuite/27_io/ios_base_members_static.cc: This.
5063         * testsuite/27_io/ios_members.cc: New file.
5064         * testsuite/27_io/stdios_basefield_manip: Change to
5065         * testsuite/27_io/ios_manip_basefield.cc: This.
5066         * testsuite/27_io/stdios_fmtflags_manip: Change to
5067         * testsuite/27_io/ios_manip_fmtflags.cc: This.
5068         
5069         * bits/fpos.h: Fix discarding qualifiers on this when
5070         using _M_position with a const fpos.
5071         * bits/std_iosfwd.h: Tweak.
5072         * testsuite/27_io/fpos.cc: New file.
5073
5074 1999-09-17  Benjamin Kosnik  <bkoz@milou.cygnus.com>
5075
5076         * bits/streambuf.tcc (streambuf::xsputn): Tweak.
5077         * bits/ostream.tcc: Tweak.
5078         * testsuite/21_strings/inserters_extractors.cc (test04, test05):
5079         Add new regressions.
5080         
5081 1999-09-16  Benjamin Kosnik  <bkoz@milou.cygnus.com>
5082
5083         * bits/basic_ios.h: Inline, tweak.
5084         * bits/fstream.tcc (basic_filebuf::_M_really_overflow): Tweak,
5085         pass back accurate return value to basic_filebuf::overflow.
5086         * bits/streambuf.tcc (streambuf::xsputn): Fix overflow accounting.
5087         This fixes sstream problems reported in libstdc++/9, but screws up
5088         filebufs. That solution is pending.
5089
5090 1999-09-15  Vadim Egorov  <egorovv@1c.ru>
5091
5092         * bits/streambuf.tcc (basic_streambuf::xsputn): Add check for 
5093         zero count puts.
5094         * testsuite/21_strings/inserters_extractors.cc (test01): Add test.
5095         
5096 1999-09-08  Benjamin Kosnik  <bkoz@milou.cygnus.com>
5097
5098         * bits/c++config.h.in: Add emacs hints.
5099
5100         * stl/bits/stl_range_errors.h: Don't define here, for now define
5101         in stdexcept.cc along with string inlines __length_error, etc.
5102         * src/stdexcept.cc: Define here.
5103         * stl/bits/stl_config.h (__STL_CAN_THROW_RANGE_ERRORS): Enable, so
5104         at(size_t) will be declared/defined.
5105         (__STL_THREADS): Fix mess surrounding use of this, enable.
5106
5107 1999-08-31  Benjamin Kosnik  <bkoz@milou.cygnus.com>
5108
5109         * testsuite/27_io/istream_extractor_arith.cc: Fix.
5110         * src/localename.cc: Tweak formatting, fix assignment to
5111         const compiler errors.
5112
5113 1999-08-25  Benjamin Kosnik  <bkoz@cygnus.com>
5114
5115         * acconfig.h: Add absf, cosf.
5116         * configure.in (use_builtin_sinf): Same.
5117         * configure: Regenerate.
5118         * bits/std_cmath.h: Add mess of defines.
5119         * testsuite/26_numerics/modf_float.cc: Change to
5120         * testsuite/26_numerics/c_math.cc: This.
5121         
5122         * src/locale.cc: Change.
5123         * bits/locale_facets.h: Fix.
5124         * testsuite/22_locale/ctype.cc: Add temporary tests.
5125         
5126 1999-08-24  Benjamin Kosnik  <bkoz@cygnus.com>
5127
5128         * bits/fpos.h: Test.
5129
5130         * docs/index.html: Add powerpc-linux-gnu results with gcc-2.95.1.
5131         Fix database name for "libstdc++".
5132
5133 1999-08-23  Benjamin Kosnik  <bkoz@cygnus.com>
5134
5135         * mknumeric_limits (numeric_limits): Add default definitions to
5136         member functions.
5137         * testsuite/18_support/numeric_limits.cc: New file.
5138
5139 1999-08-18  Benjamin Kosnik  <bkoz@cygnus.com>
5140
5141         * bits/std_istream.h: Correct initialization.
5142         * bits/std_ostream.h: Likewise.
5143         * bits/std_sstream.h: Likewise.
5144         * bits/std_fstream.h: Likewise. 
5145         * testsuite/27_io/stringstream.cc: Add test case.
5146         
5147         * bits/std_sstream.h: Replace ____string_type with __string_type.
5148         * bits/basic_ios.h (basic_ios::rdbuf(sb*): Call clear(), as required.
5149         * bits/std_ostream.h: Tweak dtor.
5150
5151 1999-08-17  Benjamin Kosnik  <bkoz@decepticon.cygnus.com>
5152
5153         * src/Makefile.am (CXXFLAGS): Add -O2.
5154         * src/Makefile.in: Likewise.
5155         
5156         * src/gen-num-limits.cc: Conditionally allow wchar_t. See what
5157         this breaks. . .
5158         * mknumeric_limits (numeric_limits): Uglify.
5159
5160         * bits/std_istream.h: Fix warnings.
5161         * bits/locale_facets.tcc: Collateral damage from
5162         char_traits<char>::int_type change.
5163
5164         * testsuite/27_io/istream_extractor_char.cc: Terminate strings.
5165
5166 1999-08-17  Benjamin Kosnik  <bkoz@decepticon.cygnus.com>
5167
5168         * docs/index.html: Add mailing list form.
5169         * docs/27_io/howto.html: Add link to iostreams_hierarchy.pdf.
5170
5171 1999-08-16  Benjamin Kosnik  <bkoz@cygnus.com>
5172
5173         * bits/streambuf.tcc (streambuf::xsputn): Allow copies to continue
5174         if overflow successfully allocates more space.
5175         * bits/std_sstream.h: Adjust comments.
5176         * bits/sstream.tcc (stringbuf::overflow): Copy buffer into string
5177         before overflow forces a resize.
5178         * testsuite/27_io/ostream_inserter_char.cc: New file.
5179         
5180         * bits/std_fstream.h: Remove declaration.
5181         * bits/fstream.tcc: Move uflow.
5182         * bits/std_streambuf.h: To here.
5183         * bits/streambuf.tcc: Make consistent.
5184         
5185         * src/Makefile.am (WERROR): Enable.
5186         * src/Makefile.in: Regenerate.
5187         * bits/sbuf_iter.h: Tweak.
5188         * bits/char_traits.h: (char_traits<wchar_t>::eof): Use WEOF.
5189         Use unsigned int as char_traits<char>::int_type.
5190
5191         * bits/ostream.tcc (ostream::putc(char)): Tweak.
5192         * testsuite/27_io/iostream_objects.cc: Terminate string.
5193         Move cin::operator>>(char*) test to extractor_char.cc.
5194         * testsuite/27_io/stringstream.cc: Add stringstream instantiation.
5195         * bits/std_istream.h (basic_iostream): Make explicit definition
5196         for default ctor.
5197         * bits/std_sstream.h: Fix typos.
5198         * bits/fstream.tcc (_M_init_filebuf): Set to indeterminate for
5199         basic_filebuf ctor with fileno open arguments. Thus, filebufs are
5200         initialized in a consistent manner, no matter if the underlying
5201         FILE/bit bucket is a tty or a text file or some other imaginary
5202         construct. This and setting _M_buf_size to 1 for cin allows
5203         istream::get(char) to work in a manner consistent with what others
5204         expect.
5205
5206         * docs/index.html: Link Stroustrup's C++ page.
5207         
5208 1999-08-12  Michael Cook  <cook@sightpath.com>
5209
5210         * bits/fstream.tcc: Fix signed/unsigned -Wall warning.
5211         * bits/istream.tcc: ditto.
5212         * bits/sbuf_iter.h: ditto.
5213         * bits/std_istream.h: ditto.
5214         * src/Makefile.am: Add -Wall to CXXFLAGS.
5215         * src/Makefile.in: ditto.
5216
5217 1999-08-12  Benjamin Kosnik  <bkoz@tintin.cygnus.com>
5218             Russell Davidson <russell@ehess.cnrs-mrs.fr> 
5219
5220         * bits/locale_facets.tcc (_M_extract): Finish off patch from yesterday.
5221         * src/Makefile.am (myinstallheaders): Tweak, remove PHONY.
5222         
5223 1999-08-11  Benjamin Kosnik  <bkoz@tintin.cygnus.com>
5224
5225         * testsuite/27_io/istream_unformatted.cc: New file.
5226
5227         * testsuite/27_io/istream_extractor_arith.cc (test02): Add more
5228         elaborate tests for int types with noskipws.
5229
5230         * testsuite/27_io/istream_extractor_other-1.txt: New file.
5231         * testsuite/27_io/istream_extractor_other-1.tst: New file.
5232         * testsuite/27_io/istream_extractor_other-2.tst: New file.      
5233         * testsuite/27_io/istream_extractor_other.cc: Add tests.
5234         * bits/istream.tcc: Fix operator>>(streambuf*).
5235
5236         * testsuite/23_containers/vector_ctor.cc (test01): Add.
5237
5238         * docs/index.html: Remove references to egcs.
5239         * docs/17_intro/DESIGN: Same.
5240         * docs/17_intro/contribute.html: Same.
5241         * docs/17_intro/RELEASE-NOTES: Ditto.
5242         * docs/17_intro/howto.html: Same here.
5243
5244         Russell Davidson <russell@ehess.cnrs-mrs.fr>
5245         * stl/bits/stl_vector.h (_M_insert_aux): 
5246         * bits/locale_facets.tcc (_M_extract): Tweaks for preliminary
5247         decimal/floating point support.
5248         * bits/locale_facets.h: Change _M_extract prototype.
5249         * bits/char_traits.h (char_traits::to_int_type): Cast to unsigned.
5250         * bits/std_istream.h (istream::read(char_type, streamsize)): Fix.
5251         
5252 1999-08-10  Michael Cook  <cook@sightpath.com>
5253
5254         * bits/fstream.tcc: Fix for unused variable warning (-Wall).
5255         * bits/ios_base.h: ditto.
5256         * bits/istream.tcc: ditto.
5257         * bits/locale_facets.h: ditto.
5258         * bits/locale_facets.tcc: ditto.
5259         * bits/std_streambuf.h: ditto.
5260         * src/basic_file.cc: ditto.
5261         * src/locale.cc: ditto.
5262         * src/localename.cc: ditto.
5263
5264 1999-08-10  Kirat Singh  <singhki@jany.gs.com> 
5265
5266         * bits/std_iomanip.h: Inline.
5267         
5268 1999-08-10  Alfred Minarik <a8601248@unet.univie.ac.at>
5269         
5270         * bits/std_streambuf.h: Correct member initialization order.
5271         * src/ios.cc: Add definitions for ios_base data members.
5272         
5273 1999-08-06  Phil Edwards  <pedwards@ball.com>
5274         
5275         * docs/index.html:  Seventh snapshot updates.  Minor tweaks.
5276         * docs/faq/index.html: Ditto.  Removed bugs sections that have
5277         been fixed for a long time...  Lots of "egcs" references still
5278         exist.
5279         * docs/faq/index.txt:  Regenerated.
5280
5281 1999-08-05  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
5282             Andreas Amann <amann@physik.tu-berlin.de>
5283
5284         * testsuite/26_numerics/binary_closure.cc (main): new test.
5285
5286 1999-07-29  Andreas Amann <amann@physik.tu-berlin.de>
5287
5288         * bits/valarray_meta.h: (_BinClos<>::_Binclos): fix typo causing
5289         segmentation fault.
5290
5291 1999-08-04  Benjamin Kosnik  <bkoz@decepticon.cygnus.com>
5292
5293         * docs/index.html (host): Put in testing status.
5294
5295 1999-08-03  Benjamin Kosnik  <bkoz@cygnus.com>
5296
5297         * docs/index.html: Update for libstdc++-2.90.6 release.
5298         * docs/17_intro/RELEASE-NOTES (New): Update.
5299         * docs/17_intro/BUGS: Update.
5300         * bits/c++config.h.in (__GLIBCPP__): Bump version number.
5301         * README (file): Update.
5302
5303 1999-08-03  Benjamin Kosnik  <bkoz@cygnus.com>
5304
5305         * src/Makefile.am (generated_headers): Remove bits/c++config.h as
5306         a target.
5307         ($(generated_headers)): Same.
5308         * src/gen-c++config.cc: Remove, rename to
5309         * bits/c++config.h.in: New file. Bump version number.
5310         * configure.in: Generate bits/c++config.h at configure time. 
5311         * math/mathconf.h: include bits/c++config.h, not config.h.
5312         
5313         * bits/std_cmath.h: Fix remaining link error for solaris shared
5314         builds.  _GLIBCPP_HAS_BUILTIN_SINF has to be disabled for the time
5315         being, as on Solaris this silently calls sinf, which does not
5316         exist.
5317         
5318         * src/complex.cc: More tweaks.
5319
5320 1999-08-03  Benjamin Kosnik  <bkoz@cygnus.com>
5321
5322         * src/complex.cc: Same.
5323         * math/complex-stub.h: Change.
5324         * math/c_log10*.c: Change back to clog10*.c.
5325
5326         * configure.in (NEED_C_LOG10): Delete.
5327         * configure: Regenerate.
5328         * math/Makefile.am: Change.
5329         
5330 1999-07-30  Benjamin Kosnik  <bkoz@cygnus.com>
5331
5332         * math/Makefile.am: Fix, for real.
5333         * configure.in (use_builtin_sinf): Ok, make autoconf solution.
5334         * math/clog.c: Move to c_log.c.
5335         * math/clog*: Ditto.
5336         * math/c_log10l.c (c_log10l): Change function name.
5337         * math/c_log10f.c (c_log10f): Change function name.
5338         * math/c_log10.c (c_log10): Change function name.
5339         
5340         * math/complex-stub.h: Change to c_log* variants.
5341         * src/complex.cc: And here. 
5342         
5343 1999-07-29  Benjamin Kosnik  <bkoz@cygnus.com>
5344
5345         * testsuite/27_io/istream_extractor_other.cc: Correct last test.
5346         * bits/sstream.tcc (stringbuf::overflow): Don't update the input
5347         sequence, just the output sequence.
5348         * bits/std_sstream.h (stringbuf::str()): Only in stringbufs return
5349         the original string, all others use complicated heuristic.
5350
5351         * src/complex.cc: Assume c_log10.
5352         * math/Makefile.am (EXTRA_yes): Fix c_log/c_logf unresolved
5353         symbols in shared libraries by making c_log/c_log10 part of the
5354         "must cmpile" sources. This may not work on solaris, must check.
5355
5356 1999-07-29  Benjamin Kosnik <bkoz@cygnus.com>
5357
5358         * bits/istream.tcc (operator>>(streambuf*)): Re-do.
5359         * bits/std_istream.h: Fix char extractors.
5360         * testsuite/27_io/istream_extractor_char.cc: Change.
5361         * testsuite/27_io/istream_extractor_other.cc: Add tests.
5362         
5363 1999-07-28  Benjamin Kosnik <bkoz@cygnus.com>
5364
5365         * bits/std_cctype.h: Fix for solaris2.6 builds. 
5366
5367         * bits/istream.tcc: Fix, thanks Alfred.
5368         * bits/std_istream.h: Formatting changes.
5369
5370         * libio/Makefile.am (libio_la_SOURCES): Remove cleanup.c, so that
5371         _IO_cleanup will not be undefined.
5372         * libio/*: Regenerate.
5373         
5374         * bits/basic_string.h: More namespace-safety stuff.
5375         * testsuite/27_io/istream_extractor_char.cc: Fix.
5376         * testsuite/27_io/istream_extractor_arith.cc: Fix.
5377         * testsuite/27_io/iostream_objects.cc: Fix.
5378         * testsuite/27_io/ios_ctor.cc: Fix.
5379         * testsuite/27_io/istream_manip.cc: Make namespace safe.
5380         * testsuite/27_io/istream_extractor_other.cc: New file.
5381
5382         * mkcheck (TESTS_FILE): Tweaks.
5383
5384 1999-07-27  Benjamin Kosnik  <bkoz@cygnus.com>
5385
5386         * src/gen-c++config.cc: Note here, change version.
5387         * acconfig.h( _GLIBCPP_USE_CTYPE_ISBIT): New macro.
5388         * src/locale.cc: Used here.
5389         * configure.in (use_builtin_sinf): Check for _ISBit using autoconf.
5390
5391         * aclocal.m4: Regenerate by running `aclocal -I m4.`
5392         
5393         * bits/istream.tcc: Fix.
5394         * bits/std_istream.h: More changes to extractors.
5395
5396         * testsuite/27_io/istream_extractor_char.cc: More.
5397         * testsuite/21_strings/inserters_extractors.cc (test01): Fix logic
5398         error in testsuite construction.
5399
5400         * bits/std_istream.h: Partially revert.
5401         * bits/std_ostream.h: Same.
5402         * bits/std_sstream.h: Revert. 
5403
5404 1999-07-26  Benjamin Kosnik  <bkoz@cygnus.com>
5405
5406         * bits/std_sstream.h: Change initialization.
5407         * bits/std_ostream.h: Make default ctor/assign/operator= private.
5408         * bits/std_istream.h: Same, also correct sentry args.
5409         * bits/istream.tcc: Add correct sentry args.
5410         
5411         * testsuite/27_io/istream_extractor_char.cc: New file.
5412         * testsuite/27_io/istream_extractor_arith.cc: New file, old file,
5413         name changes making me dizzy.
5414
5415 1999-07-26  Ulrich Drepper  <drepper@happy.cygnus.com>
5416             Benjamin Kosnik  <bkoz@cygnus.com>
5417
5418         * aclocal.m4, config.guess, config.sub, ltconfig ltmain.sh: Update
5419         to libtool 1.3.3.
5420
5421 1999-07-26 Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
5422
5423         * bits/std_complex.h: Tweak. Make the primary template class
5424         complex work with user-defined numerical types.  Provide member
5425         definitions.  Restructure.
5426         (class complex<float>): Uglify.  Remove  __value().  Rename __val
5427         to _M_value.  Rename __complex_value_type to _ComplexT. Make it
5428         private.  Remove dependency on __value().  Fix various explicit
5429         specialization syntax.  Declare a some functions friend.  Now the
5430         implementation is nearly comforming.
5431         (class complex<double>): Likewise.
5432         (class complex<long double>): Likewise.
5433
5434         * src/complex.cc: Tweak.  Remove dependency on complex::__value().
5435         (sin, sinh, tan, than): Fix call to corresponding C9x function
5436         syntax. 
5437
5438 1999-07-24  Benjamin Kosnik  <bkoz@fidel.cygnus.com>
5439
5440         * bits/istream.tcc (ws): Fix error with failbit being set.
5441
5442         Disabled due to egcs/gcc-2_95 internal compiler errors.
5443         * src/Makefile.am (CXXFLAGS): Add -fsquangle -fhonor-std
5444         -fnew-exceptions. Compiling with namespaces enabled will now be
5445         the default.
5446         * mkcheck (CXX_FLAG): Same.
5447         * src/gen-c++config.cc (_GLIBCPP_USE_NAMESPACES): Yup. New macro.
5448         * bits/std_cctype.h: Not enough to just define in namespace std if
5449         ctype-isms are macros. Need to also define in namespace std:: if
5450         the C functions are just plain functions.
5451
5452         * src/gen-num-limits.cc: Fix spelling inconsistencies.
5453         
5454 1999-07-24  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
5455
5456         * docs/18_support/howto.html: Start documentation.  Need to keep
5457         track of the ongoing discussion in th LWG reflector.
5458
5459         * src/gen-num-limits.cc: Tweak.
5460         (class predicate): New class.
5461         (class value): Likewise.
5462         Make the whole machinery more flexible. Add comments.
5463
5464 1999-07-23  Benjamin Kosnik  <bkoz@fidel.cygnus.com>
5465
5466         * bits/ios_base.h: Move state/exception functions into basic_ios. 
5467         * bits/basic_ios.h: Same.
5468         * src/ios.cc: And here. Callbacks don't attempt to reset
5469         state now.  
5470
5471         * bits/std_streambuf.h: Separate ios and streambuf locale data
5472         members and cached facets. Using this convention: _M_locale_buf for
5473         the streambuf-related classes, and _M_locale_ios for the ios
5474         hierarchy.
5475         * bits/fstream.tcc: And here.
5476         * bits/basic_ios.h: And here. Also, add cached ctype.
5477         * src/ios.cc: Ditto.
5478         * bits/ios_base.h: Ditto.
5479         * bits/std_istream.h: Use cached ctype facet.
5480         * docs/27_io/iostreams_hierarchy.pdf: Update for new data member
5481         arraignment.
5482
5483         * testsuite/27_io/ios_ctor.cc: New file.
5484         * src/ios.cc: Move _M_state init to basic_ios::init().
5485         * bits/basic_ios.h: To here.
5486         
5487         Attempt for some consistency in naming for testsuite/27_io/*.cc.
5488         * testsuite/27_io/boolfmt.cc: Rename to stdios_fmtflags_manip.cc
5489         * testsuite/27_io/octfmt.cc: Rename to stdios_basefield_manip.cc
5490         * testsuite/27_io/istream_manip.cc: Rename to istringstream_manip.cc.
5491         * testsuite/27_io/ostream_manip.cc: Rename to ostringstream_manip.cc.
5492         
5493 1999-07-22  Benjamin Kosnik  <bkoz@fidel.cygnus.com>
5494         
5495         * src/ios.cc: Tweak initializations of standard iostream
5496         objects to closely match the standard. Tie cin/wcin, set flags on
5497         cerr/wcerr
5498         * bits/char_traits.h: Change from size_t to int_type, as per
5499         standard. As per wide streams.
5500         * bits/basic_ios.h: Infect with __ctype_type, as a preparation
5501         for caching a bunch of ctype info. For instance, ctype_base::space
5502         info needs to be stored somewhere, somehow.
5503         * bits/std_istream.h: Also here.
5504         * bits/std_ostream.h: Ditto.
5505         * bits/std_istream.h (operator>>(istream, char): Aggh. Fixup.
5506         * testsuite/27_io/iostream_objects.cacc (test01): Oh yeah. Fix
5507         stream states.
5508
5509         * bits/istream.tcc (ws): Fix.
5510         * testsuite/27_io/istream_manip.cc: New file, test ws.
5511         * testsuite/27_io/ostream_manip.cc: New file, test endl, ends, flush.
5512
5513         * bits/basic_string.h: Provide a specialized member function for
5514         _S_find<char> using strchr.
5515         * src/string-inst.cc: Put specializations here.
5516         * bits/string.tcc: Small fix for find, remove typo.
5517         * testsuite/21_strings/find.cc (test01): Add tests to catch this
5518         find bug. . .
5519
5520 1999-07-20  Benjamin Kosnik  <bkoz@decepticon.cygnus.com>       
5521
5522         * bits/basic_ios.h: Put into basic_ios namespace.
5523         Tweak widen/narrow.
5524
5525 1999-07-19  Benjamin Kosnik  <bkoz@decepticon.cygnus.com>       
5526
5527         * bits/std_sstream.h (stringbuf::sync): Change to _M_really_sync,
5528         adjust _M_*_cur pointers inside the function, so callee doesn't
5529         have to adjust.
5530         * bits/sstream.tcc (stringbuf::overflow): Tweak.
5531
5532         * mkcheck: Tweak. Add execution time field, even though it is not
5533         implemented yet. Simplify pass/fail status notation.
5534
5535 1999-07-18  Mumit Khan  <khan@xraylith.wisc.edu>
5536
5537         * configure.in: Check for float.h and underscored version of 
5538         math functions.
5539         * acconfig.h: Add @BOTTOM@ section for handling underscored
5540         math functions.
5541         * configure: Regenerate.
5542         * config.h.in: Regenerate. 
5543         * math/mathconf.h (float.h): Include conditionally.
5544         (M_PI): Define conditionally.
5545         (INFINITE_P): Define for Mingw.
5546         * bits/locale_facets.tcc: Workaround for compiler crash on
5547         ix86-*-mingw32.
5548         * bits/std_cwchar.h (bits/std_cstddef.h): Include.
5549         * src/locale.cc (bits/std_istream.h): Include.
5550         (bits/std_ostream.h): Likewise.
5551
5552 1999-07-18  Phil Edwards  <pedwards@ball.com>
5553
5554         * docs/faq/index.html:  Updated __black_count notes, fixed typos.
5555         * docs/faq/index.txt:  Regenerated.
5556
5557 1999-07-15  Benjamin Kosnik  <bkoz@decepticon.cygnus.com>
5558
5559         * testsuite/27_io/stringbuf.cc: Cccchanges, latent bugs.
5560
5561         * bits/sstream.tcc (stringbuf::overflow): Modify accounting of
5562         newly-allocated buffer.
5563         * bits/streambuf.tcc (streambuf::xsgetn): Aaaaaah. Fix final
5564         overflow condition bits.
5565
5566 1999-07-14  Benjamin Kosnik  <bkoz@cygnus.com>
5567
5568         * bits/std_sstream.h (stringbuf::_M_init_stringbuf): Set
5569         _M_buf_size to initial _M_string.size(), even though for
5570         ostringstreams it is pretty pointless. It's necessary for
5571         istringstreams.
5572         (stringbuf::str()): Adjust. 
5573         (stringbuf::str()): Adjust, call _M_init_stringbuf.
5574         * bits/streambuf.tcc (streambuf::xsgetn): Adjust return value for
5575         overflow's possible success.
5576         (streambuf::xsputn): Adjust.
5577         
5578         * testsuite/27_io/filebuf.cc: Adjust for the xsgetn re-write from
5579         yesterday.
5580         * testsuite/27_io/stringbuf.cc: Tweak.
5581         * testsuite/21_strings/inserters_extractors.cc (test01): Remove
5582         notes to myself.
5583         * testsuite/23_containers/vector_cons.cc: Rename to be consistent
5584         with other constructor tests to. . .
5585         * testsuite/23_containers/vector_ctor.cc: New file.
5586         
5587 1999-07-14  Alfred Minarik <a8601248@unet.univie.ac.at>
5588
5589         * testsuite/*: Changes to make the testsuit compilable with
5590         -fhonor-std. Contains direct qualification of library names with
5591         std::.
5592
5593 1999-07-13  Benjamin Kosnik  <bkoz@decepticon.cygnus.com>
5594
5595         * bits/streambuf.tcc: Tweaks.
5596         (streambuf::xsputn): Optimize, fix for sstreams.
5597         (streambuf::xsgetn): Same.
5598         * bits/sstream.tcc (stringbuf::overflow): Adjust _M_buf_size
5599         correctly, handle overflow/reallocate conditions correctly.
5600         * bits/std_sstream.h: Fix typo.
5601         _M_init_stringbuf(): Fix _M_buf_size initialization.
5602         (stringbuf::str()): Construct return string if output has occurred.
5603
5604         * bits/basic_string.h: Fix typo from yesterday's patch.
5605
5606 1999-07-12  Ryszard Kabatek <kabatek@chemie.uni-halle.de>
5607
5608         * bits/string.tcc: _M_mutate - clear _M_state again.
5609         * bits/basic_string.h: In the three functions that return
5610         an iterator set _M_state to -1 before return.
5611         Also optimized two cases of operator+.
5612         
5613 1999-07-12  Phil Edwards  <pedwards@ball.com>
5614
5615         * docs/index.html:  Expand egcs-1.1.2 notes/links.
5616         * docs/faq/index.html:  And here.  Add links to LWG issues-list.
5617         * docs/faq/index.txt:  Regenerate.  (lynx rocks)
5618         * docs/21_strings/howto.html:  Fix notes on case conversion.
5619         * docs/21_strings/stringtok_h.txt:  Goodly spelling...
5620         * docs/23_containers/howto.html:  Stub for bitmasks.
5621         * docs/27_io/howto.html: Add section on buffering, stub binary.
5622         
5623 1999-07-12  Nathan Myers <ncm@cantrip.org>
5624
5625         * stl/bits/stl_tree.h (__black_count): Optimize.
5626
5627 1999-07-09  Vadim Egorov  <egorovv@1c.ru>
5628
5629         * src/basic_file.cc: Cleanup in __basic_file destructor.
5630
5631 1999-07-08  Benjamin Kosnik  <bkoz@cygnus.com>
5632
5633         * bits/std_streambuf.h: Changes. . .
5634         * bits/streambuf.tcc: Merge xsputn from filebuf into xsputn in
5635         basic_streambuf, to be used for both filebufs and streambufs.
5636         * bits/std_fstream.h (_M_init_filebuf): New function.
5637         Take out specialized xsputn, put into basic_streambuf.
5638         * bits/fstream.tcc: Define, call from both ctors.
5639         * bits/std_sstream.h (_M_init_stringbuf): New function.
5640         * bits/sstream.tcc: Tweak.
5641         
5642         * docs/27_io/iostreams_heirarchy.pdf: New file.
5643         
5644         * docs/17_intro/CHECKLIST (basic_string<char>): Validation and
5645         acceptance. Wooo-hoo!
5646
5647         * bits/char_traits.h: Change int_type for char_traits general
5648         template, so that 21_strings/capacity.cc will compile.
5649         * testsuite/21_strings/capacity.cc: Add operators.
5650         
5651         * bits/string.tcc (string::compare): Clean up, re-implement.
5652         * testsuite/21_strings/compare.cc: Tweak.
5653         
5654         * bits/string.tcc (string:_M_mutate): Keep leaked value in
5655         _M_state, which means that whenever begin() or end() has been
5656         called, the string is unshareable, period. By doing this, insert
5657         and erase member functions that return iterators can remain
5658         footloose and fancy free. 
5659         * testsuite/21_strings/invariants.cc: Update.
5660
5661         * bits/basic_string.h (string::append): Fix self-referential
5662         problems, ie when "this" is also an argument to a member function.
5663         * bits/string.tcc: Tweak, same.
5664         * testsuite/21_strings/append.cc: New file.
5665
5666 1999-07-07  Benjamin Kosnik  <bkoz@cygnus.com>
5667
5668         * bits/char_traits.h: Tweaks.
5669         * bits/basic_string.h: Tweak.
5670         * bits/fstream.tcc: Remove warning for _M_buf_size assignment.
5671
5672 1999-07-06  Benjamin Kosnik  <bkoz@cygnus.com>
5673
5674         * bits/std_streambuf.h: Absorb/acquire data members previously
5675         working in basic_filebuf.
5676         * bits/streambuf.tcc: Tweaks.
5677         * bits/fstream.tcc: Adjust.
5678         * bits/std_fstream.h: Move and rename the following functions:
5679         _M_set_ideterminate, _M_is_indeterminate, _M_set_determinate are
5680         now declared and defined in the base class, basic_streambuf.  Oh
5681         fuck it, move data members _M_buf, and _M_buf_size into
5682         basic_streambuf as well.
5683
5684         * bits/ostream.tcc: Tweak.
5685         * bits/locale_facets.tcc: Fix typo in comments.
5686
5687         * testsuite/21_strings/inserters_extractors.cc (test01): Change
5688         state from good to not good, as eof() is set.
5689
5690 1999-07-05  Benjamin Kosnik  <bkoz@cygnus.com>
5691
5692         * bits/char_traits.h (char_traits::compare). Fix.
5693
5694         * config.guess, config.sub: Update.
5695
5696 1999-07-02  Ryszard Kabatek <kabatek@chemie.uni-halle.de>
5697
5698         * bits/string.tcc: Check the __res_arg for a length error.
5699
5700 1999-07-01  Benjamin Kosnik  <bkoz@nabi.net>
5701
5702         * bits/std_streambuf.h: Tweaks. Need to move _M_is_indeterminate
5703         and related functions into basic_streambuf, from basic_filebuf to
5704         take care of ostringstreams and empty strings. So that's groovy,
5705         or will be groovy.
5706         * bits/std_istream.h: Tweaks.
5707         * bits/istream.tcc: Implement ws, getline, operator>> for string.
5708         * bits/std_ostream.h: And here.
5709         * bits/ostream.tcc: Same.
5710         * src/misc-inst.cc: Add instantiations for ws.
5711         
5712         * src/string-inst.cc: Add instantiations for inserters and
5713         extractors (operators << and >>, getline).
5714
5715         * testsuite/21_strings/inserters_extractors.cc: Amazingly enough,
5716         a testcase for getline and operators << and >>. Ostream tests are
5717         failing right now, but istream tests should work. . .
5718
5719         * bits/string.tcc: Change _S_max_size, as GNU malloc won't budge.
5720         * bits/std_sstream.h: Revert.
5721
5722         * testsuite/17_intro: header_[iosfwd, ios, iostream, iomanip,
5723         istream, ostream, streambuf, fstream, sstream].cc: New files.
5724         
5725 1999-06-30  Ryszard Kabatek <kabatek@chemie.uni-halle.de>
5726
5727         * bits/std_sstream.h (stringbuf::sync): Don't use string::begin()
5728         and string::end().
5729         
5730         * bits/basic_string.h (basic_string<>::_S_copy_chars): Add
5731         specializations for _CharT*, iterator and const_iterator.
5732         * src/string-inst.cc: Remove explicit instantiation, as
5733         now explicitly specialized.
5734
5735         * bits/basic_string.h: Add a size_type parameter to _M_clone with
5736         a default value set to 0.
5737         * bits/string.tcc: In _M_clone by the call of _S_create add the
5738         value of the new parameter to _M_length.  In reserve check
5739         _M_state and use _M_clone instead of _M_mutate.
5740
5741 1999-06-30  Benjamin Kosnik  <bkoz@happy.cygnus.com>    
5742
5743         * bits/basic_string.h: Fix _S_max_size.
5744         * bits/string.tcc: Add def here.
5745         * testsuite/21_strings/insert.cc: Fix.
5746         
5747         * bits/sbuf_iter.h: Remove detritus.
5748         * testsuite/24_iterators/istreambuf_iterator.cc: Add tests.
5749
5750         * src/locale-inst.cc: Elaborate iterator/locale instantiations
5751         to resolve alpha-osf4 build problems.
5752
5753 1999-06-29  Benjamin Kosnik  <bkoz@happy.cygnus.com>    
5754
5755         * bits/string.tcc: Fix signed/unsigned issues in compares.
5756         * stl/bits/stl_deque.h: And here.
5757         * stl/bits/stl_string_fwd.h: Remove __get_c_string.
5758
5759 1999-06-29  Ryszard Kabatek <kabatek@chemie.uni-halle.de>
5760  
5761          * bits/string.tcc: New implementation and interface of _M_mutate.
5762            Adapt the change in all functions that call _M_mutate.
5763          * bits/basic_string.h: And here.
5764
5765 1999-06-29  Benjamin Kosnik  <bkoz@happy.cygnus.com>
5766
5767         * testsuite/21_strings/capacity.cc (test01): Fix.
5768
5769 1999-06-29  Phil Edwards  <pedwards@ball.com>
5770
5771         * mknumeric_limits:  Exit script if gen-num-limits isn't built.
5772         
5773 1999-06-29  Andreas Gruenbacher  <agruenba@pent224.infosys.tuwien.ac.at> 
5774
5775         * stl/bits/stl_vector.h: Fix.
5776         * testsuite/23_containers/vector_cons.cc: Add.
5777         
5778 1999-06-29  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
5779
5780         * mknumeric_limits (LDFLAGS): fix.
5781
5782 1999-06-29  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
5783
5784         * mknumeric_limits (LDFLAGS): set it according to the system.
5785
5786         * math/mathconf.h (NAN): Check whether host is running under
5787         Cygwin and make the appropriate definition.
5788         * math/complex-stub.h (nan): protect declaration.
5789
5790 1999-06-28  Benjamin Kosnik  <bkoz@haight.constant.com>
5791
5792         * bits/sbuf_iter.h: Rename internal data structure to prevent
5793         confusion between basic_ios and istreambuf_iterators internal
5794         basic_streambuf data member.
5795         * testsuite/24_iterators/istreambuf_iterator.cc: New file.
5796
5797         * bits/basic_string.h: Remove conditionals, add input_iterator
5798         version of S_construct again.
5799         * bits/string.tcc: Same.
5800         * src/string-inst.cc: And add explicit instantiation here.
5801         
5802         * src/gen-c++config.cc (_GNU_SOURCE): Take out both _GNU_SOURCE
5803         and __USE_GNU macro defines, as single __USE_GNU use leading to
5804         confusion on glibc2.1 systems (ie, RedHat 6.0).
5805         
5806         * src/Makefile.am (headers): Add std_utility to installed headers.
5807
5808 1999-06-25  John Potter  <jpotter@eagle.lhup.edu>
5809
5810         * stl/bits/stl_tree.h (insert_unique): Revert, just fix insert_equal.
5811
5812 1999-06-25  Gilles Zunino  <Gilles.Zunino@hei.fr>
5813
5814         * mknumeric_limits (LDFLAGS): Swap -lc and -lgcc.
5815
5816 1999-06-24  Benjamin Kosnik  <bkoz@tintin.cygnus.com>
5817
5818         * src/gen-c++config.cc (_GLIBCPP_*): Change all
5819         macros to include _GLIBCPP as a distinct namespace.
5820         * bits/*: And here.
5821         * src/*: And here.
5822         
5823         * stl/bits/std_stdexcept.h: Forward-declare __Named_exception ctor.
5824         * bits/basic_string.h: Remove __get_c_string.
5825         * src/stdexcept.cc: Define ctor here.
5826         * bits/ios_base.h: And fix ios_base::failure as well.
5827         * src/ios.cc: Define here. 
5828         
5829         * bits/std_streambuf.h: Add a private copy ctor and assignment
5830         operator wrapped in _G_RESOLVE_LIB_DEFECTS.
5831         * bits/ios_base.h: And here too.
5832         
5833         * bits/basic_string.h: Tweak.
5834         * testsuite/21_strings/nonmember.cc: Add operator+ tests.
5835
5836         * src/valarray.cc: Rename to. . .
5837         * src/valarray-inst.cc: This.
5838         * src/Makefile.am (sources): Change here.
5839         * src/Makefile.in: Regenerated.
5840         
5841 1999-06-24  Vadim Egorov  <egorovv@1c.ru>
5842
5843         * bits/string.tcc(basic_string<>::_Rep::_S_create): Fixed
5844         allocated size
5845
5846 1999-06-24  Benjamin Kosnik  <bkoz@tintin.cygnus.com>
5847             Tom Tromey  <tromey@cygnus.com>
5848         
5849         * configure.in (use_glibc2): Eek, correct for non-glibc systems.
5850         Use AM_CONDITIONAL to get us out of this jam. . 
5851         * libio/Makefile.am: Same.
5852         * */Makefile: Regenerated.
5853
5854 1999-06-24  Benjamin Kosnik  <bkoz@tintin.cygnus.com>
5855             John Potter  <jpotter@eagle.lhup.edu>
5856
5857         * stl/bits/stl_tree.h (insert_equal): Fix.
5858         * testsuite/23_containers/multiset.cc: New file.
5859         
5860 1999-06-23  Benjamin Kosnik  <bkoz@cygnus.com>
5861
5862         * configure.in (test for glibc2): Correct AC_TRY_COMPILE so that
5863         this works correctly on glibc-2 systems. This should allow
5864         simplified linking on these systems, and successful linking on Red
5865         Hat 6.0 systems.
5866         * configure, Makefile: Regenerate.
5867         
5868         * bits/std_cwctype.h: Add missing 'w' to _S_iswpunct_helper name. 
5869         
5870         * testsuite/ext: New directory.
5871         * testsuite/ext/headers.cc: New file.
5872
5873 1999-06-23  Vadim Egorov  <egorovv@1c.ru>
5874
5875         * stl/ext/hash_set: include missing headers
5876         * stl/ext/hash_map: Same
5877         * stl/ext/slist: Same
5878
5879 1999-06-17  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
5880
5881         * bits/std_cmath.h: comment out modf. Kills build on hpux10.20
5882
5883 1999-06-15  Benjamin Kosnik  <bkoz@cygnus.com>
5884
5885         * src/Makefile.am (sources): Regenerate.
5886         * mkcheck: Add TESTS_FILE as a way of controlling what testcases
5887         are run.
5888
5889 1999-06-14  Benjamin Kosnik  <bkoz@cygnus.com>
5890
5891         * src/string-inst.cc: Change _S_construct signature, to
5892         track requested allocation size versus valid input iterator range.
5893         * bits/basic_string.h: Here too.
5894         * bits/string.tcc: And here.
5895
5896 1999-06-12  Benjamin Kosnik  <bkoz@cygnus.com>
5897
5898         * mkcheck (LOG_FILE): Correctly append errors. 
5899
5900         * stl/bits/stl_iterator.h: Revert previous, delirious, change.
5901
5902         * bits/basic_string.h: Change _Rep::_M_data to _Rep::_M_refdata,
5903         to clarify differences between basic_string::_M_data() calls and
5904         _Rep::_M_data() calls.
5905         * bits/std_string.h: Fix.
5906         Put in check for out_of_range in substr.
5907         * bits/string.tcc:  Fix for _S_find.
5908
5909         * testsuite/21_strings/compare.cc: Add tests.
5910         * testsuite/21_strings/find.cc: New file.
5911         * testsuite/21_strings/substr: New file.
5912         * testsuite/21_strings/replace.cc: New file.
5913         
5914 1999-06-11  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
5915
5916         * bits/valarray_array.h: __restrict__ify pointers.
5917
5918         * bits/std_valarray.h: Tweak.
5919         (valarray<T>::cshift, valarray<T>::shift): use __builtin_alloca.
5920
5921         * bits/gslice_array.h: Tweak. Reflect changes in bits/gslice.h
5922
5923         * bits/gslice.h: Tweak.
5924         (class gslice::_Indexer): new class.
5925         (gslice::gslice(const gslice&)): implement copy-ctor to support
5926         ref-counted index. 
5927         (gslice::operator=(const gslice&)): support ref-counted index.
5928         (gslice::_M_convert_to_index): delete.
5929
5930         * src/valarray.cc: New file.
5931         (__gslice_to_index): turn a gslice into a valarray<size_t>
5932         (ctor gslice::_Indexer::_Indexer): implement.
5933
5934         * src/Makefile.am (sources): add valarray.cc
5935         * src/Makefile.in: regenerate.
5936
5937 1999-06-08  Benjamin Kosnik  <bkoz@cygnus.com>
5938
5939         * stl/bits/stl_iterator.h (__normal_iterator::const_iterator
5940         ctor): Put in a const_cast.
5941
5942         * testsuite/21_strings/invariants.cc: New file.
5943
5944         * testsuite/21_strings/insert.cc: Add exception handling bits.
5945         * testsuite/21_strings/ctor_copy_dtor.cc: Same.
5946
5947         * src/wstring-inst.cc: Add c++config.h include.
5948
5949         * bits/basic_string.h: Fix const operator[] for size == pos.
5950         Add _M_leak for rbegin, non-const.
5951         Add _M_leak for rend, non-const.
5952         Make member function at standards conformant.
5953         Add _S_terminal to _Rep for operator[] const, add this into
5954         c_str() as well.
5955         * bits/string.tcc: Add static member definition here,
5956         temporarily.
5957         
5958         * testsuite/21_strings/element_access.cc: Add tests.
5959
5960 1999-06-08  Vadim Egorov  <egorovv@1c.ru>
5961
5962          * bits/fstream.tcc (_M_really_overflow): Fixed size of
5963          conversion buffer.
5964
5965 1999-06-08  Phil Edwards  <pedwards@ball.com>
5966
5967         * bits/fstream.tcc (basic_filebuf::xsputn):  Fix off-by-one count
5968           caused when __testinit is true.
5969         * bits/ostream.tcc (basic_ostream::op<<(streambuf*)):  Write buffer
5970           using rdbuf()->sputn rather than _M_fnumput->put.
5971
5972 1999-06-08  Benjamin Kosnik  <bkoz@tintin.cygnus.com>
5973
5974         * testsuite/23_containers/bitset_ctor.cc: New file.
5975         * stl/bits/std_bitset.h (__BITSET_WORDS): Fix integration bug.
5976
5977 1999-06-08  Phil Edwards  <pedwards@ball.com>
5978
5979         * bits/fstream.tcc (basic_filebuf::underflow):  Fix, rename local vars.
5980
5981 1999-06-07  Benjamin Kosnik  <bkoz@tintin.cygnus.com>
5982
5983         * testsuite/21_strings/element_access.cc: Finish off these tests.
5984         * testsuite/21_strings/insert.cc (test01): Uncomment.
5985         * testsuite/21_strings/ctor_copy_dtor.cc (test01): Finish off ctors.
5986         * bits/basic_string.h: Tweak, okay, fix for real this time.
5987         * bits/string.tcc: Same.
5988         * bits/char_traits.h: Tweak.
5989
5990 1999-06-07  Benjamin Kosnik  <bkoz@tintin.cygnus.com>
5991
5992         * bits/std_cmath.h: Example of how to use the generated macro.
5993         * acconfig.h: Add macro for sinf here.
5994         * configure.in (LIBS): Add test for builtin math function sinf.
5995         * configure: Regenerated.
5996         
5997         * bits/basic_string.h: Fix _S_max_size.
5998
5999 1999-06-06  Benjamin Kosnik  <bkoz@tintin.cygnus.com>
6000
6001         * bits/basic_string.h: Fixes for out-of-memory segv for large strings.
6002         Remove _S_construct signature for forward_iterator_tag and
6003         input_iterator_tag.
6004         Clean _M_fold.
6005         * src/string-inst.cc: Same, tweaks. 
6006         * bits/string.tcc: Same, tweaks.
6007
6008         * testsuite/21_strings/ctor_copy_dtor.cc: Add/clarify tests.
6009         * mkcheck (LOG_FILE): Fix filebuf-[2,3].tst checks.
6010         * mknumeric_limits (LD_FLAGS): Add -nodefaultlibs -lc -lgcc as per
6011         Gaby.
6012
6013         * src/locale.cc: Final separation for char/wchar_t bits.
6014
6015 1999-06-05  Phil Edwards  <pedwards@ball.com>
6016
6017         * docs/index.html:  Added link to book upon request'n'agreement.
6018         * docs/23_containers/wrappers_h.txt:  Added.
6019         * docs/{23_containers,27_io}/howto.html:  Added sections.
6020
6021         * bits/std_fstream.h: Tweak.
6022         
6023 1999-06-05  Benjamin Kosnik  <bkoz@tintin.cygnus.com>
6024
6025         * src/ios.cc: Same here.
6026         * bits/std_iosfwd.h: More wchar_t defines.
6027
6028         * bits/basic_string.h: Tweaks. 
6029         * bits/string.tcc: Tweak. Fix _S_construct to check for max_size
6030         when doing error checking, as per LWG defect #83.
6031         
6032         * src/gen-c++config.cc: Fix comment.
6033         
6034         * testsuite/21_strings/ctor_copy_dtor.cc: New file, checks ctors,
6035         assignments, dtors.
6036         * testsuite/21_strings/element_access.cc: New file, checks for
6037         operator[], at(...).
6038         * testsuite/21_strings/insert.cc: New file, tests string::insert.
6039         * testsuite/21_strings/char_traits.cc: New file, tests
6040         for char_traits<char>.
6041         
6042         * bits/utility.h: Remove, again.
6043         * src/Makefile.am (std_headers): Remove utility.h.
6044         * src/Makefile.in (std_headers): Regenerate.
6045
6046         Alfred Minarik <a8601248@unet.univie.ac.at>
6047         * bits/basic_string.h: Move __out_of_range and __length_error into
6048         namespace std.
6049
6050 1999-06-05  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
6051
6052         * testsuite/26_numerics/modf_float.cc: New file.
6053
6054         * bits/std_cmath.h (modf(float, float*)): Fix signature. Correct
6055         typo: use ::modff, not ::modf.
6056
6057 1999-06-03  Vadim Egorov  <egorovv@1c.ru>
6058
6059         * bits/string.tcc (basic_string::_M_mutate): Fixed memory
6060         allocation error
6061         * testsuite/21_strings/capacity.cc (test01): Test.
6062         
6063 1999-06-03  Phil Edwards  <pedwards@ball.com>
6064
6065         * bits/fstream.tcc:  Re-order inits to stop warnings.  Comment/move
6066           unused variables to within #if 0 blocks to do the same.
6067         * bits/std_fstream.h:  Fix typos (one prevents compilation).
6068
6069 1999-06-03  Benjamin Kosnik <bkoz@pacifica.cygnus.com>
6070
6071         * src/wstring-inst.cc: Fix.
6072
6073 1999-06-02  Benjamin Kosnik <bkoz@madcow.cygnus.com>
6074
6075         * bits/char_traits.h: Add _G_USE_WCHAR_T macro guards.
6076         * stl/bits/stl_string_fwd.h: Same.
6077         * bits/locale_facets.h: Same.
6078         * bits/locale_facets.tcc: Same.
6079         * src/wstring-inst.cc: And here.
6080         
6081         * src/gen-c++config.cc: Comment _G_USE_WCHAR_T. Leading to
6082         problems on HPUX 10.20.  
6083         * your-build-directory-here/bits/c++config.h: Just kidding, do it
6084         here as a temporary hack till the compiler/host problems get
6085         worked out.
6086
6087         * bits/locale_facets.tcc (num_get::do_get): Change from ifdef
6088         HAVE_STRTOLD to HAVE_STRTOLD && !(__hpux). Apparently, problems
6089         converting "long double" to struct long_double. Probably should be
6090         done with one macro (HAVE_STRTOLD) at configure time.
6091
6092         * bits/std_cmath.h: Comment out pow(double, int) defintion as
6093         gives re-declaration under hpux10.20. Revert previous change, as
6094         kills linux/x86, solaris 2.7, hpux builds. These should be done
6095         using autoconf, see std_cctype.h and the solutions started in
6096         configure.in (see config.h for the generated file.)
6097
6098         * mknumeric_limits (LDFLAGS): Remove '-nodefaultlibs -lc', as
6099         -nodefaultlibs prevents linking under HPUX 10.20 as __main is not
6100         defined.
6101
6102         * docs/index.html: Add some useful links.
6103         * docs/17_intro/contribute.html: Fix broken links.
6104
6105 1999-06-02  Benjamin Kosnik <bkoz@rhino.cygnus.com>
6106
6107         * mkcheck (LOG_FILE): Add !/bin/bash instead of cygnus-style
6108         paths. The rest of the world should be able to run this script
6109         now.
6110
6111         * src/Makefile.am ($(generated_headers)): Remove comment.
6112         * Makefile*: Regenerate.
6113         
6114         * bits/std_locale.h: Remove detritus.
6115         * bits/localefwd.h: Add <cctype> include to undefine the isspace
6116         macro.
6117
6118 1999-06-01  Benjamin Kosnik  <bkoz@tintin.cygnus.com>
6119
6120         * src/gen-c++config.cc: New file. Making c++config.h at configure
6121         time by catting this file (nee bits/config.h) with the build
6122         directories config.h. This is not a complete or perfect solution
6123         but is better than what was in place previously. 
6124         * bits/c++config.h: Rename/move to above.
6125         * src/Makefile.am (headers): Remove c++config.h.
6126         (myinstallheaders). Add.
6127         * Makefile*: Regenerated.
6128
6129         * bits/std_cwchar.h: Add include of c++config.h for HAVE_*
6130         definitions, so that wmemcmp, wcslen, wmemchr, etc are properly
6131         declared only if not present in the host's wchar.h.
6132
6133         * bits/locale_facets.tcc (std): Change _G_USE_STRTO* to HAVE_STRTO*.
6134         
6135         * bits/std_cmath.h: Define out, for the moment. Linux has no
6136         __buitin_fsqrtl? Probably need some kind of configure trickery
6137         here as well.
6138
6139         * src/Makefile.*: Regenerate.
6140         * bits/c++config.h: Add config.h include.
6141
6142         * bits/std_cwchar.h: Remove remaining #error guard.
6143         
6144         * acconfig.h: Add bits for HAVE_LC_MESSAGES.
6145
6146         * configure.in (LIBS): Replace previous effort for mbstate_t and
6147         strtold/strtof with this implementation.
6148
6149 1999 06-01  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
6150
6151         * bits/std_cmath.h: Tweak. Add more functions. Use __builtin_xxx
6152         whenever possible.
6153
6154 1999-05-28  Benjamin Kosnik  <bkoz@cygnus.com>
6155
6156         * bits/locale_facets.tcc (std): Eek: this left in. Autoconf bits
6157         for determining mbstate_t differences across various hosts not
6158         finished. 
6159
6160 1999-05-26  Benjamin Kosnik  <bkoz@nabi.net>
6161
6162         * bits/locale_facets.tcc: Change to ifdef.
6163
6164         * bits/std_sstream.h (stringbuf::setbuf): Remove dynamic_cast.
6165         * bits/std_fstream.h (filebuf::setbuf): Same.
6166
6167         * bits/std_istream.h: Add ws declaration.
6168         * bits/istream.tcc: Stub out definition.
6169         
6170         * docs/index.html: Fix broken link for design.txt.
6171
6172         * configure.in: Test for mbstate_t. If wchar.h doesn't have it,
6173         then set _G_NEED_MBSTATE_T.
6174         * configure: Regenerate.
6175         * bits/c++config.h: Move mbstate_t define.
6176         * bits/std_cwchar.h: To here.
6177
6178 1999-05-25  Ryszard Kabatek <kabatek@chemie.uni-halle.de>
6179
6180         * bits/std_sstream.h:
6181           basic_stringbuf<>::basic_stringbuf: fix.
6182           basic_stringbuf<>::setbuf: 
6183           remove the temporary __string_type object,
6184           remove the unnecessary dynymic_cast in the return value,
6185           change the type of the returned value from __streambuf_type*
6186           to basic_stringbuf<_CharT, _Traits, _Alloc>*.
6187
6188 1999-05-25  Phil Edwards  <pedwards@ball.com>
6189
6190         * bits/std_streambuf.h (streambuf::setbuf): Always return streambuf*. 
6191
6192 1999-04-25  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
6193
6194         * bits/std_cmath.h: Tweak. Add float versions of the math functions
6195         in <math.h>.  <cmath> still incomplete and incorrekt.
6196
6197 1999-05-24  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
6198
6199         * mknumeric_limits (LDFLAGS): set appropriate link flags.
6200         
6201 1999-05-23  Phil Edwards  <pedwards@ball.com>
6202
6203         * docs/17_intro/howto.html:  Added links to text docs,
6204         e.g., BUGS. 
6205         * docs/21_strings/howto.html:  Updated sections and links.
6206         * docs/21_strings/{gotw29a.txt,stringtok_h.txt}:  Added.
6207         * docs/faq/index.html:  Updated what-works for sixth
6208         snapshot. Also a number of "internal" links have been
6209         fixed, now that the web pages are the docs directory...
6210         * docs/faq/index.txt: Regenerated.
6211         
6212 1999-05-21   Benjamin Kosnik  <bkoz@tintin.cygnus.com>
6213
6214         * bits/basic_string.h: Add Nathan's documentation on the string class.
6215
6216         * testsuite/27_io/ios_members_static.cc: New file, for testing
6217         ios_base::sync_with_stdio.
6218
6219 1999-05-21   Benjamin Kosnik  <bkoz@tintin.cygnus.com>
6220
6221         * bits/std_locale.h: Simplify includes.
6222         * bits/loccore.h: Delete.
6223         * bits/localefwd.h: Renamed, trimmed.
6224         * bits/locfacets.h: Delete.
6225         * bits/locale_facets.h: Rename, expanded.
6226         * bits/loccore.tcc: Deleted.
6227         * bits/locfacets.tcc: Deleted.
6228         * bits/locale_facets.tcc: Resultant merge.
6229         * bits/std_fstream.h: Modify include.
6230         * bits/ostream.tcc: Same.
6231         * bits/istream.tcc: Same.
6232
6233         * src/locale-inst.cc: And here.
6234         * src/locale.cc: Ditto. 
6235         * src/Makefile.am: Updated.
6236         * src/Makefile.in: Rengenerated.
6237
6238         * bits/std_istream.h: Move istream::sentry ctor definition.
6239         * bits/istream.tcc: Move istream::sentry ctor here.
6240         Add more detailed locale include here for ctype member functions.
6241         * bits/ostream.tcc (std): And here.
6242
6243         * bits/sbuf_iter.h: Include std_streambuf.h
6244
6245         * bits/locfacets.h: Start separating this into a localeimp.h file.
6246         * bits/loccore.h: Start separating this into a localefwd.h file.
6247         Add std_climits for CHAR_BIT.
6248         
6249         * bits/ios_base.h (ios_base::sync_with_stdio): Stub in.
6250
6251         * bits/char_traits.h: Tweak.
6252
6253         * bits/ios_base.h: Remove INT_MAX, use 1<<16.
6254
6255         * bits/std_ostream.h: Remove c++config.h include.
6256         * bits/std_istream.h: Same.
6257         * bits/std_streambuf.h: Same.
6258         * bits/std_fstream.h: Same.
6259         * bits/std_sstream.h: And here.
6260         
6261         * bits/std_iosfwd.h: Add _G_RESOLVE_LIB_DEFECTS here for streampos.
6262         * bits/char_traits.h: Add include of std_cwchar.h for mbstate_t.
6263         * bits/fpos.h: Tweak, format.
6264
6265         * std/ciso646: New file.
6266         * bits/std_ciso646.h: New file.
6267         * src/Makefile.am (std_headers): Add ciso646.
6268         (headers): Add bits/std_ciso646.h.
6269         * src/Makefile.in: Regenerate.
6270         * testsuite/17_intro/header_ciso646.cc: New file, disable
6271         equivalance tests.
6272         
6273         * bits/fpos.h: Remove libio.h include.
6274         * bits/basic_file.h: And here.
6275         * bits/std_ios.h: Put here.
6276
6277         * src/ios.cc: Simplify includes, tweak.
6278         * bits/std_ios.h: Simplify include order. 
6279         * bits/ios_base.h: Modify ios_base::failure.
6280
6281         * stl/bits/std_numeric.h: Change include from stl_iterator to
6282         std_iterator.
6283         
6284 1999-05-19  Benjamin Kosnik  <bkoz@tintin.cygnus.com>
6285
6286         * std/iostream: Remove static member __ioint.
6287         * bits/std_iostream.h: Put here.
6288
6289         * stl/bits/std_numeric.h: Remove unneccessary std_iostream.h include.
6290         * stl/bits/stl_algobase.h: Same.
6291         * testsuite/27_io/iostream_objects.cc: Regression tests.
6292         * testsuite/27_io/hello.cc: Remove, subset of above.
6293         
6294 1999-05-19  Phil Edwards  <pedwards@ball.com>
6295         
6296         * docs/index.html: Tweak, update.
6297
6298 1999-05-18  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
6299
6300         * docs/17_intro/RELEASE-NOTES: remove outdated
6301         documentation about numeric_limits. Correct CXXINCLUDE setting
6302         documentation.
6303
6304 1999-05-18  Phil Edwards  <pedwards@ball.com>
6305
6306         * docs/{17_intro,18_support,19_diagnostics,20_util,21_strings,
6307           22_locale,23_containers,24_iterators,25_algorithms,26_numerics,
6308           27_io}/howto.html:  Created, with some initial entries.
6309         * docs/faq/index.html:  Fixed some links.
6310         * docs/faq/index.txt:  Regenerated.
6311
6312 1999-05-18  Benjamin Kosnik  <bkoz@tintin.cygnus.com>
6313
6314         * bits/c++config.h (__GLIBCPP__): Set version to 19990518.
6315
6316         * docs/17_intro/RELEASE-NOTES: Update.
6317         * docs/index.html: Correct link to mailing list help page, update News.
6318         * docs/faq/index.html: Change fifth to sixth for snapshot.
6319         
6320         * src/Makefile.am (myinstallheaders): Bring over Gaby's changes to
6321         install $(top_builddir)/bits/std_limits.h into
6322         $(myincludepfx)/bits. This was mistakenly omitted from yesterday's
6323         Makefile.am changes.
6324         * *Makefile*: Regenerate using automake.
6325
6326         * mkcheck (LOG_FILE): Fix filebuf directory oddness.
6327         * testsuite/27_io/filebuf.cc: Same.
6328
6329 1999-05-18  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
6330
6331         * docs/17_intro/CHECKLIST: update.
6332         * docs/17_intro/TODO: update.
6333
6334 1999-05-17  Phil Edwards  <pedwards@ball.com>
6335
6336         * docs/{17_intro,18_support,19_diagnostics,20_util,21_strings,
6337           22_locale,23_containers,24_iterators,25_algorithms,26_numerics,
6338           27_io}/howto.html:  Created, with some initial entries.
6339         * docs/faq/index.html:  Fixed some links.
6340         * docs/faq/index.txt:  Regenerated.
6341         
6342 1999-05-17  Benjamin Kosnik  <bkoz@unhappy.cygnus.com>
6343
6344         * src/Makefile.am (myinstallheaders): Missed removing missing.h. 
6345         * Makefile.in*: Regenerate.
6346
6347 1999-05-17  Benjamin Kosnik  <bkoz@happy.cygnus.com>
6348
6349         * bits/std_streambuf.h: Same.
6350
6351         * bits/loccore.h (_Bad_use_facet): Remove bits warned about.
6352         * bits/locfacets.h (std): Same.
6353         * bits/sstream.tcc: Same.
6354         * testsuite/27_io/stringstream.cc: Tweak.
6355
6356         * testsuite/27_io/filebuf.cc: Adjust.
6357         * testsuite/21_strings/capacity.cc (test01): Add more
6358         string::reserve tests.
6359
6360         * bits/c++config.h: Remove broken CCTYPE.
6361         * bits/std_cctype.h: Tweak, remove de-macroization, enable
6362         sequestered topper implementation.      
6363         * bits/std_cwctype.h: Same.
6364         
6365         * bits/missing.h: Remove.
6366         * bits/std_locale.h: Remove missing.h include.
6367         
6368         * stl/bits/std_bitset.h (bitset::bitset(string): Tweak to compile.
6369         
6370         * src/Makefile.am (headers): Add bits/std_cwctype.h.
6371         INCLUDES: Add top_builddir. 
6372         * src/Makefile.in: Regenerate.
6373
6374         * Makefile.am: Add check and check-install as new targets.
6375         * testsuite/make_check_libfree++: Move to. . .
6376         * mkcheck: Here.
6377         * configure.in: Tweak versions.
6378         * mknumeric_limits: Set paths correctly.
6379         
6380 1999-05-17  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
6381         
6382         * src/Makefile.in (myinstallheaders): add rule to install
6383         std_limits.h. 
6384         
6385         * bits/slice.h (class slice): don't const-qualify data members
6386         since the copy and assignment operator is implicitly used. The
6387         valarray specification is definitively a bad one.
6388         
6389         * Makefile.in (generate-limits-sources): fix typo.
6390         
6391         * docs/text/TODO: update.
6392         * docs/text/CHECKLIST: update.
6393
6394         * bits/gslice.h (gslice): fix bugglet.
6395         (gslice::gslice): set _M_index_size to 0 whenever given lengths
6396         (lj) of size zero.
6397
6398         * src/Makefile.am (libstdc___la_SOURCES): add gen-num-limits.
6399         * src/Makefile.in (libstdc___la_SOURCES): keep in sync.
6400         [Note: **/Makefile.in should be generated from the corresponding
6401         Makefile.am.  The current situation is a litte chaotic.  ]
6402
6403 1999-05-16 Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
6404
6405         * mknumeric_limits: tweak.
6406
6407         * Makefile.in (all): add target generate-limits-sources.
6408         (generate-limits-sources): make a directory bits/ in top_builddir
6409         where the generated std_limits.h is put; generate limitsMEMBERs.cc
6410         directly under $(top_builddir)/src. Remains to put the appropriate
6411         rule for installing std_limits.h.
6412         
6413         * src/Makefile.in (headers): remove bits/std_limits.h to this list.
6414         (INCLUDES): add -I$(top_builddir) for bits/std_limits.h which is
6415         now generated at build-time in the build directory
6416         (libstdc___la_SOURCES): remove limitsMEMBERS.cc form this list
6417         * src/Makefile.am: reflect changes in src/Makefile.in
6418
6419 1999-05-12  Phil Edwards  <pedwards@ball.com>
6420
6421         * docs/faq/index.html: Add more entries (5.4,5.5), finish
6422         all but one empty entry.  Add links for HOWTOs, but no files yet.
6423         (Corrected HOWTO links are for bkoz's new scheme.)
6424         * docs/faq/index.txt: Regenerated.
6425         
6426 1999-05-12  Benjamin Kosnik  <bkoz@happy.cygnus.com>
6427
6428         * testsuite/17_intro/headers.cc: New file.
6429         * stl/bits/std_queue.h: Change stl_bvector.h include path.
6430         * bits/std_cwctype.h: New file.
6431         
6432         * testsuite/27_io/filebuf.cc: Need to tweak directory structure.
6433
6434 1999-05-11  Benjamin Kosnik  <bkoz@loony.cygnus.com>
6435
6436         * stl/bits/stl_config.h (__USE_MALLOC): Change underlying allocator.
6437         Check __USE_MALLOC before defining specializations containing
6438         __default_alloc_template.
6439         * src/stl-inst.cc: Here too.
6440
6441         * bits/basic_string.h: Change.
6442
6443         * testsuite/make_check_libfree++: More tweaks.
6444         * testsuite/21/capacity.cc: New file.
6445         
6446         * src/string.cc: Rename to be consistent with other inst files. 
6447         Rename to string-inst.cc.
6448         * src/string*.cc: Change include.
6449         * src/wstring.cc: Rename to wstring-inst.cc.
6450         * src/wstring*.cc: Ditto.
6451         * src/Makefile.in: Also here.
6452         * src/Makefile.am: Ditto.
6453
6454         * src/traits.cc: Remove.
6455         * src/wtraits.cc: Same.
6456
6457         Try a new way of organizing documentation, one with synchronicity
6458         between testsuites and docs subdirectories, and see who yelps.
6459         * docs/html: Remove, use chapter and subject specific directories
6460         instead of forcing things immediately into format of
6461         documentation.
6462         * docs/text: Same.
6463         * docs/image: Same.
6464         * docs/faq/text, docs/faq/html: Remove, put in the docs/faq
6465         directory and sort by filename and extension.
6466         * docs/17_intro, 18_support, 19_diagnostics, 20_util, 21_strings,
6467         22_locale, 23_containers, 24_iterators, 25_algorithms,
6468         26_numerics, 27_io: Add.
6469         * docs/17_intro/*: Populate with all the text files. . .
6470         * docs/index.html: Construct.
6471         
6472         * testsuite/*: Update with same names as the docs subdir.
6473         * testsuite/results: Where to stash conformance results for the
6474         different snapshots, so that progress/size/speed issues can be
6475         tracked over time.
6476         
6477 1999-05-10  Benjamin Kosnik  <bkoz@loony.cygnus.com>
6478         
6479         * src/string.cc: Add _S_copy_chars instantiation, as well as
6480         string::binary operators !=, ==, etc.
6481
6482         * src/Makefile.am (CXXFLAGS): Remove -fvtable-thunks.
6483         * src/Makefile.in (CXXFLAGS): Same here.
6484         * testsuite/make_check_libfree++ (CXX_FLAG): And here.
6485         
6486 1999-05-07  Benjamin Kosnik  <bkoz@cygnus.com>
6487
6488         * src/string.cc:  Add missing member functions to instantiation list.
6489
6490 1999-05-07  Benjamin Kosnik  <bkoz@cygnus.com>
6491
6492         * src/misc-inst.cc: Remove unused string instantiations.
6493
6494         * bits/string.tcc: Tweak, fix.
6495         * bits/basic_string.h: Format. Fix reported error with c_str().
6496
6497         * testsuite/make_check_libfree++: Tweak for shared builds.
6498         * testsuite/21/operations.cc: New file for testing c_str() etc.
6499
6500 1999-05-06  Benjamin Kosnik  <bkoz@cygnus.com>
6501             Ryszard Kabatek  <kabatek@chemie.uni-halle.de>
6502
6503         * stl/bits/stl_vector.h: Fix the code of vector<> for usage with
6504         an iterator class.  Delineate pointer versus iterator differences
6505         in implementation.
6506         * 23/vector_capacity.cc: New file, tests for above.
6507         
6508 1999-05-06 Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
6509
6510         * mknumeric_limits: Fix typo. 'unsigned lont' should read
6511         'unsigned long'.
6512         * src/Makefile.am (libstdc___la_SOURCES): add limitsMEMBERS.cc,
6513         generated by mknumeric_limits to the list. Now std_limits.h is
6514         basically working. 
6515         * src/Makefile.in (generate-numeric-limits): new target to handle
6516         automatic generation of bits/std_limits.h and src/limitsMEMBERS.cc.
6517         (all): add target generate-numeric-limits.
6518         (libstdc___la_OBJECTS): add limitsMEMBERS.lo
6519         (libstdc___la_SOURCES): add limitsMEMBERS.cc
6520
6521 1999-05-05  Benjamin Kosnik  <bkoz@cygnus.com>
6522
6523         Irix build issues.
6524         * bits/c++config.h (_G_USE_CTYPE_ISBIT): Defines new macro for
6525         mask values in ctype_base. Move hacks for _ISBit to locfacets.h.
6526         * bits/locfacts.h: Here.
6527
6528 1999-05-05  Benjamin Kosnik  <bkoz@cygnus.com>
6529             Ulrich Drepper <drepper@cygnus.com> 
6530
6531         Solaris build issues.
6532         * bits/c++config.h: Define new macros, _G_USE_STRTOF and
6533         _G_USE_STRTOLD.
6534         
6535         * bits/locfacets.tcc (num_get::do_get): Tweak long double and
6536         float overloads to use the above macros. Account for the lack of
6537         strtold on some systems, and revert back to using sscanf.
6538
6539 1999-05-04  Ryszard Kabatek <kabatek@chemie.uni-halle.de>
6540
6541         * bits/locfacets.tcc (num_get::do_get): Check the errno variable.
6542         Use strtoul/strtoull for unsigned types.  Check the ranges for
6543         short/unsigned short and if necessary for int/unsigned int.
6544
6545 1999-05-04  Benjamin Kosnik  <bkoz@cygnus.com>
6546
6547         * src/gen-num-limits.cc (round_style): Need to use mknumericlimits
6548         to generate bits/std_limits.h now, as the SGI std_limits.h is
6549         being depricated. Not done, but should be done immediately: need
6550         to make sure this script is run as part of the configuration
6551         process, because without it "make" in a configured build directory
6552         will fail. Also tweaked: added a space for float_round_style, and
6553         used static_cast of zero to default-initialize, which should be ok
6554         according to the standard. (see 8.5 p5 and 20.1.3).
6555         * mknumeric_limits (OUT_C): Need this for x86 long
6556         double extensions.
6557         
6558         * bits/basic_file.h: Include libio.h, not libioP.h.
6559         * src/basic_file.cc: And add libioP.h include here, so that
6560         _IO_init, et. al are well-declared.
6561
6562         * testsuite/make_check_libfree++ (LIB_PATH): Test installed
6563         headers, not source directory headers.
6564
6565         * src/Makefile.am (headers): Add stl_range_errors.h, also adjust
6566         for ext/*.  Also add basic_file.h.
6567         * src/Makefile.in (headers): Same.
6568         
6569         * bits/std_string.h: Reduce dependencies for faster
6570         pre-processing. Move istream and ostream specific defines into
6571         istream.tcc and ostream.tcc respectively.
6572         * bits/string.tcc: And here.
6573         * bits/basic_string.h: Move getline inline out-of-line, and to
6574         istream.tcc.
6575         * bits/istream.tcc: Move string::getline and operator>> here.
6576         * bits/ostream.tcc: And here too.
6577
6578         * bits/utility.h: Remove, as clashes with a standard header. Put
6579         __OUTOFRANGE and __LENGTHERROR macros into string.tcc for the time
6580         being, until this can be combined with SGI's approach.
6581         * bits/string.tcc: Add macros, as above.
6582         * bits/loccore.h: Add _Count_ones defines.
6583         * bits/std_string.h: And here too.
6584         * bits/std_locale.h: And here.
6585         * bits/std_ios.h: Take out include here.
6586         * src/Makefile.am (headers): Remove utility.h
6587         * src/Makefile.in (headers): Remove utility.h
6588
6589         * stl/bits/*: Update to SGI STL 3.20.
6590         * stl/ext/pthread_alloc: Delete this file.
6591         
6592 1999-05-04 Phil Edwards <pedwards@ball.com>
6593
6594         * docs/faq/html/index.html: Add more entries
6595         * docs/faq/html/index.txt: regenerated.
6596
6597 1999-05-04 Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
6598
6599         * src/gen-num-limits.cc (DO_DEFINE_MIN_MAX): fix typo.
6600
6601 1999-04-29  Benjamin Kosnik  <bkoz@haight.cygnus.com>
6602
6603         * bits/locfacets.tcc (num_get::do_get): Re-implement, with input
6604         from Ulrich and Nathan. Remove extraneous string class usage,
6605         tweak, clean, simplify and consolidate with a eye towards removing
6606         duplcate code. Use strto[l, ll, f, d, ld] instead of sscanf.
6607         Not done: dealing with leading zeros, wchar_t work.
6608         * bits/locfacets.h: And here too.
6609
6610         * doc: Remove.
6611         
6612 1999-04-29  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
6613
6614         * docs/: add a FAQ.
6615         * docs/faq/: New directory.
6616         * docs/faq/html/: Likewise.
6617         * docs/faq/text/: Likewise.
6618         * docs/faq/html/index.html: New file.
6619         * docs/faq/html/index.txt: Likewise. Generated from 
6620         docs/faq/html/index.html by lynx.
6621
6622 1999-04-28  Benjamin Kosnik  <bkoz@happy.cygnus.com>
6623             Ryszard Kabatek and Branko Cibej 
6624
6625         * bits/locfacets.tcc: Modify.
6626
6627 1999-04-27  Benjamin Kosnik  <bkoz@happy.cygnus.com>
6628
6629         * bits/sbuf_iter.h: Clean, fix istreambuf_iterator, make
6630         conformant to 14882, wrap non-standard extensions with
6631         _G_RESOLVE_LIB_DEFECTS, remove detritus and cruft, rennovate.
6632         * bits/locfacets.tcc (num_get::do_get(bool)): Return correct iterator.
6633         
6634         * testsuite/27/istringstream_formatted.cc: Add tests.
6635         
6636         * bits/locfacets.h: Remove cruft from _Format_cache, continue
6637         commenting, simplify.
6638         * bits/locfacets.tcc: Same.
6639
6640         1999-04-27  Ryszard Kabatek  <kabatek@chemie.uni-halle.de>
6641         * bits/locfacets.tcc (num_get::do_get):
6642         Fix the sscanf format parameter 
6643         for long long 'll' (as in C9X) instead of 'l'.
6644         Fix the order of sscanf format parameters: "%dl" --> "%ld".
6645         Change the type of the local variable '__conv' from 'string'
6646         to 'const char*' and adapt the change.
6647         
6648 1999-04-26  Benjamin Kosnik  <bkoz@happy.cygnus.com>
6649
6650         * bits/locfacets.h: Document _Format_cache, and name data members
6651         after the corresponding functions in numpunct. For instance:
6652         _M_grsep -> _M_thousands_sep, and _M_decsep -> _M_decimal_point.
6653         Break apart _M_boolnames{2] into _M_truename and _M_falsename.
6654         * bits/locfacets.tcc: Same.
6655
6656         * bits/locfacets.h (num_get::_M_extract): Don't allow groupings to
6657         stop parsing--store for later analysis.
6658         * testsuite/27/istringstream_formatted.cc: Add cases.
6659         
6660 1999-04-25  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
6661
6662         * bits/valarray_meta.h: tweak.
6663         (_UnFunBase, _BinFunBase, _BinFunBase1, _BinFunBase2, _BinBase1,
6664         _BinFunBase2): rename typedef-name _Tp to _Vt to keep the compiler
6665         happy -- boggus warning.
6666         * bits/std_valarray.h: Fix.
6667         (valarray<T>::shift): Fix. Update comment.
6668         (valarray<T>::cshift): Fix. 
6669
6670 1999-04-23  Benjamin Kosnik  <bkoz@cygnus.com>
6671         
6672         * testsuite/27filebuf-2.txt: Delete.
6673         * testsuite/27/filebuf.cc: Put output files directly into the
6674         correct subdirectory (27).
6675
6676         Alexandre Petit-Bianco <apbianco@cygnus.com>
6677         * testsuite/make_check_libfree++: Check generated (*.txt) file
6678         against stored results file (*.tst).
6679
6680 1999-04-22  Benjamin Kosnik  <bkoz@nabi.net>
6681
6682         * bits/locfacets.tcc: Fix.
6683
6684         * bits/fstream.tcc (filebuf::seekoff): Output current out pointer.
6685         (filebuf::overflow): Simplify.
6686         (filebuf::xsputn): Correctly handle indeterminate state.
6687
6688         * testsuite/27/istringstream_formatted.cc: Tweak.
6689         * testsuite/27/filebuf.cc: Tweak.
6690         * testsuite/27/filebuf-3.tst: Correct: this is the canonical
6691         results file, please use this in the future to guarantee filebuf
6692         positioning accuracy.
6693         * testsuite/27/filebuf-2.tst: Same.
6694         
6695 1999-04-21  Benjamin Kosnik  <bkoz@cygnus.com>
6696
6697         * bits/fstream.tcc (filebuf::xsputn): Add.
6698         * bits/std_fstream.h: Declare.
6699         
6700         * src/basic_file.cc (__basic_file::open): Add O_CREAT to open
6701         calls using ios_base::trunc.
6702
6703         * bits/sstream.tcc (streambuf::overflow): Fix crasher.
6704         
6705         * testsuite/make_check_libfree++ (LOG_FILE): Ugh. Another fix.
6706         * testsuite/27/27stringstream.cc: Same.
6707         * testsuite/27/27stringbuf.cc: More tweaks.
6708         * testsuite/27/27filebuf-2.txt: Remove.
6709
6710         * testsuite/27/27filebuf-1.tst: Append, to force byte size over
6711         BUFSIZE so that overflows/underflow can be tested with default
6712         buffer setting.  
6713         * testsuite/27/27filebuf-1.tst: Add.
6714
6715         * testsuite/*/*: Remove pre-pended chapter names, as they
6716         duplicate the chapter info contained in the enclosing directory
6717         anyway.
6718         
6719 1999-04-20  Benjamin Kosnik  <bkoz@cygnus.com>
6720
6721         * bits/streambuf.tcc (streambuf::xsputn): Re-implement to conform
6722         to sputc conditions.
6723
6724         * bits/ios_base.h: Define here.
6725         * src/ios.cc (ios_base::_M_clear): Remove hack.
6726         * bits/basic_ios.h: Fix rdstate().
6727
6728         * bits/sstream.tcc (streambuf::seekoff): Fix.
6729         * bits/fstream.tcc (filebuf::seekoff): Tweak comments.
6730
6731         * testsuite/make_check_libfree++ (LOG_FILE): More c-c-c-changes.
6732         * testsuite/24/24iterator.cc: Add/Fixes for DEBUG_ASSERT.
6733         * testsuite/27/27stringstream.cc: Same. 
6734         * testsuite/27/27stringbuf.cc: Same.
6735         * testsuite/27/27istringstream_formatted.cc: Same.
6736         * testsuite/27/27filebuf.cc: Same.
6737         
6738         * bits/locfacets.h: Remove specializations for messages<char> and
6739         messages<wchar_t> ctors. Same for moneypunct. Not required, not used.
6740         * src/locale.cc: Remove definitions for above.
6741         * src/misc-inst.cc: Revert, take out iomanip.h include. 
6742         * bits/std_iomanip.h: Tweak, format.
6743         
6744 1999-04-19  Benjamin Kosnik  <bkoz@cygnus.com>
6745
6746         * bits/loccore.h: Format, move inline.
6747         * bits/locfacets.tcc: Same.
6748         * bits/locfacets.h: Same.
6749
6750         Ulrich Drepper  <drepper@cygnus.com>
6751         * aclocal.m4: Re-generate.
6752         * configure, configure.in: Same.
6753         * m4/lc_messages.m4: New file.
6754
6755 1999-04-18  Benjamin Kosnik  <bkoz@cygnus.com>
6756
6757         * bits/std_ostream.h: Fix typedef for wchar_t instantiations.
6758         * bits/sstream.tcc: Tweak.
6759
6760         * std/iostream: Put __ioinit inside macro guards.
6761         
6762         * src/stlinst.cc: Delete and move to . . .
6763         * src/stl-inst.cc: New file, plus wrapping in namespace std.
6764         * src/Makefile.in: Change.
6765         * src/Makefile.am: Same.
6766         * src/misc-inst.cc: Add istringstream/ostringstream instantiations.
6767
6768         * testsuite/make_check_libfree++: Efficiently format for minimal
6769         space. Enforce stricter execution tests by enabling
6770         -DDEBUG_ASSERT.
6771         
6772 1999-04-16  Benjamin Kosnik  <bkoz@cygnus.com>
6773
6774         * docs/text/RELEASE-NOTES: Fix include typo.
6775
6776         * src/Makefile.am (headers): Add istream.tcc. 
6777         * src/Makefile.in (headers): Add istream.tcc. 
6778
6779         * ltconfig, ltmain.sh, libtool: Update to libtool-1.2g.
6780         
6781 1999-04-16  Benjamin Kosnik  <bkoz@cygnus.com>
6782
6783         * bits/locfacets.tcc (num_get::do_get(long)): Finish roughing in.
6784         * bits/locfacets.h (num_get::_M_extract): New functin:
6785         consolidate logic for do_get(...) members.
6786
6787         * bits/sbuf_iter.h (istreambuf_iterator::operator++()): Fix.
6788         * testsuite/27/27istringstream_formatted.cc: Add.
6789
6790 1999-04-16  Martin v. Loewis  <martin@mira.isdn.cs.tu-berlin.de>
6791
6792         * src/basic_file.cc (__basic_file::open): Fix thinko in
6793         _G_HAVE_IO_FILE_OPEN bits.
6794         * bits/std_istream.h (sentry::sentry(istream, bool)): Fix isspace bug.
6795         * bits/std_cmath.h: Add stdlib.h include for ldiv_t.
6796         * src/complex.cc (FCT): Qualify all functions with global namespace.
6797         * src/locale.cc: Don't qualify memcpy and setlocale.
6798         * src/stdexcept.cc (__out_of_range): Qualify out_of_range with std::.
6799         (__length_error): Likewise, for length_error.
6800         * src/stlinst.cc: Qualify instantiations with std::.
6801
6802 1999-04-15   Benjamin Kosnik  <bkoz@cygnus.com>
6803
6804         * C++STYLE: Add ChangeLog guidelines for member functions.
6805
6806         * doc/* : Delete.  
6807         * BADNAMES, BUGS, C++STYLE, CHECKLIST, COPYING,
6808         DESIGN, HEADER_POLICY, PROBLEMS, RELEASE-NOTES, TODO: Moved into
6809         docs/text and made less strident.
6810         
6811         * bits/fstream.tcc: Change non-standard ctor to match Sun's sematics.
6812         * bits/std_fstream.h: Same.
6813         * src/ios.cc: Same.
6814
6815         * bits/locfacets.h: Touch. 
6816         
6817 1999-04-15  Ulrich Drepper  <drepper@cygnus.com>
6818
6819         * math/cexp.c (cexp): Use NAN instead of nan("").
6820         Reported by joel reed <joelreed@yahoo.com>.
6821
6822         * libio/libioP.h: Define _IO_seek_fpos_t and _IO_seek_off_t based on
6823         _G_IO_IO_FILE_VERSION.  Use these types in the prototypes.
6824         * libio/fileops.c: Use _IO_seek_fpos_t and _IO_seek_off_t types
6825         instead of #if cascades.
6826         * libio/genops.c: Likewise.
6827         * libio/ioseekoff.c: Likewise.
6828         * libio/ioseekpos.c: Likewise.
6829         * libio/strops.c: Likewise.
6830         Patch by Chip Salzenberg <chip@perlsupport.com>.
6831
6832 1999-04-15  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
6833
6834         * docs: New directory.
6835         * docs/html: Likewise.
6836         * docs/text: Likewise.
6837         * docs/image: Likewise.
6838
6839         * bits/std_cmath.h: Add new functions.
6840         (abs): overload for long and double.
6841         (div): overload for long.
6842
6843         * bits/valarray_array.h: Fix.
6844         * bits/gslice.h: Adjust friend.
6845         * bits/slice_array.h: likewise.
6846         * bits/valarray_meta.h: likewise.
6847
6848 1999-04-13   Benjamin Kosnik  <bkoz@tintin.cygnus.com>
6849
6850         * bits/locfacets.h: More changes, for num_get for insertion
6851         operators for integral types. Comment fields in _Format_cache.
6852         * bits/locfacets.tcc: And here too: add preliminary long version.
6853         * testsuite/27/27istringstream_formatted.cc: Add cases.
6854
6855 1999-04-13   Mark Elbrecht  <snowball3@usa.net>
6856
6857         * configure.in: Add locale.h to AC_CHECK_HEADERS argument. Call
6858         AC_LC_MESSAGES macro.
6859         * aclocal.m4 (AC_LC_MESSAGES): New. Determines if a target
6860         supports LC_MESSAGES.
6861         * config.h.in: Add entry for HAVE_LC_MESSAGES.
6862         * src/locale.cc (locale::_S_normalize_category): Use the
6863         HAVE_LC_MESSAGES macro to check for LC_MESSAGES support instead of
6864         _G_NO_CLOCALE_HAS_MESSAGES.
6865         * aclocal.m4 (AM_PROG_LD): For DOS style paths, simplify test to
6866         '?:' from '?:\\' so any path beginning with a drive name matches.
6867
6868 1999-04-12   Mark Elbrecht  <snowball3@usa.net>
6869
6870         * src/basic_file.cc(sys_open) [O_BINARY]: Declare __testb.
6871
6872 1999-04-12   Benjamin Kosnik  <bkoz@tintin.cygnus.com>
6873
6874         * bits/locfacets.h: Tweak.
6875         * bits/locfacets.tcc(do_get): Clean/fix bool method.
6876
6877         * testsuite/21/21nonmember.cc: Same.
6878         * testsuite/21/21compare.cc: Fix license.
6879         * testsuite/27/27istringstream_formatted.cc: New file.
6880
6881 1999-04-12  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
6882
6883         * bits/valarray_meta.h: _BinFunBase1, _BinFunBase2, _BinBase1,
6884         _BinBase2: new template classes; put in there to work around a
6885         compiler limitation. The whole valarray architecture is now
6886         working.
6887
6888 1999-04-08  Benjamin Kosnik  <bkoz@haight.constant.com>
6889
6890         * bits/locfacets.tcc: Fix, format.
6891         * bits/locfacets.h: Fix.
6892         * src/locale.cc: Same, plus format.
6893
6894         * bits/basic_string.h: Re-add definition here.
6895         * src/string.cc: Take out.
6896
6897 1999-04-08  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
6898
6899         * bits/std_valarray.h: tweak.
6900         * bits/valarray_array.h tweak. use _Expr.
6901         * bits/slice_array.h: likewise.
6902         * bits/gslice_array.h: likewise.
6903         * bits/mask_array.h: likewise.
6904         * bits/indirect_array.h: likewise.
6905         * bits/valarray_meta.h: tweak.
6906         _UnFunBase, _UnFunClos, _BinFunBase, _FunBase, _ValFunClos,
6907         _RefFunClos, _UnBase, _UnClos, _BinBase, _BinClos, _SClos, _GClos,
6908         _IClos: new template classes.
6909         _Meta: renamed to _Expr. Made template with args.
6910         _Constant: made template with two args.
6911
6912 1999-04-05  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
6913
6914         * bits/valarray_array.h: tweak.
6915
6916 1999-04-06  Benjamin Kosnik  <bkoz@cygnus.com>
6917
6918         * bits/basic_string.h: Whoops--fix blip.
6919
6920 1999-04-06  Benjamin Kosnik  <bkoz@cygnus.com>
6921
6922         Update to SGI STL 3.13
6923         * bits/basic_string.h: Add __get_c_string definition.
6924         * stl/bits/stl_range_errors.h: New file.
6925         * stl/bits/std_bvector.h: Same.
6926         * stl/bits/*: Update.
6927
6928 1999-04-04 1999  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
6929
6930         * bits/slice_array.h: tweak.
6931         * bits/gslice_array.h: tweak.
6932         * bits/mask_array.h: tweak.
6933         * bits/indirect_array.h: tweak.
6934         * bits/valarray_array.h: tweak.
6935         (__valarray_copy): replace copy with memcpy.
6936         * bits/std_valarray.h: use __valarray_copy whenever possible.
6937         use __valarray_fill instead of fill.
6938
6939 1999-04-02  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
6940
6941         * src/gen-num-limits.cc: new file
6942         * mknumeric_limits: Ditto.
6943
6944 1999-03-30  Benjamin Kosnik  <bkoz@cygnus.com>
6945
6946         * bits/locfacets.tcc: Do a stub version of num_get for short, int,
6947         and long types.
6948         * bits/locfacets.h: Add num_get::get methods overloaded for int
6949         and short, to resolve ambiguous overloads in istream insertion
6950         operators.
6951
6952 1999-03-30  Benjamin Kosnik  <bkoz@cygnus.com>
6953
6954         * bits/std_istream.h: Fix.
6955         * bits/istream.tcc: Fix.
6956
6957 1999-03-30  Philip Martin  <pm@corris.dircon.co.uk>
6958
6959         * testsuite/24/24iterator.cc: fix ++/-- tests
6960
6961 1999-03-29  Benjamin Kosnik  <bkoz@cygnus.com>
6962
6963         * bits/std_ostream.h: Looks like this, actually: Fix up eh-isms.
6964         * bits/ostream.tcc: Same.
6965
6966         * bits/std_istream.h: Bring over ostream changes, implement member
6967         functions. Baseline.
6968         * bits/istream.tcc: New file.
6969
6970 1999-03-26  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
6971
6972         * bits/gslice.h (class gslice): fix friends template.
6973
6974 1999-03-23  Benjamin Kosnik  <bkoz@cygnus.com>
6975
6976         * bits/std_ostream.h: Fix sentry objects, implement seekp, tellp,
6977         delete cruft, etc.
6978         * bits/ostream.tcc: Same.
6979
6980         * bits/std_istream.h: Minor tweaks.
6981
6982 1999-03-18  Benjamin Kosnik  <bkoz@cygnus.com>
6983
6984         * src/locale-inst.cc: Remove duplicate instantiations.
6985         * bits/locfacets.tcc: Tweak definitions of static member.
6986
6987 1999-03-18  Benjamin Kosnik  <bkoz@cygnus.com>
6988
6989         * bits/std_fstream.h: Format: prepend "__" in front of
6990         non-standard typedefs.
6991         * bits/fstream.tcc: Match.
6992         * bits/std_streambuf.h: Format: prepend "__" in front of
6993         non-standard typedefs.
6994
6995         * bits/sstream.tcc: Match.
6996         * bits/std_istream.h: Format.
6997         * src/locale-inst.cc: Add num_get instantiations.
6998
6999         * bits/std_sstream.h: Fix crash in stringstreams. Remove member
7000         _M_sb, a basic_stringbuf object, and use the basic_ios pointer
7001         _M_streambuf instead. Make initializations sane. Fix
7002         allocation/deallocation of _M_streambuf.
7003         * bits/std_ostream.h: Fix initialization code.
7004         (ctor): Eliminate redundant this->init(), let base class initialize.
7005         (default ctor): New. Assume base classes already initialzed.
7006         * bits/std_istream.h: Parallel work to ostream.
7007         (ctor): Eliminate redundant this->init(), let base class initialize.
7008         (default ctor): New. Assume base classes already initialzed.
7009         Fix initialization of basic_iostream.
7010
7011         * bits/std_fstream.h: While we're at it, make initializations sane
7012         here too. Now matches sstream.h.
7013
7014         * bits/string.tcc: Fix crash in basic_string::compare.
7015         * bits/basic_string.h: And here.
7016         * bits/c++config.h: Add comment about _G_USE_EXCEPTIONS.
7017
7018         * testsuite/make_check_libfree++: Check shared as well.
7019         * testsuite/27/27stringstream.cc: Add bits.
7020         * testsuite/27/27boolfmt.cc: Add bits.
7021         * testsuite/27/27octfmt.cc: Add bits.
7022
7023 1999-03-17  Benjamin Kosnik  <bkoz@happy.cygnus.com>
7024
7025         * configure.in (USE_LONG_DOUBLE): signbitl link error.
7026
7027         * bits/locfacets.h: Fix errors that cause build problems
7028         with current egcs (template parameters have class scope).
7029         * bits/locfacets.tcc: Same.
7030         * src/locale-inst.cc: Same, clean.
7031         * src/misc-inst.cc: Same, clean.
7032
7033 1999-03-17  Ryszard Kabatek  <kabatek@chemie.uni-halle.de>
7034
7035         * stl/bits/std_memory.h:  Modify auto_ptr::reset to reflect the
7036         standard. Re-apply this previous patch.
7037
7038 1999-03-17  Philip Martin  <pm@corris.dircon.co.uk>
7039
7040         * bits/basic_string.h: Use __normal_iterator<> for iterators.
7041         * bits/std_sstream.h: Support __normal_iterator<> iterators.
7042         * bits/string.tcc: Ditto.
7043         * src/misc-inst.cc: Ditto.
7044         * src/locale-inst.cc: Ditto.
7045         * stl/bits/stl_iterator.h: Add __normal_iterator<>.
7046         * stl/bits/stl_vector.h: Use __normal_iterator<> for iterators.
7047         * testsuite/24/24iterator.cc: Add test cases for basic_string and
7048         vector iterators.
7049
7050 1999-03-16  Benjamin Kosnik  <bkoz@cygnus.com>
7051
7052         * bits/locfacets.tcc: Remove macro hack.
7053         * bits/locfacets.h: Tweaks.
7054         * src/misc-inst.cc: Weed out locale-related instantiations.
7055         * src/locale-inst.cc: Same.
7056
7057         * RELEASE-NOTES: Make more changes.
7058         * bits/c++config.h: Bump version number.
7059
7060         * testsuite/make_check_libfree++: Collect diagnostics.
7061
7062         * bits/std_ostream.h: Fix ostream initialization/destruction
7063         problem, related to dtor cleanup and new cached facets, agggggggh.
7064         * bits/ostream.tcc: Tweak.
7065         * bits/locfacets.h: Remove all friends of iostream classes.
7066         * bits/ios_base.h: Same.
7067         * bits/streambuf.tcc: Tweak.
7068         * bits/std_streambuf.h: Tweak.
7069         * bits/std_fstream.h: Tweak.
7070         * bits/fstream.tcc: Tweak.
7071         * src/stdstreams.cc: Tweak.
7072         * src/ios.cc: Close streams.
7073
7074         * math/Makefile.in: Add missing files for shared link errors.
7075         * math/Makefile.am: Same.
7076
7077 1999-03-15  Benjamin Kosnik  <bkoz@cygnus.com>
7078
7079         * src/locale-inst.cc: More wchar_t instantiations.
7080         * src/misc-inst.cc: Missed a few bits.
7081         * testsuite/make_check_libfree++: Add static and shared runs.
7082         * src/ios.cc: Add clarity to ios_base::Init::~Init().
7083
7084 1999-03-15  Benjamin Kosnik  <bkoz@cygnus.com>
7085
7086         * bits/std_ostream.h: Format, expunge, simplify. Add cached
7087         facets. Resolve link errors.
7088         * bits/ostream.tcc: Same.
7089         * src/misc-inst.cc: Add ostream, wostream instantiations.
7090         * src/Makefile.am: Add missing bits for stdstreams.cc.
7091         * src/Makefile.in: Same.
7092         * bits/std_iosfwd.h: Format.
7093         * bits/locfacets.h (num_put): Add basic_ostream as a friend to
7094         num_put so that cached _M_fnumput pointer can be deleted in
7095         basic_ostream's dtor. Now everybody plays nice.
7096
7097 1999-03-12  Gabriel Dos Reis  <dosreis@cmla.ens-cachan.fr>
7098
7099         * bits/gslice.h (class gslice): Make friends valarray,
7100         gslice_array and _GliceExpression.
7101
7102 1999-03-11  Benjamin Kosnik  <bkoz@cygnus.com>
7103
7104         * RELEASE-NOTES: Update.
7105         * src/ios.cc: Use do proper init.
7106         * bits/std_streambuf.h: Tweak.
7107         * bits/std_iostream.h: Take out static member.
7108         * std/iostream: Put here.
7109         * bits/std_ostream.h: Non-default ctor shouldn't smash _M_streambuf.
7110         * bits/std_istream.h: Ditto.
7111         * bits/basic_ios.h: Format.
7112         * bits/ostream.tcc(write): Fix.
7113         * bits/fstream.tcc: Fix stdstreams ctor to do a proper
7114         initialization of the fstream class.
7115         * src/stdstreams.cc: I'm baaaaaaaack.
7116
7117 1999-03-10  Benjamin Kosnik  <bkoz@rhino.cygnus.com>
7118
7119         * bits/ios_base.h: Correct comments. Add ios_base::init()
7120         functionality. Format, tweak, expunge, clean, bathe, and hang to dry.
7121         * src/misc-inst.cc: Add instantiations here.
7122         * src/ios.cc: Clean.
7123         * bits/std_iostream.h: Add wrappers, global ios_base::Init object.
7124         * src/stdstreams.cc: Delete this file, as now unnecessary.
7125         * bits/fstream.tcc: Add missing initialization bits for ctor.
7126         * src/Makefile.am (libstdc___la_SOURCES): Delete here as well.
7127         * src/Makefile.in (libstdc___la_OBJECTS): And here.
7128
7129         * bits/streambuf.tcc: Tweak.
7130         * bits/sstream.tcc: Here too.
7131
7132         * bits/fstream.tcc: And change definition as well.
7133         * bits/std_fstream.h: Change ctor.
7134         * src/basic_file.cc (sys_open): Add call that opens a specific fileno.
7135         * bits/basic_file.h: Add declarations.
7136
7137         * testsuite/27/27hello.cc: New file.
7138
7139         * bits/std_ostream.h: Move flush() inline.
7140         * bits/ostream.tcc: From here.
7141
7142         * bits/char_traits.h: Add include of fpos.h for streamoff/streampos.
7143         * bits/std_ios.h: Change include libio to only when necessary.
7144         * bits/fpos.h: Like here.
7145         * ios_base.h: And here.
7146
7147         * bits/locfacets.h: Change _Iostate to _Ios_Iostate.
7148         * bits/locfacets.tcc: Same.
7149         * bits/std_locale.h: Include std_ios.h not std_iosfwd.h.
7150         * bits/std_iosfwd.h: Move _Ios_Iostate to ios_base.h
7151
7152 1999-03-09  Benjamin Kosnik  <bkoz@rhino.cygnus.com>
7153
7154         * bits/basic_ios.h: Change _M_ctype to _M_fctype.
7155
7156         * bits/std_streambuf.h: Clean, tweak.
7157         * bits/std_fstream.h: Same.
7158         * bits/std_sstream.h: Same.
7159         * bits/streambuf.tcc: Move most member functions out-of-line.
7160         * bits/fstream.tcc: Same.
7161         * bits/streambuf.tcc: Same.
7162
7163         * bits/basic_file.h(filepos_cur): Set correctly.
7164         (filepos_beg): Same.
7165         (seekpos): Change to __c_streampos.
7166         * src/basic_file.cc (std): Change to __c_streampos.
7167
7168         * testsuite/27/27filebuf.cc: Round one is finished.
7169         * testsuite/27/27filebuf-2.tst: New file, final output should match.
7170         * testsuite/27/27filebuf-3.tst: Same.
7171
7172 1999-03-08  Benjamin Kosnik  <bkoz@rhino.cygnus.com>
7173
7174         * bits/basic_file.h: Fix typo, add comments about what to expect
7175         from the various member functions in __basic_file.
7176
7177         * bits/std_fstream.h: Re-do sync/underflow to work
7178         together. Change from sys_read to xsgetn and from sys_write to
7179         xsputn. As it should have been from the beginning. . .
7180
7181 1999-03-06  Benjamin Kosnik  <bkoz@haight.constant.com>
7182
7183         * bits/c++config.h (__GLIBCPP__): Add versioning macro.
7184
7185         * bits/basic_file.h(file_beg): New function.
7186         (file_cur): Ditto.
7187
7188         * testsuite/27/27filebuf.cc: Test in, out, in | out.
7189         * bits/std_fstream.h: More _M_mode refinements.
7190         (synch): Add bits for out mode only.
7191         * bits/std_streambuf.h(xsputn): Correct for filebufs.
7192         * bits/std_sstream.h: Ditto.
7193
7194 1999-03-03  Benjamin Kosnik  <bkoz@cygnus.com>
7195
7196         * bits/std_fstream.h: Fix _M_mode AND with ios_base::openmode.
7197         * testsuite/27/27filebuf.cc: Modify.
7198         * bits/c++config.h: Fix.
7199
7200 1999-03-02  Benjamin Kosnik  <bkoz@tintin.cygnus.com>
7201
7202         * bits/c++config.h: New macro, _G_RESOLVE_LIB_DEFECTS, used to put
7203         code in place that diverges from the final standard, but has been
7204         brought up on the library mailing list.
7205
7206         * bits/std_fstream.h(underflow): Position all three internal
7207         buffer pointers at the same initial position. Re-implement with
7208         basic_filebuf abstraction.
7209         (overflow): Ditto.
7210         (seekoff): Ditto.
7211         (seekpos): Ditto.
7212         * bits/std_sstream.h: Move _M_mode down into base class
7213         basic_streambuf.
7214         * bits/sstream.tcc: Ditto.
7215         * bits/std_streambuf.h: Ditto.
7216
7217         * testsuite/27/27filebuf.cc: Tweak.
7218
7219 1999-02-27  Benjamin Kosnik  <bkoz@slap-happy.cygnus.com>
7220
7221         * bits/std_sstream.h: Ditto.
7222         * bits/std_fstream.h: Fix blip.
7223
7224 1999-02-26  Benjamin Kosnik  <bkoz@happy.cygnus.com>
7225
7226         * C++STYLE: Add cases.
7227         * bits/std_fstream.h: Format.
7228         * bits/std_streambuf.h: Ditto.
7229         * bits/std_sstream.h: Ditto.
7230
7231         * src/basic_file.cc(sys_seek): Fix stack delirium, by keeping
7232         return type for _IO_file_seek and __basic_file::seek the same size.
7233         * bits/basic_file.h: Ditto.
7234
7235 1999-02-26  Benjamin Kosnik  <bkoz@happy.cygnus.com>
7236
7237         * bits/fstream.tcc: Add include guards.
7238         * src/misc-inst.cc: Add instantiations for shared libes.
7239         * src/locale-inst.cc: Add instantiaions for use_facet.
7240         * bits/loccore.h: Remove specialization foward decls for
7241         use_facet<ctype>: perhaps add the whole lot of them later on.
7242         * bits/std_fstream.h: Fix.
7243         * bits/locfacets.h: Ditto.
7244         * src/stdstreams.cc: Disable wide streams for now.
7245
7246         * src/Makefile.am (CXXFLAGS): Change up.
7247         * src/Makefile.in (CXXFLAGS): Ditto.
7248
7249 1999-02-25  Benjamin Kosnik  <bkoz@happy.cygnus.com>
7250
7251         * src/basic_file.cc: Change to ios_base::seekdir from int.
7252         * bits/basic_file.h: Ditto.
7253         * bits/locfacets.h : Fix blip with new guard macros.
7254
7255 1999-02-25  Benjamin Kosnik  <bkoz@cygnus.com>
7256
7257         * stl/bits/stl_config.h (__STL_USE_STD_ALLOCATORS): Minor tweaking.
7258         * bits/c++config.h: Clean. Remove _G_NO_STREAMBUF_ITERATORS and
7259         _G_USE_NAMESPACE.
7260         * amm1/locale: Remove unused defines.
7261         * generic/locale: Ditto.
7262         * src/ios.cc: Ditto.
7263         * src/locale.cc: Ditto.
7264         * src/locale-inst.cc: Ditto.
7265         * src/localename.cc: Ditto.
7266         * src/stdstreams.cc: And here.
7267
7268         * bits/c++config.h (_G_USE_WCHAR_T): Fix.
7269         * bits/loccore.h: Simplify, clean, add wchar_t guards.
7270         * bits/loccore.tcc: Ditto.
7271         * bits/locfacets.h: Ditto.
7272         * src/locale-inst.cc: Ditto.
7273         * bits/locfacets.tcc: Add do_put long long here.
7274
7275 1999-02-24  Benjamin Kosnik  <bkoz@cygnus.com>
7276
7277         * bits/std_streambuf.h: Add cached ctype facet, _M_ctype.
7278         * bits/basic_ios.h: Clean. Replace _M_strbuf with
7279         _M_streambuf. Use cached _M_cvt in basic_streambuf.
7280         * bits/std_istream.h: Replace _M_strbuf with _M_streambuf.
7281         * bits/std_fstream.h: Tweak.
7282
7283         * bits/char_traits.h: Remove fpos definitions from here. . .
7284         * bits/fpos.h: New file, put them here. Eventually, this may allow
7285         the severing of char_traits and fpos dependancies.
7286         * src/Makefile.in: Add fpos.h.
7287         * src/Makefile.am: Ditto.
7288         * bits/std_string.h: Add fpos.h include here.
7289         * bits/std_ios.h: And here.
7290
7291         * bits/std_streambuf.h: Change _M_init to _M_initialized.
7292         * bits/ios_base.h: Remove cstdio include.
7293         * bits/std_ios.h: ... Place here.
7294
7295 1999-02-23  Benjamin Kosnik  <bkoz@loony.cygnus.com>
7296
7297         * src/Makefile.in (CXXFLAGS): Re-add -fvtable-thunks.
7298         * src/Makefile.am (CXXFLAGS): Re-add -fvtable-thunks.
7299
7300         * bits/basic_file.h: Comment, adjust arguments.
7301         * src/basic_file.cc: Ditto.
7302
7303         * bits/std_fstream.h(seekoff): Error is of fpos type, not integral
7304         type: check and convert accordingly. Re-interpet "resultant stream
7305         position" to indicate external byte sequence location, not internal
7306         buffer info.
7307
7308 1999-02-22  Benjamin Kosnik  <bkoz@loony.cygnus.com>
7309
7310         * mkcshadow: And change copyright here.
7311         * src/Makefile.am (CXXFLAGS): Add -g -O2. Add new header
7312         dependencies for stl_pthread_alloc.h, pthread_allocimpl.h,
7313         stl_thread.h, and stl_iterator_base.h.
7314         * src/Makefile.in (CXXFLAGS): Ditto.
7315         * stl/backward/pthread_alloc.h: Remove.
7316
7317 1999-02-19  Benjamin Kosnik  <bkoz@loony.cygnus.com>
7318
7319         * bits/std_streambuf.h (sungetc): Use standard defs for putback
7320         position.
7321         * bits/std_fstream.h (pbackfail): Correct.
7322         (sungetc): Test.
7323         (seekoff): Implement.
7324         (seekpos): Re-do.
7325         * testsuite/27/27filebuf.cc: Add test cases.
7326
7327 1999-02-18  Benjamin Kosnik  <bkoz@loony.cygnus.com>
7328
7329         * bits/std_fstream.h: Go with basic_file's interfaces for dealing
7330         with the external buffers, and stop mucking around with setting
7331         and re-setting the external buf's pointers. Aka, clarity and
7332         simplicity rule the day.
7333         * src/locale.cc: Use memcpy in codecvt::do_in and codecvt::do_out.
7334         Remove partial result and support code.
7335
7336 1999-02-18  Ulrich Drepper  <drepper@cygnus.com>
7337
7338         * configure.in: Add hypot, hypotf, atan2f, expf, and copysignf to
7339         list of function which have to be replaced.
7340         Remove expf from list of functions to test for.
7341         Define USE_LONG_DOUBLE in case the libm has partial support for long
7342         doubles.
7343         * Makefile.in: Regenerated.
7344         * config.h.in: Likewise.
7345         * configure: Likewise.
7346         * libio/Makefile.am (LIBIO_SRCS): Add missing backslash.
7347         * libio/Makefile.in: Regenerated.
7348         * src/Makefile.in: Regenerated.
7349         * string/Makefile.in: Regenerated.
7350         * math/Makefile.am (EXTRA_DIST): Add hypot.c, hypotf.c, hypotl.c,
7351         atan2f.c, expf.c, and $(EXTRA_yes).
7352         (EXTRA_yes): Add signbitl.c mycabsl.c.
7353         (libmath_la_LIBADD): Add $(EXTRA_$(USE_LONG_DOUBLE)).
7354         (libmath_la_SOURCES): remove long double versions.
7355         * math/Makefile.in: Regnerated.
7356         * math/atan2f.c: New file.
7357         * math/copysignf.c: New file.
7358         * math/expf.c: New file.
7359         * math/hypot.c: New file.
7360         * math/hypotf.c: New file.
7361         * math/hypotl.c: New file.
7362         * math/cargf.c: Use correct function and macro names.
7363         * math/ccos.c: Likewise.
7364         * math/ccosh.c: Likewise.
7365         * math/ccoshf.c: Likewise.
7366         * math/ccoshl.c: Likewise.
7367         * math/cexp.c: Likewise.
7368         * math/cexpf.c: Likewise.
7369         * math/cexpl.c: Likewise.
7370         * math/clog.c: Likewise.
7371         * math/clog10.c: Likewise.
7372         * math/clog10f.c: Likewise.
7373         * math/clog10l.c: Likewise.
7374         * math/clogf.c: Likewise.
7375         * math/clogl.c: Likewise.
7376         * math/copysignf.c: Likewise.
7377         * math/csin.c: Likewise.
7378         * math/csinf.c: Likewise.
7379         * math/csinh.c: Likewise.
7380         * math/csinhf.c: Likewise.
7381         * math/csinhl.c: Likewise.
7382         * math/csinl.c: Likewise.
7383         * math/csqrt.c: Likewise.
7384         * math/csqrtf.c: Likewise.
7385         * math/csqrtl.c: Likewise.
7386         * math/ctan.c: Likewise.
7387         * math/ctanf.c: Likewise.
7388         * math/ctanh.c: Likewise.
7389         * math/ctanhf.c: Likewise.
7390         * math/ctanhl.c: Likewise.
7391         * math/ctanl.c: Likewise.
7392
7393 1999-02-17  Benjamin Kosnik  <bkoz@cygnus.com>
7394
7395         * testsuite/27/27filebuf.cc: Add cases.
7396         * testsuite/27/27filebuf-1.txt: Remove inadvertent garbage.
7397         * bits/std_streambuf.h: Simplify, always have one return statement.
7398         * bits/std_fstream.h: Tweak comments in underflow.
7399
7400 1999-02-17  Ulrich Drepper  <drepper@cygnus.com>
7401
7402         * ltmain.sh: Update from libtool 1.2d and fix Solaris problems.
7403         * ltconfig: Likewise.
7404
7405 1999-02-16  Christophe Pierret  <cpierret@businessobjects.com>
7406
7407         * src/locale.cc: Fix assert.
7408
7409 1999-02-16  Benjamin Kosnik  <bkoz@cygnus.com>
7410
7411         FIXME: Still need some kind of solution for undefined math symbols.
7412         * src/Makefile.in (locale-inst.lo): Compile with
7413         -fimplicit-templates to fix Solaris link problem.
7414         * src/Makefile.am: Ditto.
7415         * libio/Makefile.in: Add stdfiles.c so that _IO_list_all is defined.
7416         * libio/Makefile.am: Ditto.
7417         * src/locale.cc: Provide some kind of def for _S_tolower.
7418         * bits/locfacets.h: Fix declarations of ctype<wchar_t> to
7419         match ctype<char> for _S_tolower, _S_toupper, _S_table.
7420
7421 1999-02-10  Benjamin Kosnik  <bkoz@cygnus.com>
7422
7423         * bits/loccore.tcc: Move member-template ctor inline...
7424         * bits/loccore.h: ...here.
7425         * src/locale-inst.cc: Add instantiation here.
7426
7427         * testsuite/27/27stringstream.cc: Tweak.
7428
7429         * bits/ostream.tcc: Include sbuf_iter.h.
7430
7431         * bits/ostream.tcc: Convert *this to ostreambuf_iterator before
7432         passing to num_put, as num_put's first argument is an interator,
7433         not basic_ostream.
7434
7435         * testsuite/make_check_libfree++: New file, runs through the
7436         existing test files in the testsuite directory and makes sure
7437         they link.
7438
7439 1999-02-10  Brendan Kehoe  <brendan@cygnus.com>
7440
7441         * testsuite/21/21compare.cc: Fix typo.
7442         * src/locale.cc (ctype<wchar_t>::_S_{toupper,tolower,table}):
7443         Don't try to provide non-linux versions, since it's impossible to
7444         initialize their const references with the integer 0, no matter
7445         how we try to cast it.
7446
7447 1999-02-10  Benjamin Kosnik  <bkoz@cygnus.com>
7448
7449         * bits/std_locale.h: Move std_vector.h dependency.
7450         * bits/std_ios.h: ...from here.
7451         * bits/std_string.h: ...and here.
7452         * src/locale.cc: ..to here.
7453         * bits/loccore.h: Ditto, add vector forward declaration,
7454         make locale::_Impl data members pointers not containers.
7455         * bits/loccore.tcc: Move out-of-line for now.
7456         * bits/locfacets.h: Move vector dependency from here...
7457         * bits/locfacets.tcc: ...to here.
7458         * src/localename.cc: ..and here.
7459         * src/locale-inst.cc: Add include of locfacets.tcc here.
7460
7461         * stl/bits/stl_string_fwd.h: Make __get_c_string non-static.
7462         * bits/basic_string.h: Can't use sizeof on an incomplete type.
7463         * bits/string.tcc: Tweak.
7464         * src/string.cc: And add __get_c_string def here.
7465
7466         * bits/std_fstream.h: Yeah, comment the fill_n idea out as impractical.
7467
7468         * src/stlinst.cc: Add include of stl_config.h.
7469
7470 1999-02-09  Benjamin Kosnik  <bkoz@cygnus.com>
7471
7472         * stl/bits/std_bitset.h: Update to SGI STL 3.12.
7473         * stl/bits/stl_config.h: Tweak, update.
7474         * stl/bits/std_stdexcept.h: Ditto, change stl_exception to
7475         std_exception.
7476         * stl/bits/std_memory.h: Reconstructed auto_ptr, Ditto.
7477         * stl/bits/std_functional.h: Ditto.
7478
7479         * stl/bits/stl_string.h: New file, SGI's string
7480         implementation. For reference only, corresponding to string in
7481         3.12 source.
7482         * stl/bits/stl_char_traits.h: As above.
7483
7484         * stl/bits/pthread_allocimpl.h: New file corresponding to
7485         pthread_alloc.
7486         * stl/bits/stl_pthread_alloc.h: New file corresponding to
7487         pthread_alloc.h
7488         * stl/bits/stl_threads.h: New file.
7489
7490         Note that SGI STL 3.12's file iterator.h is not used.
7491         * stl/bits/std_iterator.h: Ditto.
7492         * stl/bits/stl_iterator.h: Drop in replace.
7493         * stl/bits/stl_iterator_base.h: New file, drop in replace.
7494
7495         * stl/bits/stl_queue.h, stl_rope.h, stl_set.h, stl_stack.h,
7496         stl_string_fwd.h, stl_tempbuf.h, stl_tree.h, stl_vector.h,
7497         stl_pair.h, stl_multimap.h, stl_multiset.h, stl_list.h,
7498         stl_hashtable.h, stl_hash_set.h, stl_hash_map.h, stl_function.h,
7499         stl_deque.h, stl_alloc.h, stl_algo.h, stl_algobase.h, ropeimpl.h:
7500         Drop-in replace (ie, stop changing __SGI_STL_* to _CPP_BITS_* for
7501         preprocessor guards, but fixup include paths and names according
7502         to new directory layout).
7503
7504 1999-02-05  Benjamin Kosnik  <bkoz@cygnus.com>
7505
7506         * bits/std_fstream.h: Remove _M_open data member.
7507         * bits/fstream.tcc: Ditto.
7508
7509         * src/locale.cc: Tweak.
7510
7511         * bits/std_sstream.h: Simplify.
7512
7513         * bits/std_streambuf.h: Simplify.
7514         (sputc): Use correct definition of "write area."
7515
7516         * bits/std_fstream.h: Fix uflow.
7517         * src/basic_file.cc: Tweak.
7518         * testsuite/27/27filebuf.cc: Add tests.
7519         * testsuite/27/27filebuf-3.txt: Rename to *-2.txt.
7520
7521 1999-02-02  Ryszard Kabatek  <kabatek@chemie.uni-halle.de>
7522
7523         * bits/ios_base.h: Make protected.
7524
7525 1999-02-01  Ryszard Kabatek  <kabatek@chemie.uni-halle.de>
7526
7527         * bits/ios_base.h: Changes in the class ios_base:
7528         Rename _M_exceptions member to _M_exceptions_data.
7529         Make the member functions rdstate(), clear(), exceptions()
7530         and exceptions(iostate) protected and add the "_M_" prefix.
7531         * src/ios.cc: Ditto.
7532         * bits/basic_ios.h: Adapt the changes from ios_base.
7533
7534 1999-01-29  Benjamin Kosnik  <bkoz@cygnus.com>
7535
7536         * bits/std_fstream.h: Remove _M_flags, _M_equilibrate  as unnecessary.
7537         * bits/fstream.tcc: Ditto.
7538
7539         * bits/std_fstream.h (underflow): Resize deallocates memory and
7540         resets pointers in the internal cache according to new _M_buf. . dooh!
7541         * src/locale.cc: Mas changes with codecvt::do_in, do_out.
7542
7543 1999-01-29  Ryszard Kabatek  <kabatek@chemie.uni-halle.de>
7544
7545         * stl/bits/std_memory.h:  Modify auto_ptr::reset to reflect the
7546         standard.
7547
7548 1999-01-28  Benjamin Kosnik  <bkoz@cygnus.com>
7549
7550         * src/locale.cc (codecvt::do_in): Finer-grained tuning to take
7551         into account partial returns.
7552         (codecvt::do_out): Likewise.
7553
7554         * bits/char_traits.h: Change streamsize to be a signed type, as
7555         required by 27.4.1 Types p 2. (Changing to _IO_ssize_t.)
7556         * bits/std_streambuf.h: Make
7557         in_avail() and showmanyc() have streamsize as return types, so
7558         that showmanyc()'s return of eof won't underflow in_avail's return
7559         value and give a bogus result.
7560         * src/misc-inst.cc: And more changes. . .
7561
7562         * bits/std_streambuf.h (basic_streambuf): Add _M_buf_unified to keep
7563         track of joint in/out pointers into the internal buffer.
7564         (sbumpc): Add check for _M_buf_unified.
7565         (sputbackc): Ditto.
7566         (sungetc): Ditto.
7567
7568         * testsuite/27/27filebuf.cc: Add cases.
7569         * testsuite/27/27stringbuf.cc: Add showmanyc case.
7570
7571         * bits/std_fstream.h (close): Fix logic error.
7572         (open): Initialize internal pointers based on _M_buf and _M_buf_size.
7573         (showmanyc): Add underflow component, to match the standard.
7574
7575         * bits/fstream.tcc: Ditto.
7576
7577 1999-01-27  Benjamin Kosnik  <bkoz@cygnus.com>
7578
7579         * bits/basic_file.h: Match vtables w/ _IO_FILE_plus.
7580         * src/basic_file.cc: Ditto.
7581         * src/Makefile.in: Add -fvtable-thunks to CXXFLAGS: preferred
7582         format for dealing with _IO_file in libio.
7583
7584 1999-01-27  Ulrich Drepper  <drepper@cygnus.com>
7585
7586         * src/basic_file.cc: Include fcntl.h.
7587
7588 1999-01-27  Benjamin Kosnik  <bkoz@cygnus.com>
7589
7590         * libio/Makefile.in: Add fileops.lo, genops.lo to objects to debug
7591         libio calls.
7592         * bits/std_streambuf.h: Redefine read posion.
7593
7594         * bits/std_fstream.h: Temporary hack to get vtables working again.
7595         * bits/basic_file.h: Revert.
7596         * src/basic_file.cc: Ditto.
7597         * testsuite/27/27filebuf.cc: Tweak.
7598
7599 1999-01-26  Benjamin Kosnik  <bkoz@cygnus.com>
7600
7601         * bits/basic_file.h: Add showmanyc, underflow. .
7602         * src/basic_file.cc: Ditto.
7603
7604         * bits/std_fstream.h (showmanyc): Add bits to ping libio to see if more
7605         chars can be read.
7606
7607         * testsuite/27/27filebuf.cc: Add testcases.
7608         * src/basic_file.cc: Add O_CREAT to open calls with
7609         ios_base::trunc as part of the open mode.
7610
7611 1999-01-26  Ryszard Kabatek  <kabatek@chemie.uni-halle.de>
7612
7613         * bits/basic_ios.h: fix basic_ios::exceptions(iostate)
7614
7615 1999-01-25  Benjamin Kosnik  <bkoz@nabi.net>
7616
7617         * src/ios.cc (clear): Correct typo.
7618         * bits/ios_base.h: Tweak spacing.
7619
7620 1999-01-25  Ryszard Kabatek  <kabatek@chemie.uni-halle.de>
7621
7622         * bits/basic_ios.h: fix basic_ios::fail()
7623
7624 1999-01-25  Benjamin Kosnik  <bkoz@loony.cygnus.com>
7625
7626         * bits/basic_file.h: Include libioP.h from libio instead of here.
7627         * bits/iolibio.h: Remove.
7628         * bits/libio.h: Remove.
7629
7630 1999-01-22  Benjamin Kosnik  <bkoz@lunatic.cygnus.com>
7631
7632         * bits/std_fstream.h: Tweak cvt-> in call for newer egcs compilers.
7633
7634 1999-01-22  Ulrich Drepper  <drepper@cygnus.com>
7635
7636         * Makefile.am (SUBDIRS): Add libio.
7637         * configure.in: Add rule to test for glibc2.
7638
7639         * src/Makefile.am (INCLUDES): Add -I to libio subdir.
7640         (libstdc___la_LIBADD): Add libio.la.
7641
7642 1999-01-21  Benjamin Kosnik  <bkoz@cygnus.com>
7643
7644         * bits/basic_file.h: Make new abstraction for underlying C library
7645         FILE, named __basic_file.
7646         * src/basic_file.cc: New file.
7647         * bits/os_raw.h: Delete.
7648         * src/os_raw.cc: Delete.
7649         * src/Makefile.in: Tweak.
7650         * src/Makefile.am: Tweak.
7651         * bits/iolibio.h: Add this here, for the time being.
7652         * bits/libioP.h: Ditto.
7653
7654         * bits/ios_base.h: Delete unused defines.
7655         * src/locale.cc (codecvt<char, char, mbstate_t>::do_in): Use
7656         strcpy to copy between the two buffers.
7657
7658         * testsuite/27/27stringbuf.cc: Change license, fix in_avail tests.
7659         * testsuite/27/27filebuf.cc: New file.
7660         * testsuite/27/27filebuf-1.txt: Data file for above test.
7661         * testsuite/27/27filebuf-2.txt: Ditto.
7662
7663         * bits/std_streambuf.h (uflow): Re-implement default.
7664         * bits/std_fstream.h: Set _M_buf_size based on cstdio's BUFSIZ.
7665         Re-implement virtual functions.
7666         * bits/fstream.tcc: Delete unused mf's.
7667
7668 1998-12-31  Benjamin Kosnik  <bkoz@lunatic.cygnus.com>
7669
7670         * bits/fstream.tcc: Add fstream ctor for cin/cout/etc.
7671         * bits/std_fstream.h: Ditto.
7672         * src/stdstreams.cc: Ditto.
7673
7674         * math/cpowl.c: Fix header typo with last change.
7675
7676 1998-12-31  Benjamin Kosnik  <bkoz@loony.cygnus.com>
7677
7678         * COPYING: New file (GPL v 2).
7679         * LICENSE.STD: Remove.
7680         * ./*: Change license.
7681
7682 1998-12-30  Benjamin Kosnik  <bkoz@haight.constant.com>
7683
7684         * bits/std_streambuf.h (std): Remove static on _M_init.
7685         * bits/streambuf.tcc (std): Ditto.
7686
7687         * bits/std_fstream.h: Add changes as discussed with Nathan, including
7688         state_type and codecvt_type members, the allocation of an internal
7689         buffer, the streamlined codecvt calls, etc.
7690
7691 1998-12-21  Benjamin Kosnik  <bkoz@haight.constant.com>
7692
7693         * bits/std_sstream.h: Tweak.
7694         * bits/fstream.tcc: Remove unused stubs.
7695         * bits/std_fstream.h: Tweak.
7696
7697 1998-12-17  Benjamin Kosnik  <bkoz@tintin.cygnus.com>
7698
7699         * bits/std_streambuf.h: Move _IO_file_flags into basic_filebuf.
7700         Remove unused _IO_* members, possibly put into filebuf, which may
7701         need them.
7702         * bits/std_fstream.h: Add _M_flag.
7703         * bits/sbuf_iter.h: Tweak.
7704
7705         * bits/std_cstdio.h: Add SEEK_SET, SEEK_END, SEEK_CUR.
7706         * bits/ios_base.h: Use.
7707
7708         * src/stdstreams.cc: Modify to reflect standard ctors for
7709         filebuf.
7710         * src/misc-inst.cc: Ditto.
7711
7712         * bits/os_raw.h: Wrap in std namespace. Model parameters on
7713         underlying C library calls instead of the underlying unix
7714         filesystem.
7715         * src/os_raw.cc (_S_os_open): Use fopen, and compute a mode
7716         string as per p.659.
7717         (_S_os_close): Model on fopen.
7718         (_S_os_read): Model on fread.
7719         (_S_os_write): Model on fwrite.
7720         (_S_os_seek): Model on fseek.
7721
7722         * bits/ios_base.h: Tweak.
7723         * bits/std_iosfwd.h: Wrap libio.h include with extern "C".
7724         * bits/std_sstream.h: Tweak.
7725         * bits/sstream.tcc: Remove old, uncalled code.
7726         * bits/std_fstream.h: Major reconstruction.
7727         * bits/fstream.tcc: Disable for the time being.
7728
7729 1998-12-11  Benjamin Kosnik  <bkoz@haight.constant.com>
7730
7731         * bits/basic_string.h: Fix insert method.
7732         * stl/bits/stl_iterator.h: Remove previous hack.
7733         * bits/std_streambuf.h (sbumpc): Correct increment/return oddness.
7734         * bits/std_sstream.h: Fix more regressions.
7735         * testsuite/27/27stringbuf.C: Add (almost) complete tests.
7736
7737 1998-12-09 Benjamin Kosnik  <bkoz@loony.cygnus.com>
7738
7739         * bits/basic_string.h: Tweak.
7740
7741         * stl/bits/stl_iterator.h: Specialize iterator_traits for int so
7742         that string::append can be instantiated. HACK--checkin
7743         basic_string::iterator class.
7744
7745 1998-12-07  Benjamin Kosnik  <bkoz@haight.constant.com>
7746
7747         * bits/std_sstream.h: Tweak.
7748         * bits/sstream.tcc: Tweak ctors.
7749
7750         FIXME invalid friend defs. . WHERE ARE THEY??
7751
7752         * bits/sbuf_iter.h (istreambuf_iterator::equal): Change to new
7753         names for basic_streambuf data members.
7754
7755         * bits/std_streambuf.h: Add getloc() initialization bits.
7756         basic_streambuf(): Initialize with global locale data.
7757         imbue(): Set _M_init.
7758
7759         * bits/std_streambuf.h(seekoff, seekpos): Complete with invalid
7760         stream pos == pos_type(off_type(-1)).
7761         in_avail(): Complete default implementation.
7762         snextc, sbumpc, sputbackc, sungetc, sputc, setg, xsputn,
7763         underflow, uflow, xsgetn, showmany, sync: Ditto.
7764
7765         * bits/std_streambuf.h: _M_snextc_helper(): Remove.
7766
7767         * bits/streambuf.tcc (sputbackc): Temporarily remove, need to
7768         re-populate with in-line member functions that are too big.  Add
7769         initialization for _M_init.
7770
7771 1998-12-03  Benjamin Kosnik  <bkoz@cygnus.com>
7772
7773         * bits/sstream.tcc: Convert _Allocator to _Alloc.  Add typedefs
7774         for basic_string and basic_streambuf. Scope _IO_buf_* pointers to
7775         streambuf_type.
7776
7777         * src/stdstreams.cc (std): Disable wchar_t instantiations.
7778
7779         * bits/c++config.h (_G_DEPRICATED): Add.
7780         (_G_USE_WCHAR_T): Add.
7781         * bits/std_streambuf.h: Radical reconstruction of basic_streambuf.
7782         Take out _Streambuf_base. Put _IO_FILE data member in basic_filebuf.
7783         * bits/streambuf.tcc (sputbackc): Remove ctor anti-def, Tweak.
7784         * bits/std_fstream.h: Add comment for implementation.
7785         * src/streambuf.cc: Remove.
7786         * src/Makefile.in: Remove streambuf.lo.
7787         * src/misc-inst.cc: Tweak.
7788
7789 1998-12-02  Benjamin Kosnik  <bkoz@cygnus.com>
7790
7791         * bits/std_sstream.h: Add const_cast to rdbuf returns.
7792         * testsuite/27stringstream.C: Modify.
7793
7794 1998-11-25  Benjamin Kosnik  <bkoz@haight.constant.com>
7795
7796         * src/Makefile.in (libstdc___la_OBJECTS): Add streambuf.lo.
7797         (libstdc___la_SOURCES): Ditto.
7798
7799         * bits/streambuf.tcc: Tweak.
7800
7801         * src/streambuf.cc: New file, add out-of-line definitions for
7802         _Streambuf_base.
7803
7804         * src/misc-inst.cc: Remove _Streambuf_base instantiations.
7805         Comment out wchar_t versions of the buffer instantiations, for now.
7806
7807         * bits/std_streambuf.h: Wrap libio.h include with extern "C".
7808         Remove template wrapper around _Streambuf_base.
7809         Move IO_* data members into _Streambuf_base.
7810         Move _Streambuf_base members into streambuf.tcc.
7811
7812         * bits/c++config.h (_G_USE_LIBIO): Enable.
7813
7814 1998-11-02  Nathan Myers <ncm@cantrip.org>
7815
7816         * CHECKLIST: downgrade iterator implementations
7817         * DESIGN: fill out notes about unimplemented features
7818
7819 1998-10-31  Nathan Myers <ncm@cantrip.org>
7820
7821         * CHECKLIST: itemized list of all interfaces, and status of each.
7822
7823 1998-10-30  Nathan Myers  <ncm@cantrip.org>
7824
7825         * RELEASE-NOTES: add notes about optional includes, linking, running
7826         * src/Makefile.am: handle header installs properly
7827         * src/Makefile.in: regenerate from new src/Makefile.am
7828
7829 1998-10-30  Benjamin Kosnik  <bkoz@loony.cygnus.com>
7830
7831         * bits/basic_string.h: Revert npos pending ciso646.
7832         * src/Makefile.am: Revert CXX flags for now.
7833         * src/Makefile.in: Ditto.
7834
7835 1998-10-30  Brendan Kehoe  <brendan@cygnus.com>
7836
7837         * bits/std_sstream.h: Re-order ctors to put base before member
7838         inits.
7839
7840 1998-10-30  Ryszard Kabatek  <kabatek@chemie.uni-halle.de>
7841
7842         * stl/bits/std_memory.h: Fix typo.
7843
7844 1998-10-30  Nathan Myers <ncm@cantrip.org>
7845
7846         * src/string[A-Z]+.cc: change back to include "string.cc".
7847         * src/Makefile.am: revert filename changes.  We need a different
7848         way to keep filenames in std/ from confusing Make.
7849         * bits/basic_string.h: define _S_max_size right, return it from
7850         string::max_size(); churn definition of npos again.
7851         * bits/string.tcc: fix _S_frob_size to avoid uint overflow.
7852         * bits/ios.cc: remove #ifdef on ios_base locale member initialization
7853         * BUGS: clear cruft.
7854         * C++STYLE: Touchup for release.
7855         * CHECKLIST: Touchup for release.
7856         * DESIGN: New file.
7857         * LICENSE.STD: Add requirement to retain copyrights and to provide
7858         the license with any copies.
7859         * README: Update for release.
7860         * TODO: Minor touchup for release.
7861         * RELEASE-NOTES: prepare for release
7862
7863 1998-10-29  Ulrich Drepper  <drepper@cygnus.com>
7864
7865         * src/string[A-Z]+.cc: Include stdstring.cc, not string.cc.
7866
7867         * src/Makefile.am (CXXFLAGS): Define _GNU_SOURCE.
7868
7869         * src/Makefile.am (CXXLINK): New variable.  Make sure we don't use
7870         CXX to generate the shared object.
7871
7872         * src/Makefile.am (headers): Remove duplicated char_traits.h.
7873
7874 1998-10-29  Brendan Kehoe  <brendan@cygnus.com>
7875
7876         * bits/basic_string.h (basic_string<>::max_size): Subtract 1, not
7877         2, from npos, solving infinite loop problems.
7878
7879 1998-10-29 18:41  Ulrich Drepper  <drepper@cygnus.com>
7880
7881         * src/Makefile.am: Add rules to install headers.
7882
7883 1998-10-29  Nathan Myers <ncm@cantrip.org>
7884
7885         * bits/std_ostream.h: Remove #ifdef on operator<< for long double
7886         * bits/ostream.tcc:   Remove #ifdef on operator<< for long double
7887         * shadow/libio.h:
7888         * shadow/unistd.h:
7889         * shadow/bits/wrap_libio.h:
7890         * shadow/bits/wrap_unistd.h: New files.
7891
7892 1998-10-29  Brendan Kehoe  <brendan@cygnus.com>
7893
7894         * bits/ostream.tcc (operator<<): Wrap with #ifdef
7895         _G_HAVE_LONG_DOUBLE_IO, to match bits/std_ostream.h.
7896
7897 1998-10-29  Ulrich Drepper  <drepper@cygnus.com>
7898
7899         * src/Makefile.am: Add temporarily rules to make sure misc-inst.cc
7900         is not compiled with -fno-implicit-templates in effect.
7901
7902         * src/Makefile.am (EXTRA_SOURCES): Add string.cc and wstring.cc here.
7903         (libstdc___la_SOURCES): Add all the string*.cc and wstring*.cc files.
7904         * src/stringADDCS.cc: Wrapper around string.cc to define individual
7905         function.
7906         * src/stringADDPS.cc: Likewise.
7907         * src/stringADDSC.cc: Likewise.
7908         * src/stringADDSP.cc: Likewise.
7909         * src/stringADDSS.cc: Likewise.
7910         * src/stringBIST.cc: Likewise.
7911         * src/stringBOST.cc: Likewise.
7912         * src/stringCHTR.cc: Likewise.
7913         * src/stringEQPS.cc: Likewise.
7914         * src/stringEQSP.cc: Likewise.
7915         * src/stringEQSS.cc: Likewise.
7916         * src/stringEXTRA.cc: Likewise.
7917         * src/stringGEPS.cc: Likewise.
7918         * src/stringGESP.cc: Likewise.
7919         * src/stringGESS.cc: Likewise.
7920         * src/stringGETLI.cc: Likewise.
7921         * src/stringGTPS.cc: Likewise.
7922         * src/stringGTSP.cc: Likewise.
7923         * src/stringGTSS.cc: Likewise.
7924         * src/stringINSER.cc: Likewise.
7925         * src/stringLEPS.cc: Likewise.
7926         * src/stringLESP.cc: Likewise.
7927         * src/stringLESS.cc: Likewise.
7928         * src/stringLTPS.cc: Likewise.
7929         * src/stringLTSP.cc: Likewise.
7930         * src/stringLTSS.cc: Likewise.
7931         * src/stringMAIN.cc: Likewise.
7932         * src/stringNEPS.cc: Likewise.
7933         * src/stringNESP.cc: Likewise.
7934         * src/stringNESS.cc: Likewise.
7935         * src/stringSCOPY.cc: Likewise.
7936         * src/wstringADDCS.cc: Wrapper around wstring.cc to define individual
7937         functions.
7938         * src/wstringADDPS.cc: Likewise.
7939         * src/wstringADDSC.cc: Likewise.
7940         * src/wstringADDSP.cc: Likewise.
7941         * src/wstringADDSS.cc: Likewise.
7942         * src/wstringBIST.cc: Likewise.
7943         * src/wstringBOST.cc: Likewise.
7944         * src/wstringCHTR.cc: Likewise.
7945         * src/wstringEQPS.cc: Likewise.
7946         * src/wstringEQSP.cc: Likewise.
7947         * src/wstringEQSS.cc: Likewise.
7948         * src/wstringEXTRA.cc: Likewise.
7949         * src/wstringGEPS.cc: Likewise.
7950         * src/wstringGESP.cc: Likewise.
7951         * src/wstringGESS.cc: Likewise.
7952         * src/wstringGETLI.cc: Likewise.
7953         * src/wstringGTPS.cc: Likewise.
7954         * src/wstringGTSP.cc: Likewise.
7955         * src/wstringGTSS.cc: Likewise.
7956         * src/wstringINSER.cc: Likewise.
7957         * src/wstringLEPS.cc: Likewise.
7958         * src/wstringLESP.cc: Likewise.
7959         * src/wstringLESS.cc: Likewise.
7960         * src/wstringLTPS.cc: Likewise.
7961         * src/wstringLTSP.cc: Likewise.
7962         * src/wstringLTSS.cc: Likewise.
7963         * src/wstringMAIN.cc: Likewise.
7964         * src/wstringNEPS.cc: Likewise.
7965         * src/wstringNESP.cc: Likewise.
7966         * src/wstringNESS.cc: Likewise.
7967         * src/wstringSCOPY.cc: Likewise.
7968         * src/string.cc: Remove now unneeded #defines now.
7969
7970 1998-10-29 Nathan Myers <ncm@cantrip.org>
7971
7972         * bits/locfacets.tcc: Define num_put::put(... const void*), improve
7973         integer formatting.
7974         * bits/ostream.tcc: Delete cruft, rewrite various op<< as members,
7975         add definitions for double, long double, const void*.
7976         * bits/std_ostream.h: Move op<<'s back into class ostream,
7977         define some in-line.
7978         * bits/string.tcc: fix unnecessary-copying bug in op[], typos in
7979         string construction from input iterators that Brendan reported.
7980
7981
7982 1998-10-28  Brendan Kehoe  <brendan@cygnus.com>
7983
7984         * stl/bits/stl_pair.h (op!=, op>, p<=, op>=): Add missing definitions.
7985
7986         * bits/valarray_meta.h (class _Constant): Move declaration to the
7987         top, so the rest of the file can grok it.
7988         (_ApplyBinaryFunction::operator[]): Add missing parenthesis.
7989
7990         * bits/std_sstream.h (basic_ostringstream::str): Fix typo of extra
7991         semicolon.
7992         (basic_stringstream::str, both instances): Likewise.
7993
7994 1998-10-28 Nathan Myers <ncm@cantrip.org>
7995
7996         * bits/locfacets.h: fix num_put<>::falsename()
7997         * bits/locfacets.tcc: fix _Format_cache<>::_M_populate bool name init
7998         * testsuite/27/27octfmt.C, testsuite/27/27octfmt.C: new tests
7999         * bits/locfacets.tcc: touch up _S_group_digits.
8000         * src/misc-inst.cc: adjust _S_group_digits insts to match.
8001
8002 1998-10-27 Nathan Myers <ncm@cantrip.org>
8003
8004         * stl/bits/stl_config.h: Turn off long long support, for now.
8005         * src/locale-inst.cc: Instantiate num_put<> only for
8006         ostreambuf_iterator, num_get only for istreambuf_iterator.
8007         * src/misc-inst.cc: Delete duplicate locale-related instantiations,
8008         add lots of new instantiations for num_put support function templates;
8009         remove junk about __match_parallel for ostreambuf_iterator.
8010
8011 1998-10-27 Nathan Myers <ncm@cantrip.org>
8012
8013         * bits/locfacets.tcc: Make num_put's digit grouping work.
8014         * bits/string.tcc: More uglification.
8015         * src/ios.cc: initialize format cache right
8016
8017 1998-10-26 Nathan Myers <ncm@cantrip.org>
8018
8019         * bits/basic_string.h: Uglify more names.
8020         * bits/fstream.tcc: Rewrite some filebut output handling.
8021         * bits/ios_base.h: Cosmetic.
8022         * bits/locfacets.h: Changes to _Format_cache for support of num_put.
8023         Also, specialize its default ctor for optimal default case.
8024         #ifdef out "long long" prototypes for now.
8025         * bits/locfacets.tcc: Do complete, optimized num_put<>::do_put
8026         implementation for integer types.  (Still needs optimized
8027         std::copy() applied to ostreambuf_iterator to be optimal.)
8028         * bits/ostream.tcc: Write operator<< for long, bool types.
8029         Make other operators<< non-members, per spec.  (Many still
8030         not implemented.)  Identify those that fail to create a sentry.
8031         * bits/sbuf_iter: Cosmetic.
8032         * bits/std_fstream.h: Add some filebuf members.
8033         * bits/std_locale.h: Include <limits> for use in bits/locfacets.h
8034         * bits/std_ostream.h: Make member operators<< global, per spec.
8035         (Should do the same in std_istream.h.)
8036         * bits/std_string.h: Include <limits> for use in bits/locfacets.h
8037         * bits/string.tcc: Uglify names
8038         * shadow/bits/std_cstdlib.h: Optimize std::div and std::ldiv.
8039         * src/ios.cc: Specialize _Format_cache<> for char and wchar_t,
8040         for optimal default behavior.
8041
8042 1998-10-26  Benjamin Kosnik  <bkoz@loony.cygnus.com>
8043
8044         * src/Makefile.in (libstdc___la_SOURCES): Add misc-inst.cc again.
8045
8046 1998-10-21 Nathan Myers <ncm@cantrip.org>
8047
8048         * src/locale.cc: make ctype operations actually work for glibc
8049         * CHECKLIST: add a comprehensive (i.e. huge) implementation
8050         checklist of stdlib facilities.  Not filled in yet.
8051
8052 1998-10-20 Nathan Myers <ncm@cantrip.org>
8053
8054         * bits/string.tcc: fix patching NULs on string ends.
8055
8056 1998-10-19 Nathan Myers <ncm@cantrip.org>
8057
8058         * bits/std_iosfwd.h: eliminate "basic_" prefix on streambuf
8059         iterator forward declarations
8060         * bits/sbuf_iter.h: eliminate default template argument definitions
8061         on streambuf iterators (rely on <iosfwd> decls).
8062         * TODO: add note about lazy facet construction
8063         * bits/basic_ios.h: hit operator void* again.  This should be the
8064         last time we need to touch it.
8065         * bits/basic_ios.h: copyfmt now returns *this.
8066         * bits/basic_string.h: fix npos again.  npos cannot be defined as zero.
8067         * bits/basic_string.h: put back overloaded constructors; adjust
8068         behavior for default allocator on copy constructor.
8069         * bits/char_traits.h: make not_eof return correct type.
8070         * bits/loccore.h: remove call to bits/std_stdexcept.h; subincludes
8071         cannot be in non-standard headers or we get include loops (bad)
8072         * bits/loccore.h: delete ifdef'd out workarounds for old compiler bugs.
8073         * bits/loccore.h: add apparatus to support lazy construction of
8074         facets.
8075         * bits/locfacets.tcc: Uglify names in __match_parallel decl.
8076         * bits/std_ios.h: add include of <typeinfo> to get bad_cast for
8077         locale use_facet<> failure.
8078         * bits/std_locale.h: same.
8079         * bits/std_string.h: same.
8080         * bits/std_stdexcept.h: change exception member __msg from a
8081         reference to a regular object.
8082         * bits/string.tcc: add pasting a NUL on the end of strings after
8083         each operation. We had already left room for it, but previously
8084         plugged it only on a call to c_str(), but the WG changed the
8085         requirement when I wasn't looking.  (Can't leave them alone for
8086         a second without they break something else.)
8087         * bits/valarray_meta.h: add Gaby's changes from 981018.
8088         * src/locale.cc: add new type _Bad_use_facet to be thrown on
8089         failure of use_facet<>().
8090         * src/stdexcept.cc: remove pragma, remove bkoz's #if 0,
8091         comment out leftover member definitions
8092
8093 1998-10-16  Ulrich Drepper  <drepper@cygnus.com>
8094
8095         * string/Makefile.am: Revert last change.
8096         * math/Makefile.am: Likewise.
8097
8098 1998-10-15  Benjamin Kosnik  <bkoz@haight.constant.com>
8099
8100         * bits/std_sstream.h: Fix typo.
8101
8102 1998-10-15  Benjamin Kosnik  <bkoz@haight.constant.com>
8103
8104         * src/Makefile.am (libstdc___la_SOURCES): Add misc-inst.cc.
8105
8106         * bits/std_sstream.h: Add typedefs, member definitions. Clean.
8107         * bits/std_stdexcept.h: Remove.
8108
8109 1998-10-15  Benjamin Kosnik  <bkoz@haight.constant.com>
8110
8111         * src/misc-inst.cc: Tweak again.
8112
8113         * bits/std_sstream.h: Move out-of-line definitions to sstream.tcc.
8114         * bits/sstream.tcc: New file.
8115
8116 1998-10-15  Ulrich Drepper  <drepper@cygnus.com>
8117
8118         * configure.in: Test for machine/param.h, sys/machine.h and fp.h.
8119         Don't run AC_C_BIGENDIAN if machine/param.h or sys/machine.h are
8120         available.
8121
8122         * math/mathconf.h: Include sys/machine.h, machine/param.h and fp.h
8123         if available.
8124         (INFINITE_P): Use IS_INF macro if available.
8125
8126 1998-10-15  Ulrich Drepper  <drepper@cygnus.com>
8127
8128         * math/Makefile.am (EXTRA_LTLIBRARIES): Renamed from
8129         noinst_LTLIBRARIES.
8130         * string/Makefile.am: Likewise.
8131
8132 1998-10-15  Ulrich Drepper  <drepper@cygnus.com>
8133
8134         * configure.in (AC_CHECK_FUNCS): Add finite, qfinite, fpclass, and
8135         qfpclass.
8136         (AC_CHECK_HEADERS): Add machine/endian.h.  If no header specifying
8137         endianess is available run AC_C_BIGENDIAN.
8138
8139         * math/clog10l.c: Add ugly hack around bug in Irix 6.2 header until
8140         fixincludes is fixed.
8141         * math/clogl.c: Likewise.
8142         * math/csqrtl.c: Likewise.
8143         * math/mycabsl.c: Likewise.
8144
8145         * math/mathconf.h: Include machine/endian.h if possible.  If no
8146         header describing endianess is available rely on WORDS_BIGENDIAN
8147         macro.
8148         (FINITE_P, FINITEF_P, FINITEL_P): Use finite functino if available.
8149         (INFINITE_P, INFINITEF_P, INFINITEL_P): Use fpclass function if
8150         available.
8151
8152         * src/complex.cc (polar): Don't use sincos on OSF machines.
8153
8154 1998-10-09  Benjamin Kosnik  <bkoz@loony.cygnus.com>
8155
8156         * src/locale-inst.cc: Don't instantiate time_get for
8157         ostreambuf_iterators as time_get::do_get_weekday and
8158         time_get::do_get_monthname use __match_parallel, which is illegal
8159         for ostreambuf_iterators to use, as they don't have operator== or
8160         operator!=.
8161         * bits/std_stdexcept.h: Add dtor definitions.
8162         Use stl/bits/std_stdexcept.h instead of this file?
8163         * bits/sbuf_iter.h : Tweak.
8164         * src/misc-inst.cc: Tweak.
8165
8166 1998-10-09  Benjamin Kosnik  <bkoz@haight.constant.com>
8167
8168         * bits/std_stdexcept.h: New file.
8169         * src/stdexcept.cc: Define the following:
8170         logic_error::what()
8171         runtime_error::what()
8172
8173         * src/misc-inst.cc: New file.
8174         * src/Makefile.in (libstdc___la_SOURCES): Add misc-inst.cc.
8175         (libstdc___la_OBJECTS): Add misc-inst.lo.
8176
8177         * bits/basic_string.h: Disable non-standard ctor declarations.
8178         * bits/string.tcc: Disable definitions as well.
8179         * src/string.cc: Disable <ios> dependancies.
8180         * bits/sbuf_iter.h (std): Add default to template parameter for
8181         ostreambuf_iterator and istreambuf_iterator.
8182         * bits/std_iosfwd.h: Change istreambuf_iterator to
8183         basic_istreambuf_iterator. Likewise for ostreambuf.
8184         * bits/locfacets.tcc (__match_parallel): Fix typo.
8185         * src/ios.cc (imbue): Remove the _G_HAVE_LOCALE guards around
8186         ios_base::imbue.
8187         * bits/std_streambuf.h: Define _Streambuf_base::getloc().
8188         * bits/std_istream.h: Define the following:
8189         get (basic_streambuf<char_type,_Traits>& __sb, char_type __delim)
8190         get (char_type* __s, streamsize __n, char_type __delim);
8191         getline (char_type* __s, streamsize __n, char_type __delim)
8192         * bits/loccore.h : FIXME friend template code for use_facet.
8193         Add std_stdexcept.h include so that range_error will be defined.
8194         Add explicit conversion to string for range_error throws. (HACK?)
8195
8196 1998-10-8  Ulrich Drepper  <drepepr@cygnus.com>
8197
8198         * configure.in: Check for sincos, sincosf, and sincosl.
8199         * src/complex.cc (polar): Use sincos if available.
8200
8201         * bits/c++config.h: Fix hack to get LONG_LONG* definitions on Linux.
8202         * stl/bits/std_limits.h: Include bits/c++config.h.  HACK!!!
8203
8204         * math/clog10.c: Fix typo (FP_INIFITE_P -> INFINITE_P).
8205
8206         * math/cpow.c: Use c_log, not clog.
8207         * math/cpowf.c: Likewise.
8208         * math/cpowl.c: Likewise.
8209
8210         * math/cexp.c: Remove unused fpclassify calls.  Use FINITE_P instead
8211         of isfinite call.
8212
8213         * math/mathconf.h (FINITE_P, FINITEF_P, FINITEL_P): Define using
8214         isfinite macro if it is available.
8215         (INFINITE_P, INFINITEF_P, INFINITEL_P): Define using isinf macro.
8216
8217         * math/ccosf.c: Use appropriate test macros for this type.
8218         * math/ccoshf.c: Likewise.
8219         * math/ccoshl.c: Likewise.
8220         * math/ccosl.c: Likewise.
8221         * math/cexpf.c: Likewise.
8222         * math/cexpl.c: Likewise.
8223         * math/clog10f.c: Likewise.
8224         * math/clog10l.c: Likewise.
8225         * math/clogf.c: Likewise.
8226         * math/clogl.c: Likewise.
8227         * math/csinf.c: Likewise.
8228         * math/csinhf.c: Likewise.
8229         * math/csinhl.c: Likewise.
8230         * math/csinl.c: Likewise.
8231         * math/csqrtf.c: Likewise.
8232         * math/csqrtl.c: Likewise.
8233         * math/ctanf.c: Likewise.
8234         * math/ctanhf.c: Likewise.
8235         * math/ctanhl.c: Likewise.
8236         * math/ctanl.c: Likewise.
8237
8238 1998-10-06  Benjamin Kosnik  <bkoz@bliss.nabi.net>
8239
8240         * bits/basic_ios.h: Fix previous change.
8241
8242 1998-10-06  Benjamin Kosnik  <bkoz@bliss.nabi.net>
8243
8244         * bits/basic_ios.h: Add const_cast<basic_ios&>
8245         (operator void*): As per 5.2.9 p 2, make sure static_cast is
8246         well-formed.
8247         * bits/char_traits.h: No _CharT for specialization, change to 0.
8248         * bits/basic_string.h: As per 9.4.2 p4, initialize with
8249         constant-initializer.
8250         * bits/locfacets.tcc: Add template parameter to initialization list.
8251
8252 1998-10-02  Benjamin Kosnik  <bkoz@loony.cygnus.com>
8253
8254         * bits/basic_string.h: Should just be <, not <=.
8255
8256 1998-10-01  Benjamin Kosnik  <bkoz@bliss.nabi.net>
8257
8258         * bits/string.tcc (compare): Fix for strings that are similar, but
8259         not the same length.
8260
8261 1998-09-04  Brendan Kehoe  <brendan@cygnus.com>
8262
8263         * bits/c++config.h: For __linux__, define _GNU_SOURCE.  This is
8264         required for us to get LONG_LONG_{MIN,MAX} out of gcc's limits.h.
8265         We can't check for __GLIBC__ here, since this header can be read
8266         before any system one (that would lead to features.h) being used.
8267
8268         * stl/bits/stl_config.h (__STL_LONG_LONG): Re-enabled
8269
8270         * stl/bits/std_limits.h [__STL_LONG_LONG]: Fix usage to use
8271         LONG_LONG_MIN, LONG_LONG_MAX, and ULONG_LONG_MAX.
8272
8273         * stl/bits/stl_config.h: Don't do __STL_LONG_LONG, it uses
8274         LONGLONG_{MIN,MAX} which I can't find the origin of.
8275
8276 1998-09-03  Brendan Kehoe  <brendan@cygnus.com>
8277
8278         * stl/bits/stl_iterator.h: Add extern decl of cin for now; where
8279         should this come from, if not iostream.h?
8280         (class istream_iterator): Make the new operator!= a friend also.
8281
8282         * stl/bits/stl_config.h: Define __STL_HAS_WCHAR_T,
8283         __STL_MEMBER_TEMPLATE_CLASSES, and __STL_LONG_LONG.  Don't include
8284         _G_config.h like the egcs one does.
8285
8286 1998-09-01  Brendan Kehoe  <brendan@cygnus.com>
8287
8288         * bits/string.tcc: Call `_M_destroy' instead of `destroy'.
8289
8290         * bits/valarray_meta.h: Throughout, rename _Expr typedefs to be
8291         _Expr1 (or _Expr_def if it's taken), and change definitions.
8292         Avoids redecl of the template parm.
8293
8294         * bits/string.tcc (basic_string copy ctor): Fix typo in declaration.
8295         (operator>>): Initialize __ERROR with ios_base::goodbit, not 0.
8296
8297         * bits/std_streambuf.h (_POSIX_SOURCE): Only define if it's not
8298         already done.
8299
8300         * src/locale-inst.cc: New file, **TOTAL HACK**.  There has GOT to
8301         be a better way to do this.
8302
8303         * src/stlinst.cc: New file.
8304
8305         * BUGS: New file, with various discovered bugs that need to be
8306         fixed.
8307
8308         * Makefile.in, math/Makefile.in, string/Makefile.in,
8309         src/Makefile.in: Reran automake.
8310
8311         Workarounds, these may not all be the final fixes:
8312
8313         * bits/basic_ios.h (class basic_ios): Make _M_strbuf be protected,
8314         not private, for basic_istream::get() in std_istream.h to be able
8315         to use it.
8316         (basic_ios::operator void*): Don't use static_cast for the false
8317         case.
8318         (basic_ios::copyfmt): Fix `rhs.except' to be `rhs.exceptions ()'.
8319         This appears to have been in sep94, but didn't get corrected
8320         afterwards.
8321
8322         * bits/basic_string.h (npos): Don't init here.
8323         * bits/string.tcc: Instead, do initialization here, to -1 instead
8324         of the size_type destructor.
8325
8326         * src/traits.cc, src/wtraits.cc: New files.
8327         * bits/char_traits.h: For char_traits<char> and
8328         char_traits<wchar_t>, declare static, but define over in the src
8329         files.
8330
8331         * bits/gslice.h: Comment out forward decls of _Array, valarray,
8332         gslice_array, and _GsliceExpression.
8333
8334         * bits/std_cstdio.h [__sparc__ && __svr4__]: #undef all of
8335         clearerr, feof, ferror, getc, getchar, putc, putchar, stdin,
8336         stdout, and stderr.  Note we do get unresolved refs to stdin, but
8337         that'll get fixed by the "true" solution.
8338
8339         * bits/std_ios.h: Include <bits/std_streambuf.h> to get the
8340         definition of basic_streambuf.h, which is used in basic_ios.h to
8341         call pubimbue.
8342
8343         * bits/std_streambuf.h: Don't include libio.h for now.
8344         (class basic_streambuf): Define missing methods pubimbue and
8345         getloc.
8346
8347         * src/Makefile.am (libstdc___la_SOURCES): Add stdexcept.cc,
8348         ios.cc, os_raw.cc, stdstreams.cc, locale.cc, localename.cc,
8349         locale-inst.cc, stlinst.cc, traits.cc, wtraits.cc.
8350
8351         * src/ios.cc: Instantiate basic_ios<char> and basic_ios<wchar_t>.
8352
8353         * src/locale.cc: Come up with munged versions of _S_toupper,
8354         _S_tolower, and _S_table instead of the glibc-specific ones, so
8355         they're at least defined, if not necessarily usable.  The glibc
8356         ones on any other system will yield unresolved refs to
8357         __ctype_{b,toupper,tolower}.
8358
8359         * src/string.cc: Define all of ADDCS, ADDPS, et al.  Add
8360         basic_ios, basic_istream, basic_ostream.  Don't do char_traits
8361         anymore cuz of the explicit specialization in char_traits.h.
8362         Also add _S_string_copy, but this doesn't fix it -- cf the BUGS
8363         file for the details.
8364
8365         * stl/bits/stl_algobase.h (equal): Fix to do `! (x==y)'.
8366         * stl/bits/stl_iterator.h (__distance): Likewise.
8367
8368         * stl/bits/stl_iterator.h: As with 8/18 set, define missing op!=,
8369         op>, op<=, and op>= for reverse_iterator.  Also add op!= for
8370         istream_iterator.
8371
8372 1998-08-26  Brendan Kehoe  <brendan@cygnus.com>
8373
8374         * bits/string.tcc (basic_string::compare (const char*)): Fix to
8375         return 0, not 1.
8376
8377 1998-08-25  Brendan Kehoe  <brendan@cygnus.com>
8378
8379         This should really be fixed with __asm__ directives renaming the
8380         symbol, but keeping the function.
8381         * math/clogf.c (c_logf): Renamed from `clogf'.
8382         * math/clogl.c (c_logl): Renamed from `clogl'.
8383         * math/complex-stub.h (c_logf, c_logl): Change decls.
8384
8385         * bits/locfacets.h (class _Numeric_get): For friend decls, rename
8386         _CharT and _InIter parms, since they duplicate the enclosing ones.
8387
8388 1998-08-19  Brendan Kehoe  <brendan@cygnus.com>
8389
8390         Deal with conflict of the iostreams `clog' and our internal
8391         complex number `clog'.
8392         * src/complex.cc: Call `c_log' instead of `clog'.
8393         * math/clog.c (c_log):: Renamed from clog.
8394         * math/complex-stub.h (c_log): Renamed from clog decl.
8395
8396         * bits/locfacets.h (class _Numeric_get): Tweak fwd decls of the
8397         get/put classes.
8398         (num_put::put): #if 0 long long version, since we don't declare or
8399         define the long long version of do_put.
8400
8401 1998-08-18 Nathan Myers <ncm@cantrip.org>
8402
8403         * bits/basic_string.h: add basic_string<>::push_back(), fix return
8404         type of get_allocator (thanks to Ryszard Kabatek).
8405         * bits/char_traits.h: make init order of fpos<> members
8406         match decl order.
8407         * bits/ios_base.h: fix decls of ios_base bitmask & enum types, add
8408         flags _S_fd_in etc. for special filebuf ctor.
8409         * bits/locfacets.h: make _Numeric_get and _Format_cache public
8410         to work around problems in friend declarations.
8411         * bits/locfacets.tcc: qualify _S_get_cache in num_get<>::get(..bool&),
8412         fix random type errors & typos
8413         * bits/std_fstream.h: major refitting to bypass libio (for now),
8414         instrument to use bits/fstream.tcc template definitions
8415         * bits/std_iosfwd.h: mess with wrappers
8416         * bits/std_istream.h: remove meaningless comment
8417         * bits/std_ostream.h: instrument to work with ostream.tcc.
8418         * bits/std_streambuf.h: instrument to work with streambuf.tcc
8419         * bits/fstream.tcc: template defs for <fstream>
8420         * bits/ostream.tcc: template defs for <ostream>
8421         * bits/streambuf.tcc: template defs for <streambuf>
8422         * bits/os_raw.h: thin OS interface wrapper, to bypass libio (for now).
8423         * Delete .cc files, replace with bits/*.tcc
8424         src/fstream.cc
8425         src/istream.cc
8426         src/ostream.cc
8427         src/streambuf.cc
8428         * Add files:
8429         src/os_raw.cc: thin interface to OS, to bypass libio (for now).
8430         src/stdstreams.cc: cout, cin, etc. definitions
8431         (these still need work: must be init'd before user statics.)
8432
8433
8434 1998-08-18  Brendan Kehoe  <brendan@cygnus.com>
8435
8436         Sent to SGI before checkin:
8437         * stl/bits/stl_vector.h (operator!=, operator>, operator<=,
8438         operator>=): Define.
8439         * stl/bits/stl_bvector.h (vector<bool>::flip): Define method.
8440         * stl/bits/stl_deque.h (operator!=, operator>, operator<=,
8441         operator>=): Define.
8442         (operator==, operator<): Add inline.
8443         * stl/bits/stl_map.h (operator!=, operator<, operator<=,
8444         operator>=): Define.
8445         * stl/bits/stl_multimap.h (operator!=, operator<, operator<=,
8446         operator>=): Define.
8447         * stl/bits/stl_list.h (operator!=, operator<, operator<=,
8448         operator>=): Define.
8449         * stl/bits/stl_set.h (operator!=, operator<, operator<=,
8450         operator>=): Define.
8451         * stl/bits/stl_multiset.h (operator!=, operator<, operator<=,
8452         operator>=): Define.
8453
8454         * bits/std_valarray.h (_Shift_left, _Shift_right): Inherit from
8455         unary_function.
8456
8457 1998-08-15 Nathan Myers <ncm@cantrip.org>
8458
8459         * bits/ios_base.h: change nominal bitmask and enum types to real enums
8460         * bits/locfacets.h: make _Format_cache bool names usable by num_get
8461         * bits/locfacets.tcc: make num_get<>::get(... bool&) use _Format_cache
8462         * bits/std_fstream.h: minor cleanups: ctors delegate to open()
8463         * bits/std_iosfwd.h: more bitmask changes, for ios_base::iostate
8464         * bits/std_sstream.h: formatting cleanups
8465
8466 1998-08-14 Nathan Myers <ncm@cantrip.org>
8467
8468         * bits/locfacets.tcc: implement num_get<>::do_get(..., bool&)
8469         * bits/locfacets.tcc: implement time_get<>::do_get_weekday
8470         * bits/locfacets.tcc: implement time_get<>::do_get_monthname
8471         * bits/locfacets.h:   fix missing argument in do_get_monthname
8472         (this is a bug in the standard, ref. 36 in my list.)
8473         * bits/locfacets.h: make month and day name caches mutable
8474         * bits/locfacets.tcc: various typos in get() functions
8475         * bits/sbuf_iter.h: fix omission in istreambuf_iterator::op++().
8476         * bits/std_streambuf.h: fix typo in sgetn (Brendan)
8477
8478 1998-08-12 Nathan Myers <ncm@cantrip.org>
8479         * move streambuf iterators to bits/sbuf_iter.h
8480         * optimize streambuf iterators
8481         * begin generalizing streambuf
8482         * begin implementing num_get<>::get (starting with bool)
8483         * patch stl/bits/stl_config.h so that relops operators are
8484         contained properly, out of the way.
8485
8486 1998-07-24 Nathan Myers <ncm@cantrip.org>
8487         * Fold in SGI 3.11 changes (uglified names, some algorithm
8488           improvements, very minor bug fixes.)
8489         * Uglify names elsewhere to match (s/_T/_Tp/).
8490         * Begin work on optimized streambuf
8491         * Put complex.cc in namespace std:: (thanks Martin)
8492
8493 1998-07-17 Nathan Myers <ncm@cantrip.org>
8494
8495         * bits/char_traits.h: add _Char_traits_match template.
8496         * bits/string.tcc: fix bugs in various find_last* members.
8497         * bits/basic_string.h: redeclare member _S_find.
8498         * stl/bits/stl_iterator.h: change member names in nonstandard
8499           templates bidirectional_reverse_iterator and
8500           random_access_reverse_iterator to match expected changes
8501           in upstream source.
8502         * src/string.cc: fix definitions of stream operators.
8503
8504 1998-07-14 16:06  Ulrich Drepper  <drepper@cygnus.com>
8505
8506         * Makefile.am (SUBDIRS): Add string.
8507
8508         * configure.in: Test for long double functions separately.  Test for
8509         ISO C 89 float functions.  Test for endian.h and sys/isa_defs.h.
8510         Generate string/Makefile.
8511
8512         * bits/c++config.h: Define mbstate_t for Solaris.
8513
8514         * bits/char_traits.h: Remove unused #if.
8515
8516         * bits/std_cwchar.h: Declare wide char string functions.
8517
8518         * m4/stringfcts.m4: New file.
8519
8520         * math/complex-stub.h: Declare nan.
8521         * math/nan.c: New file.
8522
8523         * math/mathconf.h: Hack around missing endian.h file.
8524         Handle missing NAN definition.
8525         Handle missing float math functions.
8526
8527         * src/Makefile.am (libstdc___la_LIBADD): Add libstring.la.
8528         (libstdc___la_LDFLAGS): Set version information.
8529
8530         * src/complexl.cc: Don't compile any code if no long double functions
8531         are available.
8532
8533         * string/Makefile.am: New file.
8534         * string/dummy.c: New file.
8535         * string/wmemchr.c: New file.
8536         * string/wmemcmp.c: New file.
8537         * string/wmemcpy.c: New file.
8538         * string/wmemmove.c: New file.
8539         * string/wmemset.c: New file.
8540
8541 1998-07-14 10:45  Ulrich Drepper  <drepper@cygnus.com>
8542
8543         * configure.in: Make it work.
8544         * install-sh: New file.
8545         * missing: New file.
8546         * mkinstalldirs: New file.
8547         * m4/mathfcts.m4: New file.
8548         * math/Makefile.am: New file.
8549
8550         * bits/std_complex.h (conj): Mark specializations as inline.
8551
8552         * math/carg.c: New file.
8553         * math/cargf.c: New file.
8554         * math/cargl.c: New file.
8555         * math/mycabs.c: New file.
8556         * math/mycabsf.c: New file.
8557         * math/mycabsl.c: New file.
8558         * math/signbit.c: New file.
8559         * math/signbitf.c: New file.
8560         * math/signbitl.c: New file.
8561
8562         * math/ccos.c: Avoid ISO C 9x functionality.
8563         * math/ccosf.c: Likewise.
8564         * math/ccosh.c: Likewise.
8565         * math/ccoshf.c: Likewise.
8566         * math/ccoshl.c: Likewise.
8567         * math/ccosl.c: Likewise.
8568         * math/cexp.c: Likewise.
8569         * math/cexpf.c: Likewise.
8570         * math/cexpl.c: Likewise.
8571         * math/clog.c: Likewise.
8572         * math/clog10.c: Likewise.
8573         * math/clog10f.c: Likewise.
8574         * math/clog10l.c: Likewise.
8575         * math/clogf.c: Likewise.
8576         * math/clogl.c: Likewise.
8577         * math/cpow.c: Likewise.
8578         * math/cpowf.c: Likewise.
8579         * math/cpowl.c: Likewise.
8580         * math/csin.c: Likewise.
8581         * math/csinf.c: Likewise.
8582         * math/csinh.c: Likewise.
8583         * math/csinhf.c: Likewise.
8584         * math/csinhl.c: Likewise.
8585         * math/csinl.c: Likewise.
8586         * math/csqrt.c: Likewise.
8587         * math/csqrtf.c: Likewise.
8588         * math/csqrtl.c: Likewise.
8589         * math/ctan.c: Likewise.
8590         * math/ctanf.c: Likewise.
8591         * math/ctanh.c: Likewise.
8592         * math/ctanhf.c: Likewise.
8593         * math/ctanhl.c: Likewise.
8594         * math/ctanl.c: Likewise.
8595
8596         * math/complex-stub.h: New file.
8597
8598         * math/mathconf.h: New file.
8599
8600         * src/Makefile.am: New file.
8601
8602         * src/complex.cc: Use mathconf.h instead of complex.h.
8603         Don't use cabs, always use __mycabs.
8604
8605 1998-02-13  Brendan Kehoe  <brendan@cygnus.com>
8606
8607         * iterator (class reverse_iterator): Do some tweaks to be in sync
8608         w/ the FDIS.