2000-09-15 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
* src/locale.cc (locale::locale(const char* __name)): Consolidate
name setting. Add checks for NULL __name pointers. Remove calls to
_S_initialize() as initial locale initialization can either be
assumed, or needs to be made consistent throughout locale
constructors.
(locale::locale(const locale& __other, const char* __name,
category __cat): Add checks for NULL name. Add checks for
assignment to self.
* src/localename.cc (locale::_Impl:: _Impl(const _Impl& __other,
const string& __name, category __cat, size_t __refs)): Set correct
name, has_name values.
* testsuite/22_locale/ctor_copy_dtor.cc (test01): More tests.
* docs/22_locale/locale.html: New file, more unfinished docs...
From-SVN: r36451
2000-09-14 Brendan Kehoe <brendan@zen.org>
* bits/string.tcc (_Rep::_S_max_size): Use typename for its size_type
return type.
* src/Makefile.an (headers): Also install backward/fstream.h.
* src/Makefile.in: Regenerate.
* bits/char_traits.h (char_traits<_CharT>::get_state,
char_traits<char>::get_state, char_traits<wchar_t>::get_state): Pass
argument in by reference, not by value. Uglify to _S_get_state.
(char_traits<*>::__eos): Uglify to _S_eos.
* bits/std_ostream.h (ends(basic_ostream<_CharT, _Traits>& __os)):
Change __eos to _S_eos.
From-SVN: r36417
2000-09-11 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
* acinclude.m4 (GLIBCPP_CHECK_GNU_MAKE): Remove test != "0".
* aclocal.m4: Regenerate.
* configure: Regenerate.
* bits/c++config (__GLIBCPP__): Update, in the hopes of making a
snapshot release soon.
(_GNU_SOURCE): Define this in the header files, as ISO C99 support
is pretty much assumed.
* testsuite/22_locale/global_templates.cc: New file. Add tests for
use_facet and has_facet.
* bits/codecvt.h (codecvt<_InT, _ExT, __enc_traits>::do_out):
Modify/correct iconv signatures for glibc2.2.
From-SVN: r36344
2000-09-09 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
* bits/localefwd.h (locale::_Impl): Scope out types to public.
(locale): Make _Impl declaration public.
From-SVN: r36283
2000-09-07 Phil Edwards <pme@sources.redhat.com>
Add bits for --enable-maintainer-mode:
- turns on enable_debug
(doing "--enable-maint --disable-debug" will DTRT)
- turns on -Werror, now off by default
* acinclude.m4: Add bits.
* aclocal.m4: Regenerate.
* configure.in: Add defaults for GLIBCPP_ENABLE_DEBUG.
* configure: Regenerate.
From-SVN: r36252
2000-09-07 Brad Garcia <bgarcia@laurelnetworks.com>
* bits/stl_tree.h: Make operators !=, == type safe for map, set.
* testsuite/23_containers/set_operators.cc: New file. Should not
compile.
* testsuite/23_containers/map_operators.cc: New file. Ditto.
From-SVN: r36247
2000-09-06 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
* acinclude.m4 (GLIBCPP_ENABLE_CSTDIO): Force glibc_satisfactory
to no, so that libstdc++-v3's libio will be built on glibc-2.2
systems.
* aclocal.m4: Regenerate.
* configure: Regenerate.
* */Makefile.in: Regenerate.
* bits/std_cwctype.h: Put in temporary hack to work around -O2 +
glibc 2.1.x unsigned errors. Or disable -Werror by default...
* testsuite/23_containers/vector_element_access.cc: New file.
* bits/stl_config.h (__STL_THROW_RANGE_ERRORS): Define.
From-SVN: r36218
2000-09-01 Benjamin Kosnik <bkoz@cygnus.com>
* src/locale-inst.cc: Remove pre-instantiation of unicode
codecvt types. Now unnecessary, as locale header now correct.
From-SVN: r36105
2000-08-31 Benjamin Kosnik <bkoz@cygnus.com>
* bits/locale_facets.tcc (_S_build_float_format): Move ...
* src/locale.cc: Here.
* bits/locale_facets.tcc (num_get::_M_extract): Clean up generic
definition. Move specialization to ...
* src/locale.cc: Here.
* bits/locale_facets.tcc: Move _Format_cache specializations to ...
* src/locale.cc: Here.
* bits/locale_facets.tcc: Move use_facet<ctype> specializations to ...
* src/locale.cc: Here.
* bits/std_locale.h: Note that locale_facets.tcc should be
included here, for standards conformance. It may increase
compile times though. For the time being, enable.
* testsuite/22_locale/facet.cc: New file, some parts commented out
for the time being.
* mkcheck.in: Append total time to test summary file.
* bits/sbuf_iter.h : Formatting tweaks.
Clean up static const data member definitions.
* src/locale.cc: Add definitions for all missing locale,
locale::_Imp, and locale::id static data members.
(ctype<char>): Add table_size define.
(money_base): Add _S_default_pattern, uglify.
* bits/localefwd.h: Add definitions for static members of _Count_ones.
* bits/locale_facets.h: Tweaks.
* bits/locale_facets.tcc: Tweaks.
* bits/string.tcc: Add definition for npos.
* bits/ios_base.h: Tweaks.
* bits/ios_base.h (ios_base::Init::_M_ios_base_init): Change to
_S_ios_base_init.
* src/ios.cc: And here. Add _S_local_words definition.
Add definitions for __ios_flags const static data.
* src/codecvt.cc: Same for __enc_traits.
* src/locale-inst.cc: Remove money_base data member definition
here.
From-SVN: r36093
2000-08-30 Phil Edwards <pme@sources.redhat.com>
* docs/22_locale/codecvt.html: Behind-the-scenes ASCII->HTML
tweaks for certain browsers.
From-SVN: r36067
2000-08-24 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
* docs/22_locale/howto.html: Add notes on codecvt implementation.
* docs/22_locale/codecvt.html: New file. In progress.
From-SVN: r35975
2000-08-23 Phil Edwards <pme@sourceware.cygnus.com>
* acconfig.h: _GLIBCPP_USING_THREADS and some workaround types added.
* acinclude.m4: New macro, GLIBCPP_ENABLE_WCHAR. Set the threads
definition as well, and some minor spelling/spacing fixes. If
building libio, check for certain typedefs.
* libio/_G_config.h: Wrap _IO_MTSAFE_IO in _GLIBCPP_USING_THREADS.
Conditionally define _LARGEFILE64_SOURCE, otherwise the 64-bit types
will never be there.
* libio/libio.h: In the null case, _IO_lock_t can't just be void.
* src/string-inst.cc: Use _GLIBCPP_USE_WCHAR_T.
* configure.in: Update the cache a bit more often.
* mkcheck.in: For check-install, also need to -I the testsuite dir.
From-SVN: r35901
* bits/valarray_array.h (__valarray_min, __valarray_max): Fix
thinko. Diagnostic messages really need to be improved for
template argument deduction.
From-SVN: r35804
2000-08-15 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
* bits/codecvt.h: New file.
* src/codecvt.cc: New file.
* bits/std_locale.h: Add include here.
* src/Makefile.am (headers): Add codecvt.h
(sources): Add codecvt.cc.
* src/Makefile.in: Regenerate.
* bits/locale_facets.h (codecvt): Re-implement. Rename _Codecvt to
__codecvt_abstract_base in an attempt to point some light this way...
Move __enc_traits and codecvt bits to codecvt.h.
* src/locale-inst.cc: Remove codecvt<wchar_t, wchar_t, mbstate_t>
explicit instantiation. Separate out codecvt instantations, simplify.
* src/locale.cc: Move codecvt bits to codecvt.cc
From-SVN: r35737
2000-08-14 Levente Farkas <lfarkas@mindmaker.hu>
* bits/std_fstream.h: Remove duplicate typdefs for ofstream and
wofstream, filebuf, wfilebuf, fstream, wfstream.
* bits/std_streambuf.h: Same for streambuf, wstreambuf.
* bits/std_sstream.h: Same for stringstream and wstringstream.
Same for stringbuf, wstringbuf, istringstream, wistringstream,
ostringstream, wostringstream.
* testsuite/26_numerics/valarray.cc: Add test.
From-SVN: r35681
* configure: Make enable_threads and enable_shared defaults
explicit. Substitute enable_threads into generated Makefiles.
* configure.in: Accept *-*-linux* not just *-*-linux-gnu*.
* libtool.m4: Accept *-*-linux* not just *-*-linux-gnu*.
gcc:
* configure.in: Accept *-*-linux* not just *-*-linux-gnu*.
* fixinc/inclhack.def: Likewise.
* fixinc/mkfixinc.sh: Likewise.
* configure: Regenerate.
* fixinc/fixincl.x: Regenerate.
* install.texi: Document equivalence of linux and linux-gnu.
libio:
* configure.in: Accept *-*-linux* not just *-*-linux-gnu*.
Honor --disable-threads.
libstdc++:
* configure.in: Accept *-*-linux* not just *-*-linux-gnu*.
Honor --disable-threads.
libstdc++-v3:
* configure: Regenerate after change to ../libtool.m4.
libobjc:
* configure: Regenerate after change to ../libtool.m4.
From-SVN: r35680
2000-08-09 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
Preliminary wchar_t implementation, with trivial encodings.
* docs/configopts.html: Add bits about canonical configure option
checking.
* testsuite/27_io/iostream_objects.cc: Replace this file (which
has newly-declared-illegal mixing of wide/narrow stdstreams) with...
* testsuite/27_io/narrow_stream_objects.cc: New file.
* testsuite/27_io/wide_stream_objects.cc: New file.
* bits/fstream.tcc (underflow): Temporarily hack a solution
together that writes from the external file to the internal
buffers. This removes codecvt from the loop, and is incorrect.
(_M_really_overflow): Same here.
* testsuite/21_strings/inserters_extractors.cc (test05): Tweaks.
2000-08-08 Benjamin Kosnik <bkoz@cygnus.com>
Ulrich Drepper <drepper@cygnus.com>
* config/c_io_libio.h: Tweak.
* config/c_io_libio_codecvt.c: New file.
* libio/Makefile.am: Add c_codecvt.c.
* libio/Makefile.in: Regenerate.
* libio/genops.c (_IO_unbuffer_write): Don't call _IO_SETBUF if the
stream is not orientated.
* acinclude.m4: Add config/c_io_libio_codecvt.c dummy file, until
encoding gets fleshed out.
* bits/basic_file.h: Add specialization declarations.
* config/c_io_libio.cc: Add specializations for pbackfail, uflow.
* config/c_io_libio.h: Add __c_wfile_type.
* bits/basic_file.h: Add _M_wfile.
* config/c_io_libio.cc (__basic_file<char>): Initialize the
streams without setting the orientation of the underlying FILE to
either wide or narrow.
(__basic_file<wchar_t>)): Enable tricky wchar_t io bits.
From-SVN: r35584