1 2001-01-30 Benjamin Kosnik <bkoz@redhat.com>
3 * config/c_locale_generic.cc: Remove langinfo include.
5 2001-01-29 Benjamin Kosnik <bkoz@redhat.com>
7 Preliminary named locales.
8 * acinclude.m4 (GLIBCPP_ENABLE_CLOCALE): New macro.
9 * aclocal.m4: Regenerate.
10 * configure.in: Use it.
11 * configure: Regerate.
12 * src/Makefile.am (sources): Add c++locale.cc.
13 (build_headers): Add c++locale.h.
14 * src/Makefile.in: Regenerate.
15 * config/c_locale_gnu.h: New file.
16 * config/c_locale_gnu.cc: New file. Non-inline member functions
17 for named locales, gnu-specific.
18 * config/c_locale_generic.h: New file.
19 * config/c_locale_generic.cc: New file. Non-inline member
20 functions for named locales, generic version.
21 * docs/html/configopts.html: Add documentation on new options.
23 * include/bits/locale_facets.h (class _Messages): Remove.
24 (class _Moneypunct): Remove.
25 * src/locale-inst.cc: Remove.
27 * include/bits/locale_facets.h (class _Collate): Remove.
28 * src/locale-inst.cc (std): Remove.
29 * src/locale.cc: And here.
31 * include/bits/localefwd.h (locale::_M_coalesce): New
32 function. Correctly put together multi-name locales.
33 (_Impl(const _Impl&, category, size_t)): Remove.
35 * include/bits/localefwd.h (locale::_Impl): Remove _M_construct_*
37 (_M_normalize_category_names): Remove.
38 (_M_replace_categories): Fix.
40 * src/localename.cc (locale::_Impl::_M_construct_collate): Remove.
41 (locale::_Impl::_M_construct_ctype): Remove.
42 (locale::_Impl::_M_construct_monetary): Remove.
43 (locale::_Impl::_M_construct_numeric): Remove.
44 (locale::_Impl::_M_construct_time): Remove.
45 (locale::_Impl::_M_construct_messages): Remove.
47 * include/bits/locale_facets.h (_Bad_use_facet): Remove.
48 (_Use_facet_failure_handle): Remove.
49 * src/locale.cc: Remove definitions.
50 * src/locale-inst.cc: And here.
52 * testsuite/22_locale/ctor_copy_dtor.cc (test01): Fixup. Add tests.
54 * src/localename.cc (locale::facet::_S_create_c_locale): Properly
55 create and error-check underlying locale object.
56 (locale::facet::_S_destroy_c_locale): Add, take care of properly
57 tearing down underlying locale object.
58 * include/bits/localefwd.h (locale::facet): Declare.
59 * testsuite/22_locale/members.cc: Don't test "fr_FR" locale for
60 correctness, as glibc apparently has incorrect info in it. Test
61 with it when it works again.....
63 * include/bits/localefwd.h (locale::_Impl::__vec_string):
64 Remove. Number of categories is fixed at six, so just simplify and
65 make this an array of strings.
66 (locale::_Impl::_M_has_name): Remove.
67 (locale::_Impl::_M_name): Remove.
68 (locale::_Impl::_M_category_names): Turns into...
69 (locale::_Impl::_M_names): ...this.
70 (locale::_Impl::_M_has_same_name()): New function.
71 * src/localename.cc (locale::_Impl::~_Impl()): Remove here.
72 (locale::_Impl::_Impl(size_t __refs, string __str)): Simplify
74 * src/locale.cc (locale::name()): Construct mangled name
75 accurately reflecting combined locale categories.
77 * src/locale.cc (locale::classic()): Don't initialize here.
78 * src/localename.cc (locale::_Impl::_Impl(size_t __num, size_t
79 __refs, bool __has_name, string __str): Do it here.
81 * include/bits/localefwd.h: _S_categories_num to
82 _S_num_categories. _S_facets_num to _S_num_facets.
83 (locale::id::id()): Explicitly set _M_index to zero.
84 * src/locale.cc: Same.
86 * src/locale.cc: (locale::locale(const char*)): Construct named
89 * src/locale.cc: Remove numpunct_byname ctors.
90 * testsuite/22_locale/numpunct_byname.cc: New file.
91 * testsuite/22_locale/numpunct.cc: New file.
93 * include/bits/localefwd.h (class locale): Change data members to
94 protected, from private.
95 (_Impl::_M_get_c_locale): Add member function.
96 (locale::facet::_M_get_global_impl()): Add member function.
97 * include/bits/locale_facets.h (numpunct::_M_init): Change to take
99 (numpunct::numpunct( __c_locale*, size_t)): Add additonal ctor for
101 * testsuite/22_locale/members.cc: New file, test name and combine.
103 * include/bits/locale_facets.h (class numpunct): Remove class
104 _Punct and _Numpunct. Rewrite class numpunct to be correct for
106 * include/bits/localefwd.h (locale::_Imp::_M_c_locale): Add.
107 * src/localename.cc (_Impl::~_Impl()): Call __frelocale.
108 (_Imp::_Impl(size_t, size_t, bool, string)) Initialize _M_c_locale.
109 * src/locale-inst.cc: Remove _Numpunct, _Punct instantiations.
110 * testsuite/22_locale/numpunct_char_members.cc: New file.
112 2001-01-28 Gabriel Dos Reis <gdr@codesourcery.com>
114 * testsuite/README: Add more comment.
115 * testsuite/lib/libstdc++.exp: Tweak comment.
117 2001-01-26 Benjamin Kosnik <bkoz@kredhat.com>
119 * libsupc++/pure.cc (writestr): Just use cstdio and std::fputs.
121 2001-01-25 Loren J. Rittle <ljrittle@acm.org>
123 * testsuite/21_strings/inserters_extractors.cc: Remove
124 explicit reference to 'testsuite/'.
126 2001-01-25 Richard Henderson <rth@redhat.com>
128 * config/cpu/alpha/bits/atomicity.h: Remove tricky .subsetion
129 bits. Fixes Tru64 build issues.
131 2001-01-25 Michael Sokolov <msokolov@ivan.Harhan.ORG>
133 * acinclude.m4 (GLIBCPP_CHECK_GNU_MAKE): Bourne shell portability bug
134 (use ${MAKE-make}, not ${MAKE:-make}).
135 * aclocal.m4, configure: Regenerate.
137 2001-01-25 Mark Mitchell <mark@codesourcery.com>
139 * src/ios.cc: Remove accidental inclusion of <stdio.h> in last
142 * src/Makefile.am (sources): Add globals.cc.
143 * src/Makefile.in: Regenerated.
144 * src/globals.cc: New file.
145 * src/ios.cc (cin): Don't define here, just declare extern.
154 2001-01-25 Phil Edwards <pme@sources.redhat.com>
156 * include/bits/std_iterator.h: Do not include stl_relops.h.
157 * include/bits/std_numeric.h: Ditto.
158 * include/bits/stl_algobase.h: Ditto.
159 * include/bits/stl_relops.h: Add comment warning about problems.
161 2001-01-25 Gabriel Dos Reis <gdr@codesourcery.com>
163 * testsuite/27_io/*.cc: Remove explicit reference to 'testsuite/'
164 in testcases. Prepare for the DejaGnu based framework.
165 * mkcheck.in: Adjust call to tests_flags. Don't mmkdir testsuite
166 directory -- it is now mkcheck working directory.
167 * tests_flags.in: Remove reference to $(top_srcdir). Use
169 * Makefile.am (check, check-install): Change mkcheck invocation
171 * Makefile.in: Regenerate.
173 2001-01-24 Mark Mitchell <mark@codesourcery.com>
175 * config/os/aix/bits/atomicity.h (__compare_and_swap): Remove.
176 (__always_swap): Likewise.
178 2001-01-23 Chris Demetriou <cgd@broadcom.com>
180 * libsupc++/exception_support.cc (__terminate_func): Remove
182 (__terminate_func_ptr): New typedef.
183 (__terminate, __terminate_set_func): New extern function
185 (std::terminate): Use __terminate function.
186 (std::set_terminate): Use __terminate_set_func function.
188 2001-01-23 Benjamin Kosnik <bkoz@redhat.com>
190 * configure.target: Just use os_include_dir always.
191 * configure.in: Remove calls to GLIBCPP_CHECK_CTYPE_SUPPORT.
192 Link atomicity files and ctype files here.
193 * configure: Regenerate.
194 * acinclude.m4 (GLIBCPP_CHECK_CTYPE_SUPPORT): Remove.
195 (GLIBCPP_ENABLE_ATOMICITY): Remove.
196 * aclocal.m4: Regenerate.
198 2001-01-23 Chris Demetriou <cgd@broadcom.com>
200 * configure.in: Place definition of MULTISUBDIR in
201 libsupc++/Makefile as is done for src/Makefile.
202 * configure: Regenerate.
204 2001-01-23 Phil Edwards <pme@sources.redhat.com>
206 * acinclude.m4: Cosmetic changes only.
207 * aclocal.m4: Regenerated.
208 * configure: Regenerated.
209 * configure.target: Update documented list of changed variables.
210 * docs/html/install.html: Fix typo.
211 * docs/html/20_util/howto.html: More notes on auto_ptr.
212 * docs/html/27_io/howto.html: More notes on streabufs.
213 * docs/html/faq/index.html: Add rel_ops problem and mention the
214 DEC as(1) .subsection difficulty.
215 * docs/html/faq/index.txt: Regenerated.
217 2001-01-23 Mark Mitchell <mark@codesourcery.com>
219 * ainclude.m4 (GLIBCPP_CHEC_MATH_DECLS_AND_LINKAGE_1): New macro.
220 (GLIBCPP_CHECK_MATH_SUPPORT): Use it.
221 (GLIBCPP_CHECK_TYPE_SUPPORT): Don't autoconf ctype information if
222 its already provided in config.target.
223 * aclocal.m4: Regenerated.
224 * configure: Likewise.
225 * configure.target: Set ctype_include_dir for lots of systems.
226 * libsupc++/Makefile.am: Explicitly include --tag disable-shared.
227 * libsupc++/Makefile.in: Regenerated.
229 2001-01-23 Gabriel Dos Reis <gdr@codesourcery.com>
231 * testsuite/lib/libstdc++.exp: Improve. Add support for @xxx#
234 * testsuite/README: Add comment.
236 2001-01-21 Phil Edwards <pme@sources.redhat.com>
238 * docs/html/configopts.html: Update for current status. Fix HTML.
239 * docs/html/install.html: Update for current status.
241 2001-01-20 Gabriel Dos Reis <gdr@merlin.codesourcery.com>
243 * testsuite/libstdc++.tests/tests.exp: New file.
244 * testsuite/lib/libstdc++.exp: Itou.
245 * testsuite/README: Itou.
247 2001-01-20 Gabriel Dos Reis <gdr@codesourcery.com>
249 * tests_flags.in: Just output the bare minimum to run tests.
250 Let's the caller do its own arrangement.
252 * mkcheck.in: Rename INC_PATH to INCLUDES. Adjust flags
255 2001-01-19 Gabriel Dos Reis <gdr@codesourcery.com>
257 * testsuite/17_intro: Prepare testcases for new style DejaGnu
260 2001-01-18 Gabriel Dos Reis <gdr@codesourcery.com>
262 * testsuite/libstdc++.tests, testsuite/lib: New directories.
264 2001-01-17 Loren J. Rittle <ljrittle@acm.org>
266 * mkcheck.in: Construct file names that match $objdir structure.
267 * testsuite/27_io/filebuf_members-1.txt: New file.
268 * testsuite/27_io/ifstream_members-1.txt: New file.
269 * testsuite/27_io/ostream_inserter_char-1.txt: New file.
271 * testsuite/27_io/ios_base_members_static.cc (test02): Add test.
272 * testsuite/27_io/ios_base_members_static-1.tst: Add expected output.
274 2001-01-17 Peter Schmid <schmid@snake.iap.physik.tu-darmstadt.de>
276 * testsuite/27_io/istream_sentry.cc (test02): Fix.
278 2001-01-17 Benjamin Kosnik <bkoz@redhat.com>
281 * include/bits/ios_base.h (ios_base::failure): Tighten up throw specs.
282 * src/ios.cc (ios_base::failure): Make definitions match.
283 * libsupc++/typeinfo (class bad_typeid): Add throw specs.
284 (class bad_cast): Same.
285 * libsupc++/exception (class exception): Add throw specs.
286 * libsupc++/exception_support.cc (set_terminate): Add throw specs.
287 (set_unexpected): Same.
288 (uncaught_exception): Same.
291 * docs/html/17_intro/C++STYLE (classname): Fix.
293 2001-01-16 Mark Mitchell <mark@codesourcery.com>
295 * src/gen-num-limits.cc (INSTANTIATIONS): New macro.
296 Use it do explicitly instantiate predicate<T> and value<T> for
299 2001-01-16 Nathan Sidwell <nathan@codesourcery.com>
301 * libsupc++/exception_support.cc (__cp_pop_exception): Fix
302 uninitialized thinko in last change.
304 2001-01-16 Mark Mitchell <mark@codesourcery.com>
306 * libsupc++/exception_support.cc (__cp_pop_exception): Change
309 2001-01-16 Benjamin Kosnik <bkoz@redhat.com>
311 * docs/html/17_intro/C++STYLE (classname): Add more existing
312 and stylish patterns.
315 * include/bits/istream.tcc (istream::sentry::sentry()): Set
316 failbit if the state of the stream is not good.
317 * testsuite/27_io/istream_sentry.cc (test02): Add test.
318 * testsuite/27_io/istream_manip.cc (test01): Modify.
321 reported by Paolo Carlini <pcarlini@unitus.it>
322 * include/bits/istream.tcc (operator>>(istream&, string&)): Fix.
323 * testsuite/21_strings/inserters_extractors.cc (test08): Add test.
326 * include/bits/std_streambuf.h (setp): Set _M_buf_size correctly.
327 * include/bits/streambuf.tcc (xsputn): Remove outside if clause.
328 (xsgetn): Same. Simplify.
329 * testsuite/27_io/streambuf.cc (test04): Add testcases.
331 reported by Larry Evans <jcampbell3@prodigy.net>
332 * include/bits/streambuf.tcc (streambuf::xsputn): Just check for
333 equality with eof on returned value from overflow.
335 2001-01-14 Andreas Jaeger <aj@suse.de>
337 * libio/libio.h: Add test for glibc 2.0.
339 2001-01-12 Benjamin Kosnik <bkoz@redhat.com>
341 * config/os/djgpp/bits/*: Fix dates.
343 * include/bits/basic_string.h (_S_find(const _CharT* __beg, const
344 _CharT* __end, _CharT __c): Remove.
345 * include/bits/basic_string.tcc: Substitute traits::find for _S_find.
346 * include/bits/char_traits.h: Tweak.
348 2001-01-12 Laurynas Biveinis <lauras@softhome.net>
350 * acinclude.m4 (GLIBCPP_CHECK_CTYPE_SUPPORT): check for DJGPP <ctype.h>
351 (LIB_AC_PROG_CXX): replace [/\\] with [\\/] to work around older
353 * aclocal.m4: regenerated.
354 * configure.target: set os_include_dir to config/os/djgpp under DJGPP.
355 * configure: regenerated.
356 * config/os/djgpp, config/os/djgpp/bits: new directories.
357 * config/os/djgpp/bits/ctype_base.h,
358 config/os/djgpp/bits/ctype_inline.h,
359 config/os/djgpp/bits/ctype_noninline.h,
360 config/os/djgpp/bits/os_defines.h: new files.
362 2001-01-11 Joseph S. Myers <jsm28@cam.ac.uk>
364 * include/c_std/bits/std_cstdio.h: Undef printf.
366 2001-01-10 Benjamin Kosnik <bkoz@redhat.com>
368 * src/ios.cc: Fix typo: change cout->wcout.
370 * src/Makefile.am (targetincludep): Fix for version-specific-libs.
371 * src/Makefile.in: Regenerate.
373 2001-01-10 Peter Schmid <schmid@snake.iap.physik.tu-darmstadt.de>
375 * include/bits/std_complex.h: Fix a typo.
377 2001-01-09 Benjamin Kosnik <bkoz@redhat.com>
380 Fixes for libstdc++/1576
381 * src/stdstreams.cc: Initialize with NULL filebuf. Delete
382 file, move contents into....
383 * src/ios.cc: ...Here. Put defines for iostreams objects and
384 initialization routines into one file to simplify DSO interaction.
385 * include/bits/std_iostream.h: Touch.
386 * include/bits/ios_base.h (_S_synched_with_stdio): Make static.
387 * src/Makefile.am (sources): Remove stdstreams.cc.
388 * src/Makefile.in: Regenerate.
390 2001-01-10 Gabriel Dos Reis <gdr@merlin.codesourcery.com>
392 * tests_flags.in (check_directory): Fix typo.
394 2001-01-09 Peter Schmid <schmid@snake.iap.physik.tu-darmstadt.de>
396 * include/bits/std_complex.h: Fix a typo.
398 2001-01-09 Loren J. Rittle <ljrittle@acm.org>
400 * config/os/bsd/freebsd/bits/ctype_inline.h (is): (Make right
401 code path:) Remove magic constants and restructure to handle
402 ctype.h bit mask layout changes more gracefully. (Make fast
403 code path:) Use __maskrune (), if available.
404 (is): Remove special case for digit and xdigit masks.
406 2001-01-09 Robert Lipe <robertlipe@usa.net>
408 * include/c_std/bits/std_ctime.h: Undefine difftime.
410 2001-01-09 Alexandre Oliva <aoliva@redhat.com>
412 * src/gen-num-limits.cc (signal_adapter): New template function.
413 (signal_handler): Use it, instead of signal.
414 (traps<T>): Likewise. Install SIGTRAP handler too. Don't
415 require both tests to trap to set trap_flag.
417 2001-01-08 Benjamin Kosnik <bkoz@redhat.com>
419 * include/bits/fpos.h (fpos:::fpos(streamoff __pos)): Explicitly
420 initialize mbstate_t member, name offset data members *off, not pos.
421 * include/bits/fstream.tcc (filebuf::filebuf): Same.
423 2001-01-08 Benjamin Kosnik <bkoz@redhat.com>
425 reported by Chris G. Demetriou <cgd@sibyte.com>
426 * configure.in: Change -linux-* to -linux*.
427 * configure: Regenerate.
429 2001-01-05 Benjamin Kosnik <bkoz@redhat.com>
431 Fix 27_io/filebuf_members.cc
432 * src/localename.cc (locale::_Impl::_Impl(const _Impl& __imp,
433 const string& __name, category __cat, size_t __refs): Set
434 _M_has_name with _M_name.
435 * include/bits/localefwd.h (locale::operator!=): Protect member
436 function call with this->.
437 * src/locale.cc (locale::operator==): Make fast checks first.
438 * include/bits/basic_ios.tcc (basic_ios::init): Simplify.
440 * include/bits/ios_base.h (_M_synced_with_stdio): Add data member
442 * src/ios.cc (ios_base::Init::Init): Initialize here.
443 (ios_base::sync_with_stdio): Set here.
445 2001-01-04 Loren J. Rittle <ljrittle@acm.org>
447 * config/c_io_stdio.cc (__basic_file<_CharT>::sys_open()): On
448 systems that support it, call dup() before fdopen().
450 2001-01-03 Benjamin Kosnik <bkoz@redhat.com>
452 * include/c_std/bits/std_cwctype.h: Include std_cwchar.h for wint_t.
453 * testsuite/17_intro/header_cwctype.cc (main): New file.
455 * src/Makefile.am (base_headers): Change.
456 * include/bits/std_string.h: And here.
457 * include/bits/string.tcc: Tweaks, move to...
458 * include/bits/basic_string.tcc: ...Here.
459 * src/string-inst.cc: Simplify, just instantiate the whole class,
460 not member-by-member.
462 2001-01-02 Benjamin Kosnik <bkoz@redhat.com>
464 * acinclude.m4 (GLIBCPP_ENABLD_CSTDIO): Add in default value.
465 * aclocal.m4: Regenerate.
466 * configure: Regenerate.
468 * include/bits/c++config (__GLIBCPP__): Bump version number.
470 * ChangeLog: Start new log for year 2001
471 * ChangeLog-2000: New file.
473 * docs/html/configopts.html: Make sure default values are current,
476 2001-01-01 Benjamin Kosnik <bkoz@fillmore.redhat.com>
478 * include/c_std/bits/std_cwchar.h: Same.
479 * testsuite/17_intro/header_cwchar.cc: Same.
480 * include/c_std/bits/std_ctime.h: Same.
481 * testsuite/17_intro/header_ctime.cc: Same.
482 * include/c_std/bits/std_cstdlib.h: Same.
483 Clean up undefs, make consistent with cwchar and cmath, etc.
484 * testsuite/17_intro/header_cstdlib.cc: Same.
485 * include/c_std/bits/std_cstdio.h: Same here.
486 * testsuite/17_intro/header_cstring.cc: Same.
487 * include/c_std/bits/std_cstring.h: Include std_cstddef.h for size_t.
488 * testsuite/17_intro/header_cstring.cc: New file. Check for
489 size_t in namespace std.
491 * include/c_std/bits/std_cwchar.h: Explicit checks for mbstate_t.
492 * acconfig.h (HAVE_MBSTATE_T): Add.
493 * config.h.in: Regenerate.
494 * acinclude.m4(GLIBCPP_CHECK_WCHAR_T_SUPPORT): Always test for
496 * aclocal.m4: Regenerate.
497 * configure: Regenerate.
498 * testsuite/17_intro/headers_c++.cc: New file.
499 * testsuite/17_intro/headers_c.cc: Small changes.
501 2001-01-01 David Billinghurst <David.Billinghurst@riotinto.com>
503 * tests_flags.in: Fix typo in usage.
505 * tests_flags.in: Set target specific LIBS for cygwin.