OSDN Git Service

2001-12-18 Benjamin Kosnik <bkoz@redhat.com>
authorbkoz <bkoz@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 18 Dec 2001 22:01:20 +0000 (22:01 +0000)
committerbkoz <bkoz@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 18 Dec 2001 22:01:20 +0000 (22:01 +0000)
* docs/html/17_intro/TODO: Update.
* docs/html/17_intro/RELEASE-NOTES: Edits, update.
* README: Edit for clarity, update to reflect current directory
structure.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@48165 138bc75d-0d04-0410-961f-82ee72b054a4

libstdc++-v3/ChangeLog
libstdc++-v3/README
libstdc++-v3/docs/html/17_intro/RELEASE-NOTES
libstdc++-v3/docs/html/17_intro/TODO

index 8e1544e..7157fc1 100644 (file)
@@ -1,5 +1,12 @@
 2001-12-18  Benjamin Kosnik  <bkoz@redhat.com>
 
+       * docs/html/17_intro/TODO: Update.
+       * docs/html/17_intro/RELEASE-NOTES: Edits, update.
+       * README: Edit for clarity, update to reflect current directory
+       structure.
+
+2001-12-18  Benjamin Kosnik  <bkoz@redhat.com>
+
        * acinclude.m4 (GLIBCPP_ENABLE_CLOCALE): Extended checking before
        enabling gnu model.
        * aclocal.m4: Rebuild.
index 3ace755..f95a8c9 100644 (file)
@@ -4,12 +4,11 @@ New users may wish to point their web browsers to the file documentation.html
 in the 'docs/html' subdirectory.  It contains brief building instructions and
 notes on how to configure the library in interesting ways.
 
+Instructions for configuring and building appear in
+docs/html/install.html.
 
-Instructions for configuring and building this snapshot appear
-in docs/html/install.html.
-
-This directory contains the files needed to create [a still broken
-subset of] an ISO Standard C++ Library.
+This directory contains the files needed to create an ISO Standard C++
+Library.
 
 It has subdirectories:
 
@@ -17,23 +16,10 @@ It has subdirectories:
      Files in HTML and text format that document usage, quirks of the
      implementation, and contributor checklists.
 
-  include/bits
-     Files included by standard headers and by other files in
-     the bits directory.  Includes a set of files bits/std_xxxx.h
-     that implement the standard headers <xxxx>.
-
   include/std
      Files meant to be found by #include <name> directives in
      standard-conforming user programs.  
 
-  include/ext
-     Headers that define extensions to the standard library.  No
-     standard header refers to any of them.
-
-  include/backward
-     Headers provided for backward compatibility, such as <iostream.h>.
-     They are not used in this library.
-
   include/c
      Headers intended to directly include standard C headers. 
      [NB: this can be enabled via --enable-cheaders=c]
@@ -50,6 +36,19 @@ It has subdirectories:
      defined there into the _C_legacy namespace.
      [NB: this can be enabled via --enable-cheaders=c_shadow]
 
+  include/bits
+     Files included by standard headers and by other files in
+     the bits directory.  Includes a set of files bits/std_xxxx.h
+     that implement the standard headers <xxxx>.
+
+  include/backward
+     Headers provided for backward compatibility, such as <iostream.h>.
+     They are not used in this library.
+
+  include/ext
+     Headers that define extensions to the standard library.  No
+     standard header refers to any of them.
+
   src
      Files that are used in constructing the library, but are not
      installed.
@@ -73,10 +72,20 @@ Currently these are:
   config/io
   config/locale
 
-Files needed only to construct the library, but not installed,
-are in src/.  Files to be copied as part of an installation are
-all found in the subdirectories mentioned above.  (A configure
-script may link files from another directory into one of these.)
+In addition, three subdirectories are convenience libraries:
+
+  libio
+     Contains the subset of the GNU libio library needed for
+     C++. Currently not used.
+
+  libmath
+     Support routines needed for C++ math. Only needed if the
+     underlying "C" implementation is weak or looses.
+
+  libsupc++
+     Contains the runtime library for C++, including exception
+     handling and memory allocation and deallocation, RTTI, terminate
+     handlers, etc.
 
 Note that glibc also has a bits/ subdirectory.  We will either
 need to be careful not to collide with names in its bits/
index 0f83422..5cf43ee 100644 (file)
Binary files a/libstdc++-v3/docs/html/17_intro/RELEASE-NOTES and b/libstdc++-v3/docs/html/17_intro/RELEASE-NOTES differ
index 0128b2b..6a9e16d 100644 (file)
@@ -1,13 +1,6 @@
 - exception specifications need to be reviewed for all parts of the
 library support and utility areas, particularly <new>. 
 
-- exception/stdexcept headers will do, but are not cleanly
-implemented. Also, some kind of consensus needs to be established on
-if the presence of stdexcept should be assumed in iostreams
-headers. V3 currently takes the position that references to stdexcept
-classes necessitates the inclusion of stdexcept, other library vendors
-seem less inclined.
-
 - scoping/linking issues WRT to C structs need to be worked out. See
 Nathan's commentary on cantrip, http://www.cantrip.org/cheaders.html
 
@@ -20,66 +13,20 @@ string and vector iterator classes. basic_string::reverse_iterator may
 be implemented incorrectly, or need things like
 operator==(__normal_iterator, const char*&), and swap(vector)
 
-- SGI iterator/allocator classes are not strictly conforming. In
-particular, raw_storage_iterator, mem_fun1_ref_t are all problem
-areas.
-
 - auto_ptr: seems to be some disagreement on what is
 standards-conformant behavior, specially on conversion operators.
 
-- vswprintf, vwprintf, wprintf, wscanf, wcsftime, swscanf, fgetws,
-fputwc, fputws, fwide, fwprintf, fwscanf, getwc, getwchar, putwc, etc:
-C library wchar_t functionality.
-
-- facets heirarchies seem on occasion give odd errors to conformace
-tests. Need to test that they are constructed in a strictly-conforming
-manner.
-
-- stuff like `LC_CTYPE' is not found. Locale oddness?
-
 - header optimizations to keep compile times reasonable are most
 certainly detracting from full conformance, as many templatized
 definitions are squired away and pre-instantiated, so that the
 compiler doesn't have to parse them. Areas effected: valarray, string,
 all of iostreams and locales.
 
-- basic_string<wchar_T> not implemented
-
-- ostreambuf_iterator has not been made standards-conformant (both
-char and wchar_t) In particular, look at 
-time_put::put(OutIt, ios_base&, char, const tm*, const char*, const
-char*) const
-
 - C-related issues WRT to libio and filepos, mbstate_t. Need to
 straighten this stuff out with the glibc-2.2 libio. Also may need to
 define operators for mbstate_t so that 'mbstate_t& == mbstate_t' is
 something that can be done.
 
-- codecvt<wchar_t> has not been adequently handled in terms of the
-locale bits. (The io bits are done, with the exception of one
-ostream<wchar_t> inserter for char.
-
-- bool locale::operator() looks to be non-conformant
-
-- num_get<char>::do_get<user_defined_type> 
-  num_put<char>::do_put<user_defined_type> 
-num_put<char, char *>::do_put(char *, ios_base &, char, long double) const
-num_put<char, char *>::do_put(char *, ios_base &, char, double) const
-num_put<char, char *>::do_put(char *, ios_base &, char, void const *) const
-etc.
-appear to be broken, or headers mashed, or undefined.
-
-- locale and std::combine not working correctly
- template <class _Facet> class locale locale::combine(const locale &)
-
-- ctype_byname<char>: check to make sure derivation standards-conformant.
-
-- codecvt::unshift not working for char, wchar_t
-
-- no match for money_base::pattern &[int]
-
-- money_get::do_get weirded out for wchar_t
-
 - looks like deque::get_allocator not standards conformant or deque
 allocator non-standard.
 
@@ -90,18 +37,10 @@ needs to be drawn throughout the entire STL implementation.
 
 - priority_queue conversions may be non-conformant
 
-- istream_iterator uses 2 arguments, should it be 4?
-
 - 'do the right thing' ctor fixing needs to be done for string. This
 is still subject to some debate on the library issues list, so I
 suggest punting till the dust clears.
 
-- the ctype and "tolower" "isspace" stuff really needs to be sorted
-out. A portable, cross platform interface needs to be defined. A
-"fixincludes"-like solution needs to be put into place to prune
-headers. The "C" functions need to be able to work in std:: and "C"
-namespaces.
-
 - complex<float> seems to be the single largest source of internal
 compiler errors when compiling the c++ library across non-x86
 platforms. Somebody needs to make sure the complex support builtin to
@@ -112,23 +51,12 @@ class complex<float>& complex<float>::operator+=<float>(const complex<float> &)
 class complex<float>& complex<float>::operator-=<float>(const complex<float> &)
 class complex<float>& complex<float>::operator*=<float>(const complex<float> &)
 
-- appears as if the following extraction operators are undefined:
-operator>>(istream, complex<float>&)
-operator>>(istream, complex<double>&)
-operator>>(istream, complex<long double>&)
-operator>>(istream, complex<user_defined_type>&)
-sqrt (const complex<T>& x)
-
 - Protect valarray::result_type (not Standard) and make it work with
   the various helper classes.
 
 - Make sure `valarray<bool> & == _Expr<_BinClos<logical_or,_ValArray,_ValArray,double,double>,bool>' 
   is defined
 
-- long double std_cmath stuff looks weak
-
-- fwide not declared. C++ wchar_t issues completely unaddressed.
-
 - known issues WRT to io and corner cases with the buffers. This is
 still subject to interpretation, and I think the current
 implementation is credible.
@@ -160,12 +88,6 @@ sources, with macro-guards.
 
 - add MT support for locale, string, istream, ostream
 
-- specialize functions that use_facet<> calls on failure for the required 
-  facets, and construct them lazily so unused facets need not be constructed 
-  when the locale is. 
-
-- <cmath>: provide missing names. 
-
 - provide testsuites for numerics.
 
 - add FAQ entries -- improve the install instructions