Commit Graph

301 Commits

Author SHA1 Message Date
Peter Schmid
17879500fb stl_vector.h (vector::_M_initialize_aux): Fix typo.
2001-07-06  Peter Schmid  <schmid@snake.iap.physik.tu-darmstadt.de>
        * include/bits/stl_vector.h (vector::_M_initialize_aux): Fix typo.

From-SVN: r43808
2001-07-06 12:28:48 +00:00
GCC Administrator
8a7496476a Daily bump.
From-SVN: r43802
2001-07-06 07:16:43 +00:00
GCC Administrator
ce0e8f03d9 Daily bump.
From-SVN: r43775
2001-07-05 07:16:17 +00:00
Jeffrey Oldham
98aff0b52e ropeimpl.h (_Rope_RopeRep::_M_free_c_string): Replace destroy by _Destroy.
2001-07-04  Jeffrey Oldham  <oldham@codesourcery.com>

	* include/ext/ropeimpl.h (_Rope_RopeRep::_M_free_c_string):
	Replace destroy by _Destroy.
	(_Rope_RopeRep::_S_free_string): Likewise.
	(rope::c_str()): Likewise.
	* include/ext/slist (_Slist_base::_M_erase_after>): Likewise.
	(_Slist_base::_M_erase_after): Likewise.
	(slist::_M_create_node): Replace construct by _Construct.
	(slist::pop_front): Replace destroy by _Destroy.
	* include/ext/stl_hashtable.h (hashtable::_M_new_node): Replace
	construct by _Construct.
	(hashtable::_M_delete_node): Replace destroy by _Destroy.
	* include/ext/stl_rope.h (rope::rope): Replace construct by
	_Construct.
	(rope::copy): Replace destroy by _Destroy.

From-SVN: r43764
2001-07-04 18:12:08 +00:00
GCC Administrator
e24a5cb1f3 Daily bump.
From-SVN: r43749
2001-07-04 07:16:47 +00:00
Benjamin Kosnik
1f46fc8e90 localefwd.h: Format.
2001-07-03  Benjamin Kosnik  <bkoz@redhat.com>

	* include/bits/localefwd.h: Format.
	* include/bits/locale_facts.tcc (locale::combine): Adjust.
	* src/locale.cc (locale::locale::(_Impl)): Don't call
	_M_add_reference.
	(locale::facet::_M_remove_reference): Simplify.
	* src/globals.cc (locale_impl_c): New. Format.
	(locale_c): New.
	* src/ios.cc (ios_base::Init::Init): Increment _S_ios_base_init last.

From-SVN: r43747
2001-07-04 02:39:02 +00:00
GCC Administrator
ff9c9107d8 Daily bump.
From-SVN: r43723
2001-07-03 07:16:12 +00:00
Benjamin Kosnik
213c2316b6 locale.cc (locale::locale(const char*)): Make sure global locales are initialized.
2001-07-02  Benjamin Kosnik  <bkoz@redhat.com>

	* src/locale.cc (locale::locale(const char*)): Make sure global
	locales are initialized.
	* include/bits/locale_facets.tcc (locale::combine): Refcout should
	be zero, not one as it's return-by-value.
	* testsuite/27_io/ios_base_callbacks.cc (test01): Don't check for
	named locales here.
	* testsuite/22_locale/ctor_copy_dtor.cc (test01): Instead, check
	for it here.
	(test02): Add test.
	* libsupc++/eh_alloc.cc: Use climits, not limits.h.

From-SVN: r43713
2001-07-02 23:08:28 +00:00
Stephen M. Webb
494fff4cea stl_construct.h (construct): Remove.
2001-07-01  Stephen M. Webb <stephen@bregmasoft.com>

	* include/bits/stl_construct.h (construct): Remove.
      	(destroy): Remove.
      	(__destroy): Replaced by use of iterator_traits.
	* include/bits/stl_deque.h: replaced HP iterator functions with
	iterator_traits.
        (construct): changed to _Construct.
	(destroy): changed to _Destroy.
	* include/bits/stl_tempbuf.h: Same.
	* include/bits/stl_tree.h: Same.
	* include/bits/stl_vector.h: Same.
	* include/backward/iterator.h (construct): moved definition to here.
	(destroy): Same.

From-SVN: r43701
2001-07-02 19:47:09 +00:00
GCC Administrator
071d36e295 Daily bump.
From-SVN: r43684
2001-07-02 07:16:12 +00:00
GCC Administrator
80617fee7e Daily bump.
From-SVN: r43668
2001-07-01 07:16:41 +00:00
GCC Administrator
bc2fa2fd2e Daily bump.
From-SVN: r43663
2001-06-30 07:17:41 +00:00
Benjamin Kosnik
13f83598b3 locale_facets.tcc (locale::combine): Clone _Impl.
2001-06-29  Benjamin Kosnik  <bkoz@redhat.com>

	* include/bits/locale_facets.tcc (locale::combine): Clone _Impl.
	before replacing facet.
	* include/bits/localefwd.h (locale::_Impl::_M_remove_reference):
	Correct decrement.
	* src/localename.cc (locale::_Impl): Correct ctor initialization
	lists. Initialize ref count with one. Simplify.
	* src/locale.cc: Add comment.
	* testsuite/22_locale/numpunct.cc (test01): Add derivation test.
	* testsuite/22_locale/numpunct_char_members.cc (test01): Add tests.
	* testsuite/22_locale/members.cc (test02): Fix.

From-SVN: r43661
2001-06-30 04:35:49 +00:00
GCC Administrator
b669108540 Daily bump.
From-SVN: r43652
2001-06-29 07:16:59 +00:00
GCC Administrator
72beea5653 Daily bump.
From-SVN: r43630
2001-06-28 07:16:17 +00:00
Phil Edwards
42526146aa algo.h: Add "GPL plus runtime exception" comment block, this time for real.
2001-06-27  Phil Edwards  <pme@sources.redhat.com>

	* include/backward/algo.h:  Add "GPL plus runtime exception" comment
	block, this time for real.
	* 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.
	* src/bitset.cc:  Likewise.
	* src/strstream.cc:  Likewise.

From-SVN: r43613
2001-06-27 17:09:53 +00:00
GCC Administrator
e63fc7bde1 Daily bump.
From-SVN: r43606
2001-06-27 07:16:10 +00:00
Benjamin Kosnik
f2f5472f06 streambuf.tcc (__copy_streambufs): Don't set eofbit.
2001-06-26  Benjamin Kosnik  <bkoz@fillmore.constant.com>
	                     <vakatov@ncbi.nlm.nih.gov>

	libstdc++/3272
	* include/bits/streambuf.tcc (__copy_streambufs): Don't set eofbit.
	* testsuite/27_io/ostream_inserter_other.cc (test04): Add test.
	* testsuite/27_io/istream_extractor_other.cc: Fix.

From-SVN: r43602
2001-06-27 01:07:29 +00:00
Benjamin Kosnik
75bef43405 stream_iterator.h (istream_iterator): Add copy ctor.
2001-06-26  Benjamin Kosnik  <bkoz@redhat.com>

	* include/bits/stream_iterator.h (istream_iterator): Add copy ctor.
	(ostream_iterator): Same.
	* include/bits/stl_iterator.h (front_insert_iterator::operator=):
	Change argument to const_reference.
	(back_insert_iterator): Same.

From-SVN: r43596
2001-06-26 23:12:45 +00:00
Benjamin Kosnik
d27bba5e57 sbuf_iter.h: Change to..
2001-06-26  Benjamin Kosnik  <bkoz@redhat.com>

	* include/bits/sbuf_iter.h: Change to..
	* include/bits/streambuf_iterator.h: This.
	* include/bits/stl_iterator.h: Take out of here...
	* include/bits/stream_iterator.h: Add.
	* src/Makefile.am (base_headers): Add streambuf_iterator,
	stream_iterator.h
	* src/Makefile.in: Regenerate.
	* include/bits/std_string.h: Adjust includes.
	* include/bits/basic_ios.h: Same.
	* include/bits/locale_facets.tcc: Same.
	* include/bits/std_iosfwd.h: Same.

	* include/bits/std_iterator.h: Add istream, ostream includes.
	* include/bits/stl_iterator.h: Tweak.
	* testsuite/24_iterators/ostream_iterator.cc: Add test.
	* testsuite/24_iterators/istream_iterator.cc: Same.
	* testsuite/23_containers/multiset.cc: Add iterator include.

From-SVN: r43592
2001-06-26 21:22:57 +00:00
Benjamin Kosnik
f4655693b5 stl_iterator.h (istream_iterator::operator->): Fix return values.
2001-06-26  Benjamin Kosnik  <bkoz@redhat.com>

	* include/bits/stl_iterator.h (istream_iterator::operator->): Fix
	return values.
	(istream_iterator::operator*): Same.

2001-06-26  Benjamin Kosnik  <bkoz@redhat.com>
            Alexandre Petit-Bianco  <apbianco@redhat.com>

        * testsuite/21_strings/element_access.cc (test01): Chill Out Cafe
        is on 41st, not 14th.

Co-Authored-By: Alexandre Petit-Bianco <apbianco@redhat.com>

From-SVN: r43574
2001-06-26 09:41:53 +00:00
GCC Administrator
4b76a1e3e5 Daily bump.
From-SVN: r43571
2001-06-26 07:16:39 +00:00
Benjamin Kosnik
b581eaf700 std_iterator.h: Include sbuf_iter.h via std_ios.h.
2001-06-26  Benjamin Kosnik  <bkoz@redhat.com>

	* include/bits/std_iterator.h: Include sbuf_iter.h via std_ios.h.

	* include/bits/stl_iterator.h (istream_iterator): Inherit from
	iterator.
	(ostream_iterator): Same.
	* testsuite/24_iterators/istream_iterator.cc: New file.
	* testsuite/24_iterators/ostream_iterator.cc: New file.

	* include/bits/sbuf_iter.h: Remove self typedef.
	* testsuite/24_iterators/ostreambuf_iterator.cc: Add test.
	* testsuite/24_iterators/istreambuf_iterator.cc: Add test.

	* include/bits/stl_iterator.h (reverse_iterator): Remove
	extraneous typedefs. Add typename.
	(__normal_iterator): Remove typedefs referring to self. Add typename.
	(reverse_bidiretional_iterator): Remove, not longer required.

From-SVN: r43570
2001-06-26 07:01:09 +00:00
Gabriel Dos Reis
9483461dc9 stl_iterator.h (__normal_iterator<>): Qualify dependent names with `typename'.
* include/bits/stl_iterator.h (__normal_iterator<>): Qualify
	dependent names with `typename'.  Bring in various required
	iterator_traits members.  Can't imagine why that used to work.

From-SVN: r43568
2001-06-26 06:36:33 +00:00
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
54da4898cc mknumeric_limits: Add static defintions, format.
2001-06-19  Benjamin Kosnik  <bkoz@redhat.com>

	* mknumeric_limits: Add static defintions, format.
	* testsuite/18_support/numeric_limits.cc (test02): Add test.

	* include/c_std/bits/std_cwchar.h: Include ctime.
	* testsuite/17_intro/header_cwchar.cc : Check.

	* include/c_std/bits/std_cwctype.h: Inject wctype.

From-SVN: r43466
2001-06-20 03:05:31 +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
Benjamin Kosnik
680cd9ed7b std_cstdio.h: Include cstddef for size_t.
2001-06-10  Benjamin Kosnik  <bkoz@redhat.com>

	* include/c_std/bits/std_cstdio.h: Include cstddef for size_t.

From-SVN: r43128
2001-06-10 07:42:25 +00:00
Benjamin Kosnik
d25e11935b std_cwchar.h: Remove size_t injection, include std_cstddef.
2001-06-09  Benjamin Kosnik  <bkoz@redhat.com>

	* include/c_std/bits/std_cwchar.h: Remove size_t injection,
	include std_cstddef.
	* include/c_std/bits/std_ctime.h: Same.
	* include/c_std/bits/std_cstring.h: Same.
	* include/c_std/bits/std_cstdlib.h: Same.

	* include/c_std/bits/std_cstdio.h: Remove vsnprintf, snprintf.
	* include/c_std/bits/std_cctype.h: Remove isblank.

From-SVN: r43097
2001-06-09 18:53:35 +00:00
Benjamin Kosnik
cd7894a510 std_cctype.h: Remove isblank.
2001-06-09  Benjamin Kosnik  <bkoz@redhat.com>

	* include/c_std/bits/std_cctype.h: Remove isblank.

From-SVN: r43078
2001-06-09 17:39:29 +00:00
Benjamin Kosnik
df7b13598a acinclude.m4 (GLIBCPP_CHECK_WCHAR_T_SUPPORT): Check for fgetwc, fgetws.
2001-06-09  Benjamin Kosnik  <bkoz@redhat.com>

	* acinclude.m4 (GLIBCPP_CHECK_WCHAR_T_SUPPORT): Check for fgetwc,
	fgetws.
	* aclocal.m4: Regenerate.
	* configure: Regenerate.
	* include/c_std/bits/std_cwchar.h: Remove duplicate fgetwc
	injection, guard fgetwc, fgetws.
	* include/c_std/bits/std_cstdio.h: Remove superfluous includes.
	* include/c_std/bits/std_clocale.h: And here.
	* include/c_std/bits/std_cctype.h: And here.
	* include/c_std/bits/std_cstdlib.h (strtof): Guard strtof injection.

	* config/basic_file_stdio.h: Don't include unistd.h.
	* config/c_io_stdio.h: Don't use compatibility headers.
	* libsupc++/eh_terminate.cc: Qualify abort.
	(__terminate): And here.
	* libsupc++/eh_catch.cc (__cxa_end_catch): Qualify abort.

From-SVN: r43070
2001-06-09 06:49:13 +00:00
Benjamin Kosnik
7ae4a70a1c std_cstdlib.h: Remove _Exit, strtof injections.
2001-06-08  Benjamin Kosnik  <bkoz@redhat.com>

	* include/c_std/bits/std_cstdlib.h: Remove _Exit, strtof injections.

From-SVN: r43069
2001-06-09 04:24:10 +00:00
Benjamin Kosnik
de96ac4681 *: Add copyright notice.
2001-06-08  Benjamin Kosnik  <bkoz@redhat.com>

	libstdc++/2767
	libstdc++/2989
	libstdc++/2992
	* include/std/*: Add copyright notice.
	* include/c_std/bits/*: Use using statements instead of extern "C".
	* include/c_std/bits/std_cmath.h: Don't overload double versions
	of math functions with __buitin versions, use global version to
	prevent ambiguities. Remove define hacks.
	* include/c_std/bits/std_cwchar.h: Using declarations for "C"
	functions that have changed signatures and std::
	declarations. Remove define hacks.
	* include/c_std/bits/std_cwchar.h: Same, plus remove ambiguous
	__builtins in std::. Remove define hacks.
	* testsuite/17_intro/headers_c.cc: Add tests.
	* testsuite/17_intro/headers_c++.cc: Add test.

From-SVN: r43061
2001-06-08 23:22:26 +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
Gabriel Dos Reis
3702c6346a [multiple changes]
2001-05-29  Gabriel Dos Reis  <gdr@merlin.codesourcery.com>

      * include/c_std/bits/std_cstdlib.h:: Move C99 thingies to __gnu_cxx::.
      * include/c_std/bits/std_cwchar.h (__gnu_cxx): Likewise.

2001-05-27  Gabriel Dos Reis  <gdr@merlin.codesourcery.com>

      * include/c_std/bits/std_cmath.h: Move C99 functions in __gnu_cxx::.
      * include/c_std/bits/std_cstdlib.h: Same.
      * include/c_std/bits/std_cwchar.h: Same.

From-SVN: r42707
2001-05-30 11:34:26 +00:00
Gabriel Dos Reis
4200d6fe87 * include/c_std/bits/std_cmath.h (sqrt): #undef.
From-SVN: r42622
2001-05-26 07:03:23 +00:00
Gabriel Dos Reis
4e588ec90e std_cmath.h: Tweak.
* include/c_std/bits/std_cmath.h: Tweak.  #define away abs, cos,
      fabs, sin, sqrt.  They are now implemented in terms of __builtin_
      variants.

From-SVN: r42595
2001-05-25 21:43:42 +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
Mark Mitchell
eeff8d2c06 std_cstring.h: #define away all global functions we will redeclare in namespace `std'.
* include/c_std/bin/std_cstring.h: #define away all global
	functions we will redeclare in namespace `std'.
	* libsupc++/eh_alloc.cc (__cxa_allocate_exception): Use
	std::memset, instead of memset.
	* testsuite/19_diagnostics/stdexceptions.cc: Use `std::strcmp',
	not plain `strcmp'.
	* testsuite/21_strings/c_strings.cc: Use `std::strcpy' instead of
	plain `strcpy'.

From-SVN: r42555
2001-05-25 01:33:21 +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
9ea659ac82 std_cstring.h (memchr): Define "C" functions to __glibcpp_memchr.
2001-05-21  Stephen M. Webb  <stephen@bregmasoft.com>

	* include/c_std/bits/std_cstring.h (memchr): Define "C" functions to
	__glibcpp_memchr.
	(strchr): Same, but to __glibcpp_strchr.
	(strpbrk): Same.
	(strrchr): Same.
	(strstr): Same.
	* include/c_std/bits/std_cwchar.h (wcschr): Same.
	(wcsbrk): Same.
	(wcsrchr): Same.
	(wcsstr): Same.
	(wmemchr): Same.

From-SVN: r42421
2001-05-22 04:58:45 +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
eea790f7b3 std_cstring.h (memchr): Correct definitions.
2001-05-08  Benjamin Kosnik  <bkoz@fillmore.constant.com>

	* include/c_std/bits/std_cstring.h (memchr): Correct definitions.
	(strchr): Same.
	(strpbrk): Same.
	(strrchr): Same.
	(strstr): Same.
	* include/c_std/bits/std_cwchar.h (wcschr): Same.
	(wcsbrk): Same.
	(wcsrchr): Same.
	(wcsstr): Same.
	(wmemchr): Same.
	* testsuite/21_strings/c_strings.cc: Add tests.

From-SVN: r41919
2001-05-08 23:53:55 +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
Peter Schmid
673af03ae5 slist: Include required header files.
2001-04-24  Peter Schmid  <schmid@snake.iap.physik.tu-darmstadt.de>

        * include/ext/slist: Include required header files.

From-SVN: r41512
2001-04-23 23:17:20 +00:00
Loren J. Rittle
910e8539cb std_cerrno.h (errno): Define macro from identifier declared with external linkage, if needed.
* include/c_std/bits/std_cerrno.h (errno): Define macro from
	identifier declared with external linkage, if needed.
	* include/c_std/bits/std_csetjmp.h (setjmp): Likewise.
	* include/c_std/bits/std_cstdarg.h (va_end): Likewise.

From-SVN: r41507
2001-04-23 19:54:34 +00:00
Benjamin Kosnik
6c3a9f72bf acinclude.m4 (GLIBCPP_ENABLE_LONG_LONG): Make sure required C99 support is enabled correctly before long long is activated.
2001-04-20  Benjamin Kosnik  <bkoz@redhat.com>

	* acinclude.m4 (GLIBCPP_ENABLE_LONG_LONG): Make sure required C99
	support is enabled correctly before long long is activated.
	* aclocal.m4: Regenerate.
	* configure: Regenerate.

	* include/backward/backward_warning.h: Format correctly.

	* testsuite/26_numerics/c99_classification_macros_c.cc: Add.
	* testsuite/26_numerics/c99_classification_macros_c++.cc: Add.
	* testsuite/26_numerics/c99_macros.cc: Remove.

From-SVN: r41470
2001-04-20 22:26:55 +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
4efbaaa75f backward_warning.h: Re-enable.
2001-04-06   Benjamin Kosnik  <bkoz@redhat.com>

	* include/backward/backward_warning.h: Re-enable.

From-SVN: r41168
2001-04-06 22:11:31 +00:00
Gabriel Dos Reis
e521873c0e std_cmath.h: Get rid of C99 math macros.
* include/c_std/bits/std_cmath.h: Get rid of C99 math macros.
        * testsuite/26_numerics/c99_macros.cc: Add test.

From-SVN: r41159
2001-04-06 19:14:27 +00:00
Benjamin Kosnik
8f946b6e2f backward_warning.h: Temporarily disable until g++ testsuite changes go in.
2001-04-06  Benjamin Kosnik  <bkoz@redhat.com>

	* include/backward/backward_warning.h: Temporarily disable until
	g++ testsuite changes go in.
	* tests_flags.in (CROSS_LIB_PATH): Add.

From-SVN: r41149
2001-04-06 08:00:55 +00:00
Benjamin Kosnik
baac9fce7d Warn when using backward headers.
2001-04-05  Benjamin Kosnik  <bkoz@redhat.com>

	Warn when using backward headers.
	* include/backward/algo.h: Include warning file.
	* include/backward/vector.h: Same.
	* include/backward/tree.h: Same.
	* include/backward/tempbuf.h: Same.
	* include/backward/strstream: Same.
	* include/backward/streambuf.h: Same.
	* include/backward/stream.h: Same.
	* include/backward/stack.h: Same.
	* include/backward/slist.h: Same.
	* include/backward/set.h: Same.
	* include/backward/rope.h:
	* include/backward/queue.h: Same.
	* include/backward/pair.h: Same.
	* include/backward/ostream.h: Same.
	* include/backward/new.h: Same.
	* include/backward/multiset.h: Same.
	* include/backward/multimap.h: Same.
	* include/backward/map.h: Same.
	* include/backward/list.h: Same.
	* include/backward/iterator.h: Same.
	* include/backward/istream.h: Same.
	* include/backward/iostream.h:
	* include/backward/iomanip.h:
	* include/backward/heap.h: Same.
	* include/backward/hashtable.h:
	* include/backward/hash_set.h:
	* include/backward/hash_map.h:
	* include/backward/function.h:
	* include/backward/fstream.h:
	* include/backward/deque.h:
	* include/backward/defalloc.h: Same.
	* include/backward/complex.h: Same.
	* include/backward/bvector.h:
	* include/backward/alloc.h:
	* include/backward/algobase.h: Same.

	* include/backward/backward_warning.h: New file.
	* src/Makefile.am (backward_headers): Add backward_warning.h
	* src/Makefile.in: Regenerate.

2001-04-05  Benjamin Kosnik  <bkoz@redhat.com>

	* src/Makefile.am (myinstalldirs): Make sure backward directory is
	created.
	(myinstallheaders): Install backward headers in backward directory.
	* src/Makefile.in: Regenerate.

From-SVN: r41139
2001-04-06 06:08:17 +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
Geoffrey Keating
75da53c9ee * include/backward/fstream.h: Add missing semicolons.
From-SVN: r41090
2001-04-04 18:04:52 +00:00
Benjamin Kosnik
127644626f fstream.tcc: Add bool parameter to filebuf ctor.
2001-04-03  Benjamin Kosnik  <bkoz@redhat.com>

	* include/bits/fstream.tcc: Add bool parameter to filebuf ctor.
	* include/bits/ios_base.h(ios_base::Init): Remove _M_cout, _M_cin,
	_M_cerr, _M_wcout, _M_wcin, _M_wcerr.
	(ios_base::Init::_S_ios_create): New.
	(ios_base::Init::_S_ios_destroy): New.
	* include/bits/std_fstream.h: Change ctor args.
	* src/ios.cc (ios_base::Init::Init): Use _S_ios_create.
	(ios_base::Init::~Init): Use _S_ios_destroy.
	(ios_base::sync_with_stdio): Use new members.
	* testsuite/27_io/filebuf_members.cc: Fix calling conventions for
	filebuf ctor.

From-SVN: r41072
2001-04-04 01:02:26 +00:00
Peter Schmid
cf54a76769 fstream.h: Expose streampos to global namespace.
2001-04-03  Peter Schmid  <schmid@snake.iap.physik.tu-darmstadt.de>

        * include/backward/fstream.h:  Expose streampos to global
          namespace.

From-SVN: r41064
2001-04-03 21:02:43 +00:00
Peter Schmid
aa53cb52eb stl_iterator_base_types.h: Fix typo
2001-04-03  Peter Schmid  <schmid@snake.iap.physik.tu-darmstadt.de>

	* include/bits/stl_iterator_base_types.h: Fix typo

From-SVN: r41063
2001-04-03 20:40:26 +00:00
Andreas Schwab
896b336b8c * include/backward/fstream.h: Define filebuf and wfilebuf.
From-SVN: r41048
2001-04-03 08:49:38 +00:00
Phil Edwards
30a20a1ee0 New concept checking implementation.
2001-04-02  Phil Edwards  <pme@sources.redhat.com>

	New concept checking implementation.
	* docs/html/19_diagnostics/howto.html:  Document.
	* docs/html/17_intro/concept_check.diff:  New file, for reference.
	* include/bits/boost_concept_check.h:  New file from Boost.
	* include/bits/c++config:  Update comments.

	* include/bits/concept_check.h:  New file.
	* include/bits/concept_checks.h:  Removed.
	* include/bits/container_concepts.h:  Removed.
	* include/bits/sequence_concepts.h:  Removed.
	* include/bits/stl_iterator_base.h:  Removed; split into...
	* include/bits/stl_iterator_base_funcs.h:  ...this new file...
	* include/bits/stl_iterator_base_types.h:  ...and this new file.

	* include/bits/sbuf_iter.h:  Update to use new implementation.
	* include/bits/std_iterator.h:  Likewise.
	* include/bits/std_memory.h:  Likewise.
	* include/bits/stl_algo.h:  Likewise.
	* include/bits/stl_algobase.h:  Likewise.
	* include/bits/stl_construct.h:  Likewise.
	* include/bits/stl_deque.h:  Likewise.
	* include/bits/stl_heap.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_uninitialized.h:  Likewise.
	* include/bits/stl_vector.h:  Likewise.
	* include/ext/hash_map:  Likewise.
	* include/ext/hash_set:  Likewise.
	* include/ext/slist:  Likewise.
	* include/ext/stl_hashtable.h:  Likewise.

	* src/Makefile.am (base_headers):  Update list of headers.
	* Makefile.in:  Regenerated.
	* src/Makefile.in:  Regenerated.
	* libio/Makefile.in:  Regenerated.
	* libmath/Makefile.in:  Regenerated.
	* libsupc++/Makefile.in:  Regenerated.
	* testsuite/Makefile.in:  Regenerated.

	* docs/html/install.html:  Update contact information.
	* docs/html/17_intro/howto.html:  Ditto.
	* docs/html/18_support/howto.html:  Ditto.
	* docs/html/20_util/howto.html:  Ditto.
	* docs/html/21_strings/howto.html:  Ditto.
	* docs/html/22_locale/howto.html:  Ditto.
	* docs/html/23_containers/howto.html:  Ditto.
	* docs/html/24_iterators/howto.html:  Ditto.
	* docs/html/25_algorithms/howto.html:  Ditto.
	* docs/html/26_numerics/howto.html:  Ditto.
	* docs/html/27_io/howto.html:  Ditto.
	* docs/html/faq/index.html:  Ditto, plus info on new checking code.
	* docs/html/ext/howto.html:  Ditto, plus info on new checking code.
	* docs/html/faq/index.txt:  Regenerated.

From-SVN: r41031
2001-04-03 00:26:58 +00:00