Benjamin Kosnik
285b36d6a5
[multiple changes]
...
2003-11-11 Doug Gregor <gregod@cs.rpi.edu>
* docs/html/debug.html: Document libstdc++ debug mode.
* docs/html/debug_mode.html: Document libstdc++ debug mode design.
* docs/html/test.html: Document how to test under debug mode.
* docs/html/17_intro/howto.html: Document debug-mode macros.
* include/Makefile.am: Install debug-mode headers.
* src/Makefile.am: Include debug.cc.
* include/bits/basic_string.tcc:
(basic_string::_S_construct): Fix NULL pointer check.
(__is_null_pointer): New.
Add precondition annotations.
* include/bits/stream_iterator.h (istream_iterator,
ostream_iterator): Added precondition annotations.
* include/bits/streambuf_iterator.h (istreambuf_iterator): Ditto.
* include/bits/stl_queue.h (queue, priority_queue): Ditto.
* include/bits/stl_stack.h (stack): Ditto.
* include/bits/basic_string.h (basic_string): Ditto.
* include/bits/basic_string.tcc (basic_string): Ditto.
* include/std/std_memory.h (auto_ptr): Ditto.
* include/std/std_valarray.h (valarray): Ditto.
* include/bits/stl_algo.h: Added algorithm precondition
annotations.
* include/bits/stl_algobase.h: Added algorithm precondition
annotations.
* include/bits/stl_numeric.h: Ditto.
* include/ext/algorithm: Added algorithm precondition
annotations.
(__is_heap): Moved away from here.
* include/bits/stl_heap.h: Added algorithm precondition
annotations.
(__is_heap): Moved to the top of this file.
(__is_heap): Added iterator range overloads.
* testsuite/20_util/auto_ptr_neg.cc: Fix line numbers to match up
with changes in std_memory.h.
* testsuite/23_containers/list/operators/4.cc: Don't verify
performance guarantees when in debug mode.
* testsuite/23_containers/bitset/invalidation/1.cc: New.
* testsuite/23_containers/deque/invalidation/1.cc: New.
* testsuite/23_containers/deque/invalidation/2.cc: New.
* testsuite/23_containers/deque/invalidation/3.cc: New.
* testsuite/23_containers/deque/invalidation/4.cc: New.
* testsuite/23_containers/list/invalidation/1.cc: New.
* testsuite/23_containers/list/invalidation/2.cc: New.
* testsuite/23_containers/list/invalidation/3.cc: New.
* testsuite/23_containers/list/invalidation/4.cc: New.
* testsuite/23_containers/map/invalidation/1.cc: New.
* testsuite/23_containers/map/invalidation/2.cc: New.
* testsuite/23_containers/multimap/invalidation/1.cc: New.
* testsuite/23_containers/multimap/invalidation/2.cc: New.
* testsuite/23_containers/multiset/invalidation/1.cc: New.
* testsuite/23_containers/multiset/invalidation/2.cc: New.
* testsuite/23_containers/set/invalidation/1.cc: New.
* testsuite/23_containers/set/invalidation/2.cc: New.
* testsuite/23_containers/vector/invalidation/1.cc: New.
* testsuite/23_containers/vector/invalidation/2.cc: New.
* testsuite/23_containers/vector/invalidation/3.cc: New.
* testsuite/23_containers/vector/invalidation/4.cc: New.
* testsuite/25_algorithms/heap.cc: Don't verify
performance guarantees when in debug mode.
* include/debug/bitset: New.
* include/debug/debug.h: New.
* include/debug/deque: New.
* include/debug/formatter.h: New.
* include/debug/hash_map: New.
* include/debug/hash_map.h: New.
* include/debug/hash_multimap.h: New.
* include/debug/hash_set: New.
* include/debug/hash_set.h: New.
* include/debug/hash_multiset.h: New.
* include/debug/list: New.
* include/debug/map: New.
* include/debug/map.h: New.
* include/debug/multimap.h: New.
* include/debug/multiset.h: New.
* include/debug/safe_base.h: New.
* include/debug/safe_iterator.h: New.
* include/debug/safe_iterator.tcc: New.
* include/debug/safe_sequence.h: New.
* include/debug/set: New.
* include/debug/set.h: New.
* include/debug/string: New.
* include/debug/vector: New.
* src/debug.cc: New.
* config/linker-map.gnu: Add debug mode symbols.
2003-11-11 Benjamin Kosnik <bkoz@redhat.com>
* src/string-inst.cc: Tweak namespaces.
* src/misc-inst.cc: Same.
* docs/html/debug.html: Edits.
* config/link-map.gnu: Remove cruft.
* include/bits/c++config: Add in namespace associations.
* include/std/std_bitset.h: Adjust namespace to __gnu_norm,
comment tweaks.
* include/bits/deque.tcc: Same.
* include/bits/list.tcc: Same.
* include/bits/stl_bvector.h: Same.
* include/bits/stl_deque.h: Same.
* include/bits/stl_list.h: Same.
* include/bits/stl_map.h: Same.
* include/bits/stl_multimap.h: Same.
* include/bits/stl_multiset.h: Same.
* include/bits/stl_set.h: Same.
* include/bits/stl_vector.h: Same.
* include/bits/vector.tcc: Same.
* include/std/std_algorithm.h: Remove markup comments.
* include/std/std_functional.h: Same.
* include/std/std_iterator.h: Same.
* include/std/std_numeric.h: Same.
* include/std/std_utility.h: Same.
* include/bits/stl_queue.h: Formatting tweaks.
* include/bits/stl_stack.h: Same.
* include/std/std_deque.h: Include debugging version in debug mode.
* include/std/std_list.h: Same.
* include/std/std_map.h: Same.
* include/std/std_set.h: Same.
* include/std/std_vector.h: Same.
* include/std/std_queue.h: Use deque, vector.
* include/std/std_stack.h: Same.
From-SVN: r73459
2003-11-11 20:09:16 +00:00
Benjamin Kosnik
11f10e6b1f
locale_facets.tcc: Tweak to avoid warnings.
...
2003-09-23 Benjamin Kosnik <bkoz@redhat.com>
* include/bits/locale_facets.tcc: Tweak to avoid warnings.
* testsuite/testsuite_hooks.h: Same.
* testsuite/*/*.cc: Same.
From-SVN: r71693
2003-09-23 20:03:30 +00:00
Phil Edwards
fe413112f8
acinclude.m4 (GLIBCPP_CONFIGURE_TESTSUITE): New macro, calls...
...
2001-08-06 Phil Edwards <pme@sources.redhat.com>
* acinclude.m4 (GLIBCPP_CONFIGURE_TESTSUITE): New macro, calls...
(GLIBCPP_CHECK_SETRLIMIT): ...this new macro, which also uses...
(GLIBCPP_CHECK_SETRLIMIT_ancilliary): ...this new macro.
* configure.in (AM_CONFIG_HEADER): Also generate testsuite_hooks.h.
Call GLIBCPP_CONFIGURE_TESTSUITE.
* aclocal.m4: Regenerate.
* config.h.in: Regenerate.
* configure: Regenerate.
* testsuite/lib/libstdc++-v3-dg.exp: Download new header instead
of old header.
* testsuite_flags.in: Add build dir's testsuite to INCLUDES.
* testsuite/debug_assert.h: Removed; contents merged into...
* testsuite/testsuite_hooks.h.in: ...here. New file.
* testsuite/17_intro/header_ciso646.cc: No longer include
debug_assert.h, include testsuite_hooks.h instead.
* testsuite/17_intro/header_fstream.cc: Likewise.
* testsuite/17_intro/header_iomanip.cc: Likewise.
* testsuite/17_intro/header_ios.cc: Likewise.
* testsuite/17_intro/header_iosfwd.cc: Likewise.
* testsuite/17_intro/header_iostream.cc: Likewise.
* testsuite/17_intro/header_istream.cc: Likewise.
* testsuite/17_intro/header_ostream.cc: Likewise.
* testsuite/17_intro/header_sstream.cc: Likewise.
* testsuite/17_intro/header_streambuf.cc: Likewise.
* testsuite/18_support/numeric_limits.cc: Likewise.
* testsuite/19_diagnostics/stdexceptions.cc: Likewise.
* testsuite/20_util/allocator_members.cc: Likewise.
* testsuite/20_util/auto_ptr.cc: Likewise.
* testsuite/20_util/pairs.cc: Likewise.
* testsuite/21_strings/append.cc: Likewise.
* testsuite/21_strings/capacity.cc: Likewise.
* testsuite/21_strings/char_traits_requirements.cc: Likewise.
* testsuite/21_strings/compare.cc: Likewise.
* testsuite/21_strings/ctor_copy_dtor.cc: Likewise. Also set up
call to (disabled) __set_testsuite_memlimit() wrapper.
* testsuite/21_strings/element_access.cc: Likewise.
* testsuite/21_strings/find.cc: Likewise.
* testsuite/21_strings/insert.cc: Likewise. Also set up call to
(disabled) __set_testsuite_memlimit() wrapper.
* testsuite/21_strings/inserters_extractors.cc: Likewise.
* testsuite/21_strings/invariants.cc: Likewise.
* testsuite/21_strings/nonmember.cc: Likewise.
* testsuite/21_strings/operations.cc: Likewise.
* testsuite/21_strings/replace.cc: Likewise.
* testsuite/21_strings/rfind.cc: Likewise.
* testsuite/21_strings/substr.cc: Likewise.
* testsuite/22_locale/codecvt_char_char.cc: Likewise.
* testsuite/22_locale/codecvt_unicode_char.cc: Likewise.
* testsuite/22_locale/codecvt_unicode_wchar_t.cc: Likewise.
* testsuite/22_locale/codecvt_wchar_t_char.cc: Likewise.
* testsuite/22_locale/ctor_copy_dtor.cc: Likewise.
* testsuite/22_locale/ctype_char_members.cc: Likewise.
* testsuite/22_locale/ctype_wchar_t_members.cc: Likewise.
* testsuite/22_locale/facet.cc: Likewise.
* testsuite/22_locale/global_templates.cc: Likewise.
* testsuite/22_locale/members.cc: Likewise.
* testsuite/22_locale/numpunct_byname.cc: Likewise.
* testsuite/22_locale/numpunct_char_members.cc: Likewise.
* testsuite/22_locale/operators.cc: Likewise.
* testsuite/22_locale/static_members.cc: Likewise.
* testsuite/23_containers/bitset_ctor.cc: Likewise.
* testsuite/23_containers/bitset_members.cc: Likewise.
* testsuite/23_containers/bitset_shift.cc: Likewise.
* testsuite/23_containers/vector_capacity.cc: Likewise.
* testsuite/23_containers/vector_ctor.cc: Likewise.
* testsuite/23_containers/vector_element_access.cc: Likewise.
* testsuite/23_containers/vector_modifiers.cc: Likewise.
* testsuite/24_iterators/istreambuf_iterator.cc: Likewise.
* testsuite/24_iterators/iterator.cc: Likewise.
* testsuite/24_iterators/ostreambuf_iterator.cc: Likewise.
* testsuite/25_algorithms/binary_search.cc: Likewise.
* testsuite/25_algorithms/copy.cc: Likewise.
* testsuite/25_algorithms/heap.cc: Likewise.
* testsuite/25_algorithms/lower_bound.cc: Likewise.
* testsuite/25_algorithms/min_max.cc: Likewise.
* testsuite/25_algorithms/partition.cc: Likewise.
* testsuite/25_algorithms/rotate.cc: Likewise.
* testsuite/25_algorithms/sort.cc: Likewise.
* testsuite/26_numerics/c_math.cc: Likewise.
* testsuite/26_numerics/complex_inserters_extractors.cc: Likewise.
* testsuite/26_numerics/complex_value.cc: Likewise.
* testsuite/27_io/filebuf.cc: Likewise.
* testsuite/27_io/filebuf_members.cc: Likewise.
* testsuite/27_io/filebuf_virtuals.cc: Likewise.
* testsuite/27_io/fpos.cc: Likewise.
* testsuite/27_io/fstream_members.cc: Likewise.
* testsuite/27_io/ifstream_members.cc: Likewise.
* testsuite/27_io/ios_base_callbacks.cc: Likewise.
* testsuite/27_io/ios_base_members_static.cc: Likewise.
* testsuite/27_io/ios_base_storage.cc: Likewise.
* testsuite/27_io/ios_ctor.cc: Likewise.
* testsuite/27_io/ios_init.cc: Likewise.
* testsuite/27_io/ios_manip_basefield.cc: Likewise.
* testsuite/27_io/ios_manip_fmtflags.cc: Likewise.
* testsuite/27_io/ios_members.cc: Likewise.
* testsuite/27_io/istream_extractor_arith.cc: Likewise.
* testsuite/27_io/istream_extractor_char.cc: Likewise.
* testsuite/27_io/istream_extractor_other.cc: Likewise.
* testsuite/27_io/istream_manip.cc: Likewise.
* testsuite/27_io/istream_seeks.cc: Likewise.
* testsuite/27_io/istream_sentry.cc: Likewise.
* testsuite/27_io/istream_unformatted.cc: Likewise.
* testsuite/27_io/istringstream_members.cc: Likewise.
* testsuite/27_io/narrow_stream_objects.cc: Likewise.
* testsuite/27_io/ofstream_members.cc: Likewise.
* testsuite/27_io/ostream_inserter_arith.cc: Likewise.
* testsuite/27_io/ostream_inserter_char.cc: Likewise.
* testsuite/27_io/ostream_inserter_other.cc: Likewise.
* testsuite/27_io/ostream_manip.cc: Likewise.
* testsuite/27_io/ostream_seeks.cc: Likewise.
* testsuite/27_io/ostream_unformatted.cc: Likewise.
* testsuite/27_io/ostringstream_members.cc: Likewise.
* testsuite/27_io/streambuf.cc: Likewise.
* testsuite/27_io/stringbuf.cc: Likewise.
* testsuite/27_io/stringbuf_virtuals.cc: Likewise.
* testsuite/27_io/stringstream.cc: Likewise.
* testsuite/27_io/stringstream_members.cc: Likewise.
* testsuite/27_io/wide_stream_objects.cc: Likewise.
From-SVN: r44679
2001-08-07 03:38:33 +00:00
Stephen M. Webb
02d92e3b70
All occurrences of the __value_type() and __distance_type() functions...
...
2001-07-17 Stephen M. Webb <stephen@bregmasoft.com>r
All occurrences of the __value_type() and __distance_type()
functions, which were required to support the HP STL, have been
removed along with all the auxiliary forwarding functions that
were required to support their use.
The __iterator_category() function was pretty much left alone
because there was no benefit to removing it and its use made code
just a little more readable.
Incidences of distance() with nonstandard argument list were
replaced by calls to the standard function (only in the files
affected by the removal of the other HP functions).
The signature of the rotate() algorithm was changed to match the
standard.
Headers were reformatted under C++STYLE guidelines (indentation,
linebreaks, typename keyword).
* include/bits/stl_algo.h: replaced __value_type() and
__distance_type() with iterator_traits, eliminated auxiliary
support functions required to support said function usage.
Changed nonstandard distance() call to standard call.
* include/bits/stl_algobase.h: Same.
* include/bits/stl_heap.h: Same.
* include/bits/stl_numeric.h: Same.
* include/bits/stl_uninitialized.h: Same.
* include/bits/stl_iterator_base_types.h (__value_type()):
Removed.
(__distance_type()): Removed.
(value_type()): Gone.
(distance_type()): Done in.
(iterator_category()): Hasta la vista, baby.
* include/bits/stl_iterator_base_funcs.h (iterator_category()):
Replaced with __iterator_category().
* include/backward/iterator.h: moved definition of value_type(),
distance_type(), and iterator_category() out of std:: and into
here.
* testsuite/23_containers/vector_ctor.cc (test03): New testcases.
* testsuite/23_containers/vector_modifiers.cc (test03): New testcases.
* testsuite/25_algorithms/rotate.cc: New testcase.
* testsuite/25_algorithms/copy.cc: New testcase.
* testsuite/25_algorithms/sort.cc: Same.
* testsuite/25_algorithms/heap.cc: Same.
* testsuite/25_algorithms/partition.cc: Same.
* testsuite/25_algorithms/binary_search.cc: Same.
* testsuite/26_numerics/sum_diff.cc: Ditto.
From-SVN: r44117
2001-07-18 17:09:02 +00:00