diff options
author | Benjamin Kosnik <bkoz@redhat.com> | 2007-11-21 16:37:26 +0000 |
---|---|---|
committer | Benjamin Kosnik <bkoz@gcc.gnu.org> | 2007-11-21 16:37:26 +0000 |
commit | c60cd1dcf7a8c5d20ad41ba781d562ebc5dca45c (patch) | |
tree | 507239571ccd17e75b6f53aa812e112350bfab7f /libstdc++-v3 | |
parent | 5f45b299ed3ced2d337a67352d64a66f199de38a (diff) | |
download | gcc-c60cd1dcf7a8c5d20ad41ba781d562ebc5dca45c.zip gcc-c60cd1dcf7a8c5d20ad41ba781d562ebc5dca45c.tar.gz gcc-c60cd1dcf7a8c5d20ad41ba781d562ebc5dca45c.tar.bz2 |
documentation.html: Validate.
2007-11-20 Benjamin Kosnik <bkoz@redhat.com>
* docs/html/documentation.html: Validate. Add links to index,
correct broken links.
* docs/html/17_intro/C++STYLE: Add bits.
* docs/html/17_intro/configury.html: Correct, update.
* docs/html/17_intro/api.html: Correct HTML.
* include/bits/stl_algobase.h: Adjust comment.
From-SVN: r130331
Diffstat (limited to 'libstdc++-v3')
-rw-r--r-- | libstdc++-v3/ChangeLog | 10 | ||||
-rw-r--r-- | libstdc++-v3/docs/html/17_intro/C++STYLE | 29 | ||||
-rw-r--r-- | libstdc++-v3/docs/html/17_intro/api.html | 2 | ||||
-rw-r--r-- | libstdc++-v3/docs/html/17_intro/configury.html | 44 | ||||
-rw-r--r-- | libstdc++-v3/docs/html/documentation.html | 75 | ||||
-rw-r--r-- | libstdc++-v3/include/bits/stl_algobase.h | 3 |
6 files changed, 107 insertions, 56 deletions
diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index 452223a..91914689 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,3 +1,13 @@ +2007-11-20 Benjamin Kosnik <bkoz@redhat.com> + + * docs/html/documentation.html: Validate. Add links to index, + correct broken links. + * docs/html/17_intro/C++STYLE: Add bits. + * docs/html/17_intro/configury.html: Correct, update. + * docs/html/17_intro/api.html: Correct HTML. + + * include/bits/stl_algobase.h: Adjust comment. + 2007-11-20 Richard Sandiford <rsandifo@nildram.co.uk> * testsuite/ext/throw_allocator/variadic_construct.cc: Add diff --git a/libstdc++-v3/docs/html/17_intro/C++STYLE b/libstdc++-v3/docs/html/17_intro/C++STYLE index 87f53d0..45fad27 100644 --- a/libstdc++-v3/docs/html/17_intro/C++STYLE +++ b/libstdc++-v3/docs/html/17_intro/C++STYLE @@ -1,12 +1,21 @@ -C++ Standard Library Style Guidelines DRAFT 2001-01-15 +C++ Standard Library Coding Style Guidelines ------------------------------------- This library is written to appropriate C++ coding standards. As such, it is intended to precede the recommendations of the GNU Coding -Standard, which can be referenced here: +Standard, which can be referenced in full here: -http://www.gnu.org/prep/standards_toc.html +http://www.gnu.org/prep/standards/standards.html#Formatting + +The rest of this is also interesting reading, but skip the "Design +Advice" part. + +The GCC coding conventions are here, are are also useful: +http://gcc.gnu.org/codingconventions.html + +In addition, because it doesn't seem to be stated explicitly anywhere +else, there is an 80 column source limit. ChangeLog entries for member functions should use the classname::member function name syntax as follows: @@ -220,6 +229,9 @@ Notable areas of divergence from what may be previous local practice give useful error messages, and programmers can intelligently speculate what went wrong without even using a debugger. +17. The doxygen style guide to comments is a separate document, + see index. + The library currently has a mixture of GNU-C and modern C++ coding styles. The GNU C usages will be combed out gradually. @@ -264,7 +276,6 @@ namespace std class gribble { public: - // ctor, op=, dtor gribble() throw(); gribble(const gribble&); @@ -278,11 +289,11 @@ namespace std virtual ~gribble() throw (); - // argument + // Start with a capitol letter, end with a period. inline void public_member(const char* __arg) const; - // in-class function definitions should be restricted to one-liners. + // In-class function definitions should be restricted to one-liners. int one_line() { return 0 } @@ -293,7 +304,7 @@ namespace std inline int three_lines(); // inline, but defined below. - // note indentation + // Note indentation. template<typename _Formal_argument> void public_template() const throw(); @@ -320,7 +331,7 @@ namespace std _S_initialize_library(); }; -// More-or-less-standard language features described by lack, not presence: +// More-or-less-standard language features described by lack, not presence. # ifndef _G_NO_LONGLONG extern long long _G_global_with_a_good_long_name; // avoid globals! # endif @@ -384,3 +395,5 @@ namespace std } } // namespace std + + diff --git a/libstdc++-v3/docs/html/17_intro/api.html b/libstdc++-v3/docs/html/17_intro/api.html index 50c8604..bfe7b20 100644 --- a/libstdc++-v3/docs/html/17_intro/api.html +++ b/libstdc++-v3/docs/html/17_intro/api.html @@ -52,7 +52,7 @@ details were not pried away from the estate. <p> At least some older implementations don't have <code>std::ios_base</code>, so you should use <code>std::ios::badbit</code>, <code>std::ios::failbit</code> and <code>std::ios::eofbit</code> and <code>std::ios::goodbit</code>. </p> -<h5>No <code>cout</code> in <code>ostream.h</code>, no <code>cin</code> in <code>istream.h</code</h5> +<h5>No <code>cout</code> in <code>ostream.h</code>, no <code>cin</code> in <code>istream.h</code></h5> <p> In earlier versions of the standard, diff --git a/libstdc++-v3/docs/html/17_intro/configury.html b/libstdc++-v3/docs/html/17_intro/configury.html index 1c9acf2..a35ccf2 100644 --- a/libstdc++-v3/docs/html/17_intro/configury.html +++ b/libstdc++-v3/docs/html/17_intro/configury.html @@ -34,30 +34,46 @@ No problem is insoluble in all conceivable circumstances.<br /> Last Question</a>, by Isaac Asimov </blockquote> <ul> - <li><a href="#deps">what comes from where</a></li> - <li><a href="#breakout">storing information in non-AC files, like + <li><a href="#prereq">Prerequisites for configure and make hacking</a></li> + <li><a href="#deps">Overview: what comes from where</a></li> + <li><a href="#breakout">Storing information in non-AC files, like configure.host</a></li> - <li><a href="#general">general config notes</a></li> - <li><a href="#aclayout">acinclude.m4 layout</a></li> - <li><a href="#enable"><code>--enable</code> howto</a></li> + <li><a href="#general">Coding and commenting conventions</a></li> + <li><a href="#aclayout">The acinclude.m4 layout</a></li> + <li><a href="#enable"><code>GLIBCXX_ENABLE, the --enable</code> howto</a></li> </ul> <hr /> -<h3><a name="deps">what comes from where</a></h3> +<h3><a name="prereq">Prerequisites for configure and make hacking</a></h3> + +<p> As +noted <a href="http://gcc.gnu.org/install/prerequisites.html">previously</a>, +certain other tools are necessary for hacking on files that control +configure (<code>configure.ac</code>, <code>acinclude.m4</code>) and +make (<code>Makefile.am</code>). These additional tools +(<code>automake</code>, and <code>autoconf</code>) are further +described in detail in their respective manuals. All the libraries in GCC try to stay in sync with each other in terms of versions of the auto-tools used, so please try to play nicely with the neighbors. +</p> + + +<hr /> +<h3><a name="deps">Overview: what comes from where</a></h3> <p class="centered"><img src="confdeps.png" alt="Dependency graph in PNG graphics format. (Get a better browser!)" /></p> -<p>Regenerate using a command sequence like - <code>"aclocal-1.7 && autoconf-2.59 && autoheader-2.59 - && automake-1.7"</code> as needed. And/or configure with - --enable-maintainer-mode. The version numbers will vary depending on +<p>Regenerate all generated files by using the command sequence + <code>"autoreconf"</code> at the top level of the libstdc++ source + directory. The following will also work, but is much more complex: + <code>"aclocal-1.7 && autoconf-2.59 && + autoheader-2.59 && automake-1.7"</code> The version numbers + may be absent entirely or otherwise vary depending on <a href="http://gcc.gnu.org/install/prerequisites.html">the current requirements</a> and your vendor's choice of installation names. </p> <hr /> -<h3><a name="breakout">storing information in non-AC files, like +<h3><a name="breakout">Storing information in non-AC files, like configure.host</a></h3> <p>Until that glorious day when we can use AC_TRY_LINK with a cross-compiler, we have to hardcode the results of what the tests would have shown if @@ -82,7 +98,7 @@ Last Question</a>, by Isaac Asimov <hr /> -<h3><a name="general">general config notes</a></h3> +<h3><a name="general">Coding and commenting conventions</a></h3> <p>Lots of stuff got thrown out because the new autotools kindly generate the same (or better) shell code for us. </p> @@ -108,7 +124,7 @@ Last Question</a>, by Isaac Asimov </p> <hr /> -<h3><a name="aclayout">acinclude.m4 layout</a></h3> +<h3><a name="aclayout">The acinclude.m4 layout</a></h3> <p>The nice thing about acinclude.m4/aclocal.m4 is that macros aren't actually performed/called/expanded/whatever here, just loaded. So we can arrange the contents however we like. As of this writing, acinclude.m4 is arranged @@ -186,7 +202,7 @@ Last Question</a>, by Isaac Asimov <hr /> -<h3><a name="enable"><code>--enable</code> howto</a></h3> +<h3><a name="enable">GLIBCXX_ENABLE, the <code>--enable</code> howto</a></h3> <p>All the GLIBCXX_ENABLE_FOO macros use a common helper, GLIBCXX_ENABLE. (You don't have to use it, but it's easy.) The helper does two things for us: diff --git a/libstdc++-v3/docs/html/documentation.html b/libstdc++-v3/docs/html/documentation.html index f14d1b6..92ce87b 100644 --- a/libstdc++-v3/docs/html/documentation.html +++ b/libstdc++-v3/docs/html/documentation.html @@ -57,51 +57,53 @@ href="http://gcc.gnu.org/svn.html">web</a>. </ul> </li> <li><a href="17_intro/license.html">License</a></li> - <li><a href="http://gcc.gnu.org/bugzilla/buglist.cgi?cmdtype=runnamed&namedcmd=libstdc%2B%2B">Known Bugs</a></li> + <li><a href="http://gcc.gnu.org/bugzilla/buglist.cgi?cmdtype=runnamed&namedcmd=libstdc%2B%2B">Known Bugs</a></li> </ul> </li> - <li> Configuring, Building, Testing, Installing + <li> Configuring, Building, Testing, Installing <ul> <li><a href="install.html">Getting started: configure, build, install</a> </li> <li><a href="configopts.html">Configure options</a></li> <li><a href="test.html">Testing details</a></li> - </li> </ul> - </li> + </li> - <li> Using the Library + <li> Using the Library <ul> - <li>Header Files</li> + <li>Header Files <ul> <li><a href="17_intro/howto.html#2.1">Available headers</a></li> <li><a href="17_intro/howto.html#2.2">Headers and <code>namespace std</code></a></li> <li>Pre-compiled headers</li> </ul> + </li> - <li>Namespaces</li> + <li>Namespaces <ul> <li><a href="17_intro/howto.html#2.5">Namespace <code>std::</code></a></li> <li><a href="17_intro/howto.html#2.6">Using namespace composition</a></li> </ul> + </li> <li><a href="17_intro/howto.html#6">Macros</a></li> - <li>Concurrency</li> + <li>Concurrency <ul> <li>Atomic Operations</li> <li><a href="17_intro/howto.html#3">Thread safety overview</a></li> - <li><a href="faq/index.html#5_6">Is it thread safe?</li> + <li><a href="faq/index.html#5_6">Is it thread safe?</a></li> <li><a href="23_containers/howto.html#3">Containers</a></li> <li><a href="27_io/howto.html#9">IO</a></li> </ul> + </li> <li>Exception safety</li> - <li><a href="debug.html">Debugging support</a> + <li><a href="debug.html">Debugging support</a></li> </ul> </li> @@ -130,15 +132,18 @@ href="http://gcc.gnu.org/svn.html">web</a>. <ul> <li><a href="20_util/howto.html#3">Functors</a></li> <li><a href="20_util/howto.html#4">Pairs</a></li> - <li>Memory</li> - <ul> - <li><a href="20_util/allocator.html">allocator</a></li> - <li>auto_ptr</li> - <ul> + + <li>Memory + <ul> + <li><a href="20_util/allocator.html">allocator</a></li> + <li>auto_ptr + <ul> <li><a href="20_util/howto.html#1"><code>auto_ptr</code> is not omnipotent</a></li> <li><a href="20_util/howto.html#2"><code>auto_ptr</code> inside container classes</a></li> </ul> + </li> </ul> + </li> </ul> </li> @@ -215,62 +220,70 @@ href="http://gcc.gnu.org/svn.html">web</a>. <li>Extensions <ul> <li><a href="ext/howto.html#4">Compile-time checks</a></li> - <li><a href="debug_mode.html">Debug mode</a></li> - <li><a href="parallel_mode.html">Parallel mode</a></li> - <li> Allocators</li> + <li><a href="ext/debug_mode.html">Debug mode</a></li> + <li><a href="ext/parallel_mode.html">Parallel mode</a></li> + <li> Allocators <ul> <li><a href="ext/mt_allocator.html"><code>__mt_alloc</code> </a></li> <li><a href="ext/ballocator_doc.html">Bitmap Allocator</a></li> </ul> + </li> - <li> Containers </li> + <li> Containers <ul> <li><a href="ext/pb_ds/index.html">Policy Based Data Structures</a></li> <li><a href="ext/howto.html#1">Ropes and trees and hashes, oh my!</a></li> </ul> + </li> - <li> Algorithms</li> + <li> Algorithms <ul> <li><a href="ext/sgiexts.html">HP/SGI STL Extensions</a></li> </ul> +</li> - <li> Input/Output</li> + <li> Input/Output <ul> <li><a href="27_io/howto.html#11">Derived filebuf classes</a></li> </ul> +</li> <li><a href="ext/../18_support/howto.html#6">Demangling</a></li> </ul> </li> <li>Appendix <ul> - <li>A. <a name="5">Contributing and Maintenance</a></li> + + <li>A. <a name="5">Contributing and Maintenance</a> <ul> <li><a href="17_intro/contribute.html">Contributor checklist</a></li> <li><a href="http://gcc.gnu.org/svnwrite.html">Getting write access (look for "Write after approval")</a></li> - <li><a href="17_intro/BADNAMES">BADNAMES</a> + <li><a href="17_intro/BADNAMES">Identifier blacklist</a> - names to avoid because of potential collisions</li> <li><a href="17_intro/C++STYLE">Coding style, by example</a></li> - <li> Doxygen markup style guide. In the source docs/doxygen directory, see guide.html. Here's the a link to the current <a href="http://gcc.gnu.org/viewcvs/*checkout*/trunk/libstdc%2B%2B-v3/docs/doxygen/guide.html?content-type=text%2Fplain">page</a>. -</li> - <li><a href="17_intro/DESIGN">DESIGN</a> - - overview of the implementation plan</li> + + <li> Comment coding style, a doxygen markup style guide. In the source docs/doxygen directory, see <a href="http://gcc.gnu.org/viewcvs/*checkout*/trunk/libstdc%2B%2B-v3/docs/doxygen/guide.html">guide.html</a>.</li> + <li><a href="17_intro/DESIGN">Design Notes</a> + - notes on the implementation plan</li> + <li><a href="17_intro/configury.html">Editing configure and make files</a></li> <li>Header policy, namespace map, API conventions</li> </ul> +</li> - <li>B. Porting</li> + <li>B. Porting <ul> <li><a href="17_intro/porting.html">Porting to new hardware or operating systems.</a></li> <li><a href="17_intro/abi.html">ABI Policy and Guidelines</a></li> <li><a href="17_intro/api.html">API Evolution and Deprecation History</a></li> </ul> +</li> + + <li>C. <a href="http://www.gnu.org/software/libc/manual/html_node/Free-Manuals.html#Free-Manuals">Free Software Needs Free Documentation </a></li> - <li>C. <a href="http://www.gnu.org/software/libc/manual/html_node/Free-Manuals.html#Free-Manuals">Free Software Needs Free Documentation </a> </ul> </li> - </ul> <!-- endlist --> @@ -314,7 +327,7 @@ href="http://gcc.gnu.org/svn.html">web</a>. <hr /> <br /> -<h2><a name="7"><a href="faq/index.html">Frequently Asked Questions</a></a></h2 +<h2><a name="7" href="faq/index.html">Frequently Asked Questions</a></h2 <hr /> <br /> diff --git a/libstdc++-v3/include/bits/stl_algobase.h b/libstdc++-v3/include/bits/stl_algobase.h index f9f3be1..32dfacd 100644 --- a/libstdc++-v3/include/bits/stl_algobase.h +++ b/libstdc++-v3/include/bits/stl_algobase.h @@ -1,4 +1,4 @@ -// Bits and pieces used in algorithms -*- C++ -*- +// Core algorithmic facilities -*- C++ -*- // Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007 // Free Software Foundation, Inc. @@ -1084,7 +1084,6 @@ _GLIBCXX_END_NESTED_NAMESPACE // of getting the base algorithms. So, make sure that parallel bits // come in too if requested. #ifdef _GLIBCXX_PARALLEL -//# include <parallel/algorithm> # include <parallel/algobase.h> #endif |