Commit Graph

159 Commits

Author SHA1 Message Date
Benjamin Kosnik
c766fc5f1c stl_iterator.h (reverse_iterator): Inherit from iterator.
2001-06-22  Benjamin Kosnik  <bkoz@redhat.com>

	* include/bits/stl_iterator.h (reverse_iterator): Inherit from
	iterator.
	(back_insert_iterator): Same.
	(front_insert_iterator): Same.
	(insert_iterator): Same.

	* testsuite/20_util/raw_storage_iterator.cc: Modify.
	* testsuite/24_iterators/reverse_iterator.cc: New file.
	* testsuite/24_iterators/back_insert_iterator.cc: New file.
	* testsuite/24_iterators/front_insert_iterator.cc: New file.
	* testsuite/24_iterators/insert_iterator.cc: New file.

From-SVN: r43524
2001-06-23 00:08:47 +00:00
Phil Edwards
41104fd541 *: Revert comment/license change from yesterday for all except libsupc++/unwind-cxx.h.
2001-06-22  Phil Edwards  <pme@sources.redhat.com>

	* include/*:  Revert comment/license change from yesterday for all
	except libsupc++/unwind-cxx.h.
	* src/bitset.cc:  Likewise.
	* src/strstream.cc:  Likewise.

From-SVN: r43513
2001-06-22 19:53:32 +00:00
Phil Edwards
daa19534a9 algo.h: Add "GPL plus runtime exception" comment.
2001-06-21  Phil Edwards  <pme@sources.redhat.com>

	* include/backward/algo.h:  Add "GPL plus runtime exception" comment.
	* include/backward/algobase.h:  Likewise.
	* include/backward/alloc.h:  Likewise.
	* include/backward/bvector.h:  Likewise.
	* include/backward/defalloc.h:  Likewise.
	* include/backward/deque.h:  Likewise.
	* include/backward/function.h:  Likewise.
	* include/backward/hash_map.h:  Likewise.
	* include/backward/hash_set.h:  Likewise.
	* include/backward/hashtable.h:  Likewise.
	* include/backward/heap.h:  Likewise.
	* include/backward/iterator.h:  Likewise.
	* include/backward/list.h:  Likewise.
	* include/backward/map.h:  Likewise.
	* include/backward/multimap.h:  Likewise.
	* include/backward/multiset.h:  Likewise.
	* include/backward/pair.h:  Likewise.
	* include/backward/rope.h:  Likewise.
	* include/backward/set.h:  Likewise.
	* include/backward/slist.h:  Likewise.
	* include/backward/stack.h:  Likewise.
	* include/backward/strstream:  Likewise.
	* include/backward/tempbuf.h:  Likewise.
	* include/backward/tree.h:  Likewise.
	* include/backward/vector.h:  Likewise.
	* include/bits/pthread_allocimpl.h:  Likewise.
	* include/bits/std_algorithm.h:  Likewise.
	* include/bits/std_bitset.h:  Likewise.
	* include/bits/std_deque.h:  Likewise.
	* include/bits/std_functional.h:  Likewise.
	* include/bits/std_iterator.h:  Likewise.
	* include/bits/std_list.h:  Likewise.
	* include/bits/std_map.h:  Likewise.
	* include/bits/std_memory.h:  Likewise.
	* include/bits/std_numeric.h:  Likewise.
	* include/bits/std_queue.h:  Likewise.
	* include/bits/std_set.h:  Likewise.
	* include/bits/std_stack.h:  Likewise.
	* include/bits/std_utility.h:  Likewise.
	* include/bits/std_vector.h:  Likewise.
	* include/bits/stl_algo.h:  Likewise.
	* include/bits/stl_algobase.h:  Likewise.
	* include/bits/stl_alloc.h:  Likewise.
	* include/bits/stl_bvector.h:  Likewise.
	* include/bits/stl_construct.h:  Likewise.
	* include/bits/stl_deque.h:  Likewise.
	* include/bits/stl_function.h:  Likewise.
	* include/bits/stl_heap.h:  Likewise.
	* include/bits/stl_iterator.h:  Likewise.
	* include/bits/stl_iterator_base_funcs.h:  Likewise.
	* include/bits/stl_iterator_base_types.h:  Likewise.
	* include/bits/stl_list.h:  Likewise.
	* include/bits/stl_map.h:  Likewise.
	* include/bits/stl_multimap.h:  Likewise.
	* include/bits/stl_multiset.h:  Likewise.
	* include/bits/stl_numeric.h:  Likewise.
	* include/bits/stl_pair.h:  Likewise.
	* include/bits/stl_pthread_alloc.h:  Likewise.
	* include/bits/stl_queue.h:  Likewise.
	* include/bits/stl_raw_storage_iter.h:  Likewise.
	* include/bits/stl_relops.h:  Likewise.
	* include/bits/stl_set.h:  Likewise.
	* include/bits/stl_stack.h:  Likewise.
	* include/bits/stl_tempbuf.h:  Likewise.
	* include/bits/stl_threads.h:  Likewise.
	* include/bits/stl_tree.h:  Likewise.
	* include/bits/stl_uninitialized.h:  Likewise.
	* include/bits/stl_vector.h:  Likewise.
	* include/bits/type_traits.h:  Likewise.
	* include/ext/hash_map:  Likewise.
	* include/ext/hash_set:  Likewise.
	* include/ext/rope:  Likewise.
	* include/ext/ropeimpl.h:  Likewise.
	* include/ext/slist:  Likewise.
	* include/ext/stl_hash_fun.h:  Likewise.
	* include/ext/stl_hashtable.h:  Likewise.
	* include/ext/stl_rope.h:  Likewise.
	* libsupc++/unwind-cxx.h:  Likewise.
	* src/bitset.cc:  Likewise.
	* src/strstream.cc:  Likewise.

From-SVN: r43496
2001-06-21 23:03:00 +00:00
Gabriel Dos Reis
8164237cfc indirect_array.h (indirect_array<>::operator=): Make copy and assignment operator public.
* include/bits/indirect_array.h (indirect_array<>::operator=):
	Make copy and assignment operator public.  Implement.  Format.

	* include/bits/valarray_array.h (__valarray_copy): Add overloads
	for copy between index arrays.  Format.

From-SVN: r43483
2001-06-21 12:01:09 +00:00
Benjamin Kosnik
3768cee7ca stl_raw_storage_iter.h: Format.
2001-06-18  Benjamin Kosnik  <bkoz@redhat.com>

	* include/bits/stl_raw_storage_iter.h: Format. Correct derivation.
	* testsuite/20_util/raw_storage_iterator.cc: Same.

        * include/bits/stl_alloc.h (_S_chunk_alloc): Change malloc to
        operator new.
        (__mem_interface): New typedef for switching between malloc and new.
	* testsuite/20_util/allocator_members.cc: New file.

	* testsuite/20_util/comparisons.cc: New file.
	* testsuite/20_util/pairs.cc: New file.

From-SVN: r43451
2001-06-19 01:51:33 +00:00
John David Anglin
91bfd02dae globals.cc: Define globals _GLIBCPP_mutex_init ()...
* src/globals.cc: Define globals _GLIBCPP_mutex_init (),
	_GLIBCPP_mutex_address_init (), _GLIBCPP_once, _GLIBCPP_mutex
	and _GLIBCPP_mutex_address.
	* include/bits/stl_threads.h (_STL_mutex_lock): Use above to provide
	once-only runtime initialization of _M_lock mutex when
	__GTHREAD_MUTEX_INIT_FUNCTION is defined.
	(__STL_MUTEX_INITIALIZER): Provide initializer for _STL_mutex_lock
	for __GTHREAD_MUTEX_INIT_FUNCTION case.

From-SVN: r43360
2001-06-14 06:06:48 +00:00
Gabriel Dos Reis
7c301abf46 slice_array_assignment.cc (main): New test.
* testsuite/26_numerics/slice_array_assignment.cc (main): New test.

        * include/bits/slice_array.h (slice_array<>::operator=): Make
        public and implement.
        (slice_array<>::slice_array): Make copy-constructor public.

        * include/bits/valarray_array.h (__valarray_copy): Add another
        overload to copy between strided arrays.

From-SVN: r43352
2001-06-13 22:16:24 +00:00
Benjamin Kosnik
dd48b185dc acinclude.m4 (GLIBCPP_CONFIGURE): Bump version to 3.0.0.
2001-06-13  Benjamin Kosnik  <bkoz@redhat.com>

	* acinclude.m4 (GLIBCPP_CONFIGURE): Bump version to 3.0.0.
	* aclocal.m4: Regenerate.
	* configure: Regenerate.
	* include/bits/c++config (__GLIBCPP__): Update date.

From-SVN: r43332
2001-06-13 17:51:38 +00:00
Benjamin Kosnik
7f3e3e0a22 fpos.h (fpos::operator-): Don't return reference, return original, non-modified version.
2001-06-12  Benjamin Kosnik  <bkoz@redhat.com>

	* include/bits/fpos.h (fpos::operator-): Don't return reference,
	return original, non-modified version.
	(fpos::operator+): Same.

From-SVN: r43287
2001-06-13 01:14:42 +00:00
Loren J. Rittle
ddf1e65262 porting.texi: Add documentation about libstdc++-v3-specific macros that are currently...
libstdc++/2071
	* porting.texi: Add documentation about libstdc++-v3-specific
	macros that are currently included in os_defines.h files.

	* config/basic_file_stdio.h (sys_getc): New method.
	(sys_ungetc): New method.
	* include/bits/basic_file.h: (sys_getc): New method signature.
	(sys_ungetc): New method signature.

	* include/bits/fstream.tcc (underflow): Add conditional code
	paths which avoid using short seeks on streams (especially
	useful when the stream might be interactive or a pipe).  At
	the moment, this alternate path only avoids seeking when the
	``buffer size'' of underflow() is 1 since the C standard only
	guarantees buffer space for one ungetc (this technique could
	be extended since *-*-solaris* supports buffering for 4 calls
	to ungetc and *-*-*bsd* supports buffering limited only by
	memory resources).  Also, _GLIBCPP_AVOID_FSEEK must be defined
	in a port's os_defines.h file for this alternate path to even
	be considered.  As a bonus, the idiom of using getc/ungetc
	requires no system calls whereas fseek maps to one or two
	system call(s) on many platforms.

	* config/os/bsd/freebsd/bits/os_defines.h (_GLIBCPP_AVOID_FSEEK):
	Define it.
	* config/os/solaris/solaris2.5/bits/os_defines.h
	(_GLIBCPP_AVOID_FSEEK): Likewise.
	* config/os/solaris/solaris2.6/bits/os_defines.h
	(_GLIBCPP_AVOID_FSEEK): Likewise.
	* config/os/solaris/solaris2.7/bits/os_defines.h
	(_GLIBCPP_AVOID_FSEEK): Likewise.

From-SVN: r43278
2001-06-12 23:09:09 +00:00
Benjamin Kosnik
30f69f71d8 std_sstream.h: Add allocator_type, as per DR 251.
2001-06-12  Benjamin Kosnik  <bkoz@redhat.com>

	libstdc++/3142
	* include/bits/std_sstream.h: Add allocator_type, as per DR 251.

	libstdc++/3141
	* include/bits/istream.tcc (getline, get): Fix as per DR 243.

	libstdc++/3140
	* include/bits/std_bitset.h (bitset::set): Fix as per DR 186.

	libstdc++/3139
	* include/bits/limits_generic.h: Fix as per DR 184.

From-SVN: r43273
2001-06-12 22:14:08 +00:00
Benjamin Kosnik
3b0fd4bcdb basic_string.h (string::compare): Adjust signatures as per DR 5.
2001-06-11  Benjamin Kosnik  <bkoz@redhat.com>

	libstdc++/3126
	* include/bits/basic_string.h (string::compare): Adjust signatures
	as per DR 5.
	* include/bits/basic_string.tcc: And here.

	libstdc++/2346
	* config/c_io_stdio.h: Remove whitespace.
	* testsuite/27_io/istream_seeks.cc (test03): Add regression.
	(test02): Add regression.
	* testsuite/27_io/istream_seeks-3.tst: New file.

From-SVN: r43240
2001-06-12 02:30:37 +00:00
Benjamin Kosnik
d52a984783 ostream.tcc (ostream::seekp): Add error checking as per DR 129.
2001-06-11  Benjamin Kosnik  <bkoz@redhat.com>

	libstdc++/3114
	* include/bits/ostream.tcc (ostream::seekp): Add error checking as
	per DR 129.
	* include/bits/istream.tcc (istream::seekg): Same.
	* testsuite/27_io/istream_seeks.cc: Fix.

	libstdc++/3113
	* include/bits/stl_function.h (binder2nd): Fix as per DR 109.
	(binder1st): Same.
	* include/bits/std_queue.h: Add c++config.h.
	* testsuite/20_util/binders.cc: New test.

From-SVN: r43201
2001-06-11 19:20:20 +00:00
Benjamin Kosnik
68fe6226c8 std_cwchar.h: Alphabetize.
2001-06-10  Benjamin Kosnik  <bkoz@redhat.com>

	* include/c_std/bits/std_cwchar.h: Alphabetize.
	* include/bits/char_traits.h: Tweak.
	* acinclude.m4 (GLIBCPP_CHECK_WCHAR_T_SUPPORT): Check for
	everything used by std_cwchar.h.
	* aclocal.m4: Regenerate.
	* configure.in: Regenerate.
	* config.h.in: Regenerate.

From-SVN: r43167
2001-06-11 04:36:59 +00:00
Benjamin Kosnik
61c7194612 acinclude.m4 (GLIBCPP_ENABLE_C99): Add stdio.h checking.
2001-06-10  Benjamin Kosnik  <bkoz@redhat.com>

	* acinclude.m4 (GLIBCPP_ENABLE_C99): Add stdio.h checking.
	Add checking for strtof, _Exit in stdlib.h
	* aclocal.m4: Regenerate.
	* configure.in: Regenerate.
	* include/c_std/bits/std_cstdio.h: Alphabetize lists.
	(snprintf): Put C99 functions into __gnu_cxx namespace.
	(vfscanf): Same.
	(vscanf): Same.
	(vsnprintf): Same.
	(vsscanf): Same.
	* include/c_std/bits/std_cstdlib.h: Alphabetize lists. Put undefs
	for C99 functions within _GLIBCPP_USE_C99 guard.
	(_Exit): Same.
	(strtof): Same.
	(strtold): Same.
	* include/bits/locale_facets.tcc: Check if C99 is enabled.
	* include/c_std/bits/std_cwchar.h (__gnu_cxx): Put undefs within
	C99 guard.
	* include/c_std/bits/cmath.tcc: Formatting tweak.
	* include/c_std/bits/std_cmath.h: Same.

From-SVN: r43161
2001-06-10 23:26:34 +00:00
Loren J. Rittle
5e21803304 threads-no.h: Remove file.
* config/threads-no.h: Remove file.
	* config/threads-posix.h: Remove file.

	* acconfig.h (_GLIBCPP_USE_THREADS): Remove.
	(_GLIBCPP_SUPPORTS_WEAK): Add (required by namespace-clean gthr*.h).
	(_GLIBCPP_HAVE_GTHR_DEFAULT): Likewise.
	* config.h.in: Regenerate.

	* acinclude.m4 (GLIBCPP_ENABLE_THREADS): Completely rework to
	setup and use gthr*.h files.  In particular, make gthr.h files
	namespace-clean in the staging area (they don't have to be for
	libgcc.a).
	* aclocal.m4: Regenerate.
	* configure: Regenerate.

	* src/Makefile.am (build_headers): Remove bits/c++threads.h
	and add bits/gthr.h bits/gthr-single.h bits/gthr-default.h.
	* src/Makefile.in: Regenerate.

	* include/bits/c++config: Cleanup threading configuration macros.
	In particular, define __STL_GTHREADS macro which controls...
	* include/bits/stl_threads.h: ...a brand new gthr.h-based
        configuration here.

	* config/c_io_stdio.h: Include staged gthr.h instead of local
	thread configuration file.  Always use __gthread_mutex_t
	instead of __mutext_type (or int).
	* include/bits/std_fstream.h: Likewise.

	* docs/html/17_intro/howto.html: Remove placeholder comment in
	case this configuration patch didn't make it.  Add advice that
	section only applies if configured with --enable-threads.
	* docs/html/23_containers/howto.html: Reword to make clear
	that _PTHREADS is no longer required for any port to be
	correctly using STL with threads.  Add advice that section
	only applies if configured with --enable-threads.

Co-Authored-By: John David Anglin <dave@hiauly1.hia.nrc.ca>

From-SVN: r42998
2001-06-08 03:53:35 +00:00
Benjamin Kosnik
5de197f210 basic_ios.tcc: Formatting tweaks.
2001-06-05  Benjamin Kosnik  <bkoz@redhat.com>

	libstdc++/3045
	* include/bits/basic_ios.tcc: Formatting tweaks.
	* include/bits/ios_base.h: Formatting tweaks.
	* src/ios.cc (ios_base::Init::_S_ios_create): Use filebufs here.
	(ios_base::Init::_S_ios_destroy): ..and here. Explicitly call dtors.
	* src/globals.cc: Allocate filebufs for standard streams here.
	(buf_cout, buf_cin, buf_cerr): Like so.
	(buf_wcout, buf_wcin, buf_wcerr): And so.
	* testsuite/27_io/ios_init.cc: Add.

From-SVN: r42922
2001-06-06 01:31:58 +00:00
Benjamin Kosnik
fdf1b60d2b locale_facets.h (ctype<_CharT>): Add definitions for generic ctype virtuals.
2001-06-04  Brendan Kehoe  <brendan@zen.org>
	    Benjamin Kosnik  <bkoz@redhat.com>

	libstdc++/3017
	* include/bits/locale_facets.h (ctype<_CharT>): Add definitions
	for generic ctype virtuals.
	* src/locale.cc: Minor tweaks, naming consistency.
	* testsuite/22_locale/ctype.cc: Add test.

From-SVN: r42872
2001-06-04 19:25:41 +00:00
Kenny Simpson
31990cd54c PR libstdc++/3035 and PR libstdc++/3036
2001-06-04  Kenny Simpson <theonetruekenny@yahoo.com>
            Phil Edwards  <pme@sources.redhat.com>

	PR libstdc++/3035 and PR libstdc++/3036
	* include/bits/stl_pair.h:  Fix pair ctor and make_pair according
	to LWG DR 181 and 265.

Co-Authored-By: Phil Edwards <pme@gcc.gnu.org>

From-SVN: r42865
2001-06-04 18:04:52 +00:00
Phil Edwards
5c626f5260 re PR libstdc++/3034 (DR 214)
2001-06-04  Phil Edwards  <pme@sources.redhat.com>

	PR libstdc++/3034
	* include/bits/stl_multiset.h (find, lower_bound, upper_bound,
	equal_range):  Add const overloads as per LWG DR 214.
	* include/bits/stl_set.h:  Likewise.

From-SVN: r42862
2001-06-04 17:50:18 +00:00
Brendan Kehoe
84b9f762bb std_bitset.h (bitset::test): Fix __pos >= _Nb comparison; all positions must be < _Nb.
2001-06-04  Brendan Kehoe  <brendan@zen.org>
            Phil Edwards  <pme@sources.redhat.com>

	* include/bits/std_bitset.h (bitset::test):  Fix __pos >= _Nb
	comparison; all positions must be < _Nb.
	* testsuite/23_containers/bitset_members.cc:  New file.

Co-Authored-By: Phil Edwards <pme@gcc.gnu.org>

From-SVN: r42859
2001-06-04 17:42:22 +00:00
Brendan Kehoe
5890be1892 re PR libstdc++/3016 (stl_queue.h bugs wrt compliance)
2001-06-04  Brendan Kehoe  <brendan@zen.org>

	PR libstdc++/3016
	* include/bits/stl_queue.h (classes queue, priority_queue):  Fix
	ctors to match the standard.

From-SVN: r42857
2001-06-04 17:34:36 +00:00
Jeffrey Oldham
c0e17dafb2 char_traits.h (move): Reverse qualification of memmove with std::.
2001-06-04  Jeffrey Oldham  <oldham@codesourcery.com>

	* include/bits/char_traits.h (move): Reverse qualification of
	memmove with std::.
	(copy): Reverse qualification of memcpy with std::.

From-SVN: r42856
2001-06-04 16:57:04 +00:00
Jeffrey Oldham
1007e271a3 char_traits.h (move): Qualify memmove with std::.
2001-06-04  Jeffrey Oldham  <oldham@codesourcery.com>

	* include/bits/char_traits.h (move): Qualify memmove with std::.
	(copy): Qualify memcpy with std::.
	* testsuite/27_io/filebuf_virtuals.cc (test01): Qualify strlen and
	strncmp with std::.
	(test02): Likewise.
	* testsuite/27_io/stringbuf_virtuals.cc (test01): Likewise.

From-SVN: r42854
2001-06-04 15:46:03 +00:00
Scott Snyder
59bd14d84a istream.tcc: Include std_ostream.h.
2001-05-27  scott snyder  <snyder@fnal.gov>

	libstdc++/2976
	* include/bits/istream.tcc: Include std_ostream.h.

From-SVN: r42754
2001-05-31 20:33:06 +00:00
Benjamin Kosnik
bfa1e6b11b acconfig.h (_GLIBCPP_BUGGY_FLOAT_COMPLEX): Remove.
2001-05-30  Benjamin Kosnik  <bkoz@redat.com>

	* acconfig.h (_GLIBCPP_BUGGY_FLOAT_COMPLEX): Remove.
	(_GLIBCPP_BUGGY_COMPLEX): Remove.
	* config.h.in: Regenerate.
	* acinclude.m4 (GLIBCPP_CHECK_COMPLEX_MATH_COMPILER_SUPPORT): Remove.
	* aclocal.m4: Regenerate.
	* configure.in: Don't call it.
	* configure: Regenerate.

	libstdc++/2970
	* src/complex_io.cc (operator<<(ostream&, const complex&): Fix.
	* testsuite/26_numerics/complex_inserters_extractors.cc (test01):
	New test.

	libstdc++/2985
	* include/bits/std_complex.h: Include sstream. Put definitions for
	complex inserters and extractors here, and remove them from...
	* src/complex_io.cc: ...here.
	* include/bits/basic_ios.h (basic_ios::__numput_type): Add _Traits
	parameter.
	(basic_ios::__numget_type): Same.
	* include/bits/std_istream.h: Same.
	* include/bits/std_ostream.h: Same.
	* include/bits/sbuf_iter.h (ostreambuf_iterator): Fix typo in base
	class iterator template arguments.
	* src/locale-inst.cc: Add explicit has_facet instantiations.
	* include/bits/basic_ios.h (basic_ios::_M_get_fctype_ios): Remove.
	(_M_get_fnumput): Remove.
	(_M_get_fnumget): Remove.
	(basic_ios::_M_check_facet): New function.
	(basic_ios::_M_cache_facets): New function.
	* include/bits/basic_ios.tcc: Definition for _M_cache_facets.
	(basic_ios::imbue): Call _M_cache_facets.
	(basic_ios::init): Same.
	* include/bits/istream.tcc: Format, use _M_check_facet.
	* include/bits/ostream.tcc: Same.
	* include/bits/locale_facets.tcc (__output_float): Change
	signature, add _Traits.
	* testsuite/26_numerics/complex_inserters_extractors.cc (test02):
	New test.

From-SVN: r42743
2001-05-31 12:14:56 +00:00
Loren J. Rittle
85836c0b63 c++config (__USE_MALLOC): Do not define it.
* include/bits/c++config (__USE_MALLOC): Do not define it.
	Document why not and give pointers to more information.

	* docs/html/23_containers/howto.html: Update documentation
	to reflect recent understanding of problem.
	* docs/html/17_intro/howto.html: Likewise.

From-SVN: r42732
2001-05-31 02:45:04 +00:00
Benjamin Kosnik
a16ad77946 inserters_extractors.cc (test09): New test.
2001-05-24  Benjamin Kosnik  <bkoz@redhat.com>

	libstdc++/2830
	* testsuite/21_strings/inserters_extractors.cc (test09): New test.
	* include/bits/ostream.tcc: Format to match istream.tcc.
	(operator<<(basic_ostream __out, const basic_string __s)): Fix.

From-SVN: r42557
2001-05-25 04:24:12 +00:00
Benjamin Kosnik
d422980b3f basic_ios.tcc: Small tweak.
2001-05-24  Benjamin Kosnik  <bkoz@redhat.com>

	libstdc++/2832
	* include/bits/basic_ios.tcc: Small tweak.
	* include/bits/std_fstream.h (ifstream): Add buffer member. Adjust
	ctors and dtors, and rdbuf settings.
	(ofstream): Same.
	(fstream): Same.
	* include/bits/std_sstream.h: Same, but for stringstream classes.
	* testsuite/27_io/ostringstream_members.cc: New.
	* testsuite/27_io/stringstream_members.cc: New.
	* testsuite/27_io/fstream_members.cc: New.
	* testsuite/27_io/ifstream_members.cc: Add test.
	* testsuite/27_io/istringstream_members.cc: Add test.
	* testsuite/27_io/ofstream_members.cc: Add test.

From-SVN: r42547
2001-05-24 23:09:53 +00:00
Gabriel Dos Reis
3e0105a41d c++config (__NO_MATH_INLINES): Move to...
* include/bits/c++config(__NO_MATH_INLINES): Move to...
      * config/os/gnu-linux/bits/os_defines.h: ...here.

From-SVN: r42538
2001-05-24 20:51:33 +00:00
Gabriel Dos Reis
cf3e18dd1e c++config (__NO_MATH_INLINES): New macro.
* include/bits/c++config (__NO_MATH_INLINES): New macro.
      * testsuite/26_numerics/fabs_inline.cc (main): New test.

From-SVN: r42533
2001-05-24 18:38:20 +00:00
Benjamin Kosnik
990101f973 mkcheck.in (static_fail): Remove S_FLAG decoration on output.
2001-05-21  Benjamin Kosnik  <bkoz@redhat.com>

	* mkcheck.in (static_fail): Remove S_FLAG decoration on output.

	* include/bits/std_sstream.h (stringbuf::setbuf): Require both
	arguments to be non-null.
	* include/bits/fstream.tcc (filebuf::_M_allocate_buffers): Only
	try allocations if allocated size is greater than zero.
	(filebuf::_M_filebuf_init): Change to
	(filebuf::_M_allocate_file): Which is what it does now.
	(filebuf::_M_allocate_bufers): Change to
	(filebuf::_M_allocate_internal_buffer): This, and create
	(filebuf::_M_allocate_pback_buffer): New.
	(filebuf::_M_destroy_internal_buffer): New.
	(filebuf::_M_buf_allocated): New data member.
	(filebuf::setbuf): Use new logic, allow use of external buffer.
	* testsuite/27_io/stringbuf_virtuals.cc: New file.
	* testsuite/27_io/filebuf_virtuals.cc: New file.

From-SVN: r42458
2001-05-22 18:48:19 +00:00
Benjamin Kosnik
52a5725062 acinclude.m4 (GLIBCPP_EXPORT_INSTALL_INFO): Set glibcpp_srcdir amd glibcpp_prefixdir with absolute paths.
2001-05-18  Benjamin Kosnik  <bkoz@redhat.com>

	* acinclude.m4 (GLIBCPP_EXPORT_INSTALL_INFO): Set glibcpp_srcdir
	amd glibcpp_prefixdir with absolute paths.

	* include/bits/c++config (__GLIBCPP__): Bump.
	* acinclude.m4 (GLIBCPP_CONFIGURE): Correct version number.

From-SVN: r42253
2001-05-18 07:24:24 +00:00
Gabriel Dos Reis
5c542b4a19 std_valarray.h (valarray<>::operator[] const): Return a const reference.
* include/bits/std_valarray.h (valarray<>::operator[] const):
        Return a const reference.
        * testsuite/26_numerics/valarray_const_bracket.cc: New test.

From-SVN: r42245
2001-05-18 05:47:46 +00:00
Benjamin Kosnik
39003c9902 std_fstream.h (basic_filebuf): Change signature.
2001-05-07  Benjamin Kosnik  <bkoz@redhat.com>

	libstdc++/2523
	* include/bits/std_fstream.h (basic_filebuf): Change signature.
	* include/bits/fstream.tcc (basic_filebuf): Change bool argument
	to int_type, pass in buffer size info.
	* include/bits/std_streambuf.h (_M_is_indeterminate): Check for
	unbuffered situation.
	(underflow): Remove codecvt bits for the time being.
	* include/bits/istream.tcc (istream::sentry): Avoid sputbackc call.
	* include/bits/locale_facets.tcc (_M_extract): Cache dereference
	values from iterators, clean.
	* src/locale.cc: Ditto.
	* include/bits/sbuf_iter.h: Format.
	* src/ios.cc: Explicitly pass in buffer sizes at creation time.
	* testsuite/27_io/narrow_stream_objects.cc: Add tests.
	* testsuite/27_io/filebuf.cc: Tweaks.
	* testsuite/27_io/filebuf_members.cc: Tweaks.

From-SVN: r41908
2001-05-08 03:07:56 +00:00
Benjamin Kosnik
a85afd69a3 sbuf_iter.h (istreambuf_iterator): Correct.
2001-05-01  Benjamin Kosnik  <bkoz@redhat.com>

	* include/bits/sbuf_iter.h (istreambuf_iterator): Correct.
	* testsuite/24_iterators/istreambuf_iterator.cc (test02): Add test.

	* include/bits/std_sstream.h (stringbuf): Leak
	copied string.
	* testsuite/24_iterators/ostreambuf_iterator.cc: Correct.

From-SVN: r41755
2001-05-02 05:50:20 +00:00
Benjamin Kosnik
b85381b911 ostreambuf_iterator.cc: New file.
2001-04-30  Benjamin Kosnik  <bkoz@redhat.com>

	libstdc++/2627
	* testsuite/24_iterators/ostreambuf_iterator.cc: New file.
	* include/bits/sbuf_iter.h (ostreambuf_iterator): Remove bogus
	specializations.

From-SVN: r41694
2001-04-30 20:53:31 +00:00
Benjamin Kosnik
2458d950f4 stl_iterator_base_funcs.h (__advance): Fix.
2001-04-30  Benjamin Kosnik  <bkoz@redhat.com>

	libstdc++/2964
	* include/bits/stl_iterator_base_funcs.h (__advance): Fix.

From-SVN: r41691
2001-04-30 18:07:51 +00:00
Benjamin Kosnik
9d377fd443 stl_iterator_base_funcs.h (__advance): Fix.
2001-04-30  Benjamin Kosnik  <bkoz@redhat.com>

	libstdc++/2964
	* include/bits/stl_iterator_base_funcs.h (__advance): Fix.

From-SVN: r41690
2001-04-30 17:48:41 +00:00
Benjamin Kosnik
5db6f3de56 std_cmath.h (std): Explicitly inject c99 names.
2001-04-25  Benjamin Kosnik  <bkoz@redhat.com>

	* include/c_std/bits/std_cmath.h (std): Explicitly inject c99 names.
	* include/c_std/bits/std_cstdlib.h (std): Same, except for llabs.
	* include/c_std/bits/std_cwchar.h (std): Same.
	* acconfig.h (std): Remove c99 injection into std.
	* config.h.in: Regenerate.

	* testsuite/README: Fix typo.

	* include/bits/codecvt.h: Remove warnings.

From-SVN: r41568
2001-04-26 02:23:52 +00:00
Phil Edwards
e906926f5f stl_bvector.h: Replace __ITERATOR_CATEGORY with __iterator_category.
2001-04-20  Phil Edwards  <pme@sources.redhat.com>

	* include/bits/stl_bvector.h:  Replace __ITERATOR_CATEGORY with
	__iterator_category.

From-SVN: r41468
2001-04-20 20:16:37 +00:00
Benjamin Kosnik
7cda84dc70 acconfig.h (_GLIBCPP_USE_C99): Add.
2001-04-19  Benjamin Kosnik  <bkoz@redhat.com>

	* acconfig.h (_GLIBCPP_USE_C99): Add.
	* config.h.in: Regenerate.
	* acinclude.m4 (GLIBCPP_ENABLE_C99): New macro. Test for ISO/IEC
	9899: 1999 support.
	* aclocal.m4: Regenerate.
	* configure.in (GLIBCPP_ENABLE_C99): Use it, on by default.
	* configure: Regenerate.
	* configure.in (GLIBCPP_ENABLE_LONG_LONG): Set default to yes.
	* configure: Regenerate.
	* include/c_std/bits/std_cwchar.h: Put wcstold, wcstoll, wcstoull
	into c99.
	* include/c_std/bits/std_cmath.h: Bring C99 functions into c99
	namespace.
	* include/c_std/bits/std_cstdlib.h: Same.
	* docs/html/configopts.html: Update.
	* testsuite/26_numerics/c99_macros.cc: Edit, use cmath instead of
	math.h
	(test_c99_classify): Add.
	* config/os/gnu-linux/bits/os_defines.h (_GNU_SOURCE): Remove.
	(_ISOC99_SOURCE): Remove.

	* include/bits/stl_algo.h: Use _GLIBCPP_HAVE_DRAND48.
	* include/bits/c++config (__STL_ASSERTIONS): Simplify.
	* acinclude.m4 (GLIBCPP_CHECK_STDLIB_SUPPORT): Add check for drand48.
	* aclocal.m4: Regenerate.
	* configure: Regenerate.

From-SVN: r41451
2001-04-20 08:59:25 +00:00
Benjamin Kosnik
47e982b247 map_operators.cc: Add dg-excess-errors.
2001-04-17  Benjamin Kosnik  <bkoz@redhat.com>

	* testsuite/23_containers/map_operators.cc: Add dg-excess-errors.
	* testsuite/23_containers/set_operators.cc: Same.

	* include/bits/c++config: Add _GLIBCPP_CONCEPT_CHECKS. Disable by
	default.
	(__GLIBCPP__): Bump from value of last release.
	* include/bits/concept_check.h: Default to off, edit comments.
	* src/stl-inst.cc: Use _GLIBCPP_CONCEPT_CHECKS.
	* src/Makefile.am (AM_CXXFLAGS): Remove _GLIBCPP_NO_CONCEPT_CHECKS.
	* src/Makefile.in: Regenerate.

From-SVN: r41397
2001-04-18 01:06:05 +00:00
Phil Edwards
996f4bb1cd stl_algo.h (std::transform): Disable the check on _OutputIter for now.
2001-04-17  Phil Edwards  <pme@sources.redhat.com>

	* include/bits/stl_algo.h (std::transform):  Disable the check
	on _OutputIter for now.

From-SVN: r41393
2001-04-17 23:11:28 +00:00
Martin Reinecke
f2d43953d7 boost_concept_check.h (_Mutable_ContainerConcept): Properly uglify member.
2001-04-14  Martin Reinecke <martin@MPA-Garching.MPG.DE>

      * include/bits/boost_concept_check.h(_Mutable_ContainerConcept):
      Properly uglify member.

From-SVN: r41354
2001-04-14 09:46:13 +00:00
Phil Edwards
948421e0c9 stl_algobase.h (equal): Use EqualOpConcept instead of EqualityComparableConcept.
2001-04-13  Phil Edwards  <pme@sources.redhat.com>

	* include/bits/stl_algobase.h (equal):  Use EqualOpConcept instead
	of EqualityComparableConcept.

From-SVN: r41334
2001-04-13 09:28:56 +00:00
Phil Edwards
62bb0c97fd boost_concept_check.h: Uglify, fork from Boost.
2001-04-13  Phil Edwards  <pme@sources.redhat.com>

	* include/bits/boost_concept_check.h:  Uglify, fork from Boost.
	* include/bits/concept_check.h:  Uglify.
	* include/bits/stl_algo.h:  Likewise.
	* include/bits/stl_algobase.h:  Likewise.
	* include/bits/stl_deque.h:  Likewise.
	* include/bits/stl_heap.h:  Likewise.
	* include/bits/stl_iterator_base_funcs.h:  Likewise.
	* include/bits/stl_list.h:  Likewise.
	* include/bits/stl_map.h:  Likewise.
	* include/bits/stl_multimap.h:  Likewise.
	* include/bits/stl_multiset.h:  Likewise.
	* include/bits/stl_numeric.h:  Likewise.
	* include/bits/stl_queue.h:  Likewise.
	* include/bits/stl_set.h:  Likewise.
	* include/bits/stl_stack.h:  Likewise.
	* include/bits/stl_vector.h:  Likewise.
	* include/ext/hash_map:  Likewise.
	* include/ext/hash_set:  Likewise.
	* include/ext/slist:  Likewise.

From-SVN: r41333
2001-04-13 09:03:18 +00:00
Gabriel Dos Reis
0f7190689e std_valarray.h (valarray<>::operator[]): Make inline.
* include/bits/std_valarray.h(valarray<>::operator[]): Make
      inline.

From-SVN: r41190
2001-04-08 16:20:49 +00:00
Benjamin Kosnik
14bc1c0e15 stl_algobase.h (std::equal): avoid use of possibly-undefined operator != (one line patch).
2001-04-06  Joe Buck  <jbuck@welsh-buck.org>

        * stl_algobase.h (std::equal): avoid use of possibly-undefined
        operator != (one line patch).

From-SVN: r41170
2001-04-06 22:21:29 +00:00
Benjamin Kosnik
8d66b99ac2 Prepare for libstdc++-2.92.
2001-04-05  Benjamin Kosnik  <bkoz@redhat.com>

	Prepare for libstdc++-2.92.
	* docs/html/17_intro/RELEASE-NOTES (New): Update.
	* docs/html/configopts.html: Fix formatting.
	* README (file): Updates.
	* include/bits/c++config (__GLIBCPP__): Update.

From-SVN: r41136
2001-04-06 01:47:11 +00:00