Benjamin Kosnik
d3a193e36c
re PR libstdc++/4164 (33 Memory Leak when using iostream)
...
2002-04-15 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/4164
Valgrind fixes.
* config/io/basic_file_stdio.cc (__basic_file::~__basic_file):
Call close.
(__basic_file::close): Call fflush. Correct return if fclose ok.
(__basic_file::is_open): Make const.
Change __c_file_type to __c_file.
* config/io/basic_file_stdio.h: Change __c_file_type to __c_file.
(__basic_file::is_open): Make const.
* config/io/c_io_stdio.h: Change __c_file_type to __c_file.
* include/std/std_fstream.h (filebuf::_M_allocate_file): Remove.
(filebuf::_M_unbuf): Add.
(filebuf::_M_file): Change to non-pointer.
(filebuf::_M_allocate_pback_buffer): Remove.
* include/bits/fstream.tcc (filebuf::_M_allocate_file): Remove.
(filebuf::_M_allocate_internal_buffer): Use _M_unbuf.
Change initialization list for _M_file change.
(filebuf::_M_allocate_pback_buffer): Remove.
Change _M_file usage to reflect non-pointer data member.
* config/locale/generic/c_locale.cc
(locale::facet::_S_create_c_locale): Add parameter.
* config/locale/generic/collate_members.cc: Change
_M_compare_helper to _M_compare.
Change _M_transform_helper to _M_transform.
* config/locale/generic/monetary_members.cc: Changeup data types.
Add dtors.
* config/locale/generic/numeric_members.cc: Add dtors.
* config/locale/generic/time_members.cc: Add dtors.
* config/locale/gnu/c_locale.cc: Add parameter.
* config/locale/gnu/collate_members.cc:Change
_M_compare_helper to _M_compare.
Change _M_transform_helper to _M_transform.
* config/locale/gnu/ctype_members.cc: Better error checking.
* config/os/gnu-linux/bits/ctype_noninline.h: Better error checking.
* config/locale/gnu/messages_members.cc: Tweak comment.
* config/locale/gnu/monetary_members.cc: Change data types.
Add dtors.
* config/locale/gnu/numeric_members.cc: Add dtors, better error
checking.
* config/locale/gnu/time_members.cc: Same.
* config/locale/ieee_1003.1-2001/c_locale.cc
(locale::facet::_S_create_c_locale): Add parameter.
* config/locale/ieee_1003.1-2001/c_locale.h: Correct typedef.
* config/locale/ieee_1003.1-2001/codecvt_specializations.h: Remove
bogus ctor.
* include/bits/locale_facets.h (moneypunct): Use string literals.
Don't define dtor.
(numpunct): Same.
(__timepunct): Same.
(locale::_Impl::_M_facets): Change from vector to array.
(locale::_Impl::_M_names): Change from array of strings to array
of string literals.
(locale::facet::_S_create_c_locale): Add parameter.
(locale::locale::_S_num_facets): Move to...
(locale::_Impl::_M_facets_size): Here.
* include/bits/locale_facets.tcc: Fixups for _M_facets, _M_name
changes.
* include/bits/localefwd.h: (locale:🆔 :_M_id): Add member function.
(locale::_Impl::_Impl(facet**, size_t, bool)): Add.
(locale::_Impl::_Impl(string, size_t)): Change to
(locale::_Impl::_Impl(const char*, size_t)): This.
* include/bits/streambuf.tcc (streambuf::_S_pback_size): Define.
* include/std/std_streambuf.h (streambuf::_M_pback_size): Change to
(streambuf::_S_pback_size): This.
* src/globals.cc: Add pre-allocations for "C" facets.
* src/locale-inst.cc: Remove vector instantiations.
* src/locale.cc: Remove vector include. Fixups for _M_names,
_M_facets changes.
* src/localename.cc: Same.
* include/bits/stl_vector.h: Fix odd formatting.
* include/bits/basic_string.tcc: Tweak comment.
* libsupc++/new: Make sure parameters are uglified.
* libsupc++/typeinfo: Same.
* testsuite/22_locale/num_get_members_char.cc: Fixup.
* testsuite/22_locale/num_get_members_wchar_t.cc: Same.
* testsuite/27_io/filebuf_members.cc: Same.
From-SVN: r52345
2002-04-16 00:45:36 +00:00
Paolo Carlini
11e174221b
filebuf_members.cc (test_05): Add test.
...
2002-01-28 Paolo Carlini <pcarlini@unitus.it>
Charles Leggett <CGLeggett@lbl.gov>
* testsuite/27_io/filebuf_members.cc (test_05): Add test.
Co-Authored-By: Charles Leggett <CGLeggett@lbl.gov>
From-SVN: r49297
2002-01-28 20:07:57 +00:00
Benjamin Kosnik
e67051746f
fstream.tcc (filebuf::close()): Fix close for input streams.
...
2002-01-25 Benjamin Kosnik <bkoz@redhat.com>
* include/bits/fstream.tcc (filebuf::close()): Fix close for input
streams.
(filebuf::_M_really_overflow): Match indeterminate and sync calls.
* testsuite/27_io/filebuf.cc: Compile only.
* testsuite/27_io/filebuf_members.cc: Move tests to here.
* testsuite/27_io/filebuf_virtuals.cc: And here.
Revert sungetc, sync changes for expected values.
* testsuite/27_io/filebuf-*: Move to...
* testsuite/27_io/filebuf_virtuals-*: ...here.
* testsuite/27_io/istream.cc: Compile only, activate.
* testsuite/27_io/ostream.cc: Same.
* testsuite/27_io/iostream.cc: New.
* testsuite/27_io/iostream_members.cc: New.
From-SVN: r49236
2002-01-26 01:55:09 +00:00
Benjamin Kosnik
9fbcb61abb
[multiple changes]
...
2002-01-08 Benjamin Kosnik <bkoz@redhat.com>
libstdc++/2913
libstdc++/4879
* include/bits/fstream.tcc (filebuf::_M_really_overflow): Test
return value of _M_file->sync().
(filebuf::showmanyc): Check for is_open.
* include/std/fstream (filebuf::sync): Tweak.
* testsuite/27_io/filebuf.cc: Tweak.
2002-01-08 John Fardo <jfardo@laurelnetworks.com>
Brad Garcia <garsh@attbi.com>
* testsuite/27_io/filebuf_members.cc: Add test.
From-SVN: r48654
2002-01-08 19:57:01 +00:00
Phil Edwards
e9c46bb75e
basic_file.h (__basic_file::fd): New function.
...
2001-12-17 Phil Edwards <pme@gcc.gnu.org>
* include/bits/basic_file.h (__basic_file::fd): New function.
* config/io/basic_file_stdio.h (__basic_file::fd): Define.
* include/bits/std_fstream.h (basic_filebuf::fd): New function.
* include/bits/fstream.tcc (basic_filebuf::fd): Define.
* testsuite/27_io/filebuf_members.cc (test_02): New test.
From-SVN: r48107
2001-12-17 17:08:57 +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
Benjamin Kosnik
04d930e6d4
*.cc: Remove spaces, make sure testcases return zero.
...
2001-05-11 Benjamin Kosnik <bkoz@redhat.com>
* testsuite/*/*.cc: Remove spaces, make sure testcases return zero.
* testsuite/config/default.exp: Update bugs email address.
From-SVN: r41997
2001-05-12 16:53:08 +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
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
Benjamin Kosnik
5fa9abc3e9
basic_file.h (get_fileno): Remove.
...
2001-03-26 Benjamin Kosnik <bkoz@redhat.com>
* include/bits/basic_file.h (get_fileno): Remove.
(_M_fileno): Remove.
(_M_cfile_created): Add.
(basic_file::basic_file(__c_file_type*, openmode): Add.
(basic_file::basic_file(int, const char*, openmode): Remove.
* include/bits/fstream.tcc (basic_fstream::basic_filebuf(int __fd,
const char*, ios_base::openmode): Don't allocate
internal buffers. Turn off internal buffers.
(basic_filebuf::overflow): Remove test for null buffer.
(basic_filebuf::_M_really_overflow): Same. Allow unbuffered use.
* include/bits/streambuf.cc: Tweak.
* include/bits/std_ostream.h: Tweak.
* config/basic_file_libio.h: Same.
* config/basic_file_stdio.h: Same.
* src/ios.cc (ios_base::Init::Init()): Unbuffer stdout by default.
* testsuite/27_io/filebuf_members.cc: Tweaks.
* testsuite/27_io/ios_base_members_static.cc: Tweaks.
From-SVN: r40863
2001-03-27 03:48:17 +00:00
Gabriel Dos Reis
db353c2c69
*.cc: Remove explicit reference to 'testsuite/' in testcases.
...
* testsuite/27_io/*.cc: Remove explicit reference to 'testsuite/'
in testcases. Prepare for the DejaGnu based framework.
* mkcheck.in: Adjust call to tests_flags. Don't mmkdir testsuite
directory -- it is now mkcheck working directory.
* tests_flags.in: Remove reference to $(top_srcdir). Use
${SRC_DIR} instead.
* Makefile.am (check, check-install): Change mkcheck invocation
logic.
* Makefile.in: Regenerate.
From-SVN: r39255
2001-01-25 04:09:22 +00:00
Brent Verner
aa1b2f7d95
debug_assert.h: new file
...
2000-08-14 Brent Verner <brent@rcfile.org>
* testsuite/debug_assert.h: new file
* testsuite/*/*.cc: s/test\s*&=([^;]+);/VERIFY($1);/g
changed conditional #include <c?assert.?h?> to
unconditional #include <debug_assert.h>
* mkcheck.in: added $SRC_DIR/testsuite to include search path
for testsuite compile command.
From-SVN: r35682
2000-08-14 19:59:26 +00:00
Benjamin Kosnik
ab30ba5c23
filebuf.cc: Tweak.
...
2000-06-28 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
* testsuite/27_io/filebuf.cc: Tweak.
* testsuite/27_io/filebuf_members.cc (test_01): Fix.
* config/c_io_libio.cc (__basic_file::~__basic_file): Match libio
filebuf dtor.
(__basic_file::basic_file): Clean, add calls similar to
_IO_file_attach.
(__basic_file::open): Clean.
(__basic_file::sys_open): Clean.
* bits/std_fstream.h: Revert.
* bits/fstream.tcc (filebuf::close()): Revert.
(filebuf::basic_filebuf()): Revert.
From-SVN: r34786
2000-06-29 18:20:55 +00:00
Benjamin Kosnik
644638bc02
[multiple changes]
...
2000-06-13 Brent Verner <brent@rcfile.org>
* bits/string.tcc (string::rfind): Fix.
* testsuite/21_strings/rfind.cc: New file.
2000-06-26 Anthony Williams <anthony@anthonyw.cjb.net>
* testsuite/21_strings/ctor_copy_dtor.cc: Fixed logic error.
2000-06-26 Branko Cibej <branko.cibej@hermes.si>
* testsuite/27_io/filebuf_members.cc (test_01): Fixed typos.
* mkcheck.in: Make the *.txt and *.tst files writable after
copying them to $TEST_DIR.
* testsuite/27_io/ostream_inserter_arith.cc: Renamed
__TEST_NUMPUT_VERBOSE to TEST_NUMPUT_VERBOSE.
Define TEST_NUMPUT_VERBOSE only if DEBUG_ASSERT.
From-SVN: r34719
2000-06-26 20:22:01 +00:00
Benjamin Kosnik
ba5fbc87e3
filebuf_members.cc: New file.
...
2000-06-23 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
* testsuite/27_io/filebuf_members.cc: New file.
* testsuite/27_io/filebuf_members-1.tst: New file.
* bits/fstream.tcc (basic_filebuf::basic_filebuf(fd)): Use it.
(basic_filebuf::close): Use it.
* bits/std_fstream.h (basic_filebuf): Remove default arguments for
filebuf ctor.
(basic_filebuf): Add _M_fileno_based data member.
* bits/std_fstream.h: Formatting tweaks.
* testsuite/27_io/ofstream_members.cc: New file.
* testsuite/27_io/ofstream_members-1.tst: New file.
* testsuite/27_io/ifstream_members.cc: New file.
* testsuite/27_io/ifstream_members-1.tst: New file.
From-SVN: r34672
2000-06-24 00:53:06 +00:00