diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index 31c4a10bfc8d38aef66854dde9031c01479d0bad..7f1d4219f77c3a161a2fbf21d523a22d49727de9 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,6 +1,12 @@ +2000-12-19 Curtis Janssen <cljanss@ca.sandia.gov> + + * src/ios.cc (ios_base::_M_grow_words(int ix)): Fix libstdc++/1089. + * testsuite/27_io/ios_base_storage.cc (test01): New file. + 2000-12-19 Benjamin Kosnik <bkoz@fillmore.constant.com> * configure.in: Don't turn on long long by default. + (gxx_target_include_dir): Adjuse comment. * configure: Regenerate. * include/c/bits/std_cstdio.h: Remove c++config.h include. * src/locale.cc: Formatting tweaks. diff --git a/libstdc++-v3/configure b/libstdc++-v3/configure index 4dd963cfc5a97575254a199d774ed6fbb36dd763..436e11a57fd0f4a86918d17d0a2ecb0e801bfc86 100755 --- a/libstdc++-v3/configure +++ b/libstdc++-v3/configure @@ -19819,6 +19819,7 @@ fi # specified as build_headers in src/Makefile.am in a target-dependent # place, or else multiple installs for different compilers will # overwrite these files. +# NB: Keep this and gcc/Makefile.in's -DGPLUSPLUS_TOOL_INCLUDE_DIR in sync. gxx_target_include_dir='$(exec_prefix)/$(target_alias)/include/g++-$(libstdcxx_interface)' diff --git a/libstdc++-v3/configure.in b/libstdc++-v3/configure.in index 2823853b8444d6172fa6650a79738df80a953848..d0131479914af3b31d1e3de3928eec2a1f249bc0 100644 --- a/libstdc++-v3/configure.in +++ b/libstdc++-v3/configure.in @@ -279,6 +279,7 @@ fi # specified as build_headers in src/Makefile.am in a target-dependent # place, or else multiple installs for different compilers will # overwrite these files. +# NB: Keep this and gcc/Makefile.in's -DGPLUSPLUS_TOOL_INCLUDE_DIR in sync. gxx_target_include_dir='$(exec_prefix)/$(target_alias)/include/g++-$(libstdcxx_interface)' AC_SUBST(gxx_target_include_dir) diff --git a/libstdc++-v3/src/ios.cc b/libstdc++-v3/src/ios.cc index b7b7ff7bb1b9c6c27484ed9673c14c9a080c65fa..873bd3b4724b211ecff4cc3c07c920dc1d6ce8e8 100644 --- a/libstdc++-v3/src/ios.cc +++ b/libstdc++-v3/src/ios.cc @@ -220,8 +220,10 @@ namespace std { // _M_clear(_M_rdstate() | badbit); // may throw return _M_dummy; } - do { words[i] = _M_words[i]; } while (++i < _M_word_limit); - if (_M_words != _M_word_array) delete [] _M_words; + for (; i < _M_word_limit; i++) + words[i] = _M_words[i]; + if (_M_words != _M_word_array) + delete [] _M_words; } do { words[i] = zero; } while (++i < newlimit);