This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[v3] update RELEASE_NOTES, TODO, README



Very much an upper-case kind of editing job.

-benjamin

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.


Index: README
===================================================================
RCS file: /cvs/gcc/gcc/libstdc++-v3/README,v
retrieving revision 1.10
diff -c -p -r1.10 README
*** README	2001/10/19 23:05:15	1.10
--- README	2001/12/18 21:59:29
*************** New users may wish to point their web br
*** 4,39 ****
  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 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.
- 
  It has subdirectories:
  
    docs
       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]
--- 4,25 ----
  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.
  
! This directory contains the files needed to create an ISO Standard C++
! Library.
  
  It has subdirectories:
  
    docs
       Files in HTML and text format that document usage, quirks of the
       implementation, and contributor checklists.
  
    include/std
       Files meant to be found by #include <name> directives in
       standard-conforming user programs.  
  
    include/c
       Headers intended to directly include standard C headers. 
       [NB: this can be enabled via --enable-cheaders=c]
*************** It has subdirectories:
*** 50,55 ****
--- 36,54 ----
       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.
*************** Currently these are:
*** 72,82 ****
    config/os
    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.)
  
  Note that glibc also has a bits/ subdirectory.  We will either
  need to be careful not to collide with names in its bits/
--- 71,91 ----
    config/os
    config/io
    config/locale
+ 
+ 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: docs/html/17_intro/RELEASE-NOTES
===================================================================
RCS file: /cvs/gcc/gcc/libstdc++-v3/docs/html/17_intro/RELEASE-NOTES,v
retrieving revision 1.2
diff -c -p -r1.2 RELEASE-NOTES
Binary files /sourceware/cvs-tmp/cvsCfPVag and RELEASE-NOTES differ
Index: docs/html/17_intro/TODO
===================================================================
RCS file: /cvs/gcc/gcc/libstdc++-v3/docs/html/17_intro/TODO,v
retrieving revision 1.2
diff -c -p -r1.2 TODO
*** TODO	2001/11/24 03:28:26	1.2
--- TODO	2001/12/18 21:59:30
***************
*** 1,13 ****
  - 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
  
--- 1,6 ----
*************** string and vector iterator classes. basi
*** 20,85 ****
  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.
  
--- 13,32 ----
*************** needs to be drawn throughout the entire 
*** 90,107 ****
  
  - 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
--- 37,46 ----
*************** class complex<float>& complex<float>::op
*** 112,134 ****
  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.
--- 51,62 ----
*************** sources, with macro-guards.
*** 159,170 ****
  - create MT abstraction layer
  
  - 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.
  
--- 87,92 ----


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]