mirror of
https://gcc.gnu.org/git/gcc.git
synced 2024-11-30 07:14:09 +08:00
documentation.html: Add a pointer to the doxygen style guide.
2003-10-23 Benjamin Kosnik <bkoz@redhat.com> * docs/html/documentation.html: Add a pointer to the doxygen style guide. * docs/html/17_intro/TODO: Update. * docs/html/test.html: Add instructions for running a subset of tests, update. From-SVN: r72867
This commit is contained in:
parent
57f542b355
commit
d2c354f380
@ -1,3 +1,11 @@
|
||||
2003-10-23 Benjamin Kosnik <bkoz@redhat.com>
|
||||
|
||||
* docs/html/documentation.html: Add a pointer to the doxygen style
|
||||
guide.
|
||||
* docs/html/17_intro/TODO: Update.
|
||||
* docs/html/test.html: Add instructions for running a subset of
|
||||
tests, update.
|
||||
|
||||
2003-10-23 Paolo Carlini <pcarlini@suse.de>
|
||||
|
||||
* include/bits/locale_facets.tcc (money_get<>::do_get(...,
|
||||
|
@ -1,62 +1,133 @@
|
||||
std::allocator
|
||||
|
||||
- switch to mt_allocator with --enable-threads=posix.
|
||||
|
||||
- Try to figure out a way to switch allocators in a more elegant
|
||||
manner, and make the default allocator configurable.
|
||||
|
||||
- persistent allocator
|
||||
|
||||
- global/extern allocator
|
||||
|
||||
std::string
|
||||
|
||||
- re-design for multi-paradigm, meta string class solution incorporating COW
|
||||
vs. deep copy issues, MT scalability
|
||||
See Andrei Alexandrescu, June 2001, C/C++ Users Journal
|
||||
"Generic<Programming>: A Policy-Based basic_string Implementation"
|
||||
http://www.cuj.com/documents/s=7994/cujcexp1906alexandr/
|
||||
|
||||
- operator!= and utility/rel_ops operators need to be made safe with
|
||||
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)
|
||||
|
||||
- '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.
|
||||
|
||||
- fix template members of basic_string<> to overload iterators and
|
||||
non-iterators properly. (This is the infamous hack as in vector<> etc
|
||||
23.1.1 para 10.)
|
||||
|
||||
std::locale
|
||||
|
||||
- implement __convert_to_v and __convert_from_v without "C" library
|
||||
functions and and LANG environment variable dependencies.
|
||||
|
||||
- use localedata to implement generic named (non-MT-safe) locales?
|
||||
Figure out a way to use ICU data, like libjava? Need a generic locale
|
||||
model that does something besides the "C" locale.
|
||||
|
||||
- make locale::classic() separate from named locale code. This will
|
||||
improve the static linkage situation, but will require new
|
||||
initialization code.
|
||||
|
||||
- Jerry(?)/Paolo(?) work on __float_to_char.
|
||||
|
||||
- minimize ctype convertion in data facets, see numpunct/num_put/num_get
|
||||
|
||||
- finish caching data facets and using the caches
|
||||
|
||||
std::basic_filebuf, 27_io
|
||||
|
||||
- wfilebuf, get variable-encoding working and tested, including
|
||||
positioning and seeking.
|
||||
|
||||
- wfilebuf testsuite
|
||||
|
||||
- look ahead for unbuffered io, so know when multiple putc's can be
|
||||
coalesced.
|
||||
|
||||
- unlocked __basic_file + new mutext class
|
||||
|
||||
- optimized the sentries for istream/ostream
|
||||
|
||||
- v2 vs. v3 speed
|
||||
|
||||
- add optimization hooks (esp. whitespace eating) to streambuf
|
||||
- add _M_begin() and _M_end() to streambuf
|
||||
- add algorithm specializations for [io]streambuf_iterator (copy find etc.)
|
||||
|
||||
testsuite
|
||||
|
||||
- valgrind hooks into make check so can tell memory leakage
|
||||
Some commentary on the valgrind users list
|
||||
|
||||
- add hooks for qmtest for visual diffs
|
||||
|
||||
- automatic testing of interactive tests
|
||||
|
||||
- diffing generated output files
|
||||
|
||||
- make check-abi needs to have full symbol checking. Scope the LSB
|
||||
testsuite, see what's going on with the typeinfo etc. bits.
|
||||
|
||||
- provide testsuites for numerics.
|
||||
|
||||
- try to do a better job of ABI testing, with instantiations of all
|
||||
standard-specified types checked, not just exported symbols.
|
||||
|
||||
g++/binutils
|
||||
|
||||
- compression for wide versions of basic types
|
||||
|
||||
- get Apple's debug mode, or something with equivalent functionality, in.
|
||||
|
||||
- audit for places where __builtin_expect can be used.
|
||||
|
||||
- relocations, work on getting these down
|
||||
|
||||
- issues with __builtin_memcpy and std::copy from Jerry Quinn
|
||||
http://gcc.gnu.org/ml/libstdc++/2003-02/msg00076.html
|
||||
|
||||
- fix dependency tracking for includes (.h, .tcc) during build process.
|
||||
|
||||
- coordinate with "C" library people the "C" compatibility headers.
|
||||
Explain why an ISO-14882-conformant solution is hopeless, with the current
|
||||
twisted morass of "C" headers.
|
||||
|
||||
- do more doxygen manpages
|
||||
|
||||
- implement __convert_to_v and __convert_from_v without "C" library
|
||||
functions and and LANG environment variable dependencies.
|
||||
|
||||
- use localedata to implement generic named (non-MT-safe) locales?
|
||||
Figure out a way to use ICU data, like libjava?
|
||||
|
||||
- tuning for executable size, compilation speed, startup allocation,
|
||||
executable speed.
|
||||
|
||||
- benchmarking addition to the testsuite that does the above.
|
||||
|
||||
- implement testing for symbol versioning for ELF targets.
|
||||
|
||||
- review streambuf, filebuf, stringbuf to optimize data member
|
||||
placement. Do pback bits need to be in streambuf? How about
|
||||
_M_set_indeterminate, etc?
|
||||
|
||||
- Think about naming all member data and member functions consistently
|
||||
as per
|
||||
funtions: _M_verb_adverb
|
||||
data: _M_noun_adjective
|
||||
as per
|
||||
funtions: _M_verb_adverb
|
||||
data: _M_noun_adjective
|
||||
|
||||
- A C++STYLE guide that deals with nested namespaces, and that
|
||||
everybody can live with.
|
||||
|
||||
- exception specifications need to be reviewed for all parts of the
|
||||
library support and utility areas, particularly <new>.
|
||||
library support and utility areas, particularly <new>. Part of this is
|
||||
a standards issue, where the 27_io bugs/standard is really in an odd
|
||||
spot.
|
||||
|
||||
- C-related issues WRT to io and filepos, mbstate_t. Seeking in wide
|
||||
streams. May need to define operators for mbstate_t so that
|
||||
'mbstate_t& == mbstate_t' is something that can be done.
|
||||
|
||||
- scoping/linking issues WRT to C structs need to be worked out. See
|
||||
Nathan's commentary on cantrip, http://www.cantrip.org/cheaders.html
|
||||
|
||||
- triglyphs/ciso646: and, and_eq, bitand, bitor, compl, not, not_eq,
|
||||
or, or_eq, xor, xor_eq, true && 45, true and false, true or 45, etc.
|
||||
(bool and int), etc.
|
||||
|
||||
- operator!= and utility/rel_ops operators need to be made safe with
|
||||
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)
|
||||
|
||||
- auto_ptr: seems to be some disagreement on what is
|
||||
standards-conformant behavior, specially on conversion operators.
|
||||
|
||||
- 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.
|
||||
|
||||
- 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.
|
||||
|
||||
- looks like deque::get_allocator not standards conformant or deque
|
||||
allocator non-standard.
|
||||
|
||||
@ -67,47 +138,35 @@ needs to be drawn throughout the entire STL implementation.
|
||||
|
||||
- priority_queue conversions may be non-conformant
|
||||
|
||||
- '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.
|
||||
|
||||
- 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
|
||||
|
||||
- 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.
|
||||
|
||||
- All of the Library working group closed issues need to be
|
||||
addressed. Some of them proposed resolutions are already in the v-3
|
||||
sources, with macro-guards.
|
||||
sources, with macro-guards. Also, same with the TR.
|
||||
|
||||
- add deprecated features from Annex D
|
||||
- add #ifdef wrappers for all of them, including in each
|
||||
C <xxx.h> header
|
||||
- replace typedef'd non-deprecated types with more type-safe equivalents.
|
||||
|
||||
- add optimization hooks (esp. whitespace eating) to streambuf
|
||||
- add _M_begin() and _M_end() to streambuf
|
||||
- add algorithm specializations for [io]streambuf_iterator (copy find etc.)
|
||||
|
||||
- fix template members of basic_string<> to overload iterators and
|
||||
non-iterators properly. (This is the infamous hack as in vector<> etc
|
||||
23.1.1 para 10.)
|
||||
|
||||
- write filebuf for wide characters
|
||||
|
||||
- add feature-test macros for non-standard extensions
|
||||
|
||||
- create MT abstraction layer
|
||||
- create MT abstraction layer for atomicity to pthreads.
|
||||
|
||||
- add MT support for locale, string, istream, ostream
|
||||
|
||||
- provide testsuites for numerics.
|
||||
- need to think about doing a .texi or DocBook manual, instead of all
|
||||
these HTML pages. In addition, it would be nice to have a full manual,
|
||||
instead of a lot of ad-hoc pages. Weaknesses include numerics, locale,
|
||||
and io.
|
||||
|
||||
- add FAQ entries -- improve the install instructions
|
||||
|
||||
- add HOWTO entries
|
||||
|
||||
- do more doxygen manpages
|
||||
|
||||
|
@ -245,6 +245,8 @@
|
||||
- names to avoid because of potential collisions</li>
|
||||
<li><a href="17_intro/C++STYLE">C++STYLE</a>
|
||||
- coding style by example</li>
|
||||
<li> In the libstdc++-v3/docs/doxygen directory, see guide.html, a
|
||||
doxygen markup style guide</li>
|
||||
<li><a href="17_intro/CHECKLIST">CHECKLIST</a>
|
||||
- a list of required features and their status.</li>
|
||||
<li><a href="17_intro/DESIGN">DESIGN</a>
|
||||
|
@ -126,7 +126,7 @@ data Sample text files for testing input and output.
|
||||
All new tests should be written with the policy of one test
|
||||
case, one file in mind. At some point the entire testsuite will
|
||||
be converted: the current status is that the 21_string,
|
||||
22_locale, 27_io, and demangle directories have all been
|
||||
22_locale, 23_containers, 27_io, and demangle directories have all been
|
||||
transitioned.
|
||||
</p>
|
||||
|
||||
@ -486,6 +486,11 @@ make check-target-libstdc++-v3 RUNTESTFLAGS="--target_board=calmrisc32-sid"
|
||||
make check-target-libstdc++-v3 RUNTESTFLAGS="--target_board=arm-sim"
|
||||
</pre>
|
||||
|
||||
<p> To run a subset of the library tests, simply edit the generated
|
||||
file, <em>testsuite_files </em>, to include only the files that are
|
||||
desired instead of all available test cases.
|
||||
</p>
|
||||
|
||||
<p> In addition, there are some testing options that are mostly of
|
||||
interest to library maintainers and system integrators. As such,
|
||||
these tests may not work on all cpu and host combinations, and must
|
||||
|
Loading…
Reference in New Issue
Block a user